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;
 }
Exemple #2
0
 public function excluir_registro()
 {
     if ($_SERVER['REQUEST_METHOD'] == "POST") {
         try {
             View::validarHashIdLink($this->input->post('idData'));
             // pega a pontuação do tipo de registro a ser excluído
             $sqlAfa = new SqlAfa();
             $result = $sqlAfa->get_potuacao($this->input->post('idData3'));
             $pontuacao = $result[0]['pontuacao'];
             $operador = $result[0]['positiva'];
             if ($pontuacao != 0) {
                 // pega todos os registros depois do registro a ser excluído
                 $sqlAfa = new SqlAfa();
                 $result = $sqlAfa->get_registros_posteriores_exclusao($this->input->post('idData'), $this->input->post('idData2'));
                 if (count($result) > 0) {
                     foreach ($result as $row) {
                         var_dump($row['score']);
                         if ($operador == 1) {
                             $score_corrigido = $row['score'] - $pontuacao;
                         } else {
                             $score_corrigido = $row['score'] + $pontuacao;
                         }
                         // Atualiza scores
                         $sqlAfa = new SqlAfa();
                         $sqlAfa->atualiza_score($row['pk_afa_conceito_aluno'], $score_corrigido);
                     }
                 }
             }
             $sqlAfa = new SqlAfa();
             $sqlAfa->excluir_registro($this->input->post('idData'));
             echo json_encode(array('msg' => '<p class="alert ok">Registro excluído com sucesso!</p>'));
         } catch (Exception $e) {
             echo json_encode(array('erro' => '<p class="alert erro">Erro ao excluir a registro!</p>'));
         }
     }
     return false;
 }