Esempio n. 1
0
 public function salvarAvaliacaoAction()
 {
     $idRecurso = $_POST['idRecurso'];
     $tbRecurso = new tbRecurso();
     $r = $tbRecurso->find(array('idRecurso = ?' => $idRecurso))->current();
     $stEstado = 0;
     $stFecharAnalise = 0;
     if ($r) {
         $Projetos = new Projetos();
         $dp = $Projetos->buscar(array('IdPRONAC = ?' => $r->IdPRONAC))->current();
         $pronac = $dp->AnoProjeto . $dp->Sequencial;
         $r->stAtendimento = $_POST['stAtendimento'];
         $r->dsAvaliacao = $_POST['dsAvaliacao'];
         $r->dtAvaliacao = new Zend_Db_Expr('GETDATE()');
         $r->idAgenteAvaliador = $this->idUsuario;
         if ($_POST['stAtendimento'] == 'I') {
             $r->siRecurso = 2;
             //2=Solicitação indeferida
             $r->stEstado = 1;
             //BUSCA A SITUAÇÃO ANTERIOR DO PROJETO ANTES DA SOLICITAÇÃO RECURSO
             $historicoSituacao = new HistoricoSituacao();
             $dadosHist = $historicoSituacao->buscarSituacaoAnterior($pronac);
             //ATUALIZA A SITUAÇÃO DO PROJETO
             $w = array();
             $w['situacao'] = $dadosHist->Situacao;
             $w['ProvidenciaTomada'] = 'Recurso indeferido.';
             $w['dtSituacao'] = new Zend_Db_Expr('GETDATE()');
             $w['Logon'] = $this->idUsuario;
             $where = "IdPRONAC = {$dp->IdPRONAC}";
             $Projetos->update($w, $where);
         } else {
             if ($_POST['vinculada'] == 262) {
                 $r->siRecurso = 4;
                 //4=Enviado para Análise Técnica (SEFIC)
             } else {
                 if ($_POST['vinculada'] == 400) {
                     $stEstado = 1;
                     $stFecharAnalise = 1;
                     $r->siRecurso = 7;
                     //7=CNIC
                     $r->idAgenteAvaliador = $_POST['destinatario'];
                 } else {
                     $r->siRecurso = 3;
                     //3=Enviado para o coordenador de parecer
                     //ATUALIZA A SITUAÇÃO DO PROJETO
                     $w = array();
                     $w['situacao'] = 'B11';
                     $w['ProvidenciaTomada'] = 'Recurso encaminhado para avaliação da unidade vinculada.';
                     $w['dtSituacao'] = new Zend_Db_Expr('GETDATE()');
                     $w['Logon'] = $this->idUsuario;
                     $where = "IdPRONAC = {$dp->IdPRONAC}";
                     $Projetos->update($w, $where);
                     //SE O RECURSO SE TRATAR DE PROJETO INDEFERIDO, OS DADOS DAS PLANILHAS ABAIXO DEVEM SER DELETADAS.
                     if ($r->tpSolicitacao == 'PI') {
                         //DELETAR DADOS
                         $tbAnaliseAprovacao = new tbAnaliseAprovacao();
                         $tbAnaliseAprovacao->delete(array('IdPRONAC = ?' => $r->IdPRONAC, 'tpAnalise = ?' => 'CO'));
                         $tbPlanilhaAprovacao = new tbPlanilhaAprovacao();
                         $tbPlanilhaAprovacao->delete(array('IdPRONAC = ?' => $r->IdPRONAC, 'tpPlanilha = ?' => 'CO', 'stAtivo = ?' => 'S'));
                         $Parecer = new Parecer();
                         $Parecer->delete(array('IdPRONAC = ?' => $r->IdPRONAC, 'stAtivo = ?' => 1, 'idTipoAgente = ?' => 6));
                         $Enquadramento = new Enquadramento();
                         $Enquadramento->delete(array('IdPRONAC = ?' => $r->IdPRONAC));
                     }
                 }
             }
         }
         $r->save();
         if ($_POST['stAtendimento'] == 'D') {
             $tbDistribuirProjeto = new tbDistribuirProjeto();
             $dados = array('IdPRONAC' => $r->IdPRONAC, 'idUnidade' => $_POST['vinculada'], 'dtEnvio' => new Zend_Db_Expr('GETDATE()'), 'idAvaliador' => isset($_POST['destinatario']) ? $_POST['destinatario'] : null, 'stEstado' => $stEstado, 'stFecharAnalise' => $stFecharAnalise, 'idUsuario' => $this->idUsuario);
             $tb = $tbDistribuirProjeto->inserir($dados);
         }
         parent::message('Dados salvos com sucesso!', "recurso", "CONFIRM");
     } else {
         parent::message('Nenhum registro encontrado.', "recurso", "ERROR");
     }
 }