schema([ Forms\Components\DatePicker::make('event_date') ->required() ->default(now()) ->label('Event Date'), Forms\Components\TimePicker::make('event_time') ->required() ->default(now()) ->label('Event Time'), Forms\Components\TextInput::make('location')->nullable()->label('Location'), Forms\Components\Select::make('source') ->options([ 'manual' => 'دستی', 'api' => 'API', 'system' => 'سیستم', ]) ->default('manual') ->label('منبع'), Forms\Components\TextInput::make('event_description')->required()->label('Event Description'), Forms\Components\Select::make('delivery_status') ->options([ 'processed' => 'Processed', 'picked_up' => 'Picked Up', 'in_transit' => 'In Transit', 'out_for_delivery' => 'Out For Delivery', 'failed' => 'Failed', 'delivered' => 'Delivered', 'returned' => 'Returned', ]) ->nullable() ->label('Delivery Status'), ]); } public function table(Table $table): Table { return $table ->columns([ Tables\Columns\TextColumn::make('event_date')->date()->label('Date')->sortable(), Tables\Columns\TextColumn::make('event_time')->time()->label('Time'), Tables\Columns\TextColumn::make('location')->label('Location'), Tables\Columns\TextColumn::make('event_description')->label('Description')->limit(60), Tables\Columns\TextColumn::make('delivery_status')->badge()->label('Status'), Tables\Columns\TextColumn::make('source')->badge()->label('Source'), ]) ->defaultSort('event_date', 'desc') ->headerActions([ Tables\Actions\CreateAction::make(), ]) ->actions([ Tables\Actions\EditAction::make(), Tables\Actions\DeleteAction::make(), ]) ->bulkActions([ Tables\Actions\BulkActionGroup::make([ Tables\Actions\DeleteBulkAction::make(), ]), ]); } }