From 564b609afa3cb8786bc092e23a13ad0a388fa328 Mon Sep 17 00:00:00 2001 From: Nurmuhammet Allanov Date: Wed, 7 May 2025 18:52:10 +0500 Subject: [PATCH] add fields for outgoing letter --- .../Resources/OutgoingLetterResource.php | 26 ++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/app/Filament/Resources/OutgoingLetterResource.php b/app/Filament/Resources/OutgoingLetterResource.php index d54cafa..0cb6f7d 100644 --- a/app/Filament/Resources/OutgoingLetterResource.php +++ b/app/Filament/Resources/OutgoingLetterResource.php @@ -9,7 +9,11 @@ use Filament\Forms\Form; use Filament\Resources\Resource; use Filament\Tables; use Filament\Tables\Columns\TextColumn; +use Filament\Forms\Components\FileUpload; + use Filament\Tables\Table; +use Illuminate\Database\Eloquent\Builder; +use Illuminate\Support\Carbon; class OutgoingLetterResource extends Resource { @@ -22,15 +26,35 @@ class OutgoingLetterResource extends Resource return $form ->schema([ TextInput::make('number') + ->integer() + ->required() + ->default(fn () => getLatestNumber() + 1), + + TextInput::make('name') ->required(), + + FileUpload::make('main_file'), ]); } public static function table(Table $table): Table { return $table + ->defaultSort('number', 'desc') ->columns([ - TextColumn::make('number'), + TextColumn::make('number') + ->searchable() + ->sortable(query: fn (Builder $query, string $direction) => $query->orderByRaw("CAST(number AS UNSIGNED) $direction")), + + TextColumn::make('name') + ->searchable() + ->sortable(), + + TextColumn::make('created_at') + ->dateTime() + ->sortable() + ->sinceTooltip() + ->formatStateUsing(fn (?Carbon $state) => $state?->format('H:i, d.m.Y')), ]) ->filters([ //