Update ProcesoAcabadoResource.php
This commit is contained in:
@@ -46,11 +46,17 @@ class ProcesoAcabadoResource extends Resource
|
||||
->required()
|
||||
->afterStateUpdated(function ($state, $set) {
|
||||
if ($state) {
|
||||
// Calcular cantidad disponible desde Tintorería
|
||||
$disponible = \App\Models\Tintoreria::where('orden_produccion_id', $state)
|
||||
->sum('cantidad_recibida');
|
||||
// Calcular cantidad disponible desde Tintorería (neto: recepciones - reprocesos - cobros)
|
||||
$tintoreriaRecords = \App\Models\Tintoreria::where('orden_produccion_id', $state)->get();
|
||||
$disponible = 0;
|
||||
foreach ($tintoreriaRecords as $tintoreria) {
|
||||
$recepciones = (int) $tintoreria->recepciones()->sum(\DB::raw('cantidad - COALESCE(prendas_defectuosas, 0)'));
|
||||
$reprocesos = (int) $tintoreria->ajustes()->where('tipo', 'reproceso')->sum('cantidad');
|
||||
$cobros = (int) $tintoreria->cobros()->sum('cantidad');
|
||||
$disponible += ($recepciones - $reprocesos - $cobros);
|
||||
}
|
||||
|
||||
$set('cantidad_enviada', $disponible ?: 0);
|
||||
$set('cantidad_enviada', max(0, $disponible));
|
||||
}
|
||||
}),
|
||||
|
||||
@@ -68,8 +74,18 @@ class ProcesoAcabadoResource extends Resource
|
||||
->helperText(function ($get) {
|
||||
$op_id = $get('orden_produccion_id');
|
||||
if (!$op_id) return 'Selecciona una orden de producción primero';
|
||||
$disponible = \App\Models\Tintoreria::where('orden_produccion_id', $op_id)->sum('cantidad_recibida');
|
||||
return 'Disponible desde Tintorería: ' . $disponible;
|
||||
|
||||
// Calcular disponible neto desde Tintorería
|
||||
$tintoreriaRecords = \App\Models\Tintoreria::where('orden_produccion_id', $op_id)->get();
|
||||
$disponible = 0;
|
||||
foreach ($tintoreriaRecords as $tintoreria) {
|
||||
$recepciones = (int) $tintoreria->recepciones()->sum(\DB::raw('cantidad - COALESCE(prendas_defectuosas, 0)'));
|
||||
$reprocesos = (int) $tintoreria->ajustes()->where('tipo', 'reproceso')->sum('cantidad');
|
||||
$cobros = (int) $tintoreria->cobros()->sum('cantidad');
|
||||
$disponible += ($recepciones - $reprocesos - $cobros);
|
||||
}
|
||||
|
||||
return 'Disponible desde Tintorería: ' . max(0, $disponible);
|
||||
}),
|
||||
|
||||
DatePicker::make('fecha_envio')
|
||||
|
||||
Reference in New Issue
Block a user