$products * @property-read int|null $products_count * @property-read \Illuminate\Database\Eloquent\Collection $unitPackages * @property-read int|null $unit_packages_count * @method static \Illuminate\Database\Eloquent\Builder|ClassPackage newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder|ClassPackage newQuery() * @method static \Illuminate\Database\Eloquent\Builder|ClassPackage onlyTrashed() * @method static \Illuminate\Database\Eloquent\Builder|ClassPackage query() * @method static \Illuminate\Database\Eloquent\Builder|ClassPackage whereContractMaterialValue($value) * @method static \Illuminate\Database\Eloquent\Builder|ClassPackage whereContractRegisterValue($value) * @method static \Illuminate\Database\Eloquent\Builder|ClassPackage whereContractValue($value) * @method static \Illuminate\Database\Eloquent\Builder|ClassPackage whereContratDiscountValue($value) * @method static \Illuminate\Database\Eloquent\Builder|ClassPackage whereCreatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder|ClassPackage whereDeletedAt($value) * @method static \Illuminate\Database\Eloquent\Builder|ClassPackage whereId($value) * @method static \Illuminate\Database\Eloquent\Builder|ClassPackage whereName($value) * @method static \Illuminate\Database\Eloquent\Builder|ClassPackage whereQuantityClasses($value) * @method static \Illuminate\Database\Eloquent\Builder|ClassPackage whereUpdatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder|ClassPackage withTrashed(bool $withTrashed = true) * @method static \Illuminate\Database\Eloquent\Builder|ClassPackage withoutTrashed() * @mixin \Eloquent */ class ClassPackage extends Model { use HasFactory, SoftDeletes; protected $table = 'class_packages'; protected $guarded = ['id']; protected $casts = [ 'quantity_classes' => 'integer', 'contract_value' => 'float', 'contract_material_value' => 'float', 'contract_register_value' => 'float', 'contrat_discount_value' => 'float', 'created_at' => 'datetime', 'updated_at' => 'datetime', ]; public function unitPackages(): HasMany { return $this->hasMany(ClassPackageUnit::class); } public function products(): BelongsToMany { return $this->belongsToMany(Product::class, 'class_package_products') ->withPivot(['quantity', 'price']) ->withTimestamps(); } public function groups(): BelongsToMany { return $this->belongsToMany(Group::class, 'class_package_groups'); } }