Example #1
0
 public function publicar_concurso($pk_exa_concurso_tipo, $pk_exa_concurso)
 {
     $data = $this->getParametroVisao();
     $data['page'] = 'home';
     $data['abaPage'] = __FUNCTION__;
     $data['alias'] = __FUNCTION__;
     $data['abaAtiva'] = $this->AbaAtiva;
     if ($this->uri->segment(4) != '') {
         // pega os dados descritivos da prova
         $sqlConcurso = new SqlConcurso();
         $result = $sqlConcurso->get_concurso($pk_exa_concurso);
         $relatorio_nome = View::tituloProva($result[0]['concurso_tipo_nome'], $result[0]['concurso_nome'], 'geral', 'geral', 'geral');
         // reseta os dados anteriores
         $sqlConcurso->excluir_relatorio_concurso($pk_exa_concurso);
         // inclui os dados da prova na tabela de relatório
         $pk_relatorio = $sqlConcurso->insert_relatorio_prova($relatorio_nome, $result[0]['data_realizacao'], date('Y-m-d'), 4, $result[0]['fk_exa_concurso_tipo'], 0, 0, 0, $result[0]['fk_exa_concurso'], $result[0]['participantes'], $result[0]['media'], $result[0]['desvio_medio'], $result[0]['desvio_padrao'], $result[0]['maior_media'], $result[0]['menor_media'], $result[0]['mediana'], $result[0]['quartil1'], $result[0]['quartil3'], 0);
         // pega os dados dos alunos na prova
         $result = $sqlConcurso->listar_ranking_concurso($pk_exa_concurso);
         foreach ($result['registros'] as $row) {
             // echo $row['media_prova'].'<br />';
             // inclui os dados dos alunos na prova na tabela de relatório
             $sqlConcurso->insert_relatorio_dados($pk_relatorio, $row['fk_usuario_aluno'], $row['fk_exa_materia'], $row['media_prova'], $row['ranking_geral_prova'], $row['ranking_unidade_prova'], $row['ranking_turma_prova']);
         }
         // PROCESSA MÉDIAS E DESVIOS DAS TURMAS
         // pega as turmas participantes
         $result = $sqlConcurso->get_turmas_concurso($pk_relatorio);
         foreach ($result['registros'] as $row) {
             // procesa as médias e desvios padrão de cada turma
             $result = $sqlConcurso->process_media_turma($pk_relatorio, $row['pk_turma']);
             foreach ($result as $item) {
                 $result = $sqlConcurso->insert_media_turma($pk_relatorio, $row['pk_turma'], $item['media_turma']);
             }
         }
         $this->session->set_flashdata('msg', '<div class="alert ok">Bloco publicado com sucesso!</div>');
         redirect(base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/listar_concursos/' . $pk_exa_concurso_tipo);
     }
 }
Example #2
0
 public function publicar_concurso($pk_sim_concurso_tipo, $pk_sim_concurso)
 {
     $data = $this->getParametroVisao();
     $data['page'] = 'home';
     $data['tema'] != '' ? $this->load->setTheme($data['tema']) : '';
     $data['msg'] = $this->getMsg();
     $data['abaAtiva'] = 18;
     $data['abaPage'] = 'publicar_concurso';
     $data['alias'] = 'publicar_concurso';
     if ($this->uri->segment(5) != '') {
         // pega os dados descritivos da prova
         $sqlProva = new SqlProva();
         $result = $sqlProva->get_concurso($pk_sim_concurso);
         $relatorio_nome = View::tituloProva($result[0]['concurso_tipo_nome'], $result[0]['concurso_nome'], 'geral', 'geral', 'geral');
         // pega a data do último bloco
         $sqlAdministracao = new SqlAdministracao();
         $data_bloco = array_pop(array_pop($sqlAdministracao->get_blocos_concurso($pk_sim_concurso)));
         // reseta os dados anteriores
         $sqlAdministracao = new SqlAdministracao();
         $sqlAdministracao->excluir_relatorio_concurso($pk_sim_concurso);
         // inclui os dados da prova na tabela de relatório
         $sqlAdministracao = new SqlAdministracao();
         $pk_relatorio = $sqlAdministracao->insert_relatorio_prova($relatorio_nome, $data_bloco['data_realizacao'], date('Y-m-d'), 3, $result[0]['fk_sim_concurso_tipo'], 0, 0, 0, $result[0]['pk_sim_concurso'], $result[0]['participantes'], $result[0]['media_concurso'], $result[0]['desvio_medio'], $result[0]['variancia'], $result[0]['desvio_padrao'], $result[0]['maior_media'], $result[0]['menor_media'], $result[0]['mediana'], $result[0]['quartil1'], $result[0]['quartil3']);
         // pega os dados dos alunos na prova
         $sqlAdministracao = new SqlAdministracao();
         $result = $sqlAdministracao->listar_ranking_concurso($pk_sim_concurso);
         foreach ($result['registros'] as $row) {
             echo $row['media_concurso'] . '<br />';
             // inclui os dados dos alunos na prova na tabela de relatório
             $sqlAdministracao = new SqlAdministracao();
             $sqlAdministracao->insert_relatorio_dados($pk_relatorio, $row['fk_usuario_aluno'], 1, $row['media_concurso'], $row['desvio_concurso'], $row['ranking_geral_concurso'], $row['ranking_unidade_concurso'], $row['ranking_turma_concurso']);
         }
         // PROCESSA MÉDIAS E DESVIOS DAS TURMAS
         // pega as turmas participantes
         $sqlAdministracao = new SqlAdministracao();
         $result = $sqlAdministracao->get_turmas_concurso($pk_relatorio);
         foreach ($result['registros'] as $row) {
             // procesa as médias e desvios padrão de cada turma
             $sqlAdministracao = new SqlAdministracao();
             $result = $sqlAdministracao->process_media_desvio_turma($pk_relatorio, $row['pk_turma']);
             foreach ($result['registros'] as $item) {
                 var_dump($item['desvio_turma']);
                 $sqlAdministracao = new SqlAdministracao();
                 $result = $sqlAdministracao->insert_media_desvio_turma($pk_relatorio, $row['pk_turma'], $item['media_turma'], $item['desvio_turma']);
             }
         }
         $this->session->set_flashdata('msg', '<div class="alert ok">Concurso publicado com sucesso!</div>');
         redirect(base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/listar_concursos/' . $this->uri->segment(4) . '/' . $this->uri->segment(5));
     }
 }