Update Ojal.php
This commit is contained in:
+9
-4
@@ -57,11 +57,16 @@ class Ojal extends Model
|
|||||||
$q->where('orden_produccion_id', $opId);
|
$q->where('orden_produccion_id', $opId);
|
||||||
})->sum('cantidad');
|
})->sum('cantidad');
|
||||||
$totalProducido = $totalRecibido - $totalArreglos - $totalCobros;
|
$totalProducido = $totalRecibido - $totalArreglos - $totalCobros;
|
||||||
$yaAsignado = \App\Models\Prensilla::where('orden_produccion_id', $opId)->sum('cantidad_enviada')
|
|
||||||
+ \App\Models\Ojal::where('orden_produccion_id', $opId)->sum('cantidad_enviada');
|
|
||||||
|
|
||||||
if (($yaAsignado + ($p->cantidad_enviada ?? 0)) > $totalProducido) {
|
// Solo verificar ojales ya asignados (no prensillas, porque vienen después)
|
||||||
throw \Illuminate\Validation\ValidationException::withMessages(['cantidad_enviada' => 'No hay suficientes unidades disponibles desde confecciones para asignar.']);
|
$yaAsignado = \App\Models\Ojal::where('orden_produccion_id', $opId)->sum('cantidad_enviada');
|
||||||
|
|
||||||
|
$disponible = $totalProducido - $yaAsignado;
|
||||||
|
|
||||||
|
if (($p->cantidad_enviada ?? 0) > $disponible) {
|
||||||
|
throw \Illuminate\Validation\ValidationException::withMessages([
|
||||||
|
'cantidad_enviada' => "Solo hay {$disponible} unidades disponibles desde confecciones. No se pueden asignar " . ($p->cantidad_enviada ?? 0) . " unidades."
|
||||||
|
]);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user