feat: agregar observador para movimientos de inventario y reportar eventos de usuario
This commit is contained in:
parent
897f59211d
commit
5ad7b9ca72
@ -1,9 +1,14 @@
|
||||
<?php namespace App\Models;
|
||||
|
||||
use App\Observers\InventoryMovementObserver;
|
||||
use Illuminate\Database\Eloquent\Attributes\ObservedBy;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Notsoweb\LaravelCore\Traits\Models\Extended;
|
||||
|
||||
#[ObservedBy([InventoryMovementObserver::class])]
|
||||
class InventoryMovement extends Model
|
||||
{
|
||||
use Extended;
|
||||
const UPDATED_AT = null;
|
||||
|
||||
protected $fillable = [
|
||||
|
||||
39
app/Observers/InventoryMovementObserver.php
Normal file
39
app/Observers/InventoryMovementObserver.php
Normal file
@ -0,0 +1,39 @@
|
||||
<?php namespace App\Observers;
|
||||
|
||||
use App\Models\InventoryMovement;
|
||||
use App\Models\UserEvent;
|
||||
|
||||
class InventoryMovementObserver
|
||||
{
|
||||
/**
|
||||
* Manipulador del evento "created" del modelo InventoryMovement
|
||||
*/
|
||||
public function created(InventoryMovement $inventoryMovement): void
|
||||
{
|
||||
UserEvent::report(model: $inventoryMovement, event: __FUNCTION__, key: 'movement_type');
|
||||
}
|
||||
|
||||
/**
|
||||
* Manipulador del evento "deleted" del modelo InventoryMovement
|
||||
*/
|
||||
public function deleted(InventoryMovement $inventoryMovement): void
|
||||
{
|
||||
UserEvent::report(model: $inventoryMovement, event: __FUNCTION__, key: 'movement_type');
|
||||
}
|
||||
|
||||
/**
|
||||
* Manipulador del evento "restored" del modelo InventoryMovement
|
||||
*/
|
||||
public function restored(InventoryMovement $inventoryMovement): void
|
||||
{
|
||||
UserEvent::report(model: $inventoryMovement, event: __FUNCTION__, key: 'movement_type');
|
||||
}
|
||||
|
||||
/**
|
||||
* Manipulador del evento "force deleted" del modelo InventoryMovement
|
||||
*/
|
||||
public function forceDeleted(InventoryMovement $inventoryMovement): void
|
||||
{
|
||||
UserEvent::report(model: $inventoryMovement, event: __FUNCTION__, key: 'movement_type');
|
||||
}
|
||||
}
|
||||
@ -6,6 +6,7 @@
|
||||
use App\Models\InventoryMovement;
|
||||
use App\Models\InventorySerial;
|
||||
use App\Models\InventoryWarehouse;
|
||||
use App\Models\UserEvent;
|
||||
use App\Models\Warehouse;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
|
||||
@ -696,6 +697,8 @@ public function updateMovement(int $movementId, array $data): InventoryMovement
|
||||
// 4. Actualizar el registro del movimiento
|
||||
$movement->update($updateData);
|
||||
|
||||
UserEvent::report(model: $movement, event: 'updated', key: 'movement_type');
|
||||
|
||||
return $movement->load(['inventory', 'warehouseFrom', 'warehouseTo', 'user', 'serials']);
|
||||
});
|
||||
}
|
||||
|
||||
8
lang/es/inventorymovement.php
Normal file
8
lang/es/inventorymovement.php
Normal file
@ -0,0 +1,8 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
'created' => 'El movimiento de inventario ":model" ha sido creado',
|
||||
'updated' => 'El movimiento de inventario ":model" ha sido actualizado',
|
||||
'deleted' => 'El movimiento de inventario ":model" ha sido eliminado',
|
||||
'restored' => 'El movimiento de inventario ":model" ha sido restaurado',
|
||||
];
|
||||
Loading…
x
Reference in New Issue
Block a user