*/ use HasFactory; use SoftDeletes; protected $fillable = [ 'production_order_id', 'common_catalog_item_id', 'external_id', 'order_item_number', 'factory_number', 'manufacture_date', 'passport_file_id', 'sort', 'created_by', ]; protected function casts(): array { return [ 'production_order_id' => 'integer', 'common_catalog_item_id' => 'integer', 'manufacture_date' => 'immutable_date', 'passport_file_id' => 'integer', 'sort' => 'integer', 'created_by' => 'integer', ]; } public function productionOrder(): BelongsTo { return $this->belongsTo(ProductionOrder::class); } public function catalogItem(): BelongsTo { return $this->belongsTo(CommonCatalogItem::class, 'common_catalog_item_id'); } public function passportFile(): BelongsTo { return $this->belongsTo(File::class, 'passport_file_id'); } public function creator(): BelongsTo { return $this->belongsTo(User::class, 'created_by'); } public function reclamations(): BelongsToMany { return $this->belongsToMany(Reclamation::class, 'production_order_item_reclamation') ->withTimestamps(); } }