Пример #1
0
 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);
 }
Пример #2
0
 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);
 }