getRepo()->findByPublicIdsWithTrashed($ids); foreach ($entities as $entity) { if(Auth::user()->can('edit', $entity)){ $this->getRepo()->$action($entity); } } return count($entities); } public function createDatatable($entityType, $query, $showCheckbox = true, $hideClient = false, $orderColumns = []) { $columns = $this->getDatatableColumns($entityType, !$showCheckbox); $actions = $this->getDatatableActions($entityType); return $this->datatableService->createDatatable($entityType, $query, $columns, $actions, $showCheckbox, $orderColumns); } protected function getDatatableColumns($entityType, $hideClient) { return []; } protected function getDatatableActions($entityType) { return []; } }