Ejemplo n.º 1
0
 /**
  * Metodo que retorna uma query básica usada para as buscas.
  *
  * @return Select Um objeto contendo uma query genérica
  */
 public function select()
 {
     $t = $this->tg->getTabela();
     $select = new Select($t);
     $sqlAluno = new SqlAluno();
     $sqlUsuario = new SqlUsuario();
     $sqlSubtipo = new SqlSubTipo();
     return $select->columns(array("data_evento", "score", "obs"), "afa_conceito_aluno_")->columns(array("pk_afa_conceito_aluno", "fk_usuario_coordenador"))->columns(array("afa_conceito_aluno_alvo" => $sqlAluno->select()->columnsReset()->columns(array("usuario||','||usuario_aluno"))->where("pk_usuario_aluno=fk_usuario_aluno")->limit(1), "afa_conceito_aluno_usuario_inc" => $sqlUsuario->select()->columnsReset()->columns(array("usuario||','||funcao_usuario"))->where("pk_usuario={$this->tabela}.fk_usuario_inc")->limit(1)))->join("afa.afa_subtipo_anotacao", array("pk_afa_subtipo_anotacao" => "fk_afa_subtipo_anotacao"))->join("public.usuario_aluno", array("pk_usuario_aluno" => "fk_usuario_aluno"))->join("public.aula", array("pk_aula" => "fk_aula"), Join::LEFT_JOIN)->import($this->usrAutor())->import($sqlSubtipo->select());
 }
Ejemplo n.º 2
0
 /**
  * Método que gera uma página genérica de distribuição de anotações
  * @param int $pkProfessor
  * @param int $tipo
  * @param int $subTipo
  */
 private function distribuicaoGeral($pkProfessor, $tipo = FALSE, $subTipo = FALSE)
 {
     try {
         $this->initGets(array("de", "ate", "professor", "unidade", "ensino", "serie", "turma"));
         $validarUsr = new Usuarios();
         $sqlTipo = new SqlTipo();
         $sqlSubtipo = new SqlSubTipo();
         $sqlAfa = new SqlAfaProfessores();
         //Aplicando os filtros
         if (is_int($tipo)) {
             $this->filtro->setGet(array("tipo_afa" => $tipo));
         }
         if (is_int($subTipo)) {
             $this->filtro->setGet(array("subtipo_afa" => $subTipo));
         }
         if ($this->filtro->issetGet("professor")) {
             $professor = $validarUsr->getProgfessor($this->filtro->get("professor"));
         } else {
             $professor = $validarUsr->getProgfessor((int) $pkProfessor);
         }
         $tipos = $sqlTipo->listarTodos($this->filtro);
         $subTipos = $sqlSubtipo->listarTodos($this->filtro);
         $anotacoes = $sqlAfa->deProfessor($professor, $this->filtro);
         //Passando os dados para o view
         $this->loadPlugin("filtros_de_tela")->setUserFiltros($professor)->setData("professor", $professor)->setData("tipos", $tipos)->setData("subTipos", $subTipos->fetchAll())->setData("anotacoes", array_reverse($anotacoes->fetchAll()))->printView();
     } catch (Exception $exc) {
         die($exc->getMessage());
     }
 }
Ejemplo n.º 3
0
 /**
  * Método que gera uma página padrão de distribuição de registros
  * @param int $pkAluno O código do aluno na tabela de usuários
  * @param int|boolean $tipo O tipo do registro no afa
  * @param int|boolean $subTipo O subtipo do registro no afa
  */
 private function distribuicaoGeral($pkAluno, $tipo = FALSE, $subTipo = FALSE)
 {
     try {
         //Inicializando os filtros usados
         $this->initGets(array("de", "ate", "unidade", "ensino", "serie", "turma"));
         //Definindo os filtros internamente
         if (is_int($tipo)) {
             $this->filtro->setGet(array("tipo_afa" => $tipo));
         }
         if (is_int($subTipo)) {
             $this->filtro->setGet(array("subtipo_afa" => $subTipo));
         }
         $usrValidar = new Usuarios();
         $aluno = $usrValidar->getAluno((int) $pkAluno);
         $sqlAfa = new SqlAfaAlunos();
         $sqlTipos = new SqlTipo();
         $sqlSubtipos = new SqlSubTipo();
         $registros = $sqlAfa->deAluno($aluno, $this->filtro);
         //Passando os dados para o view
         $this->loadPlugin("filtros_de_tela")->setUserFiltros($aluno)->setData("aluno", $aluno)->setData("afaTipos", $sqlTipos->listarTodos($this->filtro))->setData("afaSubTipos", $sqlSubtipos->listarTodos($this->filtro)->fetchAll())->setData("registros", $registros->fetchAll())->printView();
     } catch (Exception $exc) {
         $this->close($exc);
     }
 }
Ejemplo n.º 4
0
 /**
  * Método que gera a página com a distribuição de alçoes pedagógicas.
  *
  * @param int $pkUsuario
  */
 public function distribuicao_de_acoes_pedagogicas($pkUsuario = 0)
 {
     try {
         //Aplicando os filtros
         $this->initGets(array('de', 'ate', 'mes', 'coordenador', 'unidade', 'ensino', 'serie', 'turma'));
         $usr = new Usuarios();
         $sqlAfa = new SqlAcaoPedagogicaEqPedagogica();
         $sqlSubTipo = new SqlSubTipo();
         //
         if ($this->filtro->issetGet('coordenador')) {
             $sqlCoord = new SqlCoordenador();
             $coordenador = $sqlCoord->get($this->filtro->get('coordenador'));
         } else {
             $coordenador = $usr->getCoordenador((int) $pkUsuario);
         }
         $subtipos = $sqlSubTipo->listarTodos($this->filtro);
         $anotacoesRegs = $sqlAfa->deCoordenador($coordenador, $this->filtro);
         $anotacoes = array();
         while ($afa = $anotacoesRegs->fetch()) {
             $tmp = new stdClass();
             $tmp->subtipo = $afa->getSubtipo()->getId();
             $tmp->dt = $afa->getDataEvento();
             $tmp->obs = $afa->getObs();
             $tmp->status = $afa->statusTexto();
             $tmp->aluno = $afa->getAlvo()->getNome();
             array_push($anotacoes, $tmp);
         }
         //
         $this->setUserFiltros($coordenador);
         $this->setData('coordenador', $coordenador);
         $this->setData('subtipos', $subtipos);
         $this->setData('anotacoes', $anotacoes);
         $this->printView();
     } catch (Exception $exc) {
         $this->close($exc);
     }
 }