/** * Método usado para adicionar a coluna que informa o autor do registro * * @param string $indice A coluna referente ao apontador da tabela * * @return Select Um objeto Select contendo a coluna e o alias * para o retorno do usuário */ protected function usrAutor() { $t = $this->tg->getTabela(); $select = new Select(' '); $sqlProf = new SqlProfessor(); $sqlCoord = new SqlCoordenador(); return $select->columns(array('afa_conceito_aluno_autor' => "(case when " . "{$t}.fk_usuario_coordenador=0 then (" . $sqlProf->select()->columnsReset()->columns("usuario||','||tipo_usuario||','||" . "funcao_usuario||','||usuario_professor")->where("pk_usuario_professor=public.aula.fk_usuario_professor " . "and public.tipo_usuario.pk_tipo_usuario=" . Perfil::PROFESSOR)->limit(1) . ") else (" . $sqlCoord->select()->columnsReset()->columns("usuario||','||tipo_usuario||','||" . "funcao_usuario||','||usuario_coordenador||','||coordenacao")->where("pk_usuario_coordenador=afa.afa_conceito_aluno.fk_usuario_coordenador " . "and public.tipo_usuario.pk_tipo_usuario=" . Perfil::COORDENADOR)->limit(1) . ") end)")); }
/** * Método que gera a página de distribuição de atendimentos * @param int $pkAluno O código do aluno na tabela de usuários */ public function distribuicao_de_atendimentos($pkAluno = 0) { try { //Inicializando os filtros usados $this->initGets(array("de", "ate", "unidade", "ensino", "serie", "turma")); // $usrValidar = new Usuarios(); $sqlCoord = new SqlCoordenador(); $aluno = $usrValidar->getAluno((int) $pkAluno); $sqlAfa = new SqlAtenPedagogicosAlunos(); $registros = $sqlAfa->deAluno($aluno, $this->filtro); // $funcoes = $sqlFuncoes->listarTodos($this->filtro); $funcoes = $sqlCoord->listarFuncoes($this->filtro); $this->setUserFiltros($aluno)->setData('aluno', $aluno)->setData("funcoes", $funcoes)->setData("registros", $registros->fetchAll())->printView(); } catch (Exception $exc) { $this->close($exc); } }
/** * Método que retorna todos os coordenadores de acorod com os filtros * informado e o usuário logado * * @param Filtros $filtros Objeto do sistema de filtros * * @return ResultSetHydrator Um objeto contendo a resposta da consulta */ public function listar(Filtros $filtros) { $sqlCoord = new SqlCoordenador(); return $sqlCoord->listarTodos($filtros); }
/** * */ public function __construct() { parent::__construct(); $this->tg->setObjeto(new ResumoCoordenador()); }
/** * Método usado para adicionar a coluna que informa o autor do registro * * @param string $indice A coluna referente ao apontador da tabela * * @return Select Um objeto Select contendo a coluna e o alias * para o retorno do usuário */ protected function usrAutor() { $select = new Select(' '); $sqlUsuario = new SqlCoordenador(); return $select->columns(array('fap_registro_autor' => $sqlUsuario->select()->columnsReset()->columns("usuario||','||tipo_usuario||','||" . "funcao_usuario||','||usuario_coordenador||','||coordenacao")->where("pk_usuario={$this->tabela}.fk_usuario_inc")->limit(1))); }
/** * Método que gera a página genérica do historico do fap * @param int $pkUsuario O código do coordenador * @param int $tipo O filtro de tipo * @param int $subtipo O filtro de subtipo */ private function historicoGeral($pkUsuario, $tipo = FALSE, $subtipo = FALSE) { try { $usr = new Usuarios(); $sqlfap = new SqlFapEqPedagogica(); //Definindo os filtros $this->initGets(array("de", "ate", "professor", "coordenador")); if (is_int($tipo)) { $this->filtro->setGet(array("tipo_fap" => $tipo)); } if (is_int($subtipo)) { $this->filtro->setGet(array("subtipo_fap" => $subtipo)); } if ($this->filtro->issetGet('coordenador')) { $sqlCoord = new SqlCoordenador(); $coordenador = $sqlCoord->get($this->filtro->get('coordenador')); } else { $coordenador = $usr->getCoordenador((int) $pkUsuario); } // $registros = $sqlfap->deCoordenador($coordenador, $this->filtro); //Passando os dados para o view $this->loadPlugin("jquery.tablesorter")->loadPlugin("conceitos")->setData("tipo", $tipo)->setData("subtipo", $subtipo)->setData("coordenador", $coordenador)->setData("registros", $registros)->printView(); } catch (SqlException $sql) { echo Javascript::alert("Ocorreu um erro interno. " . "Tente novamente mais tarde"); die(Javascript::shadowboxClose()); } catch (Exception $exc) { echo Javascript::alert($exc->getMessage()); die(Javascript::shadowboxClose()); } }
/** * Método que retorna um coordenador especifico. * * @param type $id O código do coordenador pedido * @param Coordenador $especializacao Caso seja informado, * usa como modelo para o retorno * * @return Coordenador Retorna um coordenador já preenchido */ public function getCoordenador($id, Coordenador $especializacao = null) { $sqlCoordenador = new SqlCoordenador(); if (is_null($especializacao)) { $modelo = new Coordenador(); } else { $modelo = $especializacao; } //Retornando de acordo com o usuário logado switch ($this->perfilLogado) { case Perfil::ADMIN: case Perfil::GESTOR: return $sqlCoordenador->get($id, $modelo); case Perfil::COORDENADOR: return $sqlCoordenador->get($this->idLogado, $modelo); default: throw new Exception("Você não tem acesso a este usuário"); } }
/** * Método que exibe a distribuição de atendimentos pelo soep. * * @param type $pkUsuario */ public function distribuicao_de_atendimentos_por_familiares($pkUsuario = 0) { try { $this->initGets(array('de', 'ate', 'coordenador')); $this->filtro->setGet(array('subtipo_afa' => Subtipo::SUB_TIPO_CONVERSA_FAMILIA)); $usr = new Usuarios(); $sqlAfa = new SqlAfaEqPedagogica(); $sqlResponsavel = new SqlResponsavelEqPedagogica(); // if ($this->filtro->issetGet('coordenador')) { $sqlCoord = new SqlCoordenador(); $coordenador = $sqlCoord->get($this->filtro->get('coordenador')); } else { $coordenador = $usr->getCoordenador((int) $pkUsuario); } ////////////////////////////// $responsaveis = $sqlResponsavel->deCoordenadorDistr($coordenador); ////////////////////////////// $anotacoes = $sqlAfa->deCoordenadorTemp($coordenador, $this->filtro); $this->setUserFiltros($coordenador)->setData('coordenador', $coordenador)->setData('responsaveis', $responsaveis)->setData('anotacoes', $anotacoes->fetchAll())->printView(); } catch (Exception $exc) { $this->close($exc); } }
/** * Método usado para adicionar a coluna que informa o autor do registro * * @param string $indice A coluna referente ao apontador da tabela * * @return Select Um objeto Select contendo a coluna e o alias * para o retorno do usuário */ protected function usrAutor() { $select = new Select(' '); $sqlCoord = new SqlCoordenador(); return $select->columns(array('afa_conceito_aluno_autor' => $sqlCoord->select()->columnsReset()->columns("usuario||','||tipo_usuario||','||" . "funcao_usuario||','||usuario_coordenador||','||coordenacao")->where("pk_usuario=afa.afa_conceito_aluno.fk_usuario_inc " . "and public.tipo_usuario.pk_tipo_usuario=" . Perfil::COORDENADOR)->limit(1))); }