public function cadastrar_registro($pk_usuario_aluno, $pk_afa_subtipo_anotacao, $data_evento, $obs, $arrCoordenador, $pk_aula, $pk_usuario, $data_fim = '', $pendente = 0, $plantao = 0) { $sqlAfa = new SqlAfa(); $result = $sqlAfa->get_ultimo_score($pk_usuario_aluno); if (count($result) != 0) { $score = $result[0]['score']; } else { $sqlAfa = new SqlAfa(); $result = $sqlAfa->cadastrar_conceito_aluno($pk_usuario_aluno, 1, 8, $data_evento, $obs, 0, 0, 0); $sqlAfa = new SqlAfa(); $result = $sqlAfa->get_ultimo_score($pk_usuario_aluno); $score = $result[0]['score']; } $sqlAfa = new SqlAfa(); $result = $sqlAfa->get_potuacao($pk_afa_subtipo_anotacao); $pontuacao = $result[0]['pontuacao']; $pontuacaoTipo = $result[0]['positiva']; if ($pontuacaoTipo == 1) { $scoreSoma = $score + $pontuacao; $scoreFinal = $scoreSoma > 10 ? 10 : $scoreSoma; } else { $scoreSubtrai = $score - $pontuacao; $scoreFinal = $scoreSubtrai < 0 ? 0 : $scoreSubtrai; } if ($arrCoordenador != '') { $coordenador = explode('#', $arrCoordenador); $pk_usuario_coordenador = $coordenador[0]; $pk_coordenacao = $coordenador[1]; $pk_aula = 0; } else { $pk_usuario_coordenador = 0; $pk_coordenacao = 0; } if ($pendente == 1) { $scoreFinal = $score <= 10 ? $score : 10; } $sqlAfa = new SqlAfa(); $result = $sqlAfa->cadastrar_conceito_aluno($pk_usuario_aluno, $pk_afa_subtipo_anotacao, $scoreFinal, $data_evento, $obs, $pk_aula, $pk_usuario_coordenador, $pk_coordenacao, $pk_usuario, $data_fim, $pendente, $plantao); return $result; }
public function processar_bonus_semanal_turma_faltas() { $msg = null; $data = $this->getParametroVisao(); $data['page'] = 'home'; $data['tema'] != '' ? $this->load->setTheme($data['tema']) : ''; $data['msg'] = $msg; $data['abaAtiva'] = 9; $data['abaPage'] = 'processar_bonus_semanal_turma_faltas'; $data['alias'] = 'processar_bonus_semanal_turma_faltas'; // Pega o total de turmas a serem processadas $total = count($_SESSION['dadosEnvio']); $result = $_SESSION['dadosEnvio']; $data['total'] = $total; $data['status'] = ''; // Se já tiver ocorrido algum redirecionamento, faz um incremento. Caso contrário, inicia a contagem if (isset($_GET['counter'])) { $counter = $_GET['counter'] + 1; } else { $counter = 0; } // carrega a library e envia as variáveis a função "loop_refresh" $this->load->library('util'); $data['redirect_delay'] = $this->util->loop_refresh('1', $this->uri->segment(3), $counter, $total); // Se o contador for menor que o total de registros da array, efetua o processamento com base no registro da vez if ($counter < $total) { $dadosEnvio = $result[$counter]; $data['status'] = 'Processando ' . $dadosEnvio['turma_nome']; $sqlGrade = new SqlGrade(); $result = $sqlGrade->lista_alunos($dadosEnvio['pk_turma'], $data['ano_letivo']); foreach ($result as $row) { $sqlAfa = new SqlAfa(); $result = $sqlAfa->checa_faltas_semana($row['pk_usuario_aluno'], $_SESSION['data_afa1'], $_SESSION['data_afa2']); if (empty($result)) { $sqlAfa = new SqlAfa(); $result = $sqlAfa->get_ultimo_score($row['pk_usuario_aluno']); $ultimo_score = $result[0]['score']; $novo_score = $ultimo_score + 0.1; $score_final = $novo_score > 10 ? 10 : $novo_score; $obs = 'Referente aos dias ' . View::converteDataBr($_SESSION['data_afa1']) . ' e ' . View::converteDataBr($_SESSION['data_afa2']); $sqlAfa = new SqlAfa(); $sqlAfa->cadastrar_conceito_aluno($row['pk_usuario_aluno'], 75, $score_final, $_SESSION['data_afa2'], $obs, 0, 0, 0, 0, NULL); } } } else { $this->load->library('util'); $data['redirect_delay'] = $this->util->redirect_delay(1, 'afa/aluno/listar_alunos_afa'); } $this->load->view($this->load->getUrlTema(), $data); }