/** * 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(); }
<?php } ?> <tr> <td>MÉDIA</td> <?php foreach (array_keys($conceitos) as $conceito) { ?> <?php foreach (array_keys($bimestres) as $bimestre) { ?> <?php $chave = 'qt-' . strtolower($conceito) . '-' . $bimestre . 'bi'; ?> <td><?php echo Matematica::mediaAritimeticaArray($medias[$chave]); ?> %</td> <?php } ?> <?php } ?> </tr> </tbody> </table> </div> <?php } ?>
public function processar_pesquisa_media_ensino_unidade($pk_pesquisa_cat) { $data = $this->getParametroVisao(); $data['page'] = 'home'; $data['tema'] != '' ? $this->load->setTheme($data['tema']) : ''; $data['msg'] = $this->getMsg(); $data['abaAtiva'] = 8; $data['abaPage'] = 'processar_pesquisa_media_ensino_unidade'; $data['alias'] = 'processar_pesquisa_media_ensino_unidade'; $sqlPesquisa = new SqlPesquisa(); $sqlPesquisa->reset_medias_serie_unidade($pk_pesquisa_cat); // pega os códigos das series $sqlPesquisa = new SqlPesquisa(); $result = $sqlPesquisa->get_series_unidade($pk_pesquisa_cat); foreach ($result as $row) { //echo '<br /><br />'.$row['fk_unidade'].' - '.$row['fk_serie'].'<hr />'; // pega os profesores de cada série / unidade $sqlPesquisa = new SqlPesquisa(); $result = $sqlPesquisa->get_professores_serie_unidade_pesquisa_cat($pk_pesquisa_cat, $row['fk_unidade'], $row['fk_serie']); foreach ($result as $item) { //echo '...'.$item['fk_usuario_professor'].'<br />'; // pega as médias dos professores da referida série $sqlPesquisa = new SqlPesquisa(); $result = $sqlPesquisa->get_medias_turmas_professores_serie_unidade($pk_pesquisa_cat, $row['fk_unidade'], $row['fk_serie'], $item['fk_usuario_professor']); $array_medias = array(); foreach ($result as $item) { $array_medias[] = $item['indicadorgeral']; } $media_serie = Matematica::mediaAritimeticaArray($array_medias); $sqlPesquisa = new SqlPesquisa(); $sqlPesquisa->insert_medias_serie_unidade($pk_pesquisa_cat, $row['fk_unidade'], $row['fk_serie'], $item['fk_usuario_professor'], $media_serie); } } // PROCESSA POSIÇÕES // pega os códigos das series $sqlPesquisa = new SqlPesquisa(); $result = $sqlPesquisa->get_series_unidade($pk_pesquisa_cat); foreach ($result as $row) { echo '<br /><br />' . $row['fk_unidade'] . ' - ' . $row['fk_serie'] . '<hr />'; // rankeia os professores da série /unidade $sqlPesquisa = new SqlPesquisa(); $result = $sqlPesquisa->get_ranking_professores_serie_unidade($pk_pesquisa_cat, $row['fk_unidade'], $row['fk_serie']); $count = 0; $i = 0; $_SESSION['rankingAnterior'] = 0; $_SESSION['indicador'] = 0; $ranking = 1; foreach ($result as $item) { $count++; $i++; if (number_format($item['media_serie'], 1) == $_SESSION['indicador']) { $ranking = $_SESSION['rankingAnterior']; } else { $ranking = $i; } echo $ranking . ' - ' . $item['media_serie'] . '<br />'; $sqlPesquisa = new SqlPesquisa(); $sqlPesquisa->update_posicoes_serie_unidade_professor($pk_pesquisa_cat, $row['fk_unidade'], $row['fk_serie'], $item['fk_usuario_professor'], $ranking); $_SESSION['indicador'] = number_format($item['media_serie'], 1); $_SESSION['rankingAnterior'] = $ranking; } } $this->session->set_flashdata('msg', '<div class="alert ok">Posições de professores por série e unidade atualizadas com sucesso!</div>'); redirect(base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/processar_pesquisa_media_ensino/' . $pk_pesquisa_cat); }
$mi4 = Matematica::mediaAritimeticaArray($mi4); //r $mr1 = Matematica::mediaAritimeticaArray($mr1); $mr2 = Matematica::mediaAritimeticaArray($mr2); $mr3 = Matematica::mediaAritimeticaArray($mr3); $mr4 = Matematica::mediaAritimeticaArray($mr4); //b $mb1 = Matematica::mediaAritimeticaArray($mb1); $mb2 = Matematica::mediaAritimeticaArray($mb2); $mb3 = Matematica::mediaAritimeticaArray($mb3); $mb4 = Matematica::mediaAritimeticaArray($mb4); //l $ml1 = Matematica::mediaAritimeticaArray($ml1); $ml2 = Matematica::mediaAritimeticaArray($ml2); $ml3 = Matematica::mediaAritimeticaArray($ml3); $ml4 = Matematica::mediaAritimeticaArray($ml4); ?> <tr> <td>MÉDIA</td> <td><?php echo $md1; ?> </td> <td><?php echo $mi1; ?> </td> <td><?php echo $mr1; ?> </td>
public function listar_avaliacao_professor($pk_pesquisa_cat, $fk_usuario_professor, $fk_usuario, $fk_materia_mae) { $data = $this->getParametroVisao(); //Validando o professor informado $validarUser = new Kernel_Models_ValidarUsuarios(); $professorObj = $validarUser->professor($fk_usuario); $fk_usuario_professor = $professorObj->getPkUsuarioProfessor(); // $data['page'] = 'home'; $data['tema'] != '' ? $this->load->setTheme($data['tema']) : ''; $data['msg'] = $this->getMsg(); $data['abaAtiva'] = 8; $data['abaPage'] = 'listar_avaliacao_professor'; $data['alias'] = 'listar_avaliacao_professor'; $data['total'] = 0; $array_result = Mestre::alternativas_pesquisas(); $sqlUsuario = new SqlUsuario(); $result = $sqlUsuario->get_nome_professor($fk_usuario_professor); $data['nome_professor'] = $result[0]['nome']; $sqlFap = new SqlFap(); $result = $sqlFap->get_medias_materias_mae($fk_materia_mae); $data['materia_mae_nome'] = $result[0]['materia_mae_nome']; // Select filtro de pesquisas $sqlFap = new SqlFap(); $data['pesquisa_cat'] = $sqlFap->get_pesquisas_cat_professor($fk_usuario_professor); $sqlFap = new SqlFap(); $result = $sqlFap->get_pesquisa_cat($pk_pesquisa_cat); $data['pesquisa_cat_nome'] = !empty($result) ? $result[0]['pesquisa_cat_nome'] : ''; $unidade = isset($_GET['pk_unidade']) ? $_GET['pk_unidade'] : ''; $sqlFap = new SqlFap(); $result_unidade = $sqlFap->get_unidades_professor_leciona($pk_pesquisa_cat, $fk_usuario_professor, $unidade); $html = ''; $tabela1 = ''; //tabela fixa na esquerda onde será exibida as descrições dos itens $array_medias_unidade = array(); $i = 0; foreach ($result_unidade as $uni) { $i++; $print_unidade = $i == 1 ? 'print_unidade1' : 'print_unidade'; $html .= '<br class="clear" /><div class="' . $print_unidade . '"><hr /><h4>' . $uni['unidade_nome'] . '</h4>'; $html .= '<table class="mb20">'; $html .= '<tr><td style="border: 0;"></td>'; // HEADER DAS SÉRIES $sqlFap = new SqlFap(); $result_serie = $sqlFap->get_series_unidades_professor_leciona($pk_pesquisa_cat, $fk_usuario_professor, $uni['fk_unidade']); $array_turmas = $array_turmas_nome = array(); foreach ($result_serie as $serie) { $sqlFap = new SqlFap(); $result = $sqlFap->listar_avaliacao_professor($pk_pesquisa_cat, $fk_usuario_professor, $uni['fk_unidade'], $serie['fk_serie']); $total_turmas = count($result); if ($total_turmas > 0) { foreach ($result as $row) { $array_turmas[] = $row['fk_turma']; $array_turmas_nome[] = $row['turma_nome'] . '#' . $row['fk_serie'] . '#' . $row['pk_pesquisa']; } } $html .= '<td class="titulo_relatorio tcenter" colspan="' . $total_turmas . '">' . $serie['serie_nome'] . '</td>'; } // HEADER DAS TURMAS $html .= '<tr><td></td>'; foreach ($array_turmas_nome as $turma) { $divide = explode('#', $turma); $turma_nome = $divide[0]; $pk_serie = $divide[1]; $pk_pesquisa = $divide[2]; if ($pk_serie < 14) { $turma_nome_final = substr($turma_nome, 0, 9); } else { $divide = explode('-', $turma_nome); $turma_nome_final = $divide[0]; } $html .= '<td class="titulo_relatorio tcenter w70">'; // if ($data['idTipoUsuario'] != 15) { $html .= '<a rel="shadowbox[mixed]" class="link" href="' . base_url() . 'fap/pesquisa/graficos_pesquisa_fap/' . $fk_usuario . '/' . $row['fk_usuario_professor'] . '?pk_pesquisa=' . $pk_pesquisa . '&shadowbox=1">' . $turma_nome_final . '<a/>'; // } // else { // $html.= $turma_nome_final; // } $html .= '</td>'; } // INÍCIO DAS LINHAS DE CADA ITEM AVALIADO $html .= '</tr>'; $tabela1 = ''; //tabela fixa na esquerda onde será exibida as descrições dos itens foreach ($array_result as $row) { $html .= '<tr><th class="w160 h30">' . $row['pes_questao'] . '</th>'; $sqlFap = new SqlFap(); $result = $sqlFap->get_avaliacao_professor($pk_pesquisa_cat, $fk_usuario_professor, $row['pk_pes_questao'], $array_turmas, $uni['fk_unidade']); $indicador_serie = array(); $soma = 0; $soma_decil = 0; foreach ($result as $item) { $soma = $soma + $item['indicador']; $conceito = View::bgConceito($item['indicador']); $decil = Matematica::decil($item['posicao'], $item['total_professores'], 1); $soma_decil = $soma_decil + $decil; $html .= '<td class="tcenter" style="background: #' . $conceito['cor'] . '; color: #ffffff">' . '<strong>' . number_format($item['indicador'], 1) . '</strong><br />' . '<small>( ' . $decil . ' )</small></td>'; } } $html .= '</tr>'; // MÉDIA DE CADA INDICADOR POR TURMA $html .= '<tr><td class="titulo_relatorio tcenter">Indicador na Turma</td>'; $soma_decil = 0; foreach ($result_serie as $serie) { $sqlFap = new SqlFap(); $result = $sqlFap->get_indicadores_professor_serie_turmas($pk_pesquisa_cat, $fk_usuario_professor, $uni['fk_unidade'], $serie['fk_serie'], $array_turmas); $soma_serie = 0; foreach ($result as $turma) { $conceito = View::bgConceito($turma['indicadorgeral']); $decil = Matematica::decil($turma['posicao'], $turma['total_professores']); $soma_decil = $soma_decil + $decil; $html .= '<td class="tcenter" style="background: #' . $conceito['cor'] . '; color: #ffffff">' . '<strong>' . number_format($turma['indicadorgeral'], 1) . '</strong><br />' . '<small>( ' . $decil . ' )</small></td>'; } } $media_geral_professor = Matematica::divisao($soma, count($array_turmas_nome)); $conceito = View::bgConceito($media_geral_professor); // MÉDIA DO PROFESSOR POR SÉRIE $soma = 0; $soma_decil = 0; $html .= '<tr><td class="titulo_relatorio tcenter">Indicador na Série</td>'; $i = 0; foreach ($result_serie as $serie) { $sqlFap = new SqlFap(); $result = $sqlFap->listar_avaliacao_professor($pk_pesquisa_cat, $fk_usuario_professor, $uni['fk_unidade'], $serie['fk_serie']); $total_turmas = count($result); $sqlFap = new SqlFap(); $result = $sqlFap->get_medias_professor_serie_unidade($pk_pesquisa_cat, $fk_usuario_professor, $uni['fk_unidade'], $serie['fk_serie']); $decil = Matematica::decil($result[0]['posicao'], $result[0]['total_professores']); $conceito = View::bgConceito($result[0]['media_serie']); $html .= '<td colspan="' . $total_turmas . '" class="tcenter" style="background: #' . $conceito['cor'] . '; color: #ffffff"><strong>' . number_format($result[0]['media_serie'], 1) . '</strong><br />' . '<small>( ' . $decil . ' )</small></td>'; $soma = $soma + $result[0]['media_serie']; $soma_decil = $soma_decil + $decil; $i++; } $html .= '</tr></table></div><br />'; } // QUADRO COMPARATIVO $html .= '<hr /><h3>Quadro Comparativo</h3>' . '<h4>Prof.(a) ' . $data['nome_professor'] . '</h4>'; $html .= '<h5>Equipe: ' . $data['materia_mae_nome'] . '</h5>'; $html .= '<table class="mb20">'; // header da tabela $html .= '<tr><td class="titulo_relatorio tcenter w200">Índices</td>'; foreach ($result_unidade as $uni) { $html .= '<th>' . $uni['unidade_nome'] . '</th>'; } $html .= '<td></td><th>' . $this->config->item('site') . '</th></tr>'; // corpo da tabela // indicador $html .= '</tr>'; foreach ($array_result as $row) { $html .= '<tr><th class="w160 h30">' . $row['pes_questao'] . '</th>'; foreach ($result_unidade as $uni) { $sqlFap = new SqlFap(); $result = $sqlFap->get_avaliacao_professor_alternativa_unidade($pk_pesquisa_cat, $fk_usuario_professor, $row['pk_pes_questao'], $uni['fk_unidade']); $conceito = View::bgConceito($result[0]['indicador_unidade']); $decil = Matematica::decil($result[0]['posicao'], $result[0]['total_professores'], 1); $html .= '<td class="tcenter" style="background: #' . $conceito['cor'] . '; color: #ffffff">' . '<strong>' . number_format($result[0]['indicador_unidade'], 1) . '</strong><br />' . '<small>( ' . $decil . ' )</small></td>'; } $sqlFap = new SqlFap(); $result = $sqlFap->get_avaliacao_professor_alternativa($pk_pesquisa_cat, $fk_usuario_professor, $row['pk_pes_questao']); if (!empty($result)) { $conceito = View::bgConceito($result[0]['indicador']); $decil = Matematica::decil($result[0]['posicao'], $result[0]['total_professores'], 1); $html .= '<td></td><td class="tcenter" style="background: #' . $conceito['cor'] . '; color: #ffffff">' . '<strong>' . number_format($result[0]['indicador'], 1) . '</strong><br />' . '<small>( ' . $decil . ' )</small></td>'; } } $html .= '</tr></table>'; $html .= '<table class="mb20">'; // header da tabela $html .= '<tr><td class="titulo_relatorio tcenter w200">Indicadores</td>'; foreach ($result_unidade as $uni) { $html .= '<th>' . $uni['unidade_nome'] . '</th>'; } $html .= '<td></td><th>' . $this->config->item('site') . '</th></tr>'; $html .= '<tr><th>Prof.(a) ' . $data['nome_professor'] . '</th>'; $soma = 0; foreach ($result_unidade as $uni) { $sqlFap = new SqlFap(); $result = $sqlFap->get_indicador_geral_professor_unidade($pk_pesquisa_cat, $fk_usuario_professor, $uni['fk_unidade']); $conceito = View::bgConceito($result[0]['indicador']); $decil = Matematica::decil($result[0]['posicao'], $result[0]['total_professores'], 1); $html .= '<td class="tcenter" style="background: #' . $conceito['cor'] . '; color: #ffffff"><strong>' . number_format($conceito['score'], 1) . '</strong><br />' . '<small>( ' . $decil . ' )</small>'; $soma = $soma + $result[0]['indicador']; } $media_geral = Matematica::divisao($soma, count($result_unidade)); $sqlFap = new SqlFap(); $result = $sqlFap->get_indicador_geral_professor($pk_pesquisa_cat, $fk_usuario_professor); if (!empty($result)) { $conceito = View::bgConceito($result[0]['indicador']); $decil = !isset($_GET['pk_unidade']) ? Matematica::decil($result[0]['posicao'], $result[0]['total_professores'], 1) : $decil; $html .= '<td></td><td class="tcenter" style="background: #' . $conceito['cor'] . '; color: #ffffff"><strong>' . number_format($conceito['score'], 1) . '</strong><br />' . '<small>( ' . $decil . ' )</small>'; } // media da equipe do professor $html .= '<tr><th>Professores de ' . $data['materia_mae_nome'] . '</th>'; foreach ($result_unidade as $uni) { $sqlFap = new SqlFap(); $result = $sqlFap->get_media_materiamae_unidade($pk_pesquisa_cat, $fk_materia_mae, $uni['fk_unidade']); $conceito = !empty($result) ? View::bgConceito($result[0]['media_unidade']) : ''; $conceito_cor = !empty($result) ? $conceito['cor'] : ''; $media_unidade = !empty($result) ? number_format($result[0]['media_unidade'], 1) : ''; $html .= '<td class="tcenter" style="background: #' . $conceito_cor . '; color: #ffffff"><strong>' . $media_unidade . '</strong></td>'; } $sqlFap = new SqlFap(); $result = $sqlFap->get_media_materiamae($pk_pesquisa_cat, $fk_materia_mae); if (!empty($result)) { $conceito = View::bgConceito($result[0]['indicadormateria_mae']); $html .= '<td></td><td class="tcenter" style="background: #' . $conceito['cor'] . '; color: #ffffff"><strong>' . number_format($result[0]['indicadormateria_mae'], 1) . '</strong></td>'; $html .= '</tr>'; } // media da geral da equipe de professores na unidade $html .= '<tr><th>Todos os professores</th>'; $soma = 0; foreach ($result_unidade as $uni) { $sqlFap = new SqlFap(); $result = $sqlFap->get_media_equipe_unidade($pk_pesquisa_cat, $uni['fk_unidade']); $array_medias = array(); foreach ($result as $ger) { $array_medias[] = $ger['media_unidade']; } $media_turma = Matematica::mediaAritimeticaArray($array_medias, 1); $conceito = View::bgConceito($media_turma); $html .= '<td class="tcenter" style="background: #' . $conceito['cor'] . '; color: #ffffff"><strong>' . number_format($media_turma, 1) . '</strong></td>'; } $sqlFap = new SqlFap(); $result = $sqlFap->get_media_materiamae_geral($pk_pesquisa_cat); $array_medias = array(); foreach ($result as $ger) { $array_medias[] = $ger['indicadormateria_mae']; } $media_geral = Matematica::mediaAritimeticaArray($array_medias, 1); $conceito = View::bgConceito($media_geral); $html .= '<td></td><td class="tcenter" style="background: #' . $conceito['cor'] . '; color: #ffffff">' . '<strong>' . number_format($media_geral, 1) . '</strong></td>'; $html .= '</tr>'; $html .= '</table><br />'; $data['html'] = $html; $config['base_url'] = base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/' . $this->uri->segment(3) . '/' . $this->uri->segment(4) . '/' . $this->uri->segment(5) . '/' . $this->uri->segment(6) . '/' . $this->uri->segment(7) . '/'; $sqlFap = new SqlFap(); $data['unidade'] = $sqlFap->get_unidades_professor($pk_pesquisa_cat, $fk_usuario_professor); $unidade = explode("&pk_unidade", $_SERVER['QUERY_STRING']); $data['unidade_url'] = $config['base_url'] . '?' . $unidade[0]; $sqlFap = new SqlFap(); $data['serie'] = $sqlFap->get_series_professor($pk_pesquisa_cat, $fk_usuario_professor); $serie = explode("&pk_serie", $_SERVER['QUERY_STRING']); $data['serie_url'] = $config['base_url'] . '?' . $serie[0]; $sqlFap = new SqlFap(); $data['materia'] = $sqlFap->get_materias_professor($pk_pesquisa_cat, $fk_usuario_professor); $materia = explode("&pk_materia", $_SERVER['QUERY_STRING']); $data['materia_url'] = $config['base_url'] . '?' . $materia[0]; $area = explode("&area", $_SERVER['QUERY_STRING']); $data['area_url'] = $config['base_url'] . '?' . $area[0]; $ensino = explode("&ensino", $_SERVER['QUERY_STRING']); $data['ensino_url'] = $config['base_url'] . '?' . $ensino[0]; if ($this->input->is_ajax_request()) { echo json_encode(array('content' => $this->load->view($this->uri->segment(3), $data, true))); } else { $this->load->view($this->load->getUrlTema(), $data); } }