This commit is contained in:
Lizandro Guarnizo
2026-01-06 15:35:59 -05:00
commit a768146f65
602 changed files with 42505 additions and 0 deletions
@@ -0,0 +1,57 @@
<?php
namespace App\Filament\Resources\TransferenciaBodegaResource\Pages;
use App\Filament\Resources\TransferenciaBodegaResource;
use App\Services\TransferenciaBodegaService;
use Filament\Actions;
use Filament\Resources\Pages\CreateRecord;
use Filament\Notifications\Notification;
class CreateTransferenciaBodega extends CreateRecord
{
protected static string $resource = TransferenciaBodegaResource::class;
protected function handleRecordCreation(array $data): \Illuminate\Database\Eloquent\Model
{
$transferenciaBodegaService = app(TransferenciaBodegaService::class);
try {
if (!empty($data['variante_id'])) {
// Transferencia de variante
$transferencia = $transferenciaBodegaService->transferirVariante(
$data['variante_id'],
$data['bodega_origen_id'],
$data['bodega_destino_id'],
$data['cantidad'],
$data['motivo'] ?? null
);
} else {
// Transferencia de producto
$transferencia = $transferenciaBodegaService->transferir(
$data['producto_id'],
$data['bodega_origen_id'],
$data['bodega_destino_id'],
$data['cantidad'],
$data['motivo'] ?? null
);
}
Notification::make()
->title('Transferencia completada exitosamente')
->success()
->send();
return $transferencia;
} catch (\Exception $e) {
Notification::make()
->title('Error en la transferencia')
->body($e->getMessage())
->danger()
->send();
throw $e;
}
}
}
@@ -0,0 +1,19 @@
<?php
namespace App\Filament\Resources\TransferenciaBodegaResource\Pages;
use App\Filament\Resources\TransferenciaBodegaResource;
use Filament\Actions;
use Filament\Resources\Pages\EditRecord;
class EditTransferenciaBodega extends EditRecord
{
protected static string $resource = TransferenciaBodegaResource::class;
protected function getHeaderActions(): array
{
return [
Actions\DeleteAction::make(),
];
}
}
@@ -0,0 +1,19 @@
<?php
namespace App\Filament\Resources\TransferenciaBodegaResource\Pages;
use App\Filament\Resources\TransferenciaBodegaResource;
use Filament\Actions;
use Filament\Resources\Pages\ListRecords;
class ListTransferenciaBodegas extends ListRecords
{
protected static string $resource = TransferenciaBodegaResource::class;
protected function getHeaderActions(): array
{
return [
Actions\CreateAction::make(),
];
}
}