/** * Método que gera a página de exibição do ranking de uso do sap por parte dos professores */ public function ranking_de_uso_do_afa() { $arrayRegAfa = array(); $afaConceitoALuno = new Kernel_Models_Afa(); $avaliacoes = $afaConceitoALuno->selectRegistrosDeProfessores($this->getFiltros()->ano); while ($row = $avaliacoes->fetchObject()) { Matematica::incrementoIsset($arrayRegAfa[$row->fk_usuario_professor], 'qt'); Matematica::incrementoIsset($arrayRegAfa[$row->fk_usuario_professor], $row->fk_afa_tipo_anotacao); } $totalAvaliacoes = $avaliacoes->rowCount(); $this->loadPlugin('shadowbox', TRUE)->loadPlugin('jquery.tablesorter')->setData('professores', $this->professores->selectPorUniSerTurmDisc($this->getFiltros()->unidade, $this->getFiltros()->serie, $this->getFiltros()->turma, $this->getFiltros()->materia, array('(select count(public.aula.pk_aula) from "public".aula ' . 'WHERE "public".aula.fk_usuario_professor=' . '"public".usuario_professor.pk_usuario_professor ' . 'and extract (year from "public".aula.data_aula)=\'' . $this->getFiltros()->anoAuto . '\') as totalaulas ')))->setData('total', $totalAvaliacoes)->setData('arrayRegAfa', $arrayRegAfa)->printView(); }
/** * Método que gera o ranking de uso do afa por parte dos coordenadores */ public function listar_ranking_uso_sap() { $this->loadPlugin("jquery.tablesorter"); if (!$this->getData('mobile')) { $this->appendJs('https://maxcdn.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js'); } $ano = filter_input(INPUT_GET, 'ano', FILTER_VALIDATE_INT); $coordenadores = new Kernel_Models_Coordenador(); $afaConceitoAluno = new Kernel_Models_Afa(); $afaConceitoAlunoTipo = new ModelBase('afa.Afa_Tipo_Anotacao'); $afaConceitoAlunoSubT = new ModelBase("afa.afa_subtipo_anotacao"); $colunas = array("fk_usuario_coordenador", "score", "pk_afa_subtipo_anotacao", "fk_afa_tipo_anotacao"); $avaliacoes = $afaConceitoAluno->listarPorAno($ano, TRUE, $colunas); $totalAva = $avaliacoes->rowCount(); $arrayAva = array(); if ($totalAva) { while ($row = $avaliacoes->fetchObject()) { Matematica::incrementoIsset($arrayAva[$row->fk_usuario_coordenador], 'qt'); Matematica::incrementoIsset($arrayAva[$row->fk_usuario_coordenador]['tipo'], $row->fk_afa_tipo_anotacao); Matematica::incrementoIsset($arrayAva[$row->fk_usuario_coordenador]['sub'], $row->pk_afa_subtipo_anotacao); } } $this->setData('afaConceitosTipos', $afaConceitoAlunoTipo->select("", array("*"), "", array('afa.afa_tipo_anotacao.afa_tipo_anotacao_nome'), array(), 0, 0, 0)->fetchAll(PDO::FETCH_GROUP | PDO::FETCH_CLASS))->setData('afaConceitosSubTipos', $afaConceitoAlunoSubT->select()->fetchAll(PDO::FETCH_GROUP | PDO::FETCH_CLASS))->setData('coordAtivos', $coordenadores->listarAtivos()->fetchAll(PDO::FETCH_CLASS))->setData('totalAva', $totalAva)->setData('arrayAva', $arrayAva)->printView(); }
/** * Método de contagem para impedir ataques do tipo força bruta */ public function incTentativaLogin() { Matematica::incrementoIsset($_SESSION, 'try_login'); return $_SESSION['try_login']; }
<?php /** * * @author Servidor */ $tmp_dados = $professor->fetchObject(); $arrayQts = array(); $tabela = ""; $paineis = ""; $arrayJs = ""; $detalhes = ""; while ($row = $avaliacoes->fetchObject()) { Matematica::incrementoIsset($arrayQts, $row->pk_afa_tipo_anotacao); $tabela .= '<tr>' . '<td title=\'' . Strings::ucFirstString($row->nome) . '\'>' . Strings::ucFirstString(Strings::nomeAbreviado($row->nome)) . '</td>' . '<td>' . $row->afa_tipo_anotacao_nome . '</td>' . '<td>' . Data::sqlParaBrasil($row->data_anotacao) . '</td>' . '<td>' . $row->afa_subtipo_anotacao_nome . '</td>' . '</tr>'; $paineis .= '<div class="panel panel-blue">' . '<div class="panel-heading" role="tab" id="headingOne">' . '<h4 class="panel-title">' . '<a data-toggle="collapse" data-parent="#accordion" href="#detalhesAluno' . $row->pk_afa_conceito_aluno . '" aria-expanded="true" aria-controls="collapseOne">' . Strings::ucFirstString(Strings::nomeAbreviado($row->nome)) . '</a></h4></div><div id="detalhesAluno' . $row->pk_afa_conceito_aluno . '" class="panel-collapse collapse" ' . 'role="tabpanel" aria-labelledby="headingOne">' . '<div class="panel-body"><p><strong>Nome do aluno:</strong> ' . Strings::ucFirstString($row->nome) . '</p><p><strong>Tipo do evento:</strong> ' . $row->afa_tipo_anotacao_nome . '</p><p><strong>Data:</strong> ' . Data::sqlParaBrasil($row->data_anotacao) . '</p><p><strong>Descrição:</strong> ' . $row->afa_subtipo_anotacao_nome . '</p></div></div></div>'; } while ($row = $afaTipos->fetchObject()) { $qt = isset($arrayQts[$row->pk_afa_tipo_anotacao]) ? $arrayQts[$row->pk_afa_tipo_anotacao] : 0; $arrayJs .= '[\'' . $row->afa_tipo_anotacao_nome . ' - ' . $qt . '\', ' . $qt . '],'; $detalhes .= '<h4><strong>' . $row->afa_tipo_anotacao_nome . ':</strong> ' . $qt . '</h4>'; } if (!$mobile) { ?> <style type="text/css"> .table{ width: 100%; } .table tr td:first-of-type{ background-color: #B0C9DC;
<?php $topicos = $arrayLivro["disciplinas"]; ?> <div data-volume="<?php echo $livro->getVolume(); ?> " class="col-lg-12 col-md-12 col-sm-12 col-xs-12"> <table class="tabela"> <thead class="hidden-xs"> <?php //Criando o array responsável pelo complemento da tabela $capitulosHead = array(); foreach ($arrayLivro["disciplinas"] as $arrayDisciplina) { $tmpHead = array(); foreach ($arrayDisciplina["topicos"] as $topico) { Matematica::incrementoIsset($tmpHead, $topico->getCapitulo()->getSequencial()); if (!isset($capitulosHead[$topico->getCapitulo()->getSequencial()])) { $capitulosHead[$topico->getCapitulo()->getSequencial()] = 0; } if ($tmpHead[$topico->getCapitulo()->getSequencial()] > $capitulosHead[$topico->getCapitulo()->getSequencial()]) { $capitulosHead[$topico->getCapitulo()->getSequencial()] = $tmpHead[$topico->getCapitulo()->getSequencial()]; } } } $qt = 1; ?> <tr> <th rowspan="2">Disciplina</th> <?php foreach ($capitulosHead as $value) { ?>
/** * Método que gera a página do painel geral de registros */ public function painel_geral_de_registros() { try { $this->load->helper("link"); //Definindo os filtros $this->filtro->initGets(array("de", "ate", "unidade", "ensino", "serie", "turma", "funcao_coordenador"))->setGet(array("tipo_afa" => TipoAfa::TIPO_ATENDIMENTO)); //Inicializando os objetos básicos $sqlCoordenadores = new SqlResumoCoordenador(); $afa = new SqlAfaEqPedagogica(); $fap = new SqlFapEqPedagogica(); // $avaliacoes = new eqpedagogica_models_Avaliacoes(); $ouvidoria = new eqpedagogica_models_Ouvidoria(); //Fazendo as consultas básicas $coordenadores = $sqlCoordenadores->listarTodos($this->filtro); $fapregs = $fap->atendimentos($this->filtro); $afaRegs = $afa->acoesAtenCoordenadores($this->filtro); // die($afaRegs->queryString()); // $avaRegs = $avaliacoes->pesquisasRespCoordenadores(); $chamados = $ouvidoria->listarTodas(NULL, false, $this->filtro); //Agrupando os dados $exchangeArray = array(); // while ($afaRow = $afaRegs->fetch()) { $id = $afaRow->getAutor()->getId(); $idInc = $afaRow->getUsrInc()->getId(); $tipo = $afaRow->getSubtipo()->getTipo()->getId(); $subTipo = $afaRow->getSubtipo()->getId(); // if ($tipo == TipoAfa::TIPO_ACAO_PEDAGOGICA_FORMATIVA) { // Matematica::incrementoIsset($exchangeArray[$id], "qt_acoes"); // if ($subTipo == Subtipo::SUB_TIPO_CONVERSA_FAMILIA) { // Matematica::incrementoIsset($exchangeArray[$id], "aten_familiares"); // } // } else { // if ($subTipo == Subtipo::SUB_TIPO_SOEP) { // Matematica::incrementoIsset($exchangeArray[$id], "aten_alunos"); // } // } //Trecho temporário para contornar o erro no cadastro de ações em geral if ($tipo == TipoAfa::TIPO_ACAO_PEDAGOGICA_FORMATIVA) { Matematica::incrementoIsset($exchangeArray[$idInc], "qt_acoes"); if ($subTipo == Subtipo::SUB_TIPO_CONVERSA_FAMILIA) { Matematica::incrementoIsset($exchangeArray[$idInc], "aten_familiares"); } } else { if ($subTipo == Subtipo::SUB_TIPO_SOEP || $subTipo == Subtipo::SUB_TIPO_ATEND_COORDENACAO) { Matematica::incrementoIsset($exchangeArray[$id], "aten_alunos"); } } } while ($fapRow = $fapregs->fetch()) { $id = $fapRow->getAutor()->getId(); $subtipo = $fapRow->getSubtipo()->getTipo()->getId(); if ($subtipo == TipoFap::TIPO_ATENDIMENTO) { Matematica::incrementoIsset($exchangeArray[$id], "aten_profs"); } } while ($chamado = $chamados->fetchObject()) { $id = $chamado->destinatario; Matematica::incrementoIsset($exchangeArray[$id], "qt_chamados"); } while ($ava = $avaRegs->fetchObject()) { $id = $ava->fk_usuario; $exchangeArray[$id]["fez_ava_prof"] = true; } //Passando os dados para o view $this->loadPlugin("jquery.tablesorter")->loadPlugin("conceitos")->loadPlugin("filtros")->loadPlugin("calc-itens")->setData("coordenadores", $coordenadores)->setData("exchangeArrayExtra", $exchangeArray)->setData("getsUrl", $this->filtro->dontUseGet(array("tipo_afa", "funcao_coordenador"))->getsToURL())->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); } }
/** * Método que gera o painel geral de registros do aluno * @param int $coordenador Caso seja informado, exibe apenas os dados referentes ao coordenador */ public function painel_geral_de_registros() { try { $this->load->helper("link"); // $alunosAux = new AlunosAux(); $serieAux = new SeriesAux(); $sqlResumo = new SqlResumoALuno(); $sqlAfa = new SqlAfaAlunos(); $exchangeArray = array(); // $this->initGets(array("de", "ate", "unidade", "ensino", "serie", "turma")); //Variavel que define qual link exibir de acordo com o perfil logado $testLink = $this->tipoLogado == Perfil::ADMIN || $this->tipoLogado == Perfil::GESTOR; $filtrosPagina = array("unidade", "ensino", "serie", "turma"); $series = $serieAux->listar($this->filtro); $min = $this->tipoLogado == Perfil::COORDENADOR ? 0 : 2; if ($this->filtro->issetGetCount($filtrosPagina) > $min || $this->filtro->issetGet(array("serie", "turma")) || $series->rowCount() < 2) { $listaAlunos = $alunosAux->listar($this->filtro); } else { $listaAlunos = false; } //Trecho criado para resolver os problemas de valores que não batiam if ($listaAlunos instanceof ResultSetHydrator) { //Contando os registros do AFA $afaRegs = $sqlAfa->todos($this->filtro); while ($afa = $afaRegs->fetch()) { $alvo = $afa->getAlvo()->getId(); $tipo = $afa->getSubtipo()->getTipo()->getId(); $subTipo = $afa->getSubtipo()->getId(); if ($tipo == Tipo::TIPO_POSITIVO) { Matematica::incrementoIsset($exchangeArray[$alvo], "afa_p"); } elseif ($tipo == Tipo::TIPO_NEGATIVO) { Matematica::incrementoIsset($exchangeArray[$alvo], "afa_n"); if ($subTipo == Subtipo::SUB_TIPO_FALTA) { Matematica::incrementoIsset($exchangeArray[$alvo], "falta"); } elseif ($subTipo == Subtipo::SUB_TIPO_ATRASO) { Matematica::incrementoIsset($exchangeArray[$alvo], "atraso"); } } elseif ($tipo == Tipo::TIPO_ACAO_PEDAGOGICA_FORMATIVA) { Matematica::incrementoIsset($exchangeArray[$alvo], "acao"); } elseif ($tipo == Tipo::TIPO_ATENDIMENTO) { Matematica::incrementoIsset($exchangeArray[$alvo], "aten"); } } } /* Recebe parametro de grupoFocal */ $valida = isset($_COOKIE["grupoFocal"]); if ($valida == true) { $pkGrupo = $_COOKIE["grupoFocal"]; } else { $pkGrupo = false; } if ($pkGrupo != false) { $this->setData("grupoFocal", $pkGrupo); } else { $pkGrupo = $this->input->get('grupoFocal'); if ($pkGrupo != false) { setcookie('grupoFocal', $pkGrupo, time() + 100); $this->setData("grupoFocal", $pkGrupo); } else { $pkGrupo = 0; $this->setData("grupoFocal", $pkGrupo); } } // $this->setFiltrosList($filtrosPagina); $this->loadPlugin("jquery.tablesorter"); $this->loadPlugin("conceitos"); $this->loadPlugin("calc-itens"); $this->setData("exchangeArrayTemp", $exchangeArray); $this->setData("unidade", $this->filtro->get("unidade")); $this->setData("ensino", $this->filtro->get("ensino")); $this->setData("serie", $this->filtro->get("serie")); $this->setData("turma", $this->filtro->get("turma")); $this->setData("testLink", $testLink); $this->setData("listaAlunos", $listaAlunos); $this->setData("sqlResumo", $sqlResumo); $this->setData("getsUrl", $this->filtro->getsToURL()); // $this->printView(); } catch (Exception $exc) { $this->close($exc); } }