public function cadastrar_registro($fk_usuario_professor, $pk_fap_subtipo, $obs, $data_aula, $pk_aula) { $sqlFap = new SqlFap(); $result = $sqlFap->get_ultimo_score($fk_usuario_professor); $score = $result[0]['score']; $sqlFap = new SqlFap(); $result = $sqlFap->get_potuacao($pk_fap_subtipo); $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; } $sqlFap = new SqlFap(); $sqlFap->cadastrar_registro($pk_fap_subtipo, $fk_usuario_professor, $obs, $data_aula, $pk_aula, $scoreFinal); }
public function processar_bonus_semanal() { $data = $this->getParametroVisao(); $data['page'] = 'home'; $data['tema'] != '' ? $this->load->setTheme($data['tema']) : ''; $data['abaAtiva'] = 8; $data['abaPage'] = 'processar_bonus_semanal'; $data['alias'] = 'processar_bonus_semanal'; if ($_SERVER['REQUEST_METHOD'] == "POST") { try { // $this->load->validarFormAntInjection($data['alias']); $sqlFap = new SqlFap(); $result = $sqlFap->checa_inclusao_bonus($this->input->post('data_evento1'), $this->input->post('data_evento2')); if (empty($result)) { $ano = substr($this->input->post('data_evento1'), 6, 4); $mes = substr($this->input->post('data_evento1'), 3, 2); $dia = substr($this->input->post('data_evento1'), 0, 2); $data1 = $ano . '-' . $mes . '-' . $dia; $ano = substr($this->input->post('data_evento2'), 6, 4); $mes = substr($this->input->post('data_evento2'), 3, 2); $dia = substr($this->input->post('data_evento2'), 0, 2); $data2 = $ano . '-' . $mes . '-' . $dia; $sqlFap = new SqlFap(); $result = $sqlFap->get_professores($data['ano_letivo']); $i = 0; foreach ($result as $row) { // echo $row['fk_usuario_professor'] . '<br />'; if ($row['indicador'] < 10) { $sqlFap = new SqlFap(); $result = $sqlFap->checa_registros_negativos_semana($row['fk_usuario_professor'], $data1, $data2); if (count($result) == 0) { $i++; $sqlFap = new SqlFap(); $result = $sqlFap->get_numero_aulas_professor($row['fk_usuario_professor'], $data['ano_letivo']); $bonus = 0.1 * $result[0]['total'] / 25; $sqlFap = new SqlFap(); $result = $sqlFap->get_historico($row['fk_usuario_professor']); $score = (double) $result['registros'][0]['score'] + $bonus; $novo_score = $score > 10 ? 10 : $score; $obs = 'Reconhecimento por ausência de registros negativos entre os dias ' . $this->input->post('data_evento1') . ' e ' . $this->input->post('data_evento2'); $sqlFap = new SqlFap(); $sqlFap->cadastrar_registro(80, $row['fk_usuario_professor'], $obs, date('Y-m-d'), 0, $novo_score); } } } $this->session->set_flashdata('msg', '<div class="alert ok">Bônus semanal processado com sucesso!<br />' . $i . ' professores bonificados.</div>'); } else { $this->session->set_flashdata('msg', '<div class="alert atencao">O bônus do período selecionado já havia sido incluído antes.</div>'); } redirect(base_url() . 'docentes/professores/painel_geral_de_registros'); return false; } catch (Exception $e) { $msg = '<p class="alert erro">' . $e->getMessage() . '</p>'; } } $this->load->view($this->load->getUrlTema(), $data); }