/** * Método que retorna os alunos de acordo com o * usuário logado e os filtros informados * * @param Filtros $filtros Objeto do sistema de filtros * * @return ResultSetHydrator Um objeto contendo os alunos retornados da consulta */ public function listar(Filtros $filtros) { $sqlAluno = new SqlAluno(); switch ($this->usuarioLogado->getPerfil()->getId()) { case Perfil::ADMIN: case Perfil::GESTOR: return $sqlAluno->listarTodos($filtros); case Perfil::COORDENADOR: $coordenador = new Coordenador($this->usuarioLogado->getId()); return $sqlAluno->deCoordenador($coordenador, $filtros); case Perfil::RESPONSAVEL: default: break; } }
/** * Método que gera a página de distribuição de atendimentos por alunos. * * @param type $pkUsuario */ public function distribuicao_de_atendimentos_por_alunos($pkUsuario = 0) { try { $this->initGets(array('de', 'ate', 'unidade', 'ensino', 'serie', 'turma', 'coordenador')); $usr = new Usuarios(); $sqlAfa = new SqlAtenPedagogicosEqPedagogica(); $sqlAluno = new SqlAluno(); // if ($this->filtro->issetGet('coordenador')) { $sqlCoord = new SqlCoordenador(); $coordenador = $sqlCoord->get($this->filtro->get('coordenador')); } else { $coordenador = $usr->getCoordenador((int) $pkUsuario); } $alunos = $sqlAluno->deCoordenador($coordenador, $this->filtro); $anotacoes = $sqlAfa->deCoordenador($coordenador, $this->filtro); $this->setUserFiltros($coordenador)->setData('coordenador', $coordenador)->setData('alunos', $alunos)->setData('anotacoes', $anotacoes->fetchAll())->printView(); } catch (Exception $exc) { $this->close($exc); } }