From e083c0e4a5d7f59d14cbb2c035f8deba71234638 Mon Sep 17 00:00:00 2001 From: dhanabalan Date: Tue, 1 Jul 2025 13:16:32 +0530 Subject: [PATCH] Added pallet data tables --- app/Livewire/PalletDataTable.php | 120 ++++++++++++++++++ .../pages/create-pallet-validation.blade.php | 46 +++++++ .../forms/components/save-pallet-button.php | 43 +++++++ .../livewire/pallet-data-table.blade.php | 40 ++++++ 4 files changed, 249 insertions(+) create mode 100644 app/Livewire/PalletDataTable.php create mode 100644 resources/views/filament/resources/pallet-validation-resource/pages/create-pallet-validation.blade.php create mode 100644 resources/views/forms/components/save-pallet-button.php create mode 100644 resources/views/livewire/pallet-data-table.blade.php diff --git a/app/Livewire/PalletDataTable.php b/app/Livewire/PalletDataTable.php new file mode 100644 index 0000000..6f843ca --- /dev/null +++ b/app/Livewire/PalletDataTable.php @@ -0,0 +1,120 @@ + 'requestRemoveSerialNumber', + 'loadData' => 'loadPalletData', + ]; + + + + public function loadPalletData($palletNumber, $plantId) + { + $this->plantId = $plantId; + $this->palletNumber = $palletNumber; + $this->records = []; + + $this->records = PalletValidation::query() + ->where('plant_id', $this->plantId) + ->where('pallet_number', $this->palletNumber) + ->orderBy('scanned_at') + ->get() + ->map(function ($record) { + return [ + 'created_at' => $record->created_at, + 'created_by' => $record->created_by ?? '', + 'pallet_number' => $record->pallet_number, + 'serial_number' => $record->serial_number, + 'scanned_at' => $record->scanned_at, + 'scanned_by' => $record->scanned_by ?? '', + ]; + }) + ->toArray(); + + } + + + // public function requestRemoveSerialNumber($serialNumber, $palletNumber,$plantId) + // { + + // $user = Filament::auth()->user(); + + // $operatorName = $user->name; + + // $found = collect($this->records)->contains(function ($record) use ($serialNumber) { + // return $record['serial_number'] == $serialNumber; + // }); + + // if (!$found) { + // Notification::make() + // ->title('Serial number not found in the pallet data table. Cannot delete.') + // ->danger() + // ->send(); + // return; + // } + + // // Proceed to delete from the database + // $deleted = PalletValidation::where('plant_id', $plantId) + // ->where('pallet_number', $palletNumber) + // ->where('serial_number', $serialNumber) + // ->forceDelete(); + + // if ($deleted) + // { + // Notification::make() + // ->title('Serial number deleted successfully.') + // ->success() + // ->send(); + + // $this->form->fill([ + // 'plant_id' => $this->plantId, + // 'pallet_number' => $palletNumber, + // 'removeSno_number' => null, + // 'pending_pallet_list' => $this->pendingPallet, + // 'Sno_quantity' => $this->snoCount, + // 'created_by' => $operatorName, + // 'scanned_by' => $operatorName, + // ]); + + // $this->snoCount = PalletValidation::where('plant_id', $plantId) + // ->where('pallet_number', $palletNumber) + // ->count(); + + // $this->dispatch('updateSnoQuantity', $this->snoCount); + + // //reload the data table + // $this->loadPalletData($this->palletNumber, $this->plantId); + // } + // else + // { + // Notification::make() + // ->title('Failed to delete serial number.') + // ->danger() + // ->send(); + // } + + // } + + + public function render() + { + return view('livewire.pallet-data-table'); + } +} diff --git a/resources/views/filament/resources/pallet-validation-resource/pages/create-pallet-validation.blade.php b/resources/views/filament/resources/pallet-validation-resource/pages/create-pallet-validation.blade.php new file mode 100644 index 0000000..775c5d6 --- /dev/null +++ b/resources/views/filament/resources/pallet-validation-resource/pages/create-pallet-validation.blade.php @@ -0,0 +1,46 @@ + + + +
+
+ {{-- Breadcrumbs --}} +
+ + Pallet Validations + + > + Create +
+

Scan Pallet

+
+ +
+ {{ $this->form }} +
+ +
+ +
+ +
+ + @foreach ($this->getFormActions() as $action) + {{ $action }} + @endforeach + +
+
+ + @push('scripts') + + @endpush +
diff --git a/resources/views/forms/components/save-pallet-button.php b/resources/views/forms/components/save-pallet-button.php new file mode 100644 index 0000000..d88c09e --- /dev/null +++ b/resources/views/forms/components/save-pallet-button.php @@ -0,0 +1,43 @@ + +
+
+ + +
+ + + + + diff --git a/resources/views/livewire/pallet-data-table.blade.php b/resources/views/livewire/pallet-data-table.blade.php new file mode 100644 index 0000000..3aee315 --- /dev/null +++ b/resources/views/livewire/pallet-data-table.blade.php @@ -0,0 +1,40 @@ +
+

+ PALLET DATA TABLE: +

+
+ + + + + + + + + + + + + + @forelse ($records as $index => $record) + + + + + + + + + + @empty + + + + @endforelse + +
NoCreated DatetimeCreated ByPallet NumberSerial NumberScanned DatetimeScanned By
{{ $index + 1 }}{{ $record['created_at'] ?? '-' }}{{ $record['created_by'] ?? '-' }}{{ $record['pallet_number'] ?? '-' }}{{ $record['serial_number'] ?? '-' }}{{ $record['scanned_at'] ?? '-' }}{{ $record['scanned_by'] ?? '-' }}
+ No pallet records found. +
+
+ +