public function process() { $limit = $this->data['limit']; $page = $this->data['page']; $filter = new \stdClass(); $filter->user = $this->data['user']; $filter->visitType = $this->data['visit']; $filter->client = $this->data['client']; $filter->start = $this->data['start']; $filter->end = $this->data['end']; $pager = new \Sigmamovil\Misc\PaginationDecorator(); $pager->setRowsPerPage($limit); $pager->setCurrentPage($page); $finder = new \Sigmamovil\Misc\VisitFinder(); try { $finder->setPaginator($pager); $finder->setAccount($this->account); $finder->setFilter($filter); $finder->load(); $rows = $finder->getRows(); $PHPExcel = new \Sigmamovil\Misc\PHPExcel(); $PHPExcel->setLogoDir("{$this->path->path}public/images/excel/logo.png"); $PHPExcel->setAccount($this->account); if ($this->user != null) { $PHPExcel->setUser($this->user); } $PHPExcel->setData($rows['data']); $PHPExcel->create(); $this->report = $PHPExcel->getReportData(); } catch (Exception $ex) { $this->logger->log($ex->getMessage()); return $this->set_json_response('ha ocurrido un error, por favor contacte al administrador', 500); } }
public function getrowsAction() { $post = $this->request->getPost('paginator'); // $this->logger->log(print_r($post, true)); $limit = $post['limit']; $page = $post['page']; $filter = new \stdClass(); $filter->user = $post['user']; $filter->visitType = $post['visit']; $filter->client = $post['client']; $filter->start = $post['start']; $filter->end = $post['end']; $pager = new \Sigmamovil\Misc\PaginationDecorator(); $pager->setRowsPerPage($limit); $pager->setCurrentPage($page); $finder = new \Sigmamovil\Misc\VisitFinder(); try { $finder->setPaginator($pager); $finder->setAccount($this->user->account); $finder->setFilter($filter); $finder->load(); $rows = $finder->getRows(); // $this->logger->log(print_r($rows, true)); return $this->set_json_response(json_encode($rows), 200, 'success'); } catch (Exception $ex) { $this->logger->log($ex->getMessage()); return $this->set_json_response('Ha ocurrido un error, por favor contacte al administrador', 500); } }