© 2026 Hedgehog Software, LLC

TwitterGitHubDiscord
More
CommunitiesDocsAboutTermsPrivacy
Search
Star
Setup for Free
FilamentF
Filament•3y ago•
2 replies
Sourabh

Deselect if bulk action cancel

How to deselect records if bulk action is cancelled.
Tables\Actions\BulkAction::make('Cancelled selected')
                        ->before(function ($records, Tables\Actions\BulkAction $action) {
                            $queueRecords = $records->filter(function ($record) {
                                return $record->status === StatusEnum::QUEUED;
                            })->chunk(100)->flatten();
                            if ($queueRecords->count() == 0) {
                                Notification::make()
                                    ->title("No record found to be cancelled.")
                                    ->info()
                                    ->send();
                                $action->cancel();
                            }
                        })
                        ->action(function (Collection $records) {
                            $queueRecords = $records->filter(function ($record) {
                                return $record->status === StatusEnum::QUEUED;
                            });
                            $queueRecords->each(function ($record) {
                                $record->status = StatusEnum::CANCELLED;
                                $record->save();
                            });
                            Notification::make()->title('Selected review queue has been cancelled successfully')->success()->send();
                        })
                        ->requiresConfirmation()
                        ->modalDescription('This action is to cancel the selected review queue.Only if the status queued is available.Do you want to continue?.')
                        ->deselectRecordsAfterCompletion(),
Tables\Actions\BulkAction::make('Cancelled selected')
                        ->before(function ($records, Tables\Actions\BulkAction $action) {
                            $queueRecords = $records->filter(function ($record) {
                                return $record->status === StatusEnum::QUEUED;
                            })->chunk(100)->flatten();
                            if ($queueRecords->count() == 0) {
                                Notification::make()
                                    ->title("No record found to be cancelled.")
                                    ->info()
                                    ->send();
                                $action->cancel();
                            }
                        })
                        ->action(function (Collection $records) {
                            $queueRecords = $records->filter(function ($record) {
                                return $record->status === StatusEnum::QUEUED;
                            });
                            $queueRecords->each(function ($record) {
                                $record->status = StatusEnum::CANCELLED;
                                $record->save();
                            });
                            Notification::make()->title('Selected review queue has been cancelled successfully')->success()->send();
                        })
                        ->requiresConfirmation()
                        ->modalDescription('This action is to cancel the selected review queue.Only if the status queued is available.Do you want to continue?.')
                        ->deselectRecordsAfterCompletion(),
image.png
Filament banner
FilamentJoin
A powerful open source UI framework for Laravel • Build and ship admin panels & apps fast with Livewire
20,307Members
Resources
Was this page helpful?

Similar Threads

Recent Announcements

Similar Threads

bulk action
FilamentFFilament / ❓┊help
3y ago
Bulk Action
FilamentFFilament / ❓┊help
3y ago
Persistent bulk action
FilamentFFilament / ❓┊help
16mo ago
Delete Bulk Action
FilamentFFilament / ❓┊help
2y ago