'decimal:6', 'cost' => 'decimal:2', 'cost_before' => 'decimal:2', 'cost_after' => 'decimal:2', 'cost_type' => 'string', ]; /** * Relación con el producto. */ public function product(): BelongsTo { return $this->belongsTo(Product::class, 'product_id'); } /** * Relación con la sucursal. */ public function store(): BelongsTo { return $this->belongsTo(Store::class, 'store_id'); } /** * Relación con el almacén. */ public function warehouse(): BelongsTo { return $this->belongsTo(Warehouse::class, 'warehouse_id'); } /** * Relación con el usuario que creó el movimiento. */ public function createdBy(): BelongsTo { return $this->belongsTo(User::class, 'created_by'); } /** * Relación polimórfica para vincular diferentes transacciones. */ public function transactionable(): MorphTo { return $this->morphTo(); } }