/** * Método que trabalha os dados para exibição dos indicadores dos professores * @param int $pkPesquisaCat O código da categoria da pesquisa * @param int $pkSerie O código da serie * @param int $pkTurma O código da turma */ public function indicadores($pkPesquisaCat, $pkSerie, $pkTurma) { $sqlPesquisa = new SqlPesquisa(); $pesquisaNome = $sqlPesquisa->get_pesquisa_nome((int) $pkPesquisaCat); if (!(int) $pkPesquisaCat || !(int) $pkSerie || !(int) $pkTurma || !count($pesquisaNome)) { echo Javascript::alert('Dados inválido. Os dados informados para a pesquisa são inválidos'); echo Javascript::shadowboxClose(); echo Javascript::history_back(); return; } $turma = new Kernel_Models_Turma(); // $fapRankingPesqTurmaInd = $this->load->model('fap_ranking_pesquisa_turma_indicador'); $fapRankingPesqTurmaInd = new ModelBase("fap.ranking_pesquisa_turma_indicador"); $rankingTurma = $fapRankingPesqTurmaInd->select('fk_pesquisa_cat=' . $pkPesquisaCat . ' and fk_turma=' . $pkTurma, array(), '', array('indicador'), array(), 0, 0, 0); $lsita = array(); $conteudo = $assiduidade = $disciplina = $envolvimento = array(); $arrayTipos = array('', 'Conteúdo', 'Assiduidade', 'Disciplina', 'Envolvimento'); while ($row = $rankingTurma->fetchObject()) { if (!isset($lsita[$row->fk_pes_questao_template][$row->fk_usuario_professor])) { $lsita[$row->fk_pes_questao_template][$row->fk_usuario_professor] = $row; } switch ($row->fk_pes_questao_template) { case 1: $conteudo[] = $row->indicador; break; case 2: $assiduidade[] = $row->indicador; break; case 3: $disciplina[] = $row->indicador; break; default: $envolvimento[] = $row->indicador; break; } } $conteudoMedia = Matematica::mediaAritimeticaArray($conteudo); $assiduidadeMedia = Matematica::mediaAritimeticaArray($assiduidade); $disciplinaMedia = Matematica::mediaAritimeticaArray($disciplina); $envolvimentoMedia = Matematica::mediaAritimeticaArray($envolvimento); $this->setData('sqlPesquisa', $sqlPesquisa)->setData('pkPesquisa', $pkPesquisaCat)->setData('pesquisaNome', $pesquisaNome)->setData('pkSerie', $pkSerie)->setData('pkTurma', $pkTurma)->setData('conteudoMedia', number_format($conteudoMedia, 1))->setData('conteudoConceito', View::bgConceito($conteudoMedia))->setData('assiduidadeMedia', number_format($assiduidadeMedia, 1))->setData('assiduidadeConceito', View::bgConceito($assiduidadeMedia))->setData('disciplinaMedia', number_format($disciplinaMedia, 1))->setData('disciplinaConceito', View::bgConceito($disciplinaMedia))->setData('envolvimentoMedia', number_format($envolvimentoMedia, 1))->setData('envolvimentoConceito', View::bgConceito($envolvimentoMedia))->setData('listaResumo', $lsita)->setData('arrayTipos', $arrayTipos)->setData('turma', $turma->getObject('pk_turma=' . (int) $pkTurma))->setData('pesquisaTurma', $sqlPesquisa->ranking_pesquisa_turma($pkPesquisaCat, $pkTurma, $this->getData('ano_letivo')))->setData('filtroTurmas', $sqlPesquisa->ranking_pesquisa_cat_fitro_turma($pkPesquisaCat, $pkSerie, $this->getData('ano_letivo')))->printView(); }
public function graficos_pesquisa_fap($pk_usuario, $pk_usuario_professor, $pk_pesquisa_url = 0) { $data = $this->getParametroVisao(); $data['msg'] = $this->getMsg(); if ($data['mobile']) { $data['usuario'] = unserialize($_SESSION['usuario']); $data['page'] = __FUNCTION__; $data['tema'] = $this->load->setTheme('responsive'); $data['js'] = array('/js/plugins/filtros/filtros.min.js'); } else { $data['page'] = 'home'; $data['tema'] != '' ? $this->load->setTheme($data['tema']) : ''; $data['js'] = array('js/modules/fap/fap.js'); $data['css'] = array('css/modules/fap.css'); } $data['msg'] = $this->getMsg(); $data['abaAtiva'] = 8; $data['abaPage'] = 'graficos_pesquisa_fap'; $data['alias'] = 'graficos_pesquisa_fap'; $data['total'] = 0; $pk_usuario_professor = $this->uri->segment(5) != '' ? $this->uri->segment(5) : $data['idUsuarioProfessor']; $print = isset($_GET['print']) && $_GET['print'] != '' ? '_print' : ''; $sqlUsuario = new SqlUsuario(); $result = $sqlUsuario->get_nome($this->uri->segment(4)); $data['nome'] = $result['registros'][0]['nome']; $ano = isset($_GET['ano']) ? $_GET['ano'] : $data['ano_letivo']; $sqlPesquisa = new SqlPesquisa(); $result = $sqlPesquisa->get_pesquisa_professor(0, $pk_usuario_professor, $ano); $data['pesquisas'] = $result; if ($result['total'] > 1) { $data['pesquisas'] = $result; } $result = end(end($result)); if (isset($_GET['pk_pesquisa'])) { $pk_pesquisa = $_GET['pk_pesquisa']; $data['pk_pesquisa'] = $_GET['pk_pesquisa']; $sqlPesquisa = new SqlPesquisa(); $result = $sqlPesquisa->get_pesquisa_professor($pk_pesquisa, $pk_usuario_professor, $ano); $data['pesquisa_nome'] = $result['registros'][0]['pes_nome']; $data['turma_nome'] = $result['registros'][0]['turma_nome']; } else { if ($pk_pesquisa_url != 0) { $sqlPesquisa = new SqlPesquisa(); $result = $sqlPesquisa->get_pesquisa_professor($pk_pesquisa_url, $pk_usuario_professor, $ano); $pk_pesquisa = $result['registros'][0]['pk_pesquisa']; $data['pk_pesquisa'] = $result['registros'][0]['pk_pesquisa']; $data['pesquisa_nome'] = $result['registros'][0]['pes_nome']; $data['turma_nome'] = $result['registros'][0]['turma_nome']; } else { $pk_pesquisa = $result['pk_pesquisa']; $_SESSION['pk_pesquisa_fap'] = $result['pk_pesquisa']; $data['pk_pesquisa'] = $result['pk_pesquisa']; $data['pesquisa_nome'] = $result['pes_nome']; $data['turma_nome'] = $result['turma_nome']; } } $pesquisa = 'pk_pesquisa=' . $data['pk_pesquisa']; if ($pk_pesquisa != NULL) { $sqlPesquisa = new SqlPesquisa(); $result = $sqlPesquisa->get_indicador_geral($pk_pesquisa, $pk_usuario_professor); $indicador_geral = number_format($result[0]['indicadorgeral'], 1); $data['indicador_geral'] = View::bgConceito(number_format($indicador_geral, 1)); $sqlPesquisa = new SqlPesquisa(); $pesquisas = $sqlPesquisa->listar_pesquisa_questoes($pk_pesquisa, $pk_usuario_professor); $percMim = 20; // define o critério mínimo para incluir uma observação no relatório do professor $percConteudoViesB = ''; $percConteudoViesC = ''; $percConteudoViesD = ''; $percConteudoViesE = ''; $percAssiduidadeViesB = ''; $percAssiduidadeViesC = ''; $percAssiduidadeViesD = ''; $percAssiduidadeViesE = ''; $percDisciplinaViesB = ''; $percDisciplinaViesC = ''; $percDisciplinaViesD = ''; $percDisciplinaViesE = ''; $percRelacionamentoViesB = ''; $percRelacionamentoViesC = ''; $percRelacionamentoViesD = ''; $percRelacionamentoViesE = ''; $conteudo = ''; if ($print != '') { $conteudo .= '<h5>Indicador geral: ' . $data['indicador_geral']['score'] . ' (' . $data['indicador_geral']['conceito'] . ')</h5>'; } else { $conteudo .= '<div class="pesquisa"><div class="pesquisa_titulo">' . '<h5 class="left">Indicador geral: </h5>' . '<div class="indicador ' . $data['indicador_geral']['class'] . '">' . $data['indicador_geral']['score'] . '</div><br class="clear" />' . '</div></div>'; } $i = 0; foreach ($pesquisas['registros'] as $row) { $i++; $conteudo .= '<div class="pesquisa">'; $sqlPesquisa = new SqlPesquisa(); $result = $sqlPesquisa->get_indicador_questao($row['pk_pes_gabarito']); $indicador_item = View::bgConceito(number_format($result[0]['indicador'], 1)); if ($print != '') { $conteudo .= '<div class="indicador_titulo" style="padding-left: 0; font-size: 12px;">' . $row['pes_questao'] . ': ' . $indicador_item['score'] . '</div>'; } else { $conteudo .= '<div class="indicador_item_pesquisa ' . $indicador_item['class'] . '">' . $indicador_item['score'] . '</div><div class="indicador_titulo">' . $row['pes_questao'] . '</div><br class="clear" />'; } $sqlPesquisa = new SqlPesquisa(); $respostas = $sqlPesquisa->listar_pesquisas_alternativas($row['pk_pes_questao'], $row['pk_pes_gabarito']); $total = 0; foreach ($respostas['registros'] as $item) { $total = $total + $item['total']; } $i2 = 0; $indicador = 0; foreach ($respostas['registros'] as $item) { $i2++; if ($total != 0) { $perc = round($item['total'] / $total * 100); } else { $perc = 0; } if ($item['peso'] != 0) { $indicador = $indicador + $perc * $item['peso'] / 100; } else { $indicador = $indicador + 0; } $percConteudoViesB = $i == 1 && $i2 == 2 && $perc > $percMim ? $perc : $percConteudoViesB; $percConteudoViesC = $i == 1 && $i2 == 3 && $perc > $percMim ? $perc : $percConteudoViesC; $percConteudoViesD = $i == 1 && $i2 == 4 && $perc > $percMim ? $perc : $percConteudoViesD; $percConteudoViesE = $i == 1 && $i2 == 5 && $perc > $percMim ? $perc : $percConteudoViesE; $percAssiduidadeViesB = $i == 2 && $i2 == 2 && $perc > $percMim ? $perc : $percAssiduidadeViesB; $percAssiduidadeViesC = $i == 2 && $i2 == 3 && $perc > $percMim ? $perc : $percAssiduidadeViesC; $percAssiduidadeViesD = $i == 2 && $i2 == 4 && $perc > $percMim ? $perc : $percAssiduidadeViesD; $percAssiduidadeViesE = $i == 2 && $i2 == 5 && $perc > $percMim ? $perc : $percAssiduidadeViesE; $percDisciplinaViesB = $i == 3 && $i2 == 2 && $perc > $percMim ? $perc : $percDisciplinaViesB; $percDisciplinaViesC = $i == 3 && $i2 == 3 && $perc > $percMim ? $perc : $percDisciplinaViesC; $percDisciplinaViesD = $i == 3 && $i2 == 4 && $perc > $percMim ? $perc : $percDisciplinaViesD; $percDisciplinaViesE = $i == 3 && $i2 == 5 && $perc > $percMim ? $perc : $percDisciplinaViesE; $percRelacionamentoViesB = $i == 4 && $i2 == 2 && $perc > $percMim ? $perc : $percRelacionamentoViesB; $percRelacionamentoViesC = $i == 4 && $i2 == 3 && $perc > $percMim ? $perc : $percRelacionamentoViesC; $percRelacionamentoViesD = $i == 4 && $i2 == 4 && $perc > $percMim ? $perc : $percRelacionamentoViesD; $percRelacionamentoViesE = $i == 4 && $i2 == 5 && $perc > $percMim ? $perc : $percRelacionamentoViesE; $conteudo .= '<div class="pesquisa_container"> <div class="pesquisa_perc' . $print . '">' . $perc . '%</div> <div class="pesquisa_total' . $print . '">(' . $item['total'] . ')</div> <div class="pesquisa_grafico_bordas"> <div class="pesquisa_grafico" style="background: ' . $item['cor'] . '; width: ' . $perc . 'px;"> <img src="' . base_url() . 'images/' . substr($item['cor'], 1) . '.gif" width="' . $perc . '" height="13"> </div> </div> <div class="pesquisa_label' . $print . '">' . $item['pes_alternativa'] . '</div> </div>'; $conteudo .= '<br class="clear" />'; } $conteudo .= '</div>'; } if ($print != '') { $conteudo .= '<div style="font-size: 9px;">'; } else { $conteudo .= '<div class="small">'; } if ($percConteudoViesB > $percMim or $percConteudoViesC > $percMim or $percConteudoViesD > $percMim or $percConteudoViesE > $percMim or $percAssiduidadeViesB > $percMim or $percAssiduidadeViesC > $percMim or $percAssiduidadeViesD > $percMim or $percAssiduidadeViesE > $percMim or $percDisciplinaViesB > $percMim or $percDisciplinaViesC > $percMim or $percDisciplinaViesD > $percMim or $percDisciplinaViesE > $percMim or $percRelacionamentoViesB > $percMim or $percRelacionamentoViesC > $percMim or $percRelacionamentoViesD > $percMim or $percRelacionamentoViesE > $percMim) { if ($print != '') { $conteudo .= '<hr /><h6>Observações:</h6>'; } else { $conteudo .= '<hr /><h4>Observações:</h4>'; } } /* Conteúdo e didática */ if ($percConteudoViesB > $percMim or $percConteudoViesC > $percMim or $percConteudoViesD > $percMim or $percConteudoViesE > $percMim) { $conteudo .= "<br /><b>Conteúdo e didática: </b><br />"; } if ($percConteudoViesB > $percMim) { $conteudo .= "Precisa resolver mais exercícios de fixação em sala de aula. "; } if ($percConteudoViesC > $percMim) { $conteudo .= "Precisa melhorar sua didática. "; } if ($percConteudoViesD > $percMim) { $conteudo .= "Precisa aprofundar o nível da teoria e dos exercícios. "; } if ($percConteudoViesE > $percMim) { $conteudo .= "Apresenta deficiências de didática, aprofundamento e planejamento de aulas, além de resolver poucos exercícios em sala de aula. "; } if ($percConteudoViesB > $percMim or $percConteudoViesC > $percMim or $percConteudoViesD > $percMim or $percConteudoViesE > $percMim) { $conteudo .= "<br />"; } /* Assiduidade e aproveitamento da aula */ if ($percAssiduidadeViesB > $percMim or $percAssiduidadeViesC > $percMim or $percAssiduidadeViesD > $percMim or $percAssiduidadeViesE > $percMim) { $conteudo .= "<br /><b>Assiduidade e aproveitamento da aula: </b><br />"; } if ($percAssiduidadeViesB > $percMim) { $conteudo .= "Precisa focar melhor o tempo de aula nas explicações da teoria e dos exercícios, pois na opinião de boa parte dos alunos perde muito tempo com atividades ou assuntos que não dizem respeito ao desenvolvimento da matéria. "; } if ($percAssiduidadeViesC > $percMim) { $conteudo .= "Na opinião dos alunos, seus atrasos freqüentes comprometem o desenvolvimento da matéria. "; } if ($percAssiduidadeViesD > $percMim) { $conteudo .= "Na opinião dos alunos, suas faltas freqüentes comprometem o desenvolvimento da matéria. "; } if ($percAssiduidadeViesE > $percMim) { $conteudo .= "Precisa organizar melhor seus horários e aproveitar melhor o tempo de aula, pois na opinião dos alunos perde muito tempo com atividades ou assuntos que não dizem respeito ao desenvolvimento da matéria. "; } if ($percAssiduidadeViesB > $percMim or $percAssiduidadeViesC > $percMim or $percAssiduidadeViesD > $percMim or $percAssiduidadeViesE > $percMim) { $conteudo .= "<br />"; } /* Postura formativa */ if ($percDisciplinaViesB > $percMim or $percDisciplinaViesC > $percMim or $percDisciplinaViesD > $percMim or $percDisciplinaViesE > $percMim) { $conteudo .= "<br /><b>Postura formativa:</b><br /> "; } if ($percDisciplinaViesB > $percMim) { $conteudo .= "Precisa conversar com a turma e sempre estar atento se as conversas e brincadeiras dos alunos não estão comprometendo a aprendizagem da matéria. "; } if ($percDisciplinaViesC > $percMim) { $conteudo .= "Deve ter uma postura mais enérgica com a turma, buscando apoio e orientação da coordenação, a fim de evitar o comprometimento na aprendizagem de sua matéria. "; } if ($percDisciplinaViesD > $percMim) { $conteudo .= "Deve ser orientado pela coordenação de que é responsável pelo controle e comportamento dos alunos em sua aula e que não deve permitir brincadeiras ou conversas freqüentes em sua aula. "; } if ($percDisciplinaViesE > $percMim) { $conteudo .= "Deve receber orientação da coordenação quanto às normas formativas da escola e ser orientado de que deve preocupar-se em melhorar a disciplina dos alunos em sua aula. Para isso, não deve permitir brincadeiras ou conversas freqüentes em sua aula. "; } if ($percDisciplinaViesB > $percMim or $percDisciplinaViesC > $percMim or $percDisciplinaViesD > $percMim or $percDisciplinaViesE > $percMim) { $conteudo .= "<br />"; } /* Envolvimento e acompanhamento */ if ($percRelacionamentoViesB > $percMim or $percRelacionamentoViesC > $percMim or $percRelacionamentoViesD > $percMim or $percRelacionamentoViesE > $percMim) { $conteudo .= "<br /><b>Envolvimento e acompanhamento:</b><br />"; } if ($percRelacionamentoViesB > $percMim) { $conteudo .= "Preencher melhor o parecer das avaliações, orientando os alunos de como superar suas dificuldades na matéria. "; } if ($percRelacionamentoViesC > $percMim) { $conteudo .= "Precisa estar mais atento às necessidades dos alunos e destinar uma parte do tempo de sua aula para tirar dúvidas. "; } if ($percRelacionamentoViesD > $percMim) { $conteudo .= "Precisa melhorar a interação com os alunos em sala de aula, procurando motivá-los para aprendizagem. "; } if ($percRelacionamentoViesE > $percMim) { $conteudo .= "Precisa estar mais atento e disponível para atender às necessidades dos alunos e melhorar a interação com os alunos em sala de aula, procurando motivá-los para aprendizagem. "; } if ($percRelacionamentoViesB > $percMim or $percRelacionamentoViesC > $percMim or $percRelacionamentoViesD > $percMim or $percRelacionamentoViesE > $percMim) { $conteudo .= "<br />"; } $conteudo .= '</div>'; $data['total'] = 1; $data['conteudo'] = $conteudo; } if ($this->input->is_ajax_request()) { print json_encode($conteudo); } else { $this->load->view($this->load->getUrlTema(), $data); } }