label('NO') ->state(function ($record) use (&$rowNumber) { // Increment and return the row number return ++$rowNumber; }), ExportColumn::make('name') ->label('DEALER NAME'), ExportColumn::make('company') ->label('DEALER COMPANY'), ExportColumn::make('visit_plan_date') ->label('VISIT PLAN DATE'), ExportColumn::make('organizer') ->label('ORGANIZER'), ExportColumn::make('employeeMaster.name') ->label('RECIPIENT NAME'), ExportColumn::make('number_of_person') ->label('NUMBER OF PERSON'), ExportColumn::make('purpose_of_visit') ->label('PURPOSE OF VISIT'), ExportColumn::make('status') ->label('STATUS'), ExportColumn::make('created_at') ->label('CREATED AT'), ExportColumn::make('updated_at') ->label('UPDATED AT'), ExportColumn::make('created_by') ->label('CREATED BY'), ExportColumn::make('updated_by') ->label('UPDATED BY'), ExportColumn::make('deleted_at') ->label('DELETED AT') ->enabledByDefault(false), ]; } public static function getCompletedNotificationBody(Export $export): string { $body = 'Your dealer visit plan 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; } }