This commit is contained in:
lizandrogd
2026-01-20 00:18:49 -05:00
parent c532a686f5
commit afaea4063c
8 changed files with 77 additions and 7 deletions
@@ -51,15 +51,14 @@ class ProcesoAcabadoResource extends Resource
->required()
->afterStateUpdated(function ($state, $set) {
if ($state) {
// Sumar lo recibido en Tintorería
// Total recibido en Tintorería para esta OP
$sumTint = \App\Models\Tintoreria::where('orden_produccion_id', $state)->sum('cantidad_recibida');
// Restar lo ya enviado a acabados y aún en proceso
$sentInProcess = \App\Models\ProcesoAcabado::where('orden_produccion_id', $state)
->whereNull('fecha_recepcion')
// Restar todo lo ya enviado a procesos de acabados (de la misma OP)
$sentToAcabados = \App\Models\ProcesoAcabado::where('orden_produccion_id', $state)
->sum('cantidad_enviada');
$pending = max(0, (int)$sumTint - (int)$sentInProcess);
$pending = max(0, (int)$sumTint - (int)$sentToAcabados);
$set('cantidad_enviada', $pending ?: 0);
$set('fecha_envio', now()->toDateString());
@@ -85,7 +84,8 @@ class ProcesoAcabadoResource extends Resource
->numeric()
->required()
->reactive()
->helperText(fn ($get) => 'Sugerido: ' . (\App\Models\Tintoreria::where('orden_produccion_id', $get('orden_produccion_id'))->sum('cantidad_recibida') ?: 0)),
->helperText(fn ($get) => 'Sugerido: ' . (max(0, (int)\App\Models\Tintoreria::where('orden_produccion_id', $get('orden_produccion_id'))->sum('cantidad_recibida') - (int)\App\Models\ProcesoAcabado::where('orden_produccion_id', $get('orden_produccion_id'))->sum('cantidad_enviada')) ?: 0)),
DatePicker::make('fecha_envio')
->required()
@@ -144,6 +144,7 @@ class ProcesoAcabadoResource extends Resource
'success' => fn($state) => $state !== null,
]),
])
->defaultSort('created_at', 'desc')
->filters([
Tables\Filters\SelectFilter::make('orden_produccion_id')
->label('Orden de Producción')