schema([ Select::make('patient_id') ->relationship('patient', 'name') ->searchable() ->required(), Select::make('doctor_id') ->relationship('doctor', 'name') ->searchable() ->required(), DatePicker::make('registration_date')->required(), Select::make('status') ->options([ 'waiting' => 'Waiting', 'in_progress' => 'In Progress', 'completed' => 'Completed', ])->required(), ]); } public static function table(Table $table): Table { return $table ->columns([ Tables\Columns\TextColumn::make('no') ->label('No.') ->getStateUsing(function ($rowLoop, $record) { return $rowLoop->iteration; }), TextColumn::make('patient.name')->label('Patient')->searchable(), TextColumn::make('doctor.name')->label('Doctor')->searchable(), TextColumn::make('registration_date')->date(), TextColumn::make('status') ->badge() ->colors([ 'warning' => 'waiting', 'primary' => 'in_progress', 'success' => 'completed', ]), ]) ->filters([ // ]) ->actions([ Tables\Actions\EditAction::make(), ]) ->bulkActions([ Tables\Actions\BulkActionGroup::make([ Tables\Actions\DeleteBulkAction::make(), ]), ]); } public static function getRelations(): array { return [ PatientTreatmentsRelationManager::class, ]; } public static function getPages(): array { return [ 'index' => Pages\ListRegistrations::route('/'), 'create' => Pages\CreateRegistration::route('/create'), 'edit' => Pages\EditRegistration::route('/{record}/edit'), ]; } }