/** * Método que gera a página com a distribuição de ocorrências do professor. * * @param type $pkProfessor */ public function distribuicao_de_registros($pkProfessor = 0) { try { $sqlAFa = new SqlAfaProfessores(); $sqlFap = new SqlFapProfessores(); $sqlAula = new SqlAulaProfessores(); $sqlTipo = new SqlTipo(); $sqlSubtipo = new SqlSubtipo(); $resumo = new ResumoProfessor(); $this->initGets(array("de", "ate", "tipo_fap", "professor", "unidade", "ensino", "serie", "turma")); // $validarUsr = new Usuarios(); // if ($this->filtro->issetGet("professor")) { $professor = $validarUsr->getProgfessor($this->filtro->get("professor")); } else { $professor = $validarUsr->getProgfessor((int) $pkProfessor); } // $resumo->exchangeArray(array("pk_usuario" => $professor->getId(), "pk_usuario_professor" => $professor->getIdEspecifico(), "usuario_nome" => $professor->getNome(), "aulas" => $sqlAula->totalAulas($professor, $this->filtro), "afa_p" => $sqlAFa->totalPositivos($professor, $this->filtro), "afa_n" => $sqlAFa->totalNegativos($professor, $this->filtro), "fap_fj" => $sqlFap->totalFaltasJ($professor, $this->filtro), "fap_fnj" => $sqlFap->totalFaltasNJ($professor, $this->filtro), "fap_fl" => $sqlFap->totalFaltasL($professor, $this->filtro), "fap_a" => $sqlFap->totalAtrasos($professor, $this->filtro))); $ocorrencias = $sqlFap->ocrrencias($professor, $this->filtro); $tipos = $sqlTipo->listarTodos($this->filtro); $subtipos = $sqlSubtipo->listarTodos($this->filtro); //Passando os dados para o view $this->loadPlugin('bootstrap-datepicker', 'responsive')->loadPlugin('filtros_de_tela')->loadPlugin('calc-itens')->setUserFiltros($professor)->setData('professor', $professor)->setData('resumo', $resumo)->setData('registros', $ocorrencias->fetchAll())->setData('tipos', $tipos)->setData('subtipos', $subtipos->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); } }