Update OjalPresillaResource.php

This commit is contained in:
Lizandro Guarnizo
2026-01-29 20:53:56 -05:00
parent 0621307ee8
commit dc1d79df09
@@ -36,9 +36,22 @@ class OjalPresillaResource extends Resource
return \App\Models\OrdenProduccion::whereHas('confecciones', function ($q) {
$q->where('cantidad_recibida', '>', 0);
})->get()->mapWithKeys(function ($op) {
$recibido = $op->confecciones->sum('cantidad_recibida');
return [$op->id => "{$op->numero_orden} ({$recibido} prendas recibidas)"];
});
// Calcular cantidad total de confecciones recibidas
$cantidadConfecciones = $op->confecciones->sum('cantidad_recibida');
// Calcular cantidad ya enviada en ojales
$cantidadEnOjales = \App\Models\Ojal::where('orden_produccion_id', $op->id)
->sum('cantidad_enviada');
// Calcular saldo disponible
$saldoDisponible = $cantidadConfecciones - $cantidadEnOjales;
// Solo incluir si hay saldo disponible
if ($saldoDisponible > 0) {
return [$op->id => "{$op->numero_orden} (Disponible: {$saldoDisponible})"];
}
return [];
})->filter(); // Eliminar valores vacíos
})
->searchable()
->required()
@@ -47,11 +60,17 @@ class OjalPresillaResource extends Resource
if ($state) {
$op = \App\Models\OrdenProduccion::find($state);
if ($op) {
$recibido = $op->confecciones->sum('cantidad_recibida');
$set('cantidad_enviada', $recibido);
// Calcular cantidad disponible (confecciones - ojales ya enviados)
$cantidadConfecciones = $op->confecciones->sum('cantidad_recibida');
$cantidadEnOjales = \App\Models\Ojal::where('orden_produccion_id', $state)
->sum('cantidad_enviada');
$cantidadDisponible = $cantidadConfecciones - $cantidadEnOjales;
$set('cantidad_enviada', $cantidadDisponible);
}
}
}),
})
->helperText('Solo se muestran órdenes con prendas disponibles para enviar'),
TextInput::make('tipo')
->label('Tipo')