Exemple #1
0
 public function estatisticas_questoes($pk_sim_concurso = 0, $pk_sim_bloco = 0, $pk_sim_prova = 0)
 {
     $msg = null;
     $data = $this->getParametroVisao();
     if ($data['mobile']) {
         $data['usuario'] = unserialize($_SESSION['usuario']);
         $data['tema'] = $this->load->setTheme('responsive');
         //            $data["css"] = array(base_url()."css/modules/simulado.css");
     } else {
         $data['tema'] != '' ? $this->load->setTheme($data['tema']) : '';
     }
     $data['abaPage'] = 'estatisticas_questoes';
     $data['page'] = 'home';
     $data['msg'] = $msg;
     $data['abaAtiva'] = 18;
     $data['alias'] = 'estatisticas_questoes';
     if ($pk_sim_prova != 0) {
         // pega a sequencia de matérias da prova
         $sqlProva = new SqlProva();
         $materias = $sqlProva->get_gabarito_materias($pk_sim_prova);
     } else {
         if ($pk_sim_prova == 0 && $pk_sim_bloco != 0) {
             // pega a sequencia de matérias do bloco
             $sqlAdministracao = new SqlAdministracao();
             $materias = $sqlAdministracao->get_blocos_gabarito_materias($pk_sim_bloco);
         } else {
             if ($pk_sim_concurso != 0 && $pk_sim_prova == 0 && $pk_sim_bloco == 0) {
                 // pega a sequencia de matérias do bloco
                 $sqlAdministracao = new SqlAdministracao();
                 $materias = $sqlAdministracao->get_concurso_gabarito_materias($pk_sim_concurso);
             }
         }
     }
     $data['total'] = count($materias);
     $legenda = '';
     $legenda .= '<div id="legendasQuestoes">Legendas:<br />';
     $legenda .= '<div class="legendaQuestao questaoFacil"></div> <div class="legendaQuestaoDesc">Questão de nível fácil <label>(% de acertos </label><b>superior a 70%</b><label>)</label></div><br class="clear" />';
     $legenda .= '<div class="legendaQuestao questaoMedia"></div> <div class="legendaQuestaoDesc">Questão de nível médio <label>(% de acertos </label><b>entre 30% 70% </b><label>)</label></div><br class="clear" />';
     $legenda .= '<div class="legendaQuestao questaoDificil"></div> <div class="legendaQuestaoDesc">Questão de nível difícil <label>(% de acertos </label><b>inferior a 30%</b><label>)</label></div>';
     $legenda .= '</div>';
     $titulo = '';
     $codigos = '';
     foreach ($materias['registros'] as $row) {
         // echo $row['pk_sim_prova'].' - '.$row['sim_materia_nome'].')<br />';
         $titulo = '<div class="materia left mr20 ml20"><h3 class="left">' . $row['sim_materia_nome'] . '</h3><br class="clear" />';
         // pega a sequencia de matérias do bloco
         $sqlAdministracao = new SqlAdministracao();
         $gabaritos = $sqlAdministracao->listar_gabarito($row['pk_sim_prova'], $row['pk_sim_materia']);
         $htmlFinal = '';
         $html = '';
         foreach ($gabaritos['registros'] as $gabarito) {
             // se otipo de questão for ABCDE
             if ($gabarito['tipo_questao'] == 1) {
                 $htmlFinal .= Estatisticas::questaoABCDE($html, $gabarito['numero_questao'], $gabarito['anulada'], $gabarito['pk_sim_gabarito'], $row['pk_sim_prova'], $row['pk_sim_materia'], $gabarito['gabarito'], $gabarito['peso_questao']);
             } else {
                 if ($gabarito['tipo_questao'] == 3) {
                     $htmlFinal .= Estatisticas::questaoAberta($html, $gabarito['numero_questao'], $gabarito['anulada'], $gabarito['pk_sim_gabarito'], $row['pk_sim_prova'], $row['pk_sim_materia'], $gabarito['gabarito'], $gabarito['peso_questao']);
                 } else {
                 }
             }
         }
         $codigos .= $titulo . $htmlFinal . '</div>';
     }
     $data['html'] = $legenda . $codigos;
     $this->load->view($this->load->getUrlTema(), $data);
 }
 public function processaAberta($pk_sim_gabarito, $numero_questao, $fk_sim_materia, $tipo_questao, $gabarito, $anulada, $peso_questao, $file, $totalLinhas, $colIniVF)
 {
     foreach ($file as $linha) {
         $pk_usuario_aluno = substr($linha, 0, 16);
         $marcacao = substr($linha, $colIniVF, 10);
         // se a questão não for anulada
         if ($anulada != 1) {
             $valorQuestao = (int) $gabarito == (int) ChecaProposicoes::marcacaoAberta($marcacao) ? $peso_questao : 0;
         } else {
             $valorQuestao = 0;
         }
         $status = $anulada != 1 ? $valorQuestao / $peso_questao : 0;
         echo '........' . $pk_usuario_aluno . ' - ' . $marcacao . ' - ' . ChecaProposicoes::marcacaoAberta($marcacao) . ' - <strong>' . $valorQuestao . '</strong> - ' . $status . '<br />';
         // inclui os dados do usuário na tabela de respostas
         $sqlAdministracao = new SqlAdministracao();
         $pk_sim_resposta = $sqlAdministracao->insert_respostas((int) $pk_usuario_aluno, $pk_sim_gabarito, ChecaProposicoes::marcacaoAberta($marcacao), $valorQuestao, $status);
     }
 }
 public function listar_concursos_mestre()
 {
     $msg = null;
     $data = $this->getParametroVisao();
     $data['page'] = 'home';
     $data['tema'] != '' ? $this->load->setTheme($data['tema']) : '';
     $data['msg'] = $msg;
     $data['abaAtiva'] = 18;
     $data['abaPage'] = 'listar_concursos_mestre';
     $data['alias'] = 'listar_concursos_mestre';
     $sqlAdministracao = new SqlAdministracao();
     $result = $sqlAdministracao->listar_concursos_mestre();
     $data['total'] = $result['total'];
     if ($result['total'] > 0) {
         $this->load->library('table');
         $arrHead[] = 'Codigos';
         $arrHead[] = 'Concurso';
         $arrHead[] = 'Prova';
         $arrHead[] = 'Data';
         $arrHead[] = '';
         $this->table->set_heading($arrHead);
         $count = 0;
         foreach ($result['registros'] as $row) {
             $count++;
             $tmpl = Util::zebrar($count, count($result['registros']));
             $codigos = array('data' => $row['unidade'] . '-' . $row['sim_seq'] . '-' . $row['psi_prv']);
             $sim_des = array('data' => $row['sim_des']);
             $psi_des = array('data' => $row['psi_des']);
             $psi_data = array('data' => View::converteDataBr($row['psi_data']));
             $prova = '<a class="link" href="' . base_url() . 'simulado/administracao/listar_concursos_tipos?psi_prv_unidade=' . $row['psi_prv_unidade'] . '">Cadastrar</a>';
             $this->table->add_row($codigos, $sim_des, $psi_des, $psi_data, $prova);
         }
         $this->table->set_template($tmpl);
     } else {
         $data['msg'] = '<div class="alert atencao">Nenhuma prova incluída. Para cadastrar, clique no botão acima.</div>';
     }
     $this->load->view($this->load->getUrlTema(), $data);
 }
 public function questaoAberta($html, $numero_questao, $anulada, $pk_sim_gabarito, $pk_sim_prova, $fk_sim_materia, $gabarito, $peso_questao)
 {
     // echo '-------- '.$numero_questao.' - '.$gabarito.'<br />';
     if ($anulada == 1) {
         $html .= '<div class="titulo_questao">' . $numero_questao . '</div> <div class="questao_anulada">Anulada</div><br class="clear" />';
     } else {
         // pega a sequencia de matérias do bloco
         $sqlAdministracao = new SqlAdministracao();
         $marcacoes = $sqlAdministracao->get_marcacoes($pk_sim_gabarito, $pk_sim_prova, $fk_sim_materia);
         $total_acertos = 0;
         foreach ($marcacoes['registros'] as $marcacao) {
             if ($marcacao['resposta'] == $gabarito) {
                 $total_acertos++;
             }
         }
         $percentual = $total_acertos / $marcacoes['total'] * 100;
         if ($percentual > 70) {
             $cor = 'questaoFacil';
         } else {
             if ($percentual < 71 && $percentual > 30) {
                 $cor = 'questaoMedia';
             } else {
                 $cor = 'questaoDificil';
             }
         }
         $html .= '<div class="titulo_questao tooltip ' . $cor . '" data-tooltip="Valor da questão: ' . $peso_questao . '">' . $numero_questao . '</div>';
         $html .= '<div class="questao"><table>';
         $html .= '<tr>';
         $html .= '<th class="proposicao w40">' . $gabarito . '</th>';
         $html .= '</tr>';
         $html .= '<tr>';
         $html .= '<td class="tcenter">' . round($percentual, 1) . '%</td>';
         $html .= '</tr>';
         $html .= '</table></div><br class="clear" />';
         return $html;
     }
 }