Esempio n. 1
0
 public function graficos_pareceres_fap($pk_usuario, $pk_usuario_professor = 0, $pk_par_pesquisa_url = 0)
 {
     $data = $this->getParametroVisao();
     $this->load->helper('formatar_numero');
     $data['msg'] = $this->getMsg();
     $data['abaAtiva'] = 8;
     $data['abaPage'] = 'graficos_pareceres_fap';
     $data['alias'] = 'graficos_pareceres_fap';
     if ($data['mobile']) {
         $data['usuario'] = unserialize($_SESSION['usuario']);
         $data['page'] = __FUNCTION__;
         $data['tema'] = $this->load->setTheme('responsive');
         $data['css'] = array('/css/modules/conceitos.min.css');
         $data['js'] = array('/js/plugins/filtros/filtros.min.js');
     } else {
         $data['page'] = 'home';
         $data['tema'] != '' ? $this->load->setTheme($data['tema']) : '';
         $data['css'] = array('css/modules/fap.css?data=2015-09-01');
         $data['js'] = array('js/modules/fap/fap.js');
     }
     //Validando o professor
     $usrValidar = new Kernel_Models_ValidarUsuarios();
     $professor = $usrValidar->professor($pk_usuario);
     //        $pk_usuario_professor = $this->uri->segment(5) != '' ? $this->uri->segment(5) : $data['idUsuarioProfessor'];
     $pk_usuario_professor = $professor->getPkUsuarioProfessor();
     $sqlUsuario = new SqlUsuario();
     $result = $sqlUsuario->get_nome($this->uri->segment(4));
     $data['nome'] = $result['registros'][0]['nome'];
     $sqlParecer = new SqlParecer();
     $result = $sqlParecer->get_par_pesquisa($pk_usuario_professor);
     $data['pesquisas'] = $result;
     if ($result['total'] > 1) {
         $data['pesquisas'] = $result;
     }
     $result = end(end($result));
     if ($pk_par_pesquisa_url != 0) {
         $sqlParecer = new SqlParecer();
         $result = $sqlParecer->get_par_pesquisa_professor($pk_par_pesquisa_url, $pk_usuario_professor);
         $pk_par_pesquisa = isset($result[0]['fk_par_pesquisa']) ? $result[0]['fk_par_pesquisa'] : '';
         $data['pk_par_pesquisa'] = isset($result[0]['fk_par_pesquisa']) ? $result[0]['fk_par_pesquisa'] : '';
         $data['parecer_nome'] = isset($result[0]['par_nome']) ? $result[0]['par_nome'] : '';
     } else {
         $pk_par_pesquisa = isset($result['fk_par_pesquisa']) ? $result['fk_par_pesquisa'] : '';
         $data['pk_par_pesquisa'] = isset($result['fk_par_pesquisa']) ? $result['fk_par_pesquisa'] : '';
         $data['parecer_nome'] = isset($result['par_nome']) ? $result['par_nome'] : '';
     }
     // pega o indicador geral do professor
     $sqlParecer = new SqlParecer();
     $result = $sqlParecer->get_indicador_parecer($pk_par_pesquisa, $pk_usuario_professor);
     $indicador_geral = $result['total'] != 0 ? $result['registros'][0]['indicador_geral_professor'] : '';
     $data['total'] = $result['total'];
     $data['indicador_geral'] = View::bgConceito(number_format($indicador_geral, 1));
     $conteudo = '';
     if ($result['total'] != 0) {
         $data['indicador_geral'] = View::bgConceito(number_format($indicador_geral, 1));
         $sqlParecer = new SqlParecer();
         $pesquisas = $sqlParecer->listar_par_pesquisas($pk_par_pesquisa);
         $conteudo .= '<div class="parecer">' . '<h5 class="left">Indicador geral: </h5>' . '<div class="indicador ' . $data['indicador_geral']['class'] . '">' . '' . number_format($data['indicador_geral']['score'], 1) . '' . '</div><br /></div>';
         foreach ($pesquisas['registros'] as $row) {
             $conteudo .= '<table style="width: 80%; height: auto;"><tr><td><h5>' . $row['par_questao'] . '</h5></td></tr><tr><td>';
             $sqlParecer = new SqlParecer();
             $result = $sqlParecer->get_indicador_parecer_item($row['pk_par_questao'], $pk_usuario_professor);
             $total_marcacoes_questao = !empty($result) ? (int) $result[0]['total_marcacoes_questao'] : 0;
             if (!empty($result)) {
                 $indicador_item = $result[0]['indicadorquestao'] == 10 ? View::bgConceito($result[0]['indicadorquestao']) : View::bgConceito(number_format($result[0]['indicadorquestao'], 1));
             } else {
                 $indicador_item = View::bgConceito(0);
             }
             $sqlParecer = new SqlParecer();
             $respostas = $sqlParecer->listar_par_pesquisas_alternativas($row['pk_par_questao'], $pk_usuario_professor);
             foreach ($respostas as $item) {
                 $perc = $total_marcacoes_questao > 0 ? round($item['total'] / $total_marcacoes_questao * 100) : 0;
                 $conteudo .= '<div class="parecer_container">' . '<div class="parecer_label">' . $item['par_alternativa'] . '</div>' . '<div class="parecer_perc">' . $perc . '%</div>' . '<div class="parecer_total">(' . $item['total'] . ')</div>' . '</div><br class="clear" />';
             }
             $conteudo .= '<div class="indicador_item ' . $indicador_item['class'] . '">' . number_format($indicador_item['score'], 1) . '</div>';
             if ($data['idTipoUsuario'] == 1 || $data['idTipoUsuario'] == 2) {
                 $sqlParecer = new SqlParecer();
                 $result = $sqlParecer->get_coordenadores_parecer($row['pk_par_questao'], $pk_usuario_professor);
                 $coordenadores = '<div class="coordenadores_participantes">Parecer do(s) Coordenadore(s):<br />';
                 foreach ($result as $coord) {
                     $coordenadores .= $coord['nome'] . ' (' . $coord['coordenacao_nome'] . ')<br />';
                 }
                 $conteudo .= $coordenadores . '</div>';
             }
             $conteudo .= '</td></tr></table>';
         }
     }
     $data['conteudo'] = $conteudo;
     if ($this->input->is_ajax_request()) {
         print json_encode($conteudo);
     } else {
         $this->load->view($this->load->getUrlTema(), $data);
     }
 }
Esempio n. 2
0
 /**
  * Lista as avaliações feitas por coordenadores a um professor
  * @param int $pkUsuario O código do professor no banco
  * @param int $pkParPesquisa O código da pesquisa a ser retornado
  */
 public function get_parecer($pkUsuario = 0, $pkParPesquisa = 0)
 {
     $validarUser = new Kernel_Models_ValidarUsuarios();
     $professor = $validarUser->professor($pkUsuario);
     if ($professor) {
         $this->statusTrue();
         $sqlParecer = new SqlParecer();
         $resultPareceres = $sqlParecer->get_par_pesquisa($professor->getPkUsuarioProfessor());
         $resultPareceresTmp = end(end($resultPareceres));
         $pareceres = array();
         if ($resultPareceresTmp) {
             $indicadorPareceres = $sqlParecer->get_indicador_parecer($resultPareceresTmp['fk_par_pesquisa'], $professor->getPkUsuarioProfessor());
             $pareceres = $sqlParecer->listar_par_pesquisas($resultPareceresTmp['fk_par_pesquisa']);
             $this->setStatusCod(count($pareceres['registros']) ? 0 : 1);
             foreach ($pareceres['registros'] as $value) {
                 $ret = new stdClass();
                 $ret->parecer_nome = $value['par_nome'];
                 $ret->parecer_questao = $value['par_questao'];
                 $ret->parecer_questao_cod = $value['pk_par_questao'];
                 $ret->dt_parecer = $value['par_data'];
                 $ret->avaliadores = array();
                 $parecerAvaliadorSql = $sqlParecer->get_coordenadores_parecer($value['pk_par_questao'], $professor->getPkUsuarioProfessor());
                 $resultIndicador = $sqlParecer->get_indicador_parecer_item($value['pk_par_questao'], $professor->getPkUsuarioProfessor());
                 foreach ($parecerAvaliadorSql as $value2) {
                     $ret->avaliadores[] = $value2['nome'] . '(' . $value2['coordenacao_nome'] . ')';
                 }
                 $ret->parecer_tt_marcacoes = $resultIndicador[0]['total_marcacoes_questao'];
                 $ret->parecer_indicador_que = $resultIndicador[0]['indicadorquestao'];
                 $ret->parecer_indicador_geral = $indicadorPareceres['registros'][0]['indicador_geral_professor'];
                 $this->appendResposta($ret);
             }
         }
     } else {
         $this->setMensagem("O professor informado é inválido");
     }
     $this->printResposta();
 }
Esempio n. 3
0
 public function listar_ranking_pareceres()
 {
     $data = $this->getParametroVisao();
     $data['page'] = 'home';
     $data['tema'] != '' ? $this->load->setTheme($data['tema']) : '';
     $data['msg'] = $this->getMsg();
     $data['abaAtivaMae'] = 1;
     $data['abaAtiva'] = 8;
     $data['subAbaAtiva'] = 1;
     $data['abaPage'] = 'listar_ranking_pareceres';
     $data['alias'] = 'listar_ranking_pareceres';
     $data['total'] = 0;
     $data['js'] = array('js/jquery.tablesorter/jquery.tablesorter.min.js');
     $data['css'] = array('css/plugins/jquery.tablesorter/jquery.tablesorter.css');
     $pk_unidade = isset($_GET['pk_unidade']) && $_GET['pk_unidade'] != '' ? $_GET['pk_unidade'] : 0;
     $pk_serie = isset($_GET['pk_serie']) && $_GET['pk_serie'] != '' ? $_GET['pk_serie'] : 0;
     $tipo_lista = $this->uri->segment(3);
     if (isset($_GET['pk_par_pesquisa'])) {
         $sqlFap = new SqlFap();
         $result = $sqlFap->listar_ranking_pareceres();
         $data['total'] = $result['total'];
         if ($result['total'] > 0) {
             $tmpl = array('table_open' => '<table class="tablesorter table">');
             $this->load->library('table');
             $arrHead[] = '';
             $arrHead[] = 'Indicador';
             $arrHead[] = 'Nome';
             $this->table->set_heading($arrHead);
             $count = 0;
             $i = 0;
             $_SESSION['rankingAnterior'] = 0;
             $_SESSION['indicador'] = 0;
             $ranking = 1;
             foreach ($result['registros'] as $row) {
                 $count++;
                 $tmpl = Util::zebrar($count, count($result['registros']));
                 $i++;
                 if (number_format($row['indicador_geral_professor'], 1) == $_SESSION['indicador']) {
                     $ranking = $_SESSION['rankingAnterior'];
                 } else {
                     $ranking = $i;
                 }
                 $indicador_parecer = $row['indicador_geral_professor'] != 0 ? number_format($row['indicador_geral_professor'], 1) : '-';
                 $conceito = View::bgConceito($indicador_parecer);
                 $cell_1 = array('data' => $ranking, 'class' => 'tcenter');
                 $cell_2 = array('data' => $indicador_parecer, 'class' => $conceito['class'] . ' tcenter');
                 $cell_3 = array('data' => '<a rel="shadowbox[Mixed]" href="' . base_url() . $this->uri->segment(1) . '/parecer/graficos_pareceres_fap/' . $row['fk_usuario'] . '/' . $row['fk_usuario_professor'] . '/' . $_GET['pk_par_pesquisa'] . '?shadowbox=1" class="link">' . $row['nome'] . '</a>');
                 $this->table->add_row($cell_1, $cell_2, $cell_3);
                 $_SESSION['indicador'] = number_format($row['indicador_geral_professor'], 1);
                 $_SESSION['rankingAnterior'] = $ranking;
             }
             $this->table->set_template($tmpl);
         } else {
             $data['msg'] = '<div class="alert atencao">Nenhum registro encontrado</div>';
             $data['total'] = $result['total'];
         }
     }
     $config['base_url'] = base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/' . $this->uri->segment(3) . '/';
     $sqlFap = new SqlFap();
     $data['pesquisa_ensino'] = $sqlFap->get_ensinos();
     $ensino = explode("&ensino", $_SERVER['QUERY_STRING']);
     $data['ensino_url'] = $config['base_url'] . '?' . $ensino[0];
     if (isset($_GET['ensino']) && $_GET['ensino'] != '') {
         // Select filtro de pesquisas
         $sqlParecer = new SqlParecer();
         $_SESSION['par_pesquisas'] = $sqlParecer->listar_pesquisas_processadas((int) $_GET['ensino']);
         $_SESSION['pk_par_pesquisa'] = isset($_GET['pk_par_pesquisa']) ? $_GET['pk_par_pesquisa'] : '';
         $data['pesquisa'] = $_SESSION['par_pesquisas'];
         $pesquisa = explode("&pk_par_pesquisa", $_SERVER['QUERY_STRING']);
         $data['pesquisa_url'] = $config['base_url'] . '?' . $pesquisa[0];
     }
     if (isset($_GET['pk_par_pesquisa']) && $_GET['pk_par_pesquisa'] != '') {
         if (!isset($_SESSION['par_unidades'])) {
             // Select filtro de unidade
             $sqlFap = new SqlFap();
             $_SESSION['par_unidades'] = $sqlFap->listar_unidades_pareceres($_GET['pk_par_pesquisa']);
         }
         $data['unidade'] = $_SESSION['par_unidades'];
         $unidade = explode("&pk_unidade=", $_SERVER['QUERY_STRING']);
         $data['unidade_url'] = $config['base_url'] . '?' . $unidade[0];
         // Select filtro de serie
         $sqlFap = new SqlFap();
         $data['serie'] = $sqlFap->listar_series_pareceres($_GET['pk_par_pesquisa'], $pk_unidade);
         $serie = explode("&pk_serie=", $_SERVER['QUERY_STRING']);
         $data['serie_url'] = $config['base_url'] . '?' . $serie[0];
         // Select filtro de turmas
         $sqlFap = new SqlFap();
         $data['turma'] = $sqlFap->listar_turmas_pareceres($_GET['pk_par_pesquisa'], $pk_unidade, $pk_serie, $data['ano_letivo'], (int) $_GET['ensino']);
         $turma = explode("&pk_turma=", $_SERVER['QUERY_STRING']);
         $data['turma_url'] = $config['base_url'] . '?' . $turma[0];
         // Select filtro de materias
         $sqlFap = new SqlFap();
         $data['pesquisa_materia'] = $sqlFap->listar_pesquisas_processadas_materias($pk_serie);
         $pesquisa_materia = explode("&pk_materia_mae", $_SERVER['QUERY_STRING']);
         $data['pesquisa_materia_url'] = $config['base_url'] . '?' . $pesquisa_materia[0];
         $area = explode("&area", $_SERVER['QUERY_STRING']);
         $data['area_url'] = $config['base_url'] . '?' . $area[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);
     }
 }