This commit is contained in:
Lizandro Guarnizo
2026-01-29 21:55:00 -05:00
parent 7bffd8a569
commit 177e6b4e3a
7 changed files with 20 additions and 16 deletions
@@ -148,9 +148,9 @@ class ConfeccionResource extends Resource
⚠️ Pendientes: {$faltantes}
━━━ PAGO ━━━
💵 Valor total: $" . number_format($valorTotal, 2) . "
💸 Descuento cobros: $" . number_format($cobrosValor, 2) . "
A pagar: $" . number_format($valorAPagar, 2);
💵 Valor total: $" . number_format($valorTotal, 0) . "
💸 Descuento cobros: $" . number_format($cobrosValor, 0) . "
A pagar: $" . number_format($valorAPagar, 0);
}),
Forms\Components\Placeholder::make('instrucciones')
@@ -18,7 +18,7 @@ class CobrosRelationManager extends RelationManager
->columns([
TextColumn::make('id')->label('#'),
TextColumn::make('cantidad')->label('Cantidad'),
TextColumn::make('valor')->label('Valor')->money('USD'),
TextColumn::make('valor')->label('Valor')->money('COP', divideBy: 1),
TextColumn::make('usuario.name')->label('Usuario'),
TextColumn::make('notas')->limit(80)->wrap(),
TextColumn::make('created_at')->label('Fecha')->dateTime(),
+2 -2
View File
@@ -97,8 +97,8 @@ class TelaResource extends Resource
Tables\Columns\TextColumn::make('proveedor.nombre')->searchable(),
Tables\Columns\TextColumn::make('metros_comprados')->numeric(),
Tables\Columns\TextColumn::make('metros_disponibles')->numeric(),
Tables\Columns\TextColumn::make('valor_total')->money('USD')->sortable(),
Tables\Columns\TextColumn::make('costo_por_metro')->money('USD')->sortable(),
Tables\Columns\TextColumn::make('valor_total')->money('COP', divideBy: 1)->sortable(),
Tables\Columns\TextColumn::make('costo_por_metro')->money('COP', divideBy: 1)->sortable(),
Tables\Columns\TextColumn::make('fecha_compra')->date()->sortable(),
])
->defaultSort('created_at', 'desc')
@@ -165,9 +165,9 @@ class TintoreriaResource extends Resource
⚠️ Pendientes: {$faltantes}
━━━ PAGO ━━━
💵 Valor total: $" . number_format($valorTotal, 2) . "
💸 Descuento cobros: $" . number_format($cobrosValor, 2) . "
A pagar: $" . number_format($valorAPagar, 2);
💵 Valor total: $" . number_format($valorTotal, 0) . "
💸 Descuento cobros: $" . number_format($cobrosValor, 0) . "
A pagar: $" . number_format($valorAPagar, 0);
}),
Forms\Components\Placeholder::make('instrucciones')
@@ -17,7 +17,7 @@ class CobrosRelationManager extends RelationManager
->columns([
TextColumn::make('id')->label('#'),
TextColumn::make('cantidad')->label('Cantidad'),
TextColumn::make('valor')->label('Valor')->money('USD'),
TextColumn::make('valor')->label('Valor')->money('COP', divideBy: 1),
TextColumn::make('usuario.name')->label('Usuario'),
TextColumn::make('notas')->limit(80)->wrap(),
TextColumn::make('created_at')->label('Fecha')->dateTime(),
+5 -3
View File
@@ -111,10 +111,12 @@ class Confeccion extends Model
public function getFaltantesAttribute()
{
$enviada = (int)($this->cantidad_enviada ?? 0);
$recibidoNeto = $this->recibido_total;
$recepciones = (int) $this->recepciones()->sum(\DB::raw('cantidad - COALESCE(prendas_defectuosas, 0)'));
$ajustes = (int) $this->ajustes()->where('tipo', 'arreglo')->sum('cantidad');
// Lo que puede recibir = enviadas - recibido_neto (sin considerar cobros)
return max(0, $enviada - $recibidoNeto);
// Lo que puede recibir = enviadas - recepciones + arreglos (arreglos permiten re-recepción)
// NO restamos cobros porque los cobros son sobre prendas que ya llegaron
return max(0, $enviada - $recepciones + $ajustes);
}
// Total de cobros aplicados
+5 -3
View File
@@ -213,10 +213,12 @@ class Tintoreria extends Model
public function getFaltantesAttribute()
{
$enviada = (int)($this->cantidad_enviada ?? 0);
$recibidoNeto = $this->recibido_total;
$recepciones = (int) $this->recepciones()->sum(\DB::raw('cantidad - COALESCE(prendas_defectuosas, 0)'));
$reprocesos = (int) $this->ajustes()->where('tipo', 'reproceso')->sum('cantidad');
// Lo que puede recibir = enviadas - recibido_neto (sin considerar cobros)
return max(0, $enviada - $recibidoNeto);
// Lo que puede recibir = enviadas - recepciones + reprocesos (reprocesos permiten re-recepción)
// NO restamos cobros porque los cobros son sobre prendas que ya llegaron
return max(0, $enviada - $recepciones + $reprocesos);
}
// Estado de recepción (Parcial / Completado)