Beispiel #1
0
 /**
  * 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();
 }