示例#1
0
 /**
  * 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();
 }
示例#2
0
 /**
  * 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();
 }
示例#3
0
 /**
  * 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) {
        ?>
示例#6
0
 /**
  * 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);
     }
 }
示例#7
0
 /**
  * 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);
     }
 }
示例#8
0
 /**
  * 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);
     }
 }