/** * 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(); }
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); } }