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') ->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([ // ]) ->actions([ Tables\Actions\EditAction::make(), ]) ->bulkActions([ Tables\Actions\BulkActionGroup::make([ Tables\Actions\DeleteBulkAction::make(), ]), ]); } public static function getRelations(): array { return [ // ]; } public static function getPages(): array { return [ 'index' => Pages\ListOutgoingLetters::route('/'), 'create' => Pages\CreateOutgoingLetter::route('/create'), 'edit' => Pages\EditOutgoingLetter::route('/{record}/edit'), ]; } }