Update Recepcion.php

This commit is contained in:
Lizandro Guarnizo
2026-01-29 21:59:32 -05:00
parent 177e6b4e3a
commit 3405677cbe
+8 -7
View File
@@ -65,18 +65,19 @@ class Recepcion extends Model
$referencia = $rec->referencia;
$enviada = (int) ($referencia->cantidad_enviada ?? 0);
// Ya recibido efectivo (cantidad - defectuosos) - arreglos permiten re-recepción
// Ya recibido efectivo (cantidad - defectuosos)
$yaRecibido = (int) \App\Models\Recepcion::where('referencia_type', get_class($referencia))
->where('referencia_id', $referencia->id)
->sum(\DB::raw('cantidad - COALESCE(prendas_defectuosas, 0)'));
// Los arreglos se restan porque permiten re-recepción cuando regresen
// Los arreglos/reprocesos permiten re-recepción cuando regresen
$arreglos = 0;
if (method_exists($referencia, 'ajustes')) {
$arreglos = (int) $referencia->ajustes()->where('tipo', 'arreglo')->sum('cantidad');
// Contar tanto 'arreglo' como 'reproceso'
$arreglos = (int) $referencia->ajustes()->whereIn('tipo', ['arreglo', 'reproceso'])->sum('cantidad');
}
// Los cobros NO permiten más recepciones (son prendas que no llegaron)
// Los cobros son sobre prendas que YA llegaron (no afectan lo que puede recibir)
$cobros = 0;
if (method_exists($referencia, 'cobros')) {
$cobros = (int) $referencia->cobros()->sum('cantidad');
@@ -84,7 +85,7 @@ class Recepcion extends Model
$efectivo = $rec->cantidad - $rec->prendas_defectuosas;
$yaRecibidoNeto = $yaRecibido - $arreglos;
$maxPermitido = $enviada - $cobros;
$maxPermitido = $enviada; // NO restar cobros - los cobros no afectan lo que puede recibir
if (($yaRecibidoNeto + $efectivo) > $maxPermitido) {
$disponible = max(0, $maxPermitido - $yaRecibidoNeto);
@@ -94,8 +95,8 @@ class Recepcion extends Model
📊 Resumen:
Enviadas: {$enviada}
Ya recibidas (neto): {$yaRecibidoNeto}
Cobros registrados: {$cobros}
Arreglos (permiten re-recepción): {$arreglos}
Arreglos/Reprocesos (permiten re-recepción): {$arreglos}
Cobros (sobre prendas recibidas): {$cobros}
Disponible para recibir: {$disponible}
➡️ Solo puedes recibir {$disponible} prendas más."