public function processar_bloco_ranking($pk_sim_concurso, $pk_sim_bloco) { $data = $this->getParametroVisao(); $data['page'] = 'home'; $data['tema'] != '' ? $this->load->setTheme($data['tema']) : ''; $data['msg'] = $this->getMsg(); $data['abaAtiva'] = 18; $data['abaPage'] = 'processar_bloco_ranking'; $data['alias'] = 'processar_bloco_ranking'; if ($this->uri->segment(5) != '') { // PROCESSA RANKING GERAL // pega as áreas do bloco $sqlAdministracao = new SqlAdministracao(); $result = $sqlAdministracao->get_media_bloco($pk_sim_bloco); $_SESSION['nota'] = 0; $ranking = 0; foreach ($result['registros'] as $row) { if ($_SESSION['nota'] != $row['media_bloco']) { $ranking++; } echo '------------- ' . $ranking . ' - ' . $row['media_bloco'] . '<br />'; $sqlAdministracao = new SqlAdministracao(); $sqlAdministracao->atualizar_ranking_bloco($ranking, $pk_sim_bloco, $row['fk_usuario_aluno'], 1); $_SESSION['nota'] = $row['media_bloco']; } // PROCESSA RANKING POR UNIDADE // pega as unidades dos alunos que participaram da prova $sqlAdministracao = new SqlAdministracao(); $unidades = $sqlAdministracao->listar_media_bloco_unidades($pk_sim_bloco); foreach ($unidades['registros'] as $unidade) { echo '..... unidade: ' . $unidade['fk_unidade'] . '<br />'; // pega os alunos que participaram da prova $sqlAdministracao = new SqlAdministracao(); $alunos = $sqlAdministracao->listar_media_bloco_alunos($pk_sim_bloco, $unidade['fk_unidade']); $_SESSION['nota'] = 0; $ranking = 0; foreach ($alunos['registros'] as $row) { if ($_SESSION['nota'] != $row['media_bloco']) { $ranking++; } echo '------------- ' . $ranking . ' - ' . $row['media_bloco'] . '<br />'; $sqlAdministracao = new SqlAdministracao(); $sqlAdministracao->atualizar_ranking_bloco($ranking, $pk_sim_bloco, $row['fk_usuario_aluno'], 2); $_SESSION['nota'] = $row['media_bloco']; } // PROCESSA RANKING POR TURMA // pega as turmas dos alunos que participaram da prova $sqlAdministracao = new SqlAdministracao(); $turmas = $sqlAdministracao->listar_media_bloco_turmas($pk_sim_bloco, $unidade['fk_unidade']); foreach ($turmas['registros'] as $turma) { echo '++++++++++ turma: ' . $turma['pk_turma'] . '<br />'; // pega os alunos que participaram da prova $sqlAdministracao = new SqlAdministracao(); $alunos = $sqlAdministracao->listar_media_bloco_alunos($pk_sim_bloco, $unidade['fk_unidade'], $turma['pk_turma']); $_SESSION['nota'] = 0; $ranking = 0; foreach ($alunos['registros'] as $row) { if ($_SESSION['nota'] != $row['media_bloco']) { $ranking++; } echo '++++++++++ ' . $ranking . ' - ' . $row['media_bloco'] . '<br />'; $sqlAdministracao = new SqlAdministracao(); $sqlAdministracao->atualizar_ranking_bloco($ranking, $pk_sim_bloco, $row['fk_usuario_aluno'], 3); $_SESSION['nota'] = $row['media_bloco']; } } } $this->session->set_flashdata('msg', '<div class="alert ok">Rankings de blocos processados com sucesso!</div>'); redirect(base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/processar_bloco_estatisticas_gerais/' . $this->uri->segment(4) . '/' . $this->uri->segment(5)); } }