public function remanejamentoReintegrarPlanilhaAction()
 {
     $this->_helper->layout->disableLayout();
     $idPronac = $this->_request->getParam("id");
     if (strlen($idPronac) > 7) {
         $idPronac = Seguranca::dencrypt($idPronac);
     }
     $tbPlanilhaAprovacao = new tbPlanilhaAprovacao();
     try {
         $del = $tbPlanilhaAprovacao->delete(array('IdPRONAC = ?' => $idPronac, 'tpPlanilha = ?' => 'RP', 'stAtivo = ?' => 'N'));
         if ($del > 0) {
             $planilhaAtiva = $tbPlanilhaAprovacao->buscar(array('IdPRONAC=?' => $idPronac, 'StAtivo=?' => 'S'));
             $planilhaRP = array();
             foreach ($planilhaAtiva as $value) {
                 $planilhaRP['tpPlanilha'] = 'RP';
                 $planilhaRP['dtPlanilha'] = new Zend_Db_Expr('GETDATE()');
                 $planilhaRP['idPlanilhaProjeto'] = $value['idPlanilhaProjeto'];
                 $planilhaRP['idPlanilhaProposta'] = $value['idPlanilhaProposta'];
                 $planilhaRP['IdPRONAC'] = $value['IdPRONAC'];
                 $planilhaRP['idProduto'] = $value['idProduto'];
                 $planilhaRP['idEtapa'] = $value['idEtapa'];
                 $planilhaRP['idPlanilhaItem'] = $value['idPlanilhaItem'];
                 $planilhaRP['dsItem'] = $value['dsItem'];
                 $planilhaRP['idUnidade'] = $value['idUnidade'];
                 $planilhaRP['qtItem'] = $value['qtItem'];
                 $planilhaRP['nrOcorrencia'] = $value['nrOcorrencia'];
                 $planilhaRP['vlUnitario'] = $value['vlUnitario'];
                 $planilhaRP['qtDias'] = $value['qtDias'];
                 $planilhaRP['tpDespesa'] = $value['tpDespesa'];
                 $planilhaRP['tpPessoa'] = $value['tpPessoa'];
                 $planilhaRP['nrContraPartida'] = $value['nrContraPartida'];
                 $planilhaRP['nrFonteRecurso'] = $value['nrFonteRecurso'];
                 $planilhaRP['idUFDespesa'] = $value['idUFDespesa'];
                 $planilhaRP['idMunicipioDespesa'] = $value['idMunicipioDespesa'];
                 $planilhaRP['dsJustificativa'] = null;
                 $planilhaRP['idAgente'] = 0;
                 $planilhaRP['idPlanilhaAprovacaoPai'] = $value['idPlanilhaAprovacao'];
                 $planilhaRP['idReadequacao'] = $value['idReadequacao'];
                 $planilhaRP['tpAcao'] = $value['tpAcao'];
                 $planilhaRP['idRecursoDecisao'] = $value['idRecursoDecisao'];
                 $planilhaRP['stAtivo'] = 'N';
                 $tbPlanilhaAprovacao->inserir($planilhaRP);
             }
             echo json_encode(array('resposta' => true));
         } else {
             $msg = utf8_encode('A planilha já foi reintegrada.');
             echo json_encode(array('resposta' => false, 'msg' => $msg));
         }
     } catch (Zend_Exception $e) {
         echo json_encode(array('resposta' => false, 'msg' => 'Ocorreu um erro durante o processo.'));
     }
     die;
 }
 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");
     }
 }
 public function excluirSolicitacaoReadequacaoAction()
 {
     //FUNÇÃO ACESSADA SOMENTE PELO PROPONENTE.
     if ($this->idPerfil != 1111) {
         parent::message("Você não tem permissão para acessar essa área do sistema!", "principal", "ALERT");
     }
     $idPronac = $this->_request->getParam("idPronac");
     if (strlen($idPronac) > 7) {
         $idPronac = Seguranca::dencrypt($idPronac);
     }
     $get = Zend_Registry::get('get');
     try {
         $tbReadequacao = new tbReadequacao();
         $dados = $tbReadequacao->buscar(array('idReadequacao =?' => $get->idReadequacao))->current();
         if (!empty($dados->idDocumento)) {
             $tbDocumento = new tbDocumento();
             $dadosArquivo = $tbDocumento->buscar(array('idDocumento =?' => $dados->idDocumento))->current();
             if ($dadosArquivo) {
                 //                    $vwAnexarComprovantes = new vwAnexarComprovantes();
                 //                    $x = $vwAnexarComprovantes->excluirArquivo($dadosArquivo->idArquivo);
                 $tbDocumento = new tbDocumento();
                 $tbDocumento->excluir("idArquivo = {$dadosArquivo->idArquivo} and idDocumento= {$dados->idDocumento} ");
                 $tbArquivoImagem = new tbArquivoImagem();
                 $tbArquivoImagem->excluir("idArquivo =  {$dadosArquivo->idArquivo} ");
                 $tbArquivo = new tbArquivo();
                 $tbArquivo->excluir("idArquivo = {$dadosArquivo->idArquivo} ");
             }
         }
         //Se for readequação de planilha orçamentária, exclui a planilha SR gerada.
         if ($dados->idTipoReadequacao == 2) {
             $tbPlanilhaAprovacao = new tbPlanilhaAprovacao();
             $tbPlanilhaAprovacao->delete(array('IdPRONAC = ?' => $idPronac, 'tpPlanilha = ?' => 'SR', 'idReadequacao = ?' => $get->idReadequacao));
         }
         //Se for readequação de local de realização, exclui os registros na tbAbrangencia.
         if ($dados->idTipoReadequacao == 9) {
             $tbAbrangencia = new tbAbrangencia();
             $tbAbrangencia->delete(array('idPronac = ?' => $idPronac, 'stAtivo = ?' => 'S'));
         }
         //Se for readequação de plano de distribuição, exclui os registros na tbPlanoDistribuicao.
         if ($dados->idTipoReadequacao == 11) {
             $tbPlanoDistribuicao = new tbPlanoDistribuicao();
             $tbPlanoDistribuicao->delete(array('idPronac = ?' => $idPronac, 'stAtivo = ?' => 'S'));
         }
         //Se for readequação de plano de divulgação, exclui os registros na tbPlanoDivulgacao.
         if ($dados->idTipoReadequacao == 14) {
             $tbPlanoDivulgacao = new tbPlanoDivulgacao();
             $tbPlanoDivulgacao->delete(array('idPronac = ?' => $idPronac, 'stAtivo = ?' => 'S'));
         }
         $exclusao = $tbReadequacao->delete(array('idPronac =?' => $idPronac, 'idReadequacao =?' => $get->idReadequacao));
         if ($exclusao) {
             parent::message('Tipo de readequação excluída com sucesso!', "readequacoes/index?idPronac=" . Seguranca::encrypt($idPronac), "CONFIRM");
         } else {
             throw new Exception("Erro ao excluir o tipo de readequação!");
         }
     } catch (Exception $e) {
         parent::message($e->getMessage(), "readequacoes?idPronac=" . Seguranca::encrypt($idPronac), "ERROR");
     }
 }