This commit is contained in:
Lizandro Guarnizo
2026-01-18 12:21:02 -05:00
parent 78340138d4
commit 29c6567d27
2 changed files with 34 additions and 4 deletions
+16 -1
View File
@@ -34,6 +34,21 @@ class Confeccion extends Model
protected static function booted()
{
static::saving(function ($confeccion) {
// Establecer fecha de envío por defecto si no se proporcionó
if (! $confeccion->fecha_envio) {
$confeccion->fecha_envio = now();
}
// Validación: cantidad_enviada no puede exceder la cantidad total de la OP
if ($confeccion->cantidad_enviada !== null && $confeccion->orden_produccion_id) {
$orden = \App\Models\OrdenProduccion::find($confeccion->orden_produccion_id);
if ($orden && $confeccion->cantidad_enviada > $orden->cantidad_total) {
throw \Illuminate\Validation\ValidationException::withMessages([
'cantidad_enviada' => 'La cantidad enviada no puede exceder la cantidad total de la Orden de Producción (' . $orden->cantidad_total . ').',
]);
}
}
// Total a pagar
if ($confeccion->cantidad_recibida !== null) {
$confeccion->total_pagar =
@@ -41,7 +56,7 @@ class Confeccion extends Model
}
// Estado automático
if (!$confeccion->cantidad_recibida) {
if (! $confeccion->cantidad_recibida) {
$confeccion->estado = 'pendiente';
} elseif ($confeccion->cantidad_recibida < $confeccion->cantidad_enviada) {
$confeccion->estado = 'parcial';