feat(transmittal): replace PDF export with Excel export and add logo
- Remove PDF export functionality from TransmittalResource and CreateTransmittal page - Add new TransmittalExcelExport class for formatted Excel exports with company logo - Update export jobs to generate unique filenames per user and refresh user data - Replace PDF export action with Excel export in table actions - Comment out logo in PDF view template as it's no longer used - Fix import alias for Excel export action in GeneralLedger
This commit is contained in:
@@ -8,7 +8,6 @@ use Filament\Tables\Columns\Layout\Stack;
|
||||
use Filament\Tables\Columns\Layout\View;
|
||||
use Filament\Actions\BulkActionGroup;
|
||||
use Filament\Actions\DeleteBulkAction;
|
||||
use Filament\Actions\BulkAction;
|
||||
use Filament\Actions\Action;
|
||||
use Filament\Actions\ViewAction;
|
||||
use Filament\Actions\EditAction;
|
||||
@@ -21,8 +20,7 @@ use App\Filament\Resources\Transmittals\Pages\EditTransmittal;
|
||||
use App\Commands\Transmittal\GenerateTransmittalSeries;
|
||||
use App\Commands\Transmittal\StoreTransmittalCommand;
|
||||
use App\Filament\Resources\TransmittalResource\Pages;
|
||||
use App\Jobs\ExportCompleteJob;
|
||||
use App\Jobs\TransmittalPDFExportJob;
|
||||
use App\Filament\Exports\TransmittalExcelExport;
|
||||
use App\Models\Branch;
|
||||
use App\Models\Client;
|
||||
use App\Models\Transmittal;
|
||||
@@ -33,14 +31,12 @@ use Filament\Forms\Components\Repeater;
|
||||
use Filament\Forms\Components\Select;
|
||||
use Filament\Forms\Components\Textarea;
|
||||
use Filament\Forms\Components\TextInput;
|
||||
use Filament\Notifications\Notification;
|
||||
use Filament\Resources\Resource;
|
||||
use Filament\Support\Enums\FontWeight;
|
||||
use Filament\Tables;
|
||||
use Filament\Tables\Filters\SelectFilter;
|
||||
use Filament\Tables\Table;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Support\Arr;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Malzariey\FilamentDaterangepickerFilter\Filters\DateRangeFilter;
|
||||
|
||||
@@ -117,10 +113,6 @@ class TransmittalResource extends Resource
|
||||
->toolbarActions([
|
||||
BulkActionGroup::make([
|
||||
DeleteBulkAction::make(),
|
||||
BulkAction::make('Bulk Export')->action(function ($records) {
|
||||
|
||||
static::exportTransmittal(Arr::flatten($records->pluck('id')));
|
||||
}),
|
||||
]),
|
||||
]);
|
||||
}
|
||||
@@ -128,7 +120,18 @@ class TransmittalResource extends Resource
|
||||
public static function getTableActions(): array
|
||||
{
|
||||
return [
|
||||
Action::make('Export')->label('Export as PDF')->action(fn ($record) => static::exportTransmittal([$record->id])),
|
||||
Action::make('Export')
|
||||
->label('Export as Excel')
|
||||
->icon('heroicon-o-arrow-down-tray')
|
||||
->action(function (Transmittal $record, $livewire) {
|
||||
$export = TransmittalExcelExport::make('transmittal');
|
||||
|
||||
return app()->call([$export, 'hydrate'], [
|
||||
'livewire' => $livewire,
|
||||
'records' => collect([$record]),
|
||||
'formData' => null,
|
||||
])->export();
|
||||
}),
|
||||
ViewAction::make(),
|
||||
Action::make('Update Status')
|
||||
->fillForm(function ($record) {
|
||||
@@ -161,24 +164,6 @@ class TransmittalResource extends Resource
|
||||
];
|
||||
}
|
||||
|
||||
public static function exportTransmittal(array $id): void
|
||||
{
|
||||
$recipient = Auth::user();
|
||||
|
||||
static::generateExportNotification();
|
||||
|
||||
dispatch(new TransmittalPDFExportJob($recipient, $id));
|
||||
}
|
||||
|
||||
public static function generateExportNotification(): Notification
|
||||
{
|
||||
|
||||
return Notification::make()
|
||||
->title('Your export will be ready. check your notification for file download link.')
|
||||
->success()
|
||||
->send();
|
||||
}
|
||||
|
||||
public static function form(Schema $schema): Schema
|
||||
{
|
||||
return $schema
|
||||
|
||||
Reference in New Issue
Block a user