From 88bc62c8f216e0a11d71207898bc2907edc1d402 Mon Sep 17 00:00:00 2001 From: dhanabalan Date: Wed, 2 Jul 2025 15:21:45 +0530 Subject: [PATCH] Added pallet validation exporter --- .../Exports/PalletValidationExporter.php | 67 +++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 app/Filament/Exports/PalletValidationExporter.php diff --git a/app/Filament/Exports/PalletValidationExporter.php b/app/Filament/Exports/PalletValidationExporter.php new file mode 100644 index 0000000..34f3ac7 --- /dev/null +++ b/app/Filament/Exports/PalletValidationExporter.php @@ -0,0 +1,67 @@ +label('ID'), + ExportColumn::make('no') + ->label('NO') + ->state(function ($record) use (&$rowNumber) { + // Increment and return the row number + return ++$rowNumber; + }), + ExportColumn::make('plant.name') + ->label('PLANT'), + ExportColumn::make('pallet_number') + ->label('PALLET NUMBER'), + ExportColumn::make('serial_number') + ->label('SERIAL NUMBER'), + ExportColumn::make('pallet_status') + ->label('PALLET STATUS'), + ExportColumn::make('locator_number') + ->label('LOCATOR NUMBER'), + ExportColumn::make('locator_quantity') + ->label('LOCATOR QUANTITY'), + ExportColumn::make('created_by') + ->label('CREATED BY'), + ExportColumn::make('created_at') + ->label('CREATED AT'), + ExportColumn::make('updated_by') + ->label('UPDATED BY'), + ExportColumn::make('updated_at') + ->label('UPDATED AT'), + ExportColumn::make('scanned_by') + ->label('SCANNED BY'), + ExportColumn::make('scanned_at') + ->label('SCANNED AT'), + ExportColumn::make('deleted_at') + ->label('DELETED AT') + ->enabledByDefault(false), + ]; + } + + public static function getCompletedNotificationBody(Export $export): string + { + $body = 'Your pallet validation export has completed and ' . number_format($export->successful_rows) . ' ' . str('row')->plural($export->successful_rows) . ' exported.'; + + if ($failedRowsCount = $export->getFailedRowsCount()) { + $body .= ' ' . number_format($failedRowsCount) . ' ' . str('row')->plural($failedRowsCount) . ' failed to export.'; + } + + return $body; + } +}