From e1f08ad4535adf1fd80dec8ca81ebc3b940d00fe Mon Sep 17 00:00:00 2001 From: dhanabalan Date: Mon, 9 Mar 2026 15:50:17 +0530 Subject: [PATCH] Added characteristics approver master importer page --- .../CharacteristicApproverMasterImporter.php | 117 ++++++++++++++++++ 1 file changed, 117 insertions(+) create mode 100644 app/Filament/Imports/CharacteristicApproverMasterImporter.php diff --git a/app/Filament/Imports/CharacteristicApproverMasterImporter.php b/app/Filament/Imports/CharacteristicApproverMasterImporter.php new file mode 100644 index 0000000..7fff36e --- /dev/null +++ b/app/Filament/Imports/CharacteristicApproverMasterImporter.php @@ -0,0 +1,117 @@ +requiredMapping() + ->exampleHeader('Plant Code') + ->examples(['1000','1000']) + ->label('Plant Code') + ->relationship(resolveUsing: 'code') + ->rules(['required']), + ImportColumn::make('machine') + ->requiredMapping() + ->exampleHeader('Work Center') + ->examples(['RMGLAS02','RMGLAS02']) + ->label('Work Center') + ->relationship() + ->rules(['required']), + ImportColumn::make('machine_name') + ->requiredMapping() + ->exampleHeader('Machine Name') + ->examples(['15002635','17002635']) + ->label('Machine Name'), + ImportColumn::make('name1') + ->requiredMapping() + ->exampleHeader('Approver Name 1') + ->examples(['Suresh.D','Suresh.D']) + ->label('Approver Name 1'), + ImportColumn::make('mail1') + ->requiredMapping() + ->exampleHeader('Approver Mail 1') + ->examples(['suresh@cripumps.com','suresh@cripumps.com']) + ->label('Approver Mail 1'), + ImportColumn::make('name2') + ->requiredMapping() + ->exampleHeader('Approver Name 2') + ->examples(['Ramesh.G','Ramesh.G']) + ->label('Approver Name 2'), + ImportColumn::make('mail2') + ->requiredMapping() + ->exampleHeader('Approver Mail 2') + ->examples(['ramesh@cripumps.com','ramesh@cripumps.com']) + ->label('Approver Mail 2'), + ImportColumn::make('name3') + ->requiredMapping() + ->exampleHeader('Approver Name 3') + ->examples(['Ganesh.K','Ganesh.K']) + ->label('Approver Name 3'), + ImportColumn::make('mail3') + ->requiredMapping() + ->exampleHeader('Approver Mail 3') + ->examples(['ganesh@cripumps.com','ganesh@cripumps.com']) + ->label('Approver Mail 3'), + ImportColumn::make('duration1') + ->numeric() + ->requiredMapping() + ->exampleHeader('Duration 1') + ->examples(['0.05','0.30']) + ->label('Duration 1'), + ImportColumn::make('duration2') + ->numeric() + ->requiredMapping() + ->exampleHeader('Duration 2') + ->examples(['0.05','0.30']) + ->label('Duration 2'), + ImportColumn::make('duration3') + ->numeric() + ->requiredMapping() + ->exampleHeader('Duration 3') + ->examples(['0.05','0.30']) + ->label('Duration 3'), + ImportColumn::make('characteristic_field') + ->requiredMapping() + ->exampleHeader('Characteristic Field') + ->examples(['MV SERIES','PV SERIES']) + ->label('Characteristic Field'), + ImportColumn::make('approver_type') + ->requiredMapping() + ->exampleHeader('Approver Type') + ->examples(['Characteristic','Quality']) + ->label('Approver Type'), + ]; + } + + public function resolveRecord(): ?CharacteristicApproverMaster + { + // return CharacteristicApproverMaster::firstOrNew([ + // // Update existing records, matching them by `$this->data['column_name']` + // 'email' => $this->data['email'], + // ]); + + return new CharacteristicApproverMaster(); + } + + public static function getCompletedNotificationBody(Import $import): string + { + $body = 'Your characteristic approver master import has completed and ' . number_format($import->successful_rows) . ' ' . str('row')->plural($import->successful_rows) . ' imported.'; + + if ($failedRowsCount = $import->getFailedRowsCount()) { + $body .= ' ' . number_format($failedRowsCount) . ' ' . str('row')->plural($failedRowsCount) . ' failed to import.'; + } + + return $body; + } +}