Пример #1
0
 /**
  * Método que retorna as mensagens do aluno informado
  * 
  * @param Aluno $aluno
  * @param Filtros $filtros Objeto do sistema de filtros
  * 
  * @return ResultSetHydrator Um objeto contendo a resposta da consulta
  */
 public function deAluno(Aluno $aluno, Filtros $filtros)
 {
     $where = "public.usuario_aluno.fk_usuario={$aluno->getId()}";
     $select = $this->select()->distinct(array("pk_area_transferencia"))->join("public.usuario_aluno", array("fk_turma" => "transf.area_transferencia_dest.fk_turma"));
     $this->filtrosPeriodo($where, $filtros, "data_inc");
     $sel = new Select(array("mensagens" => $select->where($where)));
     return $this->tg->selectObj($sel->order(array("{$this->tg->getTabela(true)}_data_inc")));
 }
Пример #2
0
 /**
  * Método qutodos os professores cadastrados
  * @param Filtros $filtros Objeto do sistema de filtros
  * @return ResultSetHydrator Um objeto contendo a resposta da consulta
  */
 public function listarTodos(Filtros $filtros)
 {
     $where = "";
     $select = $this->select()->join("public.grade", array("fk_usuario_professor" => "pk_usuario_professor"))->join("public.materia_vin", array("pk_materia_vin" => "public.grade.fk_materia_vin"));
     $this->filtrosUEST($select, $where, $filtros);
     $this->filtrosAGD($select, $where, $filtros);
     $selOrdem = new Select(array("professores" => $select->distinct("pk_usuario")->where($where)));
     return $this->tg->selectObj($selOrdem->order("usuario_nome", Order::ASC));
 }
Пример #3
0
 /**
  * Método que retorna todos os registros do coordenador informado
  * 
  * @param Coordenador $coordenador O coordenador autor do registro
  * @param Filtros $filtros Objeto do sistema de filtros
  * 
  * @return ResultSetHydrator Um objeto contendo todos os registros retornados
  */
 public function deCoordenador(Coordenador $coordenador, Filtros $filtros)
 {
     $where = "fk_usuario_inc={$coordenador->getId()} ";
     $this->filtrosPeriodo($where, $filtros);
     $this->filtrosTipoSub($where, $filtros);
     if ($filtros->issetGet("professor")) {
         $where .= "and public.usuario_professor.fk_usuario={$filtros->get("professor")} ";
     }
     $select = new Select(array("fap" => $this->select()->where($where)->distinct("pk_fap_registro")));
     return $this->tg->selectObj($select->order("fap_registro_data_evento", Order::DSC));
 }
Пример #4
0
 /**
  * Método que retorna todas as turmas cadastradas
  * @param Filtros $filtros Objeto do sistema de filtros
  * @return ResultSetHydrator Um objeto contendo todas as turmas retornadas pela consulta
  */
 public function listarTodas(Filtros $filtros)
 {
     $where = "public.turma.ano={$this->anoLetivo} " . "and public.turma.status=" . Status::ATIVO;
     //Filtrando
     if ($filtros->issetGet("unidade")) {
         $where .= " and pk_unidade={$filtros->get("unidade")}";
     }
     if ($filtros->issetGet("ensino")) {
         $where .= " and pk_ensino={$filtros->get("ensino")}";
     }
     if ($filtros->issetGet("serie")) {
         $where .= " and pk_serie={$filtros->get("serie")}";
     }
     //Retornando a consulta
     $select = new Select(array("turmas" => $this->select()->distinct("pk_turma")->where($where)));
     return $this->tg->selectObj($select->order("turma_nome"));
 }
 /**
  * Método que lista todas as funções relacionadas aos coordenadores
  * 
  * @param Filtros $filtros Objeto do sistema de filtros
  * 
  * @return ResultSetHydrator Um objeto contendo a resposta da consulta
  */
 public function deCoordenadores(Filtros $filtros)
 {
     $select = new Select(array("funcoes" => $this->select()->join("public.usuario", array("fk_funcao_usuario" => "pk_funcao_usuario"))->join("public.usuario_coordenador", array("fk_usuario" => "pk_usuario"))->distinct("pk_funcao_usuario")));
     return $this->tg->selectObj($select->order("funcao_usuario_nome"));
 }
Пример #6
0
 /**
  * Método que retorna apenas os coordenadores com funções distintas
  * 
  * @param Filtros $filtros Objeto do sistema de filtros
  * 
  * @return ResultSetHydrator Um objeto contendo a resposta da consulta
  */
 public function listarFuncoes(Filtros $filtros)
 {
     $coordenador = new Coordenador();
     $select = new Select(array("tipos" => $this->listarTodosBase($filtros->dontUseVar("funcao_coordenador"))->distinct("public.usuario_coordenador.tipo")));
     return $this->tg->selectObj($select->order("{$coordenador->getColunaBase()}tipo"));
 }
 /**
  * Método que retorna todas as ações relacionadas ao aluno informado
  * @param Aluno $aluno O aluno base da consulta
  * @return ResultSetHydrator Um objeto contendo a resposta da consulta
  */
 public function deAluno(Aluno $aluno)
 {
     $select = new Select(array("afa" => $this->select()->where("public.usuario_aluno.fk_usuario={$aluno->getId()} " . "and extract(year from data_anotacao)={$this->anoLetivo}")->distinct("pk_afa_conceito_aluno")->join("public.usuario_aluno", array("pk_usuario_aluno" => "{$this->tg->getTabela()}.fk_usuario_aluno"))));
     return $this->tg->selectObj($select->order("pk_afa_conceito_aluno", Order::DSC));
 }
Пример #8
0
 /**
  * Método que retorna todas as ocorrências do professor informado
  * 
  * @param Professor $professor O professor alvo dos registros
  * @param Filtros $filtros Objeto do sistema de filtros
  * 
  * @return ResultSetHydrator Objeto contendo a resposta da consulta
  */
 public function ocrrencias(Professor $professor, Filtros $filtros)
 {
     $subSelect = $this->select()->distinct(array("pk_fap_registro"));
     $where = "{$this->tabela}.fk_usuario_professor={$professor->getIdEspecifico()} " . " and (pk_fap_tipo!=" . Tipo::TIPO_ATENDIMENTO . ") ";
     //Filtrando por periodo
     $this->filtrosPeriodo($where, $filtros);
     if ($filtros->issetVar(array('unidade', 'ensino', 'serie', 'turma'))) {
         $subSelect->join("public.aula", array("pk_aula" => "{$this->tabela}.fk_aula"))->join("public.grade", array("pk_grade" => "public.aula.fk_grade"));
         $this->filtrosUEST($subSelect, $where, $filtros);
     }
     //Montando a consulta principal
     $select = new Select(array("fap" => $subSelect->where($where)));
     return $this->tg->selectObj($select->order(array("fap_registro_data_evento", "pk_fap_registro"), Order::DSC));
 }
Пример #9
0
 /**
  * Metodo que lista todos os registros do aluno informado feitos pelo coordenador informado.
  *
  * @param Aluno   $aluno   O aluno usado como filtro
  * @param Filtros $filtros Objeto do sistema de filtros
  *
  * @return ResultSetHydrator Um objeto contendo a resposta da consulta
  *
  * @throws RegistrosException
  */
 public function deAlunoCoordenador(Coordenador $coordenador, Aluno $aluno, Filtros $filtros)
 {
     if (!$aluno->getId()) {
         throw new RegistrosException('O aluno informado não é válido');
     }
     $where = "public.usuario_aluno.fk_usuario={$aluno->getId()} " . "and {$this->tabela}.fk_usuario_coordenador={$coordenador->getIdEspecifico()} ";
     //Aplicando os filtros
     //-Pertiodo
     if ($filtros->issetVar('de')) {
         $where .= "and data_evento>='{$filtros->read('de')->format(Date::FORMAT_SQL_DATE)}' ";
     }
     if ($filtros->issetVar('ate')) {
         $where .= "and data_evento<='{$filtros->read('ate')->format(Date::FORMAT_SQL_DATE)}' ";
     }
     //-Tipo e subtipo
     if (!$filtros->issetVar(array('tipo_afa', 'subtipo_afa'))) {
         //Este trecho bloqueia a exibição de qualquer outro tipo de anotação
         $where .= 'and (pk_afa_tipo_anotacao=' . Tipo::TIPO_POSITIVO . ' ';
         $where .= 'or pk_afa_tipo_anotacao=' . Tipo::TIPO_NEGATIVO . ') ';
     } else {
         $this->filtrosTipoSub($where, $filtros);
     }
     //
     $select = new Select(array('afa' => $this->select()->distinct('pk_afa_conceito_aluno')->join("public.usuario_aluno", array("pk_usuario_aluno" => "{$this->tg->getTabela()}.fk_usuario_aluno"))->where($where)));
     return $this->tg->selectObj($select->order('afa.pk_afa_conceito_aluno', Order::DSC));
 }
Пример #10
0
 /**
  * Método que lista todas as anotações feitas pelo professor informado.
  * 
  * @param Professor $professor
  * @param Filtros   $filtros
  * 
  * @return ResultSetHydrator Um objeto contendo a resposta da consulta
  */
 public function deProfessor(Professor $professor, Filtros $filtros)
 {
     $where = "public.aula.fk_usuario_professor={$professor->getIdEspecifico()} ";
     $select = $this->select()->distinct('pk_afa_conceito_aluno');
     $this->filtrosPeriodo($where, $filtros);
     if ($filtros->issetGet("unidade", "ensino", "serie", "turma")) {
         $select->join("public.aula", array("pk_aula" => "fk_aula"))->join("public.grade", array("pk_grade" => "fk_grade"));
         $this->filtrosUEST($select, $where, $filtros);
     }
     $this->filtrosTipoSub($where, $filtros);
     $selOrdenar = new Select(array('afa' => $select->where($where)));
     return $this->tg->selectObj($selOrdenar->order(array('afa_conceito_aluno_data_evento', 'pk_afa_conceito_aluno'), Order::DSC));
 }