Refactor TintoreriaProceso to Tintoreria resource and model

Renamed TintoreriaProcesoResource, model, and migration to Tintoreria, updating all related references and page classes. Added preload to Select fields for better performance in forms. This change standardizes naming and improves resource management for tintoreria processes.
This commit is contained in:
Juan Felipe Duarte
2026-01-15 08:39:58 -05:00
parent 7257a2d795
commit 1510a8ef1e
8 changed files with 110 additions and 55 deletions
+52
View File
@@ -0,0 +1,52 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Tintoreria extends Model
{
protected $fillable = [
'proveedor_id',
'orden_produccion_id',
'tipo_proceso',
'fecha_envio',
'cantidad_enviada',
'fecha_recepcion',
'cantidad_recibida',
'perdidas',
'observaciones',
];
/* Relaciones */
public function proveedor()
{
return $this->belongsTo(Proveedor::class);
}
public function ordenProduccion()
{
return $this->belongsTo(OrdenProduccion::class);
}
/* Lógica de negocio */
protected static function booted()
{
static::saving(function ($tintoreria) {
if ($tintoreria->cantidad_recibida !== null) {
$tintoreria->perdidas =
$tintoreria->cantidad_enviada - $tintoreria->cantidad_recibida;
}
});
// Cuando vuelve de tintorería → avanzar OP
static::updated(function ($tintoreria) {
if (
$tintoreria->fecha_recepcion &&
$tintoreria->cantidad_recibida !== null
) {
$tintoreria->ordenProduccion?->avanzarEstado();
}
});
}
}