コード例 #1
0
ファイル: professor.php プロジェクト: andersongimino/area51
 /**
  * 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();
 }
コード例 #2
0
ファイル: parecer.php プロジェクト: andersongimino/area51
 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);
     }
 }