This commit is contained in:
Lizandro Guarnizo
2026-01-29 22:55:24 -05:00
parent 30af893cac
commit 1fff8f8999
3 changed files with 70 additions and 0 deletions
@@ -31,6 +31,7 @@ class TrasladoPrendaResource extends Resource
->schema([
Select::make('origen')->options([
'confeccion' => 'Confección',
'ojales_prensillas' => 'Ojales y Prensillas',
'tintoreria' => 'Tintorería',
'acabados' => 'Acabados',
'bodega' => 'Bodega',
@@ -38,6 +39,7 @@ class TrasladoPrendaResource extends Resource
Select::make('destino')->options([
'confeccion' => 'Confección',
'ojales_prensillas' => 'Ojales y Prensillas',
'tintoreria' => 'Tintorería',
'acabados' => 'Acabados',
'bodega' => 'Bodega',
+34
View File
@@ -49,6 +49,40 @@ class Ojal extends Model
}
});
// Crear traslado cuando se crea un Ojal/Prensilla (Confección → Ojales/Prensillas)
static::created(function ($ojal) {
if ($ojal->cantidad_enviada > 0) {
\App\Models\TrasladoPrenda::create([
'orden_produccion_id' => $ojal->orden_produccion_id,
'referencia_type' => self::class,
'referencia_id' => $ojal->id,
'origen' => 'confeccion',
'destino' => 'ojales_prensillas',
'cantidad_enviada' => $ojal->cantidad_enviada,
'cantidad_recibida' => null,
'fecha_envio' => $ojal->fecha_envio ?? now(),
'estado' => 'pendiente',
]);
}
});
// Crear traslado cuando se marca como terminada (Ojales/Prensillas → Tintorería)
static::updated(function ($ojal) {
if ($ojal->terminada && $ojal->getOriginal('terminada') == false) {
if ($ojal->cantidad_enviada > 0) {
\App\Models\TrasladoPrenda::create([
'orden_produccion_id' => $ojal->orden_produccion_id,
'referencia_type' => self::class,
'referencia_id' => $ojal->id,
'origen' => 'ojales_prensillas',
'destino' => 'tintoreria',
'cantidad_enviada' => $ojal->cantidad_enviada,
'cantidad_recibida' => null,
'fecha_envio' => now(),
'estado' => 'pendiente',
]);
}
}
});
}
}
+34
View File
@@ -47,6 +47,40 @@ class Prensilla extends Model
}
});
// Crear traslado cuando se crea una Prensilla (Confección → Ojales/Prensillas)
static::created(function ($prensilla) {
if ($prensilla->cantidad_enviada > 0) {
\App\Models\TrasladoPrenda::create([
'orden_produccion_id' => $prensilla->orden_produccion_id,
'referencia_type' => self::class,
'referencia_id' => $prensilla->id,
'origen' => 'confeccion',
'destino' => 'ojales_prensillas',
'cantidad_enviada' => $prensilla->cantidad_enviada,
'cantidad_recibida' => null,
'fecha_envio' => $prensilla->fecha_envio ?? now(),
'estado' => 'pendiente',
]);
}
});
// Crear traslado cuando se marca como terminada (Ojales/Prensillas → Tintorería)
static::updated(function ($prensilla) {
if ($prensilla->terminada && $prensilla->getOriginal('terminada') == false) {
if ($prensilla->cantidad_enviada > 0) {
\App\Models\TrasladoPrenda::create([
'orden_produccion_id' => $prensilla->orden_produccion_id,
'referencia_type' => self::class,
'referencia_id' => $prensilla->id,
'origen' => 'ojales_prensillas',
'destino' => 'tintoreria',
'cantidad_enviada' => $prensilla->cantidad_enviada,
'cantidad_recibida' => null,
'fecha_envio' => now(),
'estado' => 'pendiente',
]);
}
}
});
}
}