up
This commit is contained in:
@@ -72,10 +72,8 @@ class InventarioPrendaResource extends Resource
|
||||
TextInput::make('cantidad_terminada')
|
||||
->numeric()
|
||||
->required()
|
||||
->afterStateUpdated(function ($state, $set) {
|
||||
// Mantener la cantidad disponible igual a la terminada al crear
|
||||
$set('cantidad_disponible', $state);
|
||||
}),
|
||||
->disabled()
|
||||
->helperText('Se calcula automáticamente desde los traslados a bodega asociados a la Orden de Producción.'),
|
||||
|
||||
Select::make('producto_id')
|
||||
->label('Producto (opcional)')
|
||||
|
||||
@@ -51,7 +51,7 @@ class InventarioPrenda extends Model
|
||||
}
|
||||
}
|
||||
|
||||
// Validación: la cantidad terminada no puede exceder lo recibido para esta OP (traslados a bodega)
|
||||
// Validación y auto-filling: la cantidad terminada se calcula automáticamente desde lo recibido para esta OP (traslados a bodega)
|
||||
if ($inventario->orden_produccion_id) {
|
||||
$totalRecibido = \App\Models\TrasladoPrenda::where('orden_produccion_id', $inventario->orden_produccion_id)
|
||||
->where('destino', 'bodega')
|
||||
@@ -61,11 +61,22 @@ class InventarioPrenda extends Model
|
||||
|
||||
$available = max(0, (int) $totalRecibido - (int) $assigned);
|
||||
|
||||
// Si no se proporcionó cantidad_terminada, asignar automáticamente lo disponible
|
||||
if (! isset($inventario->cantidad_terminada) || (int) $inventario->cantidad_terminada <= 0) {
|
||||
$inventario->cantidad_terminada = $available;
|
||||
}
|
||||
|
||||
if ((int) $inventario->cantidad_terminada > $available) {
|
||||
throw \Illuminate\Validation\ValidationException::withMessages([
|
||||
'cantidad_terminada' => 'No se puede registrar más cantidad terminada de la que está disponible desde acabados/traslados (' . $available . ').',
|
||||
]);
|
||||
}
|
||||
|
||||
if ((int) $inventario->cantidad_terminada <= 0) {
|
||||
throw \Illuminate\Validation\ValidationException::withMessages([
|
||||
'cantidad_terminada' => 'No hay cantidad terminada disponible para esta Orden de Producción.',
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
// Fecha de ingreso por defecto a hoy si no se proporcionó
|
||||
|
||||
Reference in New Issue
Block a user