Пример #1
0
 /**
  * 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");
     }
 }
Пример #2
0
 /**
  * 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());
     }
 }
Пример #3
0
 /**
  * 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);
     }
 }