getLoginUser(); $pagerQuery = new PagerQuery(); $sort = $pagerQuery->getSort(); $page = $pagerQuery->getPage(); $limit = $pagerQuery->getLimit(); $params = $pagerQuery->getParams(); $params['teacher_id'] = $user->id; $params['status'] = $params['status'] ?? null; if ($params['status'] == 'pending') { $params['replied'] = 0; } elseif ($params['status'] == 'replied') { $params['replied'] = 1; } $repo = new TeacherConsultRepo(); $pager = $repo->paginate($params, $sort, $page, $limit); return $this->handleConsults($pager); } protected function handleConsults($pager) { $service = new ConsultListService(); return $service->handleConsults($pager); } }