diff --git a/app/Filament/Resources/VisitorEntryResource.php b/app/Filament/Resources/VisitorEntryResource.php index 166c5b1..7fe7892 100644 --- a/app/Filament/Resources/VisitorEntryResource.php +++ b/app/Filament/Resources/VisitorEntryResource.php @@ -2,6 +2,8 @@ namespace App\Filament\Resources; +use App\Filament\Exports\VisitorEntryExporter; +use App\Filament\Imports\VisitorEntryImporter; use App\Filament\Resources\VisitorEntryResource\Pages; use App\Filament\Resources\VisitorEntryResource\RelationManagers; use App\Models\VisitorEntry; @@ -18,6 +20,8 @@ use Filament\Infolists\Components\ImageEntry; use Filament\Infolists\Components\TextEntry; use Filament\Infolists\Components\Section; use Carbon\Carbon; +use Filament\Tables\Actions\ExportAction; +use Filament\Tables\Actions\ImportAction; class VisitorEntryResource extends Resource { @@ -216,10 +220,12 @@ class VisitorEntryResource extends Resource Tables\Columns\TextColumn::make('register_id') ->label('Register ID') ->alignCenter() + ->searchable() ->sortable(), Tables\Columns\TextColumn::make('type') ->label('Visitor Type') ->alignCenter() + ->searchable() ->sortable(), Tables\Columns\TextColumn::make('name') ->label('Visitor Name') @@ -229,14 +235,18 @@ class VisitorEntryResource extends Resource Tables\Columns\TextColumn::make('mobile_number') ->label('Visitor Mobile Number') ->alignCenter() + ->searchable() + ->searchable() ->sortable(), Tables\Columns\TextColumn::make('employeeMaster.name') ->label('Recipient Name') ->alignCenter() + ->searchable() ->sortable(), Tables\Columns\TextColumn::make('employeeMaster.code') ->label('Receipient ID') ->alignCenter() + ->searchable() ->sortable(), Tables\Columns\TextColumn::make('employeeMaster.department') ->label('Receipient Department') @@ -245,20 +255,24 @@ class VisitorEntryResource extends Resource Tables\Columns\TextColumn::make('number_of_person') ->label('Number of Person') ->numeric() + ->searchable() ->alignCenter() ->sortable(), Tables\Columns\TextColumn::make('in_time') ->label('In Time') + ->searchable() ->dateTime() ->sortable() ->alignCenter(), Tables\Columns\TextColumn::make('out_time') ->label('Out Time') + ->searchable() ->dateTime() ->sortable() ->alignCenter(), Tables\Columns\TextColumn::make('valid_upto') ->label('Valid Upto') + ->searchable() ->dateTime() ->sortable() ->alignCenter() @@ -298,6 +312,18 @@ class VisitorEntryResource extends Resource Tables\Actions\ForceDeleteBulkAction::make(), Tables\Actions\RestoreBulkAction::make(), ]), + ]) + ->headerActions([ + ImportAction::make() + ->importer(VisitorEntryImporter::class) + ->visible(function() { + return Filament::auth()->user()->can('view import visitor entries'); + }), + ExportAction::make() + ->exporter(VisitorEntryExporter::class) + ->visible(function() { + return Filament::auth()->user()->can('view export visitor entries'); + }), ]); } @@ -323,6 +349,8 @@ class VisitorEntryResource extends Resource // ── Visitor Details ── Section::make('Visitor Details') ->schema([ + TextEntry::make('register_id') + ->label('Register ID'), TextEntry::make('name') ->label('Visitor Name'), TextEntry::make('mobile_number')