/** * Render async request * @return array */ public function renderAsync() { $query = $this->repository->query(); $totalCount = count($query->getQuery()->execute()); $this->applySearch($query); $this->applyColumnSearch($query); $this->modifyQuery($query); $filteredCount = count($query->getQuery()->execute()); $this->applyOrders($query); $this->applyOffset($query); $collection = $query->getQuery()->execute(); return $this->prepareDatatablesStructure($collection, $totalCount, $filteredCount); }