Exemple #1
0
 /**
  * Método que gera a página com a distribuição de atendimentos por professor
  * 
  * @param int $pkUsuario
  */
 public function distribuicao_de_atendimentos_por_professor($pkUsuario = 0)
 {
     try {
         $usr = new Usuarios();
         $profs = new ProfessoresAux();
         $sqlFap = new SqlAtendimentosFapEqPedagogica();
         //
         $this->initGets(array("de", "ate", "coordenador", "unidade", "ensino", "serie", "turma"));
         if ($this->filtro->issetGet('coordenador')) {
             $sqlCoord = new SqlCoordenador();
             $coordenador = $sqlCoord->get($this->filtro->get('coordenador'));
         } else {
             $coordenador = $usr->getCoordenador((int) $pkUsuario);
         }
         $professores = $profs->listar($this->filtro, $coordenador);
         $registros = $sqlFap->deCoordenador($coordenador, $this->filtro);
         //Passando os dados para o view
         $this->setUserFiltros($coordenador)->setData("coordenador", $coordenador)->setData("professores", $professores)->setData("registros", $registros->fetchAll())->printView();
     } catch (Exception $exc) {
         $this->close($exc);
     }
 }
 /**
  * Método que criar a página de ranking de faltas dos professores
  * @param int $coordenador Caso seja informado, exibe apenas os dados referentes ao coordenador
  */
 public function painel_geral_de_registros()
 {
     try {
         $this->load->helper("link");
         //Inicializando os objetos básicos
         $profAux = new ProfessoresAux();
         $sqlAfa = new SqlAfaProfessores();
         $sqlFap = new SqlFapProfessores();
         $sqlAula = new SqlAulaProfessores();
         $sqlResumo = new SqlResumoProfessor();
         //
         $exchangeArray = array();
         //Inicializando os filtros
         $this->filtro->initGets(array("de", "ate", "unidade", "ensino", "serie", "turma", "area_da_natureza", "grupo"));
         //Realizando as consultas
         $professores = $profAux->listar($this->filtro);
         $regsAfa = $sqlAfa->pgrCount($this->filtro);
         $regsFap = $sqlFap->pgrCount($this->filtro);
         $aulas = $sqlAula->pgrCount($this->filtro);
         //Organizando os dados
         //--Agrupando as aulas
         while ($aula = $aulas->fetchObject()) {
             $id = $aula->prof;
             Matematica::incrementoIsset($exchangeArray[$id], "aulas");
         }
         //--Agrupando os dados do AFA
         while ($afa = $regsAfa->fetchObject()) {
             $id = $afa->id;
             $tipo = $afa->tipo;
             if ($tipo === TipoAfa::TIPO_POSITIVO) {
                 Matematica::incrementoIsset($exchangeArray[$id], "afa_p");
             } elseif ($tipo === TipoAfa::TIPO_NEGATIVO) {
                 Matematica::incrementoIsset($exchangeArray[$id], "afa_n");
             }
         }
         //--Agrupando os dados do FAP
         while ($fap = $regsFap->fetchObject()) {
             $id = $fap->id;
             $tipo = $fap->tipo;
             $subtipo = $fap->subtipo;
             if ($tipo === TipoFap::TIPO_ATRASO) {
                 Matematica::incrementoIsset($exchangeArray[$id], "fap_a");
             } elseif ($tipo === TipoFap::TIPO_FALTA) {
                 if ($subtipo === SubTipoFap::SUB_TIPO_FALTA_JUSTIFICADA) {
                     Matematica::incrementoIsset($exchangeArray[$id], "fap_fj");
                 } elseif ($subtipo === SubTipoFap::SUB_TIPO_FALTA_N_JUSTIFICADA) {
                     Matematica::incrementoIsset($exchangeArray[$id], "fap_fnj");
                 } elseif ($subtipo === SubTipoFap::SUB_TIPO_LICENCA) {
                     Matematica::incrementoIsset($exchangeArray[$id], "fap_fl");
                 }
             } elseif ($tipo === TipoFap::TIPO_ATENDIMENTO) {
                 Matematica::incrementoIsset($exchangeArray[$id], "fap_aten");
             }
         }
         //Carregando os plugins usados na página
         $this->loadPlugin("jquery.tablesorter");
         $this->loadPlugin("ocultarmenulateral");
         $this->loadPlugin("conceitos");
         $this->loadPlugin("filtros");
         $this->loadPlugin("calc-itens");
         //Passando os dados obtidos para o view e exibinto a página
         $this->setData("professores", $professores);
         $this->setData("sqlResumo", $sqlResumo);
         $this->setData("exchangeArray", $exchangeArray);
         $this->setData("getsUrl", $this->filtro->getsToURL());
         $this->printView();
     } catch (Exception $exc) {
         $this->close($exc);
     }
 }