/**
  * Metodo responsavel por enviar um Projeto para um Componente da Comissao
  * @param void
  * @return void
  */
 public function encaminhacomponentecomissaoAction()
 {
     // recebe os dados via get
     $idPronac_Get = $this->_request->getParam("idpronac");
     // pega o id do pronac via get
     $idAcao = $this->_request->getParam("idacao");
     // pega o idAcaoAvaliacaoPedidoAlteracao via get
     $db = Zend_Registry::get('db');
     $db->setFetchMode(Zend_DB::FETCH_OBJ);
     try {
         $db->beginTransaction();
         // ATUALIZA OS CAMPOS stAtivo e stVerificacao NA TABELA tbAcaoAvaliacaoItemPedidoAlteracao
         $sqlfin = ReadequacaoProjetos::retornaSQLfinalizaGeral($idAcao);
         $dados = $db->fetchAll($sqlfin);
         // BUSCA OS REGISTROS DA TABELA tbAcaoAvaliacaoItemPedidoAlteracao
         $sqlfin2 = ReadequacaoProjetos::retornaSQLfinalizaGeral2($idAcao);
         $dados = $db->fetchAll($sqlfin2);
         $id = $dados[0]->idAvaliacaoItemPedidoAlteracao;
         $idOrgao = $dados[0]->idOrgao;
         // pega a justificativa final e o id do Parecerista
         $sqlJustProp = ReadequacaoProjetos::buscarJustificativaFinalParecerista($id);
         $dados = $db->fetchAll($sqlJustProp);
         $dsObservacao = $dados[0]->dsObservacao;
         $idAgenteRemetente = $dados[0]->idAgenteRemetente;
         // BUSCA OS REGISTROS DOS CAMPOS idPedidoAlteracao E tpAlteracaoProjeto DA TABELA tbAvaliacaoItemPedidoAlteracao
         $sqlfin3 = ReadequacaoProjetos::retornaSQLfinalizaGeral3($id);
         $dados = $db->fetchAll($sqlfin3);
         $idPedidoAlt = $dados[0]->idPedidoAlteracao;
         $tpAlt = $dados[0]->tpAlteracaoProjeto;
         $stAvaliacaoItem = $dados[0]->stAvaliacaoItemPedidoAlteracao;
         $idAgenteAvaliador = $dados[0]->idAgenteAvaliador;
         $stParecerFavoravel = trim($stAvaliacaoItem) == 'AP' ? 1 : 2;
         // 1 => favorável; 2 => desfavorável
         // ATUALIZA O CAMPO stVerificacao NA TABELA tbPedidoAlteracaoXTipoAlteracao
         $sqlfin4 = ReadequacaoProjetos::retornaSQLfinalizaGeral4($idPedidoAlt, $tpAlt);
         $dados = $db->fetchAll($sqlfin4);
         // CRIAR NOVO REGISTRO DE ENCAMINHAMENTO NA TABELA tbAcaoAvaliacaoItemPedidoAlteracao
         $sqlfin5 = ReadequacaoProjetos::retornaSQLfinalizaGeral5($id, $idOrgao, $this->getIdUsuario, 118);
         $dados = $db->fetchAll($sqlfin5);
         // BUSCA O IDPRONAC DA TABELA tbPedidoAlteracaoProjeto
         $sqlfin6 = ReadequacaoProjetos::retornaSQLfinalizaGeral6($idPedidoAlt);
         $dados = $db->fetchAll($sqlfin6);
         $idPronac = $dados[0]->IdPRONAC;
         // copia as tabelas
         $planilhaProjeto = new PlanilhaProjeto();
         $planilhaAprovacao = new PlanilhaAprovacao();
         $analiseConteudo = new Analisedeconteudo();
         $analiseaprovacao = new AnaliseAprovacao();
         $projetos = new Projetos();
         $Distribuicao = new DistribuicaoProjetoComissao();
         $titulacaoConselheiro = new TitulacaoConselheiro();
         $Rplanilhaprojeto = $planilhaAprovacao->buscar(array('idPRONAC = ?' => $idPronac_Get, 'tpPlanilha = ?' => 'PA', 'stAtivo = ?' => 'N'));
         foreach ($Rplanilhaprojeto as $resu) {
             $data = array('tpPlanilha' => 'CO', 'dtPlanilha' => new Zend_Db_Expr('GETDATE()'), 'idPlanilhaProjeto' => $resu->idPlanilhaProjeto, 'idPlanilhaProposta' => $resu->idPlanilhaProposta, 'IdPRONAC' => $resu->IdPRONAC, 'idProduto' => $resu->idProduto, 'idEtapa' => $resu->idEtapa, 'idPlanilhaItem' => $resu->idPlanilhaItem, 'dsItem' => '', 'idUnidade' => $resu->idUnidade, 'qtItem' => $resu->qtItem, 'nrOcorrencia' => $resu->nrOcorrencia, 'vlUnitario' => $resu->vlUnitario, 'qtDias' => $resu->qtDias, 'tpDespesa' => $resu->tpDespesa, 'tpPessoa' => $resu->tpPessoa, 'nrContraPartida' => $resu->nrContraPartida, 'nrFonteRecurso' => $resu->nrFonteRecurso, 'idUFDespesa' => $resu->idUFDespesa, 'idMunicipioDespesa' => $resu->idMunicipioDespesa, 'idPlanilhaAprovacaoPai' => $resu->idPlanilhaAprovacao, 'idPedidoAlteracao' => $idPedidoAlt, 'dsJustificativa' => null, 'stAtivo' => 'N');
             $inserirPlanilhaAprovacao = $planilhaAprovacao->InserirPlanilhaAprovacao($data);
         }
         // chama a função para fazer o balanceamento
         $areaProjeto = $projetos->BuscarAreaSegmentoProjetos($idPronac_Get);
         $Rtitulacao = $titulacaoConselheiro->buscarComponenteBalanceamento($areaProjeto['area']);
         $Distribuicao->alterar(array('stDistribuicao' => 'I'), array('idPRONAC = ?' => $idPronac_Get));
         $dados = array('idPRONAC' => $idPronac_Get, 'idAgente' => $Rtitulacao[0]['idAgente'], 'dtDistribuicao' => new Zend_Db_Expr('GETDATE()'), 'stDistribuicao' => 'A', 'idResponsavel' => 0);
         $Distribuicao->inserir($dados);
         // chama a função para alterar a situação do projeto - Padrão C10
         $data = array('Situacao' => 'C10');
         $where = "IdPRONAC = {$idPronac_Get}";
         $projetos->alterarProjetos($data, $where);
         // busca a planilha PA
         $arrWhereSomaPlanilhaPA = array();
         $arrWhereSomaPlanilhaPA['idPronac = ?'] = $idPronac_Get;
         //$arrWhereSomaPlanilhaPA['idPlanilhaItem <> ?']  = '206'; //elaboracao e agenciamento
         //$arrWhereSomaPlanilhaPA['NrFonteRecurso = ?']   = '109';
         $arrWhereSomaPlanilhaPA['stAtivo = ?'] = 'N';
         $arrWhereSomaPlanilhaPA['tpPlanilha = ?'] = 'PA';
         $somaPA = $planilhaAprovacao->somarItensPlanilhaAprovacao($arrWhereSomaPlanilhaPA);
         // busca a planilha CO
         $arrWhereSomaPlanilhaCO = array();
         $arrWhereSomaPlanilhaCO['idPronac = ?'] = $idPronac_Get;
         //$arrWhereSomaPlanilhaCO['idPlanilhaItem <> ?']  = '206'; //elaboracao e agenciamento
         //$arrWhereSomaPlanilhaCO['NrFonteRecurso = ?']   = '109';
         $arrWhereSomaPlanilhaCO['stAtivo = ?'] = 'S';
         $arrWhereSomaPlanilhaCO['tpPlanilha = ?'] = 'CO';
         $somaCO = $planilhaAprovacao->somarItensPlanilhaAprovacao($arrWhereSomaPlanilhaCO);
         // define o tipo de parecer (tipo 2 => complementação; tipo 4 => redução)
         $tipoParecer = 2;
         if ($somaPA < $somaCO) {
             $tipoParecer = 4;
         }
         // cadastra na tabela parecer
         $tbParecer = new Parecer();
         $buscarPareceres = $tbParecer->buscar(array('IdPRONAC = ?' => $idPronac_Get), array('DtParecer DESC'));
         // busca os pareceres do Projeto
         foreach ($buscarPareceres as $p) {
             // desabilita os pareceres antigos
             $idparecer = isset($p->IdParecer) ? $p->IdParecer : $p->idParecer;
             $tbParecer->alterar(array('stAtivo' => 0), array('idParecer = ?' => $idparecer));
         }
         $dadosParecer = array('IdPRONAC' => $buscarPareceres[0]->IdPRONAC, 'idEnquadramento' => $buscarPareceres[0]->idEnquadramento, 'AnoProjeto' => $buscarPareceres[0]->AnoProjeto, 'Sequencial' => $buscarPareceres[0]->Sequencial, 'TipoParecer' => $tipoParecer, 'ParecerFavoravel' => $stParecerFavoravel, 'DtParecer' => new Zend_Db_Expr('GETDATE()'), 'Parecerista' => $idAgenteRemetente, 'Conselheiro' => null, 'NumeroReuniao' => null, 'ResumoParecer' => $dsObservacao, 'SugeridoUfir' => 0, 'SugeridoReal' => $somaPA['soma'], 'SugeridoCusteioReal' => 0, 'SugeridoCapitalReal' => 0, 'Atendimento' => $buscarPareceres[0]->Atendimento, 'Logon' => $this->getIdUsuario, 'stAtivo' => 1, 'idTipoAgente' => 1);
         $tbParecer->inserir($dadosParecer);
         $db->commit();
         parent::message("Projeto finalizado com sucesso!", "manterreadequacao?tipoFiltro=7:d", "CONFIRM");
     } catch (Zend_Exception $e) {
         $db->rollBack();
         parent::message("Erro na devolução da solicitação", "manterreadequacao?tipoFiltro=7:d", "ERROR");
     }
 }
 /**
  * Metodo para emitir parecer
  * @access public
  * @param void
  * @return void
  */
 public function emitirparecerAction()
 {
     $idPronac = $this->_request->getParam("idpronac");
     $pa = new paChecarLimitesOrcamentario();
     $resultadoCheckList = $pa->exec($idPronac, 3);
     $i = 0;
     foreach ($resultadoCheckList as $resultado) {
         if ($resultado->Observacao == 'PENDENTE') {
             $i++;
         }
     }
     $this->view->qtdErrosCheckList = $i;
     $this->view->resultadoCheckList = $resultadoCheckList;
     $tblParecer = new Parecer();
     $tblPlanilhaAprovacao = new PlanilhaAprovacao();
     $auth = Zend_Auth::getInstance();
     // pega a autenticacao
     $tblProjetos = new Projetos();
     $tblPreProjeto = new PreProjeto();
     $ConsultaReuniaoAberta = ReuniaoDAO::buscarReuniaoAberta();
     $NumeroReuniao = $ConsultaReuniaoAberta['NrReuniao'];
     //CASO O COMPONENTE QUEIRA APENAS SALVAR O SEU PARECER - INICIO
     if (isset($_POST['usu_codigo'])) {
         $this->_helper->layout->disableLayout();
         // desabilita o Zend_Layout
         $tipoAgente = $_POST['tipoplanilha'];
         $parecer = $_POST['parecer'];
         $buscarParecer = $tblParecer->buscar(array('IdPRONAC = ?' => $_POST['idpronac'], 'stAtivo = ?' => 1))->current();
         if (count($buscarParecer) > 0) {
             $buscarParecer = $buscarParecer->toArray();
             $dados = array('idPRONAC' => $_POST['idpronac'], 'AnoProjeto' => $buscarParecer['AnoProjeto'], 'idEnquadramento' => $buscarParecer['idEnquadramento'], 'Sequencial' => $buscarParecer['Sequencial'], 'TipoParecer' => $buscarParecer['TipoParecer'], 'ParecerFavoravel' => Seguranca::tratarVarAjaxUFT8($parecer), 'dtParecer' => date('Y-m-d H:i:s'), 'NumeroReuniao' => $NumeroReuniao, 'ResumoParecer' => utf8_decode($_POST['justificativa']), 'SugeridoUfir' => 0, 'SugeridoReal' => $_POST['valorreal'], 'SugeridoCusteioReal' => 0, 'SugeridoCapitalReal' => 0, 'Atendimento' => 'S', 'Logon' => $_POST['usu_codigo'], 'stAtivo' => 1, 'idTipoAgente' => $tipoAgente);
             $idparecer = isset($buscarParecer['IdParecer']) ? $buscarParecer['IdParecer'] : $buscarParecer['idParecer'];
             //se parecer ativo nao é o Componente, inativa os outros e grava o do Componente
             if (!$buscarParecer or $buscarParecer['idTipoAgente'] != $tipoAgente) {
                 try {
                     $dadosAtualizar = array('stAtivo' => 0);
                     $where = "idparecer = " . $idparecer;
                     $update = $tblParecer->alterar($dadosAtualizar, $where);
                     $inserir = $tblParecer->inserir($dados);
                     echo json_encode(array('error' => false));
                 } catch (Exception $e) {
                     echo json_encode(array('error' => true, 'descricao' => $e->getMessage()));
                 }
                 die;
             } else {
                 try {
                     $where = "idparecer = " . $idparecer;
                     $update = $tblParecer->alterar($dados, $where);
                     echo json_encode(array('error' => false));
                 } catch (Zend_Exception $e) {
                     echo json_encode(array('error' => true, 'descricao' => $e->getMessage()));
                 }
                 die;
             }
         } else {
             echo json_encode(array('error' => true, 'descricao' => 'N&atilde;o foi encontrado parecer v&aacute;lido da an&aacute;lise t&eacute;cnica.'));
             die;
         }
     }
     //CASO O COMPONENTE QUEIRA SALVAR O SEU PARECER - FIM
     //CASO O PROJETO VOLTE DA CNIC APROVADO PARA O COMPONENTE READEQUAR - INICIO
     if (isset($_POST['idpronac'])) {
         $idpronac = $_POST['idpronac'];
         $tblSituacao = new Situacao();
         $tblPauta = new Pauta();
         $buscarnrreuniaoprojeto = $tblPauta->dadosiniciaistermoaprovacao(array($idpronac))->current();
         $dados = array();
         //TRATANDO SITUACAO DO PROJETO QUANDO ESTE FOR DE READEQUACAO
         if ($this->bln_readequacao == "false") {
             $dados['Situacao'] = 'D03';
             $buscarsituacao = $tblSituacao->listasituacao(array('D03'))->current();
         } else {
             $dados['Situacao'] = 'D02';
             $buscarsituacao = $tblSituacao->listasituacao(array('D02'))->current();
         }
         $dados['DtSituacao'] = date('Y-m-d H:i:s');
         $dados['ProvidenciaTomada'] = 'PROJETO APROVADO NA CNIC N&ordm ' . $buscarnrreuniaoprojeto->NrReuniao . ' - ' . $buscarsituacao['Descricao'];
         $dados['Logon'] = $auth->getIdentity()->usu_codigo;
         $where = "IdPRONAC = " . $idpronac;
         $tblProjetos->alterar($dados, $where);
         //$tblProjetos->alterarSituacao($idpronac, NULL, $dados['Situacao'], $dados['ProvidenciaTomada']);
         parent::message("Projeto readequado com sucesso!", "areadetrabalho/index", "CONFIRM");
         exit;
     }
     //CASO O PROJETO VOLTE DA CNIC APROVADO PARA O COMPONENTE READEQUAR - FIM
     //FINALIZAR ANALISE - JUSTIFICATIVA DE PLENARIA - INICIO
     if (isset($_POST['justificativaenvioplenaria'])) {
         // recebe os dados via post
         $post = Zend_Registry::get('post');
         $parecerAtualizado = trim($post->pareceratualizado);
         //CONFIRMA SE O PARECER REALMENTE FOI EMITIDO E ESTA GRAVADO
         $tblParecer = new Parecer();
         $rsParecer = $tblParecer->buscar(array("IdPRONAC = ?" => $post->idPronac, "idTipoAgente = ?" => 6, "stAtivo = ?" => 1));
         if ($rsParecer->count() <= 0) {
             parent::message("Para finalizar a An&aacute;lise &eacute; necess&aacute;rio emitir um parecer. O parecer n&atilde;o foi gravado corretamente.", "realizaranaliseprojeto/emitirparecer/idpronac/" . $post->idPronac, "ERROR");
             die;
         } else {
             $idParecer = isset($rsParecer[0]->IdParecer) ? $rsParecer[0]->IdParecer : $rsParecer[0]->idParecer;
             $rsParecerAtualizar = $tblParecer->find($idParecer)->current();
             $rsParecerAtualizar->ResumoParecer = $parecerAtualizado;
             $rsParecerAtualizar->save();
         }
         $tblSituacao = new Situacao();
         $tblProjetos = new Projetos();
         $tblPauta = new Pauta();
         $tblReuniao = new tbreuniao();
         $idPronac = $post->idPronac;
         //recupera tipo da planilha de acordo com o resultado da reuniao plenaria
         /*$buscarnrreuniaoprojeto = $tblPauta->dadosiniciaistermoaprovacao(array($idPronac) )->current();
           $rsReuniao = $tblReuniao->buscar(array('NrReuniao=?'=>$buscarnrreuniaoprojeto->NrReuniao))->current();
           $buscaReadAprovacadoCnic = $tblPauta->buscar(array('IdPRONAC = ?'=>$idPronac, 'stAnalise = ?'=>'AS', 'idNrReuniao = ?'=>$rsReuniao->idNrReuniao));
           if($buscaReadAprovacadoCnic->count() > 0){ $tpPlanilha = "SE"; } else{ $tpPlanilha = "CO"; }*/
         $tblPlanilhaAprovacao = new PlanilhaAprovacao();
         $rsPlanilhaAtual = $tblPlanilhaAprovacao->buscar(array('IdPRONAC = ?' => $idPronac), array('dtPlanilha DESC'))->current();
         $tpPlanilha = !empty($rsPlanilhaAtual) && $rsPlanilhaAtual->tpPlanilha == 'SE' ? 'SE' : 'CO';
         //TRATANDO SITUACAO DO PROJETO QUANDO ESTE FOR DE READEQUACAO
         $codSituacao = $this->bln_readequacao == "false" ? 'D03' : 'D02';
         $stEnvioPlenaria = isset($post->stEnvioPlenaria) ? 'S' : 'N';
         $justificativa = $post->justificativaenvioplenaria;
         $TipoAprovacao = $post->decisao;
         $situacao = $post->situacao == null ? $codSituacao : $post->situacao;
         $dtsituacao = date('Y-m-d H:i:s');
         $buscarsituacao = $tblSituacao->listasituacao(array($situacao))->current()->toArray();
         $providencia = $post->situacao == null ? 'PROJETO APROVADO NA CNIC N ' . $NumeroReuniao . ' - ' . $buscarsituacao['Descricao'] : 'PROJETO INDEFERIDO NA CNIC N ' . $NumeroReuniao . ' - ' . $buscarsituacao['Descricao'];
         $stEnvioPlenaria = $post->stEnvioPlenaria == null ? 'N' : 'S';
         /**** CODIGO DE READEQUACAO ****/
         //SE O PROJETO FOR DE READEQUACAO e a DECISAO FOR DE APROVACAO - INATIVA A ANTIGA PLANILHA 'CO' e ATIVA A 'CO' READEQUADA
         if ($this->bln_readequacao == "true") {
             //finaliza readequacao do projeto
             if (!empty($this->idPedidoAlteracao) && $this->idPedidoAlteracao > 0) {
                 //ReadequacaoProjetos::alterarPedido($this->idPedidoAlteracao, '2');
                 $tbPedidoAlteracao = new tbPedidoAlteracaoProjeto();
                 $rsPedidoAlteracao = $tbPedidoAlteracao->buscar(array('idPedidoAlteracao = ?' => $this->idPedidoAlteracao))->current();
                 $rsPedidoAlteracao->siVerificacao = 2;
                 $rsPedidoAlteracao->save();
                 //$dados = array('siVerificacao' => 2);
                 //$where = array('idPedidoAlteracao = ' => $this->idPedidoAlteracao);
                 //$rsPedidoAlteracao = $tbPedidoAlteracao->alterar($dados, $where);
             }
             //troca planilhas apenas se a decisao do componente for de aprovar a readequacao  //Se a planilha atual é SE significa que voltou da plenaria e nao entra na opcao de desativar a antiga e ativar a nova
             if ($post->decisao = 'AC' && $tpPlanilha != 'SE') {
                 try {
                     //ATIVA PLANILHA CO READEQUADA
                     $tblPlanilhaAprovacao = new PlanilhaAprovacao();
                     $rsPlanilha_Ativa = $tblPlanilhaAprovacao->buscar(array('idPronac = ?' => $idPronac, 'stAtivo = ?' => 'S', 'tpPlanilha=?' => 'CO'));
                     //PLANILHA DA APROVACAO INICIAL
                     $arrBuscaPlanilha = array();
                     $arrBuscaPlanilha["idPronac = ? "] = $idPronac;
                     $arrBuscaPlanilha["tpPlanilha = ? "] = 'CO';
                     $arrBuscaPlanilha["stAtivo = ? "] = 'N';
                     $arrBuscaPlanilha["idPedidoAlteracao = (SELECT TOP 1 max(idPedidoAlteracao) from SAC.dbo.tbPlanilhaAprovacao where IdPRONAC = '{$idPronac}')"] = '(?)';
                     $rsPlanilha_Inativa = $tblPlanilhaAprovacao->buscar($arrBuscaPlanilha);
                     //PLANILHA DA READEQUACAO
                     //inativa Planilha Aprovacao Inicial
                     foreach ($rsPlanilha_Ativa as $planilhaI) {
                         $planilhaI->stAtivo = 'N';
                         $planilhaI->save();
                     }
                     //ativa Planilha Readequada
                     $planilha = null;
                     foreach ($rsPlanilha_Inativa as $planilhaR) {
                         $planilhaR->stAtivo = 'S';
                         $planilhaR->save();
                     }
                 } catch (Exception $e) {
                     //xd($e->getMessage());
                     parent::message("Erro ao ativar Planilha readequada. " . $e->getMessage(), "realizaranaliseprojeto/emitirparecer" . $query_string, "ERROR");
                 }
             }
         }
         /**** FIM CODIGO DE READEQUACAO ****/
         try {
             // busca a reuniao aberta
             $idReuniao = $ConsultaReuniaoAberta['idNrReuniao'];
             // verifica se ja esta na pauta
             $verificaPauta = RealizarAnaliseProjetoDAO::retornaRegistro($idPronac, $idReuniao);
             if (count($verificaPauta) == 0) {
                 // cadastra o projeto na pauta
                 $dados = array('idNrReuniao' => $idReuniao, 'IdPRONAC' => $idPronac, 'dtEnvioPauta' => new Zend_Db_Expr('GETDATE()'), 'stEnvioPlenario' => $stEnvioPlenaria, 'tpPauta' => 1, 'stAnalise' => $TipoAprovacao, 'dsAnalise' => TratarString::escapeString($justificativa), 'stPlanoAnual' => $post->stPlanoAnual);
                 $tblPauta->inserir($dados);
                 $dadosprojeto = array('Situacao' => $situacao, 'DtSituacao' => $dtsituacao, 'ProvidenciaTomada' => $providencia);
                 $tblProjetos->alterar($dadosprojeto, 'IdPRONAC = ' . $idPronac);
                 parent::message("Projeto cadastrado na Pauta com sucesso!", "areadetrabalho/index", "CONFIRM");
                 die;
             } else {
                 // altera o projeto na pauta
                 $dados = array('idNrReuniao' => $idReuniao, 'dtEnvioPauta' => new Zend_Db_Expr('GETDATE()'), 'stEnvioPlenario' => $stEnvioPlenaria, 'tpPauta' => 1, 'dsAnalise' => TratarString::escapeString($justificativa), 'stAnalise' => $TipoAprovacao, 'stPlanoAnual' => $post->stPlanoAnual);
                 //                            $alterar = $tblPauta->alterar($dados, 'IdPRONAC = '.$idPronac.' and idNrReuniao = '.$idReuniao);
                 $dadosprojeto = array('Situacao' => $situacao, 'DtSituacao' => $dtsituacao, 'ProvidenciaTomada' => $providencia);
                 //                            $tblProjetos->alterar($dadosprojeto, 'IdPRONAC = '.$idPronac);
                 $tbRecurso = new tbRecurso();
                 $dadosRecursoAtual = $tbRecurso->buscar(array('IdPRONAC = ?' => $idPronac, 'stAtendimento = ?' => 'N', 'tpSolicitacao =?' => 'EN'));
                 if (count($dadosRecursoAtual) > 0) {
                     $auth = Zend_Auth::getInstance();
                     // pega a autenticação
                     $this->idUsuario = $auth->getIdentity()->usu_codigo;
                     //ATUALIZAÇÃO DA TABELA RECURSO//
                     $dadosNovos = array('dtAvaliacao' => new Zend_Db_Expr('GETDATE()'), 'dsAvaliacao' => 'Recurso deferido conforme solicitação do Proponente.', 'idAgenteAvaliador' => $this->idUsuario);
                     $tbRecurso->update($dadosNovos, "idRecurso=" . $dadosRecursoAtual[0]->idRecurso);
                     //ATUALIZAÇÃO DA TABELA Enquadramento//
                     $Enquadramento = new Enquadramento();
                     $dadosEnquadramentoAtual = $Enquadramento->buscarDados($idPronac, null);
                     if (count($dadosRecursoAtual) > 0) {
                         $tpEnquadramento = $dadosEnquadramentoAtual[0]->Enquadramento == 1 ? 2 : 1;
                         $dadosNovosEnquadramento = array('Enquadramento' => $tpEnquadramento, 'dtEnquadramento' => new Zend_Db_Expr('GETDATE()'), 'Observacao' => 'Alteração de Enquadramento conforme deferimento de recurso.', 'Logon' => $this->idUsuario);
                         $Enquadramento->update($dadosNovosEnquadramento, "IdEnquadramento=" . $dadosEnquadramentoAtual[0]->IdEnquadramento);
                     }
                 }
                 parent::message("Projeto j&aacute; est&aacute; em Pauta, sendo alterado com sucesso!", "areadetrabalho/index", "CONFIRM");
                 die;
             }
         } catch (Exception $e) {
             //xd($e->getMessage());
             parent::message("Erro ao incluir projeto na Pauta. " . $e->getMessage(), "realizaranaliseprojeto/emitirparecer" . $query_string, "ERROR");
         }
     } else {
         // recebe os dados via get
         $idpronac = $this->_request->getParam("idpronac");
         $this->view->idpronac = $idpronac;
         try {
             if (empty($idpronac)) {
                 //throw new Exception("Por favor, clique no Pronac Aguardando An&aacute;lise!");
                 parent::message("Erro ao realizar operação.", "realizaranaliseprojeto/emitirparecer", "ERROR");
             } else {
                 $idpronac = $this->_request->getParam("idpronac");
                 $projeto = new Projetos();
                 $planilhaproposta = new PlanilhaProposta();
                 $planilhaprojeto = new PlanilhaProjeto();
                 $planoDistribuicao = new PlanoDistribuicao();
                 $analiseaprovacao = new AnaliseAprovacao();
                 $planilhaAprovacao = new PlanilhaAprovacao();
                 $tbPreProjeto = new PreProjeto();
                 //antigo modo
                 //$tblPauta = new Pauta();
                 //$buscaReadAprovacadoCnic = $tblPauta->buscar(array('IdPRONAC = ?'=>$idpronac, 'stAnalise = ?'=>"AS"));
                 //novo modo
                 $rsPlanilhaAtual = $planilhaAprovacao->buscar(array('IdPRONAC = ?' => $idpronac), array('dtPlanilha DESC'))->current();
                 $tipoplanilha = !empty($rsPlanilhaAtual) && $rsPlanilhaAtual->tpPlanilha == 'SE' ? 'SE' : 'CO';
                 if (!empty($rsPlanilhaAtual) && $rsPlanilhaAtual->tpPlanilha == 'SE') {
                     $tpPlanilha = "SE";
                     $tpAnalise = "SE";
                     $tpAgente = '10';
                 } else {
                     $tpPlanilha = "CO";
                     $tpAnalise = "CO";
                     $tpAgente = '6';
                 }
                 $projetoAtual = $projeto->buscar(array('IdPRONAC = ?' => $idpronac))->current()->toArray();
                 $idprojeto = $projetoAtual['idProjeto'];
                 $rsPreprojeto = $tbPreProjeto->buscar(array('idPreProjeto=?' => $idprojeto))->current();
                 if (!empty($rsPreprojeto)) {
                     $stPlanoAnual = $rsPreprojeto->stPlanoAnual;
                 } else {
                     $stPlanoAnual = '0';
                 }
                 $this->view->tipoplanilha = $tpPlanilha;
                 $this->view->tipoagente = $tpAgente;
                 $this->view->stPlanoAnual = $stPlanoAnual;
                 /**** CODIGO DE READEQUACAO ****/
                 $arrWhereSomaPlanilha = array();
                 $arrWhereSomaPlanilha['idPronac = ?'] = $idpronac;
                 //TRATANDO SOMA DE PROJETO QUANDO ESTE FOR DE READEQUACAO
                 if ($this->bln_readequacao == "false") {
                     $fonteincentivo = $planilhaproposta->somarPlanilhaProposta($idprojeto, 109);
                     $outrasfontes = $planilhaproposta->somarPlanilhaProposta($idprojeto, false, 109);
                 } else {
                     $arrWhereFontesIncentivo = $arrWhereSomaPlanilha;
                     $arrWhereFontesIncentivo['idPlanilhaItem <> ? '] = '206';
                     //elaboracao e agenciamento
                     $arrWhereFontesIncentivo['tpPlanilha = ? '] = 'SR';
                     $arrWhereFontesIncentivo['stAtivo = ? '] = 'N';
                     $arrWhereFontesIncentivo['NrFonteRecurso = ? '] = '109';
                     $arrWhereFontesIncentivo["idPedidoAlteracao = (?)"] = new Zend_Db_Expr("(SELECT TOP 1 max(idPedidoAlteracao) from SAC.dbo.tbPlanilhaAprovacao where IdPRONAC = '{$idpronac}')");
                     $arrWhereFontesIncentivo["tpAcao <> ('E') OR tpAcao IS NULL "] = '(?)';
                     $fonteincentivo = $planilhaAprovacao->somarItensPlanilhaAprovacao($arrWhereFontesIncentivo);
                     $arrWhereOutrasFontes = $arrWhereSomaPlanilha;
                     $arrWhereOutrasFontes['idPlanilhaItem <> ? '] = '206';
                     //elaboracao e agenciamento
                     $arrWhereOutrasFontes['tpPlanilha = ? '] = 'SR';
                     $arrWhereOutrasFontes['stAtivo = ? '] = 'N';
                     $arrWhereOutrasFontes['NrFonteRecurso <> ? '] = '109';
                     $arrWhereOutrasFontes["idPedidoAlteracao = (?)"] = new Zend_Db_Expr("(SELECT TOP 1 max(idPedidoAlteracao) from SAC.dbo.tbPlanilhaAprovacao where IdPRONAC = '{$idpronac}')");
                     $arrWhereOutrasFontes["tpAcao <> ('E') OR tpAcao IS NULL "] = '(?)';
                     $outrasfontes = $planilhaAprovacao->somarItensPlanilhaAprovacao($arrWhereOutrasFontes);
                 }
                 $this->view->fontesincentivo = $fonteincentivo['soma'];
                 $this->view->outrasfontes = $outrasfontes['soma'];
                 $this->view->valorproposta = $fonteincentivo['soma'] + $outrasfontes['soma'];
                 $arrWhereSomaPlanilha = array();
                 $arrWhereSomaPlanilha['idPronac = ?'] = $idpronac;
                 $arrWhereSomaPlanilha['idPlanilhaItem <> ? '] = '206';
                 //elaboracao e agenciamento
                 $arrWhereSomaPlanilha['tpPlanilha = ? '] = $tpPlanilha;
                 $arrWhereSomaPlanilha['NrFonteRecurso = ? '] = '109';
                 if ($this->bln_readequacao == "true") {
                     $arrWhereSomaPlanilha["idPedidoAlteracao = (SELECT TOP 1 max(idPedidoAlteracao) from SAC.dbo.tbPlanilhaAprovacao where IdPRONAC = '{$idpronac}')"] = '(?)';
                     $arrWhereSomaPlanilha["tpAcao <> ('E') OR tpAcao IS NULL "] = '(?)';
                     $arrWhereSomaPlanilha['stAtivo = ? '] = 'N';
                 } else {
                     $arrWhereSomaPlanilha['stAtivo = ? '] = 'S';
                 }
                 //VALOR TOTAL DO PROJETO - V1
                 //antiga soma
                 //$valorProjeto = $planilhaAprovacao->somarPlanilhaAprovacao($idpronac,206, $tpPlanilha, $arrWhereReadequacao);
                 //nova soma
                 $valorProjeto = $planilhaAprovacao->somarItensPlanilhaAprovacao($arrWhereSomaPlanilha);
                 /**** FIM CODIGO DE READEQUACAO ****/
                 $this->view->totalsugerido = $valorProjeto['soma'] ? $valorProjeto['soma'] : 0;
                 //valor total do projeto (Planilha Aprovacao)
                 //CALCULO DOS 20% - ETAPA DIVULGACAO
                 //soma para calculo dos 20% etapada de Divulgacao
                 $arrWhereEtapa = array();
                 $arrWhereEtapa['pa.idPronac = ?'] = $idpronac;
                 $arrWhereEtapa['pa.idPlanilhaItem <> ? '] = '206';
                 //elaboracao e agenciamento
                 $arrWhereEtapa['pa.tpPlanilha = ? '] = $tpPlanilha;
                 $arrWhereEtapa['pa.NrFonteRecurso = ? '] = '109';
                 $arrWhereEtapa['pa.idEtapa = ?'] = '3';
                 if ($this->bln_readequacao == "true") {
                     $arrWhereEtapa["pa.idPedidoAlteracao = (SELECT TOP 1 max(idPedidoAlteracao) from SAC.dbo.tbPlanilhaAprovacao where IdPRONAC = '{$idpronac}')"] = '(?)';
                     $arrWhereEtapa["pa.tpAcao <> ('E') OR pa.tpAcao IS NULL "] = '(?)';
                     $arrWhereEtapa['pa.stAtivo = ? '] = 'N';
                 } else {
                     $arrWhereEtapa['pa.stAtivo = ? '] = 'S';
                 }
                 $arrWhereEtapa['aa.tpAnalise = ?'] = $tpPlanilha;
                 $arrWhereEtapa['aa.stAvaliacao = ?'] = 1;
                 // 1 = parecer favoravel, 0 = parecer nao favoravel
                 //$this->view->V2 = $valorProjetoDivulgacao['soma'];
                 $valorProjetoDivulgacao = $planilhaAprovacao->somarItensPlanilhaAprovacaoProdutosFavoraveis($arrWhereEtapa);
                 //CALCULO DOS 15% - CUSTOS ADMINISTRATIVOS
                 $arrWhereCustoAdm = array();
                 $arrWhereCustoAdm['idPronac = ?'] = $idpronac;
                 $arrWhereCustoAdm['idProduto = ?'] = 0;
                 $arrWhereCustoAdm['idEtapa = ?'] = 4;
                 //custos administrativos
                 $arrWhereCustoAdm['idPlanilhaItem NOT IN (?)'] = array(5249, 206, 1238);
                 //Remuneracao de captacao de recursos
                 $arrWhereCustoAdm['tpPlanilha = ? '] = $tpPlanilha;
                 $arrWhereCustoAdm['NrFonteRecurso = ? '] = '109';
                 if ($this->bln_readequacao == "true") {
                     $arrWhereCustoAdm["idPedidoAlteracao = (SELECT TOP 1 max(idPedidoAlteracao) from SAC.dbo.tbPlanilhaAprovacao where IdPRONAC = '{$idpronac}')"] = '(?)';
                     $arrWhereCustoAdm["tpAcao <> ('E') OR tpAcao IS NULL "] = '(?)';
                     $arrWhereCustoAdm['stAtivo = ? '] = 'N';
                 } else {
                     $arrWhereCustoAdm['stAtivo = ? '] = 'S';
                 }
                 //$this->view->V2.1 = $valoracustosadministrativos['soma'];
                 $valoracustosadministrativos = $planilhaAprovacao->somarItensPlanilhaAprovacao($arrWhereCustoAdm);
                 //CALCULO DOS 10% - REMUNERACAO PARA CAPTACAO DE RECURSO
                 $arrWhereItemCaptRecurso = array();
                 $arrWhereItemCaptRecurso['idPronac = ?'] = $idpronac;
                 $arrWhereItemCaptRecurso['idPlanilhaItem = ?'] = '5249';
                 //Item de Remuneracao de captacao de recursos
                 $arrWhereItemCaptRecurso['tpPlanilha = ? '] = $tpPlanilha;
                 $arrWhereItemCaptRecurso['NrFonteRecurso = ? '] = '109';
                 if ($this->bln_readequacao == "true") {
                     $arrWhereItemCaptRecurso["idPedidoAlteracao = (SELECT TOP 1 max(idPedidoAlteracao) from SAC.dbo.tbPlanilhaAprovacao where IdPRONAC = '{$idpronac}')"] = '(?)';
                     $arrWhereItemCaptRecurso["tpAcao <> ('E') OR tpAcao IS NULL "] = '(?)';
                     $arrWhereItemCaptRecurso['stAtivo = ? '] = 'N';
                 } else {
                     $arrWhereItemCaptRecurso['stAtivo = ? '] = 'S';
                 }
                 //$this->view->V2.2 = $valorItemCaptacaoRecurso['soma'];
                 $valorItemCaptacaoRecurso = $planilhaAprovacao->somarItensPlanilhaAprovacao($arrWhereItemCaptRecurso);
                 //Calcula os 20% do valor total do projeto V3
                 $porcentValorProjeto = $valorProjeto['soma'] * 0.2;
                 //Calcula os 15% do valor total do projeto V3.1
                 $quinzecentoprojeto = $valorProjeto['soma'] * 0.15;
                 //Calcula os 10% do valor total do projeto V3.2
                 $dezPercentValorProjeto = $valorProjeto['soma'] * 0.1;
                 //Calculo do 20% -> V4
                 //Subtrai os custos da etapa divulgacao pelos 20% do projeto (V2 - V3)
                 $verificacaonegativo20porcento = $valorProjetoDivulgacao->soma - $porcentValorProjeto;
                 //Calculo do 15% -> V4.1
                 //Subtrai os custos administrativos pelos 15% do projeto (V2.1 - V3.1)
                 $verificacaonegativo = $valoracustosadministrativos['soma'] - $quinzecentoprojeto;
                 //Calculo do 10% -> V4.2
                 //Subtrai o item de captacao de recurso pelos 10% do projeto (V2.2 - V3.2)
                 $verificacaonegativo10porcento = $valorItemCaptacaoRecurso['soma'] - $dezPercentValorProjeto;
                 //if V4 e V4.1 maior que zero soma os dois V4
                 if ($verificacaonegativo20porcento > 0 && $verificacaonegativo > 0 && $verificacaonegativo10porcento > 0) {
                     //V1 - (V4 + V4.1 + V4.2) = V5
                     /*V5*/
                     $novoValorProjeto = $valorProjeto['soma'] - ($verificacaonegativo20porcento + $verificacaonegativo + $verificacaonegativo10porcento);
                     /*V6*/
                     $vinteporcentovalorretirar = $novoValorProjeto * 0.2;
                     //V2 - V6
                     $valorretirarplanilhaEtapaDivulgacao = $valorProjetoDivulgacao->soma - $vinteporcentovalorretirar;
                     //(correcao V2 - V6)
                     //$this->view->verifica15porcento = $valorretirarplanilha;
                     $this->view->valorReadequar20porcento = $valorretirarplanilhaEtapaDivulgacao;
                     $this->view->totaldivulgacao = "true";
                     /*V6.1*/
                     $quinzecentovalorretirar = $novoValorProjeto * 0.15;
                     //V2 - V6
                     $valorretirarplanilha = $valoracustosadministrativos['soma'] - $quinzecentovalorretirar;
                     //(correcao V2 - V6)
                     $this->view->verifica15porcento = $valorretirarplanilha;
                     /*V6.2*/
                     $dezcentovalorretirar = $novoValorProjeto * 0.1;
                     //V2 - V6
                     $valorretirarplanilhaItemCaptacaoRecurso = $valorItemCaptacaoRecurso['soma'] - $dezcentovalorretirar;
                     //(correcao V2 - V6)
                     $this->view->valorReadequar10porcento = $valorretirarplanilhaItemCaptacaoRecurso;
                     $this->view->totalcaptacaorecurso = "true";
                 } elseif ($verificacaonegativo20porcento > 0 || $verificacaonegativo > 0 || $verificacaonegativo10porcento > 0) {
                     //Calculo dos 20%
                     if ($verificacaonegativo20porcento <= 0) {
                         $this->view->totaldivulgacao = "false";
                         $this->view->valorReadequar20porcento = 0;
                     } else {
                         //V1 - V4 = V5
                         /*V5*/
                         $valorretirar20porcento = $valorProjeto['soma'] - $verificacaonegativo20porcento;
                         /*V6*/
                         $vinteporcentovalorretirar = $valorretirar20porcento * 0.2;
                         //V2 - V6
                         $valorretirarplanilhaEtapaDivulgacao = $valorProjetoDivulgacao->soma - $vinteporcentovalorretirar;
                         //(correcao V2 - V6)
                         $this->view->valorReadequar20porcento = $valorretirarplanilhaEtapaDivulgacao;
                         $this->view->totaldivulgacao = "true";
                     }
                     //Calculo dos 10%
                     if ($verificacaonegativo10porcento <= 0) {
                         $this->view->totalcaptacaorecurso = "false";
                         $this->view->valorReadequar10porcento = 0;
                     } else {
                         //V1 - V4 = V5
                         /*V5*/
                         $valorretirar10porcento = $valorProjeto['soma'] - $verificacaonegativo10porcento;
                         /*V6*/
                         $dezcentovalorretirar = $valorretirar10porcento * 0.1;
                         //V2 - V6
                         $valorretirarplanilhaItemCaptacaoRecurso = $valorItemCaptacaoRecurso['soma'] - $dezcentovalorretirar;
                         //(correcao V2 - V6)
                         $this->view->valorReadequar10porcento = $valorretirarplanilhaItemCaptacaoRecurso;
                         $this->view->totalcaptacaorecurso = "true";
                     }
                     //Calculo dos 10% (complemento)
                     $tetoCemMil = (int) '100000.00';
                     if ($valorItemCaptacaoRecurso['soma'] > $tetoCemMil) {
                         //verfica se o valor do item de captacao de recurso é maior que R$100.000,00
                         $this->view->totalcaptacaorecurso = "true";
                         $this->view->valorReadequar10porcento = $valorItemCaptacaoRecurso['soma'] - $tetoCemMil;
                     }
                     //Calculo dos 15%
                     if ($valorProjeto['soma'] > 0 and $valoracustosadministrativos['soma'] < $valorProjeto['soma']) {
                         if ($verificacaonegativo <= 0) {
                             $this->view->verifica15porcento = 0;
                         } else {
                             //V1 - V4 = V5
                             /*V5*/
                             $valorretirar = $valorProjeto['soma'] - $verificacaonegativo;
                             /*V6*/
                             $quinzecentovalorretirar = $valorretirar * 0.15;
                             //V2 - V6
                             $valorretirarplanilha = $valoracustosadministrativos['soma'] - $quinzecentovalorretirar;
                             //(correcao V2 - V6)
                             $this->view->verifica15porcento = $valorretirarplanilha;
                         }
                     } else {
                         $this->view->verifica15porcento = $valoracustosadministrativos['soma'];
                     }
                 } else {
                     //Calculo dos 20%
                     $this->view->totaldivulgacao = "false";
                     $this->view->valorReadequar20porcento = 0;
                     //Calculo dos 10% (complemento)
                     $tetoCemMil = (int) '100000.00';
                     if ($valorItemCaptacaoRecurso['soma'] > $tetoCemMil) {
                         //verfica se o valor do item de captacao de recurso é maior que R$100.000,00
                         $this->view->totalcaptacaorecurso = "true";
                         $this->view->valorReadequar10porcento = $valorItemCaptacaoRecurso['soma'] - $tetoCemMil;
                     } else {
                         $this->view->totalcaptacaorecurso = "false";
                         $this->view->valorReadequar10porcento = 0;
                     }
                     //Calculo dos 15%
                     $this->view->verifica15porcento = 0;
                 }
                 //FIM - DOS CALCULO DOS 20% e 15%
                 $buscarPlano = $planoDistribuicao->buscar(array('idProjeto = ?' => $projetoAtual['idProjeto'], 'stPrincipal= ?' => 1))->current()->toArray();
                 $buscarAnaliseAp = $analiseaprovacao->buscar(array('IdPRONAC = ?' => $idpronac, 'idProduto = ?' => $buscarPlano['idProduto'], 'tpAnalise = ?' => $tpAnalise));
                 //CALCULO DOS 50%
                 if ($buscarAnaliseAp->count() > 0) {
                     $buscarAnaliseAp = $buscarAnaliseAp->current()->toArray();
                     //$aprovacao['planilhaprovacao'] = 0;
                     //$aprovacao['planilhaprojeto'] = 0;
                     if ($buscarAnaliseAp['stAvaliacao'] == 1) {
                         //CODIGO ANTIGO
                         /*$buscaraprovacao  = $planilhaAprovacao->CompararPlanilha($idpronac, $tpPlanilha);
                           foreach($buscaraprovacao as $resu){
                               $aprovacao['planilhaprovacao'] += $resu->planilhaaprovacao;
                               $aprovacao['planilhaprojeto'] += $resu->planilhaprojeto;
                           }
                           $aprovacao['planilhaprovacao'] = $aprovacao['planilhaprovacao'] != 0 ? $aprovacao['planilhaprovacao'] : 1;
                           $valoraprovacao = $aprovacao['planilhaprojeto'] * 0.5; */
                         $valoraprovacao = $this->view->fontesincentivo * 0.5;
                         if ($valoraprovacao >= $this->view->totalsugerido) {
                             $this->view->parecerfavoravel = 'NAO';
                             $this->view->nrparecerfavoravel = 1;
                         } else {
                             $this->view->parecerfavoravel = 'SIM';
                             $this->view->nrparecerfavoravel = 2;
                         }
                     } else {
                         $this->view->parecerfavoravel = 'NAO';
                         $this->view->nrparecerfavoravel = 1;
                     }
                 } else {
                     $this->view->parecerfavoravel = 'NAO';
                     $this->view->nrparecerfavoravel = 1;
                 }
                 //$this->view->V1=$valorProjeto['soma'];
                 $produtos = RealizarAnaliseProjetoDAO::analiseDeConteudo($idpronac, $tpPlanilha);
                 $this->view->ResultRealizarAnaliseProjeto = RealizarAnaliseProjetoDAO::analiseparecerConsolidado($idpronac);
                 $verificaEnquadramento = RealizarAnaliseProjetoDAO::verificaEnquadramento($idpronac, $tpPlanilha);
                 if (isset($verificaEnquadramento[0]->stArtigo18) && $verificaEnquadramento[0]->stArtigo18 == true) {
                     $this->view->enquadramento = 'Artigo 18';
                 } else {
                     if (isset($verificaEnquadramento[0]->stArtigo26) && $verificaEnquadramento[0]->stArtigo26 == true) {
                         $this->view->enquadramento = 'Artigo 26';
                     } else {
                         $this->view->enquadramento = 'NAO ENQUADRADO';
                     }
                 }
                 $this->view->ResultProduto = $produtos;
                 $this->view->ResultValoresAnaliseProjeto = $produtos;
                 $indeferidos = RealizarAnaliseProjetoDAO::retornaIndeferimento();
                 $this->view->indeferidos = $indeferidos;
                 $this->view->idpronac = $idpronac;
                 /**** CODIGO DE READEQUACAO ****/
                 //antiga busca
                 //$buscarjustificativa = $tblParecer->buscarParecer($tpAgente,$idpronac);
                 //nova busca
                 $arrBuscaParecer = array();
                 $arrBuscaParecer['idPronac = ?'] = $idpronac;
                 $arrBuscaParecer['idTipoAgente = ?'] = $tpAgente;
                 $arrBuscaParecer['TipoParecer = ?'] = $this->bln_readequacao == "true" ? '2' : '1';
                 $buscarjustificativa = $tblParecer->buscar($arrBuscaParecer);
                 /**** FIM - CODIGO DE READEQUACAO ****/
                 if ($buscarjustificativa->count() > 0) {
                     $buscarjustificativa = $buscarjustificativa->current()->toArray();
                     $this->view->valorJustificativa = $buscarjustificativa['ResumoParecer'];
                 } else {
                     $this->view->valorJustificativa = null;
                 }
                 $auth = Zend_Auth::getInstance();
                 // pega a autenticao
                 $Usuario = new Usuario();
                 // objeto usuario
                 $idagente = $Usuario->getIdUsuario($auth->getIdentity()->usu_codigo);
                 $idagente = $idagente['idAgente'];
                 //-------------------------------------------------------------------------------------------------------------
                 $reuniao = new Reuniao();
                 //---------------------------------------------------------------------------------------------------------------
                 $ConsultaReuniaoAberta = $reuniao->buscar(array("stEstado = ?" => 0));
                 if ($ConsultaReuniaoAberta->count() > 0) {
                     $this->view->dadosReuniaoPlenariaAtual = $ConsultaReuniaoAberta;
                     $this->view->usu_codigo = $auth->getIdentity()->usu_codigo;
                     $ConsultaReuniaoAberta = $ConsultaReuniaoAberta->current()->toArray();
                     $this->view->plenariaatual = $ConsultaReuniaoAberta['idNrReuniao'];
                     $this->view->dadosReuniaoPlenariaAtual = $ConsultaReuniaoAberta;
                     //---------------------------------------------------------------------------------------------------------------
                     $votantes = new Votante();
                     $exibirVotantes = $votantes->selecionarvotantes($ConsultaReuniaoAberta['idNrReuniao']);
                     if (count($exibirVotantes) > 0) {
                         foreach ($exibirVotantes as $votantes) {
                             $dadosVotante[] = $votantes->idAgente;
                         }
                         if (count($dadosVotante) > 0) {
                             if (in_array($idagente, $dadosVotante)) {
                                 $this->view->votante = true;
                             } else {
                                 $this->view->votante = false;
                             }
                         }
                     }
                 } else {
                     parent::message("N&atilde;o existe CNIC aberta no momento. Favor aguardar!", "principal/index", "ERROR");
                 }
             }
             // fecha else
         } catch (Exception $e) {
             die($e->getMessage());
         }
     }
     // fecha else
 }
Пример #3
0
 public function cnicSalvarEnquadramentoAction()
 {
     if ($this->idPerfil != 118) {
         parent::message("Você não tem permissão para acessar essa área do sistema!", "principal", "ALERT");
     }
     $auth = Zend_Auth::getInstance();
     $idusuario = $auth->getIdentity()->usu_codigo;
     $idPronac = $_POST['idPronac'];
     $idRecurso = $_POST['idRecurso'];
     $areaCultural = $_POST['areaCultural'];
     $segmentoCultural = $_POST['segmentoCultural'];
     $enquadramentoProjeto = $_POST['enquadramentoProjeto'];
     $parecerProjeto = $_POST['parecerProjeto'];
     $dsParecer = $_POST['dsParecer'];
     try {
         //ATUALIAZA A SITUAÇÃO, ÁREA E SEGMENTO DO PROJETO
         $d = array();
         $d['situacao'] = 'D20';
         $d['ProvidenciaTomada'] = 'Recurso em análise pela Comissão Nacional de Incentivo à Cultura - CNIC.';
         $d['dtSituacao'] = new Zend_Db_Expr('GETDATE()');
         $d['Area'] = $areaCultural;
         $d['Segmento'] = $segmentoCultural;
         $where = "IdPRONAC = {$idPronac}";
         $Projetos = new Projetos();
         $Projetos->update($d, $where);
         $dadosProjeto = $Projetos->buscar(array('IdPRONAC = ?' => $idPronac));
         if (count($dadosProjeto) > 0) {
             //CADASTRA OU ATUALIZA O ENQUADRAMENTO DO PROJETO
             $enquadramentoDAO = new Enquadramento();
             $dadosEnquadramento = array('IdPRONAC' => $idPronac, 'AnoProjeto' => $dadosProjeto[0]->AnoProjeto, 'Sequencial' => $dadosProjeto[0]->Sequencial, 'Enquadramento' => $enquadramentoProjeto, 'DtEnquadramento' => new Zend_Db_Expr("GETDATE()"), 'Observacao' => '', 'Logon' => $idusuario);
             $whereBuscarDados = array('IdPRONAC = ?' => $idPronac, 'AnoProjeto = ?' => $dadosProjeto[0]->AnoProjeto, 'Sequencial = ?' => $dadosProjeto[0]->Sequencial);
             $buscarEnquadramento = $enquadramentoDAO->buscar($whereBuscarDados);
             if (count($buscarEnquadramento) > 0) {
                 $buscarEnquadramento = $buscarEnquadramento->current();
                 $whereUpdate = 'IdEnquadramento = ' . $buscarEnquadramento->IdEnquadramento;
                 $alteraEnquadramento = $enquadramentoDAO->alterar($dadosEnquadramento, $whereUpdate);
             } else {
                 $insereEnquadramento = $enquadramentoDAO->inserir($dadosEnquadramento);
             }
             $buscaEnquadramento = $enquadramentoDAO->buscarDados($idPronac, null, false);
             //CADASTRA OU ATUALIZA O PARECER DO COMPONENTE DA COMISSÃO
             $parecerDAO = new Parecer();
             $dadosParecer = array('idPRONAC' => $idPronac, 'AnoProjeto' => $dadosProjeto[0]->AnoProjeto, 'Sequencial' => $dadosProjeto[0]->Sequencial, 'TipoParecer' => 7, 'ParecerFavoravel' => $parecerProjeto, 'DtParecer' => new Zend_Db_Expr("GETDATE()"), 'NumeroReuniao' => null, 'ResumoParecer' => $dsParecer, 'SugeridoReal' => 0, 'Atendimento' => 'S', 'idEnquadramento' => $buscaEnquadramento['IdEnquadramento'], 'stAtivo' => 1, 'idTipoAgente' => 6, 'Logon' => $idusuario);
             $buscarParecer = $parecerDAO->buscar(array('IdPRONAC = ?' => $idPronac));
             foreach ($dadosParecer as $dp) {
                 $parecerAntigo = array('Atendimento' => 'S', 'stAtivo' => 0);
                 $whereUpdateParecer = 'IdPRONAC = ' . $idPronac;
                 $alteraParecer = $parecerDAO->alterar($parecerAntigo, $whereUpdateParecer);
             }
             $buscarParecer = $parecerDAO->buscar(array('IdPRONAC = ?' => $idPronac, 'AnoProjeto = ?' => $dadosProjeto[0]->AnoProjeto, 'Sequencial = ?' => $dadosProjeto[0]->Sequencial, 'TipoParecer = ?' => 7, 'idTipoAgente = ?' => 6));
             if (count($buscarParecer) > 0) {
                 $buscarParecer = $buscarParecer->current();
                 $whereUpdateParecer = 'IdParecer = ' . $buscarParecer->IdParecer;
                 $alteraParecer = $parecerDAO->update($dadosParecer, $whereUpdateParecer);
             } else {
                 $insereParecer = $parecerDAO->inserir($dadosParecer);
             }
         }
         if (isset($_POST['finalizarAvaliacao']) && $_POST['finalizarAvaliacao'] == 1) {
             $idNrReuniao = null;
             if ($_POST['plenaria']) {
                 $campoSiRecurso = 8;
                 // 8=Enviado à Plenária
                 $reuniao = new Reuniao();
                 $raberta = $reuniao->buscarReuniaoAberta();
                 $idNrReuniao = $raberta['idNrReuniao'];
             } else {
                 $campoSiRecurso = 9;
                 // 9=Enviado para Checklist Publicação
             }
             //ATUALIZA A TABELA tbRecurso
             $dados = array();
             $dados['siRecurso'] = $campoSiRecurso;
             $dados['idNrReuniao'] = $idNrReuniao;
             $dados['stAnalise'] = $parecerProjeto == 1 ? 'IC' : 'AC';
             $where = "idRecurso = {$idRecurso}";
             $tbRecurso = new tbRecurso();
             $tbRecurso->update($dados, $where);
             parent::message("A avaliação do recurso foi finalizada com sucesso! ", "recurso/analisar-recursos-cnic", "CONFIRM");
         }
         parent::message("Dados salvos com sucesso!", "recurso/form-avaliar-recurso-cnic?recurso={$idRecurso}", "CONFIRM");
     } catch (Exception $e) {
         parent::message($e->getMessage(), "recurso/form-avaliar-recurso-cnic?recurso={$idRecurso}", "ERROR");
     }
 }
 /**
  * Metodo para efetuar a retirada de pauta
  */
 public function retirarDePautaAction()
 {
     // recebe os dados via post
     $post = Zend_Registry::get('post');
     $idPronac = $post->idPronacPauta;
     $idRetirarDePauta = $post->idRetirarDePauta;
     $justificativa = $post->justificativaCoordenador;
     $tpAcao = $post->tpAcaoPauta;
     try {
         // altera o status da tabela tbRetirarDePauta
         $tbRetirarDePauta = new tbRetirarDePauta();
         $dados = array('idAgenteAnalise' => $this->idAgente, 'dtAnalise' => new Zend_Db_Expr('GETDATE()'), 'dsJustificativaAnalise' => $justificativa, 'tpAcao' => $tpAcao, 'stAtivo' => 0);
         $where = array('idRetirarDePauta = ?' => $idRetirarDePauta);
         if ($tbRetirarDePauta->alterar($dados, $where)) {
             // início devolver pra vinculada
             if ($tpAcao == 3) {
                 if ($this->bln_readequacao == "true") {
                     throw new Exception("Este Projeto encontra-se em Análise de Readequação!");
                 }
                 $arrBusca = array();
                 $arrBusca['p.IdPRONAC = ?'] = $idPronac;
                 $arrBusca['t.stPrincipal = ?'] = 1;
                 $arrBusca['t.stEstado = ?'] = 0;
                 $tbDistParecer = new tbDistribuirParecer();
                 $rsProduto = $tbDistParecer->buscarProdutos($arrBusca);
                 if (count($rsProduto) <= 0) {
                     throw new Exception("Dados n&atilde;o encontrados.");
                 } else {
                     // usuario logado
                     $auth = Zend_Auth::getInstance();
                     // instancia da autenticacao
                     $idusuario = $auth->getIdentity()->usu_codigo;
                     $idorgao = $rsProduto[0]->idOrgao;
                     try {
                         $arrBusca = array();
                         $arrBusca['p.IdPRONAC = ?'] = $idPronac;
                         $arrBusca['t.stEstado = ?'] = 0;
                         $tbDistParecer = new tbDistribuirParecer();
                         $rsProdutos = $tbDistParecer->buscarProdutos($arrBusca);
                         //VOLTANDO TODOS OS PRODUTOS
                         foreach ($rsProdutos as $produto) {
                             $rsDistParecer = $tbDistParecer->find($produto->idDistribuirParecer)->current();
                             //ALTERA REGISTROS ANTERIORES PARA SE TORNAR HISTORICO
                             $rsDistParecer->FecharAnalise = 0;
                             //informacao inserida por solicitacao do gestor para prever esta acao na Trigger de update da tabela tbDistribuirParecer
                             $rsDistParecer->stEstado = 1;
                             $rsDistParecer->save();
                             //GRAVA NOVA DISTRIBUICAO
                             $dados = array('idPRONAC' => $idPronac, 'idProduto' => $produto->idProduto, 'TipoAnalise' => $produto->TipoAnalise, 'idOrgao' => $produto->idOrgao, 'DtEnvio' => date("Y-m-d H:i:s"), 'DtDistribuicao' => null, 'DtDevolucao' => null, 'Observacao' => $justificativa, 'stEstado' => 0, 'stPrincipal' => $produto->stPrincipal, 'FecharAnalise' => 2, 'DtRetorno' => null, 'idUsuario' => $idusuario);
                             //                                            xd($dados);
                             $tbDistParecer->inserir($dados);
                         }
                         //============================================================================================//
                         //======= APAGA/ALTERA REGISTROS DESSA ANALISE REFERENTE AO COMPONENTE DA COMISSAO ============//
                         //============================================================================================//
                         //INATIVA DISTRIBUICAO FEITA PARA O COMPONENTE
                         $tblDistProjComissao = new tbDistribuicaoProjetoComissao();
                         $rsDistProjComissao = $tblDistProjComissao->buscar(array('IdPRONAC =?' => $idPronac), array('dtDistribuicao DESC'))->current();
                         if (!empty($rsDistProjComissao)) {
                             try {
                                 $where = "IdPRONAC = {$idPronac}";
                                 $tblDistProjComissao->alterar(array('stDistribuicao' => 'I'), $where);
                             } catch (Zend_Exception $ex) {
                                 parent::message("Erro ao inativar a distribui&ccedil;&atilde;o do Projeto para o Componente - " . $ex->getMessage(), "projetosgerenciar/index", "ERROR");
                             }
                         }
                         //APAGA PLANILHA APROVACAO CRIADA
                         $tblPlanilha = new PlanilhaAprovacao();
                         $arrBuscaPlanilha = array();
                         $arrBuscaPlanilha["IdPRONAC = ? "] = $idPronac;
                         $arrBuscaPlanilha["tpPlanilha = ? "] = 'CO';
                         $arrBuscaPlanilha["stAtivo = ? "] = 'S';
                         $rsPlanilha = $tblPlanilha->buscar($arrBuscaPlanilha);
                         $arrIdsPlanilha = array();
                         foreach ($rsPlanilha as $planilha) {
                             $arrIdsPlanilha[] = $planilha->idPlanilhaAprovacao;
                         }
                         if (count($arrIdsPlanilha) > 0) {
                             $where = null;
                             $where = " idPRONAC           = " . $idPronac . " and idPlanilhaAprovacao IN (" . implode(",", $arrIdsPlanilha) . ")";
                             try {
                                 $tblPlanilha->apagar($where);
                             } catch (Zend_Exception $ex) {
                                 parent::message("Erro ao apagar a planilha do Componente - " . $ex->getMessage(), "projetosgerenciar/index", "ERROR");
                             }
                         }
                         //APAGA ANALISE DO COMPONENTE
                         $tblAnalise = new AnaliseAprovacao();
                         $rsAnalise = $tblAnalise->buscar(array('IdPRONAC = ?' => $idPronac));
                         $arrIdsAnalises = array();
                         foreach ($rsAnalise as $analise) {
                             $arrIdsAnalises[] = $analise->idAnaliseAprovacao;
                         }
                         if (count($arrIdsAnalises) > 0) {
                             $where = null;
                             $where = " IdPRONAC               = " . $idPronac . " and idAnaliseAprovacao IN (" . implode(",", $arrIdsAnalises) . ")";
                             try {
                                 $tblAnalise->apagar($where);
                             } catch (Zend_Exception $ex) {
                                 parent::message("Erro ao apagar a an&aacute;lise  do Componente - " . $ex->getMessage(), "projetosgerenciar/index", "ERROR");
                             }
                         }
                         //APAGA PARECER DO COMPONENTE
                         $tblParecer = new Parecer();
                         $rsParecer = $tblParecer->buscar(array('idPRONAC = ?' => $idPronac, 'idTipoAgente = ?' => 6))->current();
                         if (!empty($rsParecer)) {
                             $idparecer = isset($rsParecer->IdParecer) ? $rsParecer->IdParecer : $rsParecer->idParecer;
                             $where = null;
                             $where = " idPRONAC      = " . $idPronac . " and idParecer = " . $idparecer;
                             try {
                                 $tblParecer->apagar($where);
                             } catch (Zend_Exception $ex) {
                                 parent::message("Erro ao excluir o parecer do Componente - " . $ex->getMessage(), "projetosgerenciar/index", "ERROR");
                             }
                         }
                         //APAGA PARECER do PARECERISTA
                         $rsParecer = array();
                         $tblParecer = new Parecer();
                         $rsParecer = $tblParecer->buscar(array('IdPRONAC =?' => $idPronac, 'idTipoAgente = ?' => 1))->current();
                         if (!empty($rsParecer)) {
                             $idparecer = isset($rsParecer->IdParecer) ? $rsParecer->IdParecer : $rsParecer->idParecer;
                             $where = null;
                             $where = " idPRONAC      = " . $idPronac . " and idParecer = " . $idparecer;
                             try {
                                 $tblParecer->apagar($where);
                             } catch (Zend_Exception $ex) {
                                 parent::message("Erro ao excluir o parecer do Parecerista - " . $ex->getMessage(), "projetosgerenciar/index", "ERROR");
                             }
                         }
                         try {
                             //ALTERA SITUACAO DO PROJETO
                             $tblProjeto = new Projetos();
                             $ProvidenciaTomada = 'Projeto devolvido para análise técnica por solicitação do Componente.';
                             $tblProjeto->alterarSituacao($idPronac, '', 'B11', $ProvidenciaTomada);
                         } catch (Zend_Exception $ex) {
                             parent::message("Erro ao alterar a situa&ccedil;&atilde;o do Projeto - " . $ex->getMessage(), "projetosgerenciar/index", "ERROR");
                         }
                         parent::message("Devolvido com sucesso!", "projetosgerenciar/index/", "CONFIRM");
                     } catch (Zend_Exception $ex) {
                         parent::message("Erro ao devolver projeto - " . $ex->getMessage(), "projetosgerenciar/index", "ERROR");
                     }
                 }
             }
             // fecha if ($tpAcao == 3)
             // fim devolver pra vinculada
             parent::message("Solicita&ccedil;&atilde;o enviada com sucesso!", "projetosgerenciar/index", "CONFIRM");
         } else {
             throw new Exception("Erro ao enviar solicita&ccedil;&atilde;o");
         }
     } catch (Exception $e) {
         parent::message($e->getMessage(), "projetosgerenciar/index", "ERROR");
     }
 }
 public function gerarpdfAction()
 {
     $this->_helper->layout->disableLayout();
     $pauta = new Pauta();
     $tblPauta = new tbPauta();
     $parecer = new Parecer();
     $idpronac = $_POST['idpronac'];
     $nrReuniao = $_POST['nrReuniao'];
     //$buscarpauta = $pauta->dadosiniciaistermoaprovacao($idpronac);
     if ($this->tipoProjeto == "analiseInicial") {
         //========== PROJETOS APROVADOS SEFIC e SAV - APROVACAO INICIAL =========================/
         $arrBusca = array();
         $arrBusca['tp.idPronac IN (?)'] = $idpronac;
         //$arrBusca['pr.Situacao = ?']     = "D03";
         //$arrBusca['pr.Situacao IN (?)']  = array('D03', 'D01');
         $arrBusca['tp.stAnalise IN (?)'] = array("AS", "AC", "AR");
         $arrBusca['par.TipoParecer = ?'] = 1;
         $arrBusca['r.NrReuniao = ?'] = $nrReuniao;
         //$arrBusca[" TABELAS.dbo.fnCodigoOrgaoEstrutura(pr.Orgao, 1) = ? "] = $this->codOrgaoSuperior;
         $arrBusca['pr.Orgao = ?'] = $this->codOrgao;
         $rsProjetosAprovados = $tblPauta->buscarProjetosTermoAprovacao($arrBusca);
         //========== PROJETOS INDEFERIDOS SEFIC e SAV - APROVACAO INICIAL =======================/
         $arrBusca = array();
         $arrBusca['tp.idPronac IN (?)'] = $idpronac;
         //$arrBusca['pr.Situacao IN (?)']  = array('A13', 'A14', 'A16', 'A17', 'A20', 'A23', 'A24', 'D14', 'A41');
         $arrBusca['tp.stAnalise NOT IN (?)'] = array("AS", "AC", "AR");
         $arrBusca['par.TipoParecer = ?'] = 1;
         $arrBusca['r.NrReuniao = ?'] = $nrReuniao;
         //$arrBusca[" TABELAS.dbo.fnCodigoOrgaoEstrutura(pr.Orgao, 1) = ? "] = $this->codOrgaoSuperior;
         $arrBusca['pr.Orgao = ?'] = $this->codOrgao;
         $rsProjetosIndeferidos = $tblPauta->buscarProjetosTermoAprovacao($arrBusca);
     }
     if ($this->tipoProjeto == "readequacao") {
         //========== PROJETOS APROVADOS SEFIC e SAV - READEQUACAO ==========================/
         $arrBusca = array();
         $arrBusca['tp.idPronac IN (?)'] = $idpronac;
         $arrBusca['tp.stAnalise IN (?)'] = array("AS", "AC", "AR");
         $arrBusca['par.TipoParecer <> ?'] = 1;
         $arrBusca['r.NrReuniao = ?'] = $nrReuniao;
         //$arrBusca[" TABELAS.dbo.fnCodigoOrgaoEstrutura(pr.Orgao, 1) = ? "] = $this->codOrgaoSuperior;
         $arrBusca['pr.Orgao = ?'] = $this->codOrgao;
         $rsProjetosAprovadosReadequacao = $tblPauta->buscarProjetosTermoAprovacao($arrBusca);
         //========== PROJETOS INDEFERIDOS SEFIC e SAV - READEQUACAO =======================/
         $arrBusca = array();
         $arrBusca['tp.idPronac IN (?)'] = $idpronac;
         $arrBusca['tp.stAnalise NOT IN (?)'] = array("AS", "AC", "AR");
         $arrBusca['par.TipoParecer <> ?'] = 1;
         $arrBusca['r.NrReuniao = ?'] = $nrReuniao;
         //$arrBusca[" TABELAS.dbo.fnCodigoOrgaoEstrutura(pr.Orgao, 1) = ? "] = $this->codOrgaoSuperior;
         $arrBusca['pr.Orgao = ?'] = $this->codOrgao;
         $rsProjetosIndeferidosReadequacao = $tblPauta->buscarProjetosTermoAprovacao($arrBusca);
     }
     /**=================================================================*/
     /*=============== TRATAMENTO DE PROJETOS APROVADOS =================*/
     /**=================================================================*/
     $pautaAprovados = array();
     if ($this->tipoProjeto == "analiseInicial") {
         /* === APROVACAO INICIAL - APROVADOS ==*/
         $ct1 = 0;
         foreach ($rsProjetosAprovados as $dadosresultado) {
             $pautaAprovados[$ct1]['PRONAC'] = $dadosresultado['pronac'];
             $pautaAprovados[$ct1]['NomeProjeto'] = $dadosresultado['NomeProjeto'];
             $pautaAprovados[$ct1]['TipoParecer'] = 'Aprova&ccedil;&atilde;o Inicial';
             $pautaAprovados[$ct1]['NrReuniao'] = $dadosresultado['NrReuniao'];
             $pautaAprovados[$ct1]['mesReuniao'] = date('m', strtotime($dadosresultado['DtInicio']));
             $pautaAprovados[$ct1]['DtInicio'] = date('d', strtotime($dadosresultado['DtInicio']));
             $pautaAprovados[$ct1]['DtFinal'] = Data::DataporExtenso($dadosresultado['DtFinal']);
             $pautaAprovados[$ct1]['DtAssinatura'] = $dadosresultado['DtAssinatura'];
             $buscarparecer = $parecer->buscar(array('idPRONAC = ?' => $dadosresultado['IdPRONAC']));
             $pautaAprovados[$ct1]['parecerista'] = $buscarparecer[0]->ResumoParecer;
             $pautaAprovados[$ct1]['componente'] = isset($buscarparecer[1]->ResumoParecer) ? $buscarparecer[1]->ResumoParecer : '';
             $pautaAprovados[$ct1]['Consolidacao'] = $dadosresultado['dsConsolidacao'];
             $pautaAprovados[$ct1]['analise'] = $dadosresultado['stAnalise'];
             $ct1++;
         }
     }
     /* === READEQUACAO - APROVADOS ==*/
     $pautaAprovadosReadequacao = array();
     if ($this->tipoProjeto == "readequacao") {
         $ct1 = 0;
         foreach ($rsProjetosAprovadosReadequacao as $dadosresultado) {
             $pautaAprovadosReadequacao[$ct1]['PRONAC'] = $dadosresultado['pronac'];
             $pautaAprovadosReadequacao[$ct1]['NomeProjeto'] = $dadosresultado['NomeProjeto'];
             $pautaAprovadosReadequacao[$ct1]['TipoParecer'] = 'Readequação';
             $pautaAprovadosReadequacao[$ct1]['NrReuniao'] = $dadosresultado['NrReuniao'];
             $pautaAprovadosReadequacao[$ct1]['mesReuniao'] = date('m', strtotime($dadosresultado['DtInicio']));
             $pautaAprovadosReadequacao[$ct1]['DtInicio'] = date('d', strtotime($dadosresultado['DtInicio']));
             $pautaAprovadosReadequacao[$ct1]['DtFinal'] = Data::DataporExtenso($dadosresultado['DtFinal']);
             $pautaAprovadosReadequacao[$ct1]['DtAssinatura'] = $dadosresultado['DtAssinatura'];
             $buscarparecer = $parecer->buscar(array('idPRONAC = ?' => $dadosresultado['IdPRONAC']));
             $pautaAprovadosReadequacao[$ct1]['parecerista'] = $buscarparecer[0]->ResumoParecer;
             $pautaAprovadosReadequacao[$ct1]['componente'] = isset($buscarparecer[1]->ResumoParecer) ? $buscarparecer[1]->ResumoParecer : '';
             $pautaAprovadosReadequacao[$ct1]['Consolidacao'] = $dadosresultado['dsConsolidacao'];
             $pautaAprovadosReadequacao[$ct1]['analise'] = $dadosresultado['stAnalise'];
             $ct1++;
         }
     }
     /**=================================================================*/
     /*=============== TRATAMENTO DE PROJETOS INDEFERIDOS ===============*/
     /**=================================================================*/
     $pautaIndeferidos = array();
     if ($this->tipoProjeto == "analiseInicial") {
         /* === APROVACAO INICIAL - INDEFERIDOS ==*/
         $ct1 = 0;
         foreach ($rsProjetosIndeferidos as $dadosresultado) {
             $pautaIndeferidos[$ct1]['PRONAC'] = $dadosresultado['pronac'];
             $pautaIndeferidos[$ct1]['NomeProjeto'] = $dadosresultado['NomeProjeto'];
             $pautaIndeferidos[$ct1]['TipoParecer'] = 'Aprova&ccedil;&atilde;o Inicial';
             $pautaIndeferidos[$ct1]['NrReuniao'] = $dadosresultado['NrReuniao'];
             $pautaIndeferidos[$ct1]['mesReuniao'] = date('m', strtotime($dadosresultado['DtInicio']));
             $pautaIndeferidos[$ct1]['DtInicio'] = date('d', strtotime($dadosresultado['DtInicio']));
             $pautaIndeferidos[$ct1]['DtFinal'] = Data::DataporExtenso($dadosresultado['DtFinal']);
             $pautaIndeferidos[$ct1]['DtAssinatura'] = $dadosresultado['DtAssinatura'];
             $buscarparecer = $parecer->buscar(array('idPRONAC = ?' => $dadosresultado['IdPRONAC']));
             $pautaIndeferidos[$ct1]['parecerista'] = $buscarparecer[0]->ResumoParecer;
             $pautaIndeferidos[$ct1]['componente'] = isset($buscarparecer[1]->ResumoParecer) ? $buscarparecer[1]->ResumoParecer : '';
             $pautaIndeferidos[$ct1]['Consolidacao'] = $dadosresultado['dsConsolidacao'];
             $pautaIndeferidos[$ct1]['analise'] = $dadosresultado['stAnalise'];
             $ct1++;
         }
     }
     /* === READEQUACAO - INDEFERIDOS ==*/
     $pautaIndeferidosReadequacao = array();
     if ($this->tipoProjeto == "readequacao") {
         $ct1 = 0;
         foreach ($rsProjetosIndeferidosReadequacao as $dadosresultado) {
             $pautaIndeferidosReadequacao[$ct1]['PRONAC'] = $dadosresultado['pronac'];
             $pautaIndeferidosReadequacao[$ct1]['NomeProjeto'] = $dadosresultado['NomeProjeto'];
             $pautaIndeferidosReadequacao[$ct1]['TipoParecer'] = 'Readequação';
             $pautaIndeferidosReadequacao[$ct1]['NrReuniao'] = $dadosresultado['NrReuniao'];
             $pautaIndeferidosReadequacao[$ct1]['mesReuniao'] = date('m', strtotime($dadosresultado['DtInicio']));
             $pautaIndeferidosReadequacao[$ct1]['DtInicio'] = date('d', strtotime($dadosresultado['DtInicio']));
             $pautaIndeferidosReadequacao[$ct1]['DtFinal'] = Data::DataporExtenso($dadosresultado['DtFinal']);
             $pautaIndeferidosReadequacao[$ct1]['DtAssinatura'] = $dadosresultado['DtAssinatura'];
             $buscarparecer = $parecer->buscar(array('idPRONAC = ?' => $dadosresultado['IdPRONAC']));
             $pautaIndeferidosReadequacao[$ct1]['parecerista'] = $buscarparecer[0]->ResumoParecer;
             $pautaIndeferidosReadequacao[$ct1]['componente'] = isset($buscarparecer[1]->ResumoParecer) ? $buscarparecer[1]->ResumoParecer : '';
             $pautaIndeferidosReadequacao[$ct1]['Consolidacao'] = $dadosresultado['dsConsolidacao'];
             $pautaIndeferidosReadequacao[$ct1]['analise'] = $dadosresultado['stAnalise'];
             $ct1++;
         }
     }
     //APROVACAO INICIAL
     $this->view->pautaAprovados = $pautaAprovados;
     $this->view->pautaIndeferidos = $pautaIndeferidos;
     //READEQUACAO
     $this->view->pautaAprovadosReadequacao = $pautaAprovadosReadequacao;
     $this->view->pautaIndeferidosReadequacao = $pautaIndeferidosReadequacao;
     // mês por extenso
     $mes_extenso[1] = "janeiro";
     $mes_extenso[2] = "fevereiro";
     $mes_extenso[3] = "mar&ccedil;o";
     $mes_extenso[4] = "abril";
     $mes_extenso[5] = "maio";
     $mes_extenso[6] = "junho";
     $mes_extenso[7] = "julho";
     $mes_extenso[8] = "agosto";
     $mes_extenso[9] = "setembro";
     $mes_extenso[10] = "outubro";
     $mes_extenso[11] = "novembro";
     $mes_extenso[12] = "dezembro";
     $this->view->mesPorExtenso = $mes_extenso;
     //TRATAMENTO CASO NENHUMA DAS CONDIÇÕES SEJAM ATENDIDAS
     if (count($pautaAprovados) <= 0 && count($pautaIndeferidos) <= 0 && count($pautaAprovadosReadequacao) <= 0 && count($pautaIndeferidosReadequacao) <= 0) {
         parent::message("O(s) projeto(s) informado(s) não atende(m) às condições necessárias para ser(em) impresso(s) no Termo de Decisão.", "gerartermodeaprovacao/", "ALERT");
     }
     if ($this->codOrgaoSuperior == 251) {
         $this->montaTela("gerartermodeaprovacao/gerar-pdf-sefic.phtml", array());
     } else {
         $this->montaTela("gerartermodeaprovacao/gerar-pdf-sav.phtml", array());
     }
 }
 public function consolidarVotacaoAction()
 {
     $this->_helper->layout->disableLayout();
     // desabilita o Zend_Layout
     $auth = Zend_Auth::getInstance();
     // pega a autenticao
     $post = Zend_Registry::get("post");
     $reuniao = new Reuniao();
     $reuniaoatual = $reuniao->buscarReuniaoAberta();
     $idReuniaoatual = $reuniaoatual['idNrReuniao'];
     $nrReuniaoatual = $reuniaoatual['NrReuniao'];
     $tpresultadovotacao = $_POST['tpresultadovotacao'];
     $resultado = $_POST['resultadovotacao'];
     $tpConsolidacaoVotacao = $_POST['tpconsolidacaovotacao'];
     $idTipoReadequacao = $_POST['resultadovotacao'];
     $parecerSecretario = Seguranca::tratarVarAjaxUFT8($_POST['parecerconsolidado']);
     //$idAbrangencia = $post->cod;
     $pauta = new Pauta();
     $votantes = new Votante();
     $parecer = new Parecer();
     $tblProjetos = new Projetos();
     $pa = new PlanilhaAprovacao();
     $st = new Situacao();
     $dpc = new DistribuicaoProjetoComissao();
     $idPronac = explode('_', $post->idpronac);
     $idTipoReadequacao = NULL;
     if (isset($idPronac[1]) && !empty($idPronac[1])) {
         $idTipoReadequacao = $idPronac[1];
     }
     $idPronac = $idPronac[0];
     $idNrReuniao = $idReuniaoatual;
     $nrReuniao = $nrReuniaoatual;
     $tpResultadoVotacao = $tpresultadovotacao;
     $resultadoVotacao = $resultado;
     $dsParecerConsolidado = $parecerSecretario;
     $blnReadequacao = $this->bln_readequacao == "false" ? 0 : 1;
     $situacao = $_POST['situacao'] != null ? $_POST['situacao'] : "NUL";
     //a sp espera apenas 3 digitos para verificar se a situacao e null
     try {
         // executa a sp
         $sp = new paConsolidarProjetoVotadoNaCnic();
         $arr = $sp->consolidarVotacaoProjeto($idPronac, $idNrReuniao, $nrReuniao, $tpResultadoVotacao, $resultadoVotacao, $dsParecerConsolidado, $blnReadequacao, $situacao, $tpConsolidacaoVotacao, $idTipoReadequacao);
         if (!is_array($arr)) {
             //x('com erro');
             throw new Exception($sp);
         } else {
             //x('sem erro');
             if (count($arr) > 0 && $arr[0]->Tipo == 1) {
                 //sucesso
                 /************** APAGA ARQUIVO DA VOTACAO DO PROJETO ********************/
                 $arquivo = getcwd() . "/public/plenaria/votacao.txt";
                 if (file_exists($arquivo)) {
                     unlink($arquivo);
                 }
                 echo json_encode(array('error' => false));
                 die;
             } else {
                 throw new Exception($sp);
             }
         }
     } catch (Exception $e) {
         //xd($e->getMessage());
         echo json_encode(array('error' => true, 'descricao' => "N&atilde;o foi poss&iacute;vel consolidar a vota&ccedil;&atilde;o do Projeto. <br />" . $e->getMessage()));
         die;
     }
     //GRAVA CONSOLIDACAO DO VOTACAO
     if (isset($_POST['resultadovotacao'])) {
         $this->_helper->viewRenderer->setNoRender(true);
         $tblConsolidacao = new Consolidacaovotacao();
         $tpresultadovotacao = $_POST['tpresultadovotacao'];
         $resultado = $_POST['resultadovotacao'];
         $parecerSecretario = Seguranca::tratarVarAjaxUFT8($_POST['parecerconsolidado']);
         //$idpronac           = $_POST['dadosidpronac'];
         //$parecerSecretario = $_POST['parecerconsolidadoAtual']; //foi necessario essa alteracao pq o parecer nao estava sendo recuperado quando o salvamento era feito com ajax
         try {
             /************** SETA VALOR FINAL DA VOTACAO DO PROJETO *****************/
             $where = "IdPRONAC = " . $idpronac . " and IdNrReuniao=" . $reuniaoatual;
             $pauta->alterar(array('stAnalise' => $resultado), $where);
             /************** INSERE DADOS DA CONSOLIDACAO ***************************/
             $dadosconsolidacao = array('dsConsolidacao' => $parecerSecretario, 'IdPRONAC' => $idpronac, 'idNrReuniao' => $reuniaoatual);
             $tblConsolidacao->inserir($dadosconsolidacao);
             /************** APAGA ARQUIVO DA VOTACAO DO PROJETO ********************/
             //
             $arquivo = getcwd() . "/public/plenaria/votacao.txt";
             if (file_exists($arquivo)) {
                 unlink($arquivo);
             }
             /************** ALTERA SITUACAO DO PROJETO *****************************/
             $situacao = null;
             if ($resultado == 'AS' and $_POST['situacao'] == null) {
                 //TRATANDO SITUACAO DO PROJETO QUANDO ESTE FOR DE READEQUACAO
                 if ($this->bln_readequacao == "false") {
                     $situacao = 'D03';
                 } else {
                     $situacao = 'D02';
                 }
             } else {
                 if ($_POST['situacao'] != null) {
                     $situacao = $_POST['situacao'];
                     $dtsituacao = date('Y-m-d H:i:s');
                     $buscarsituacao = $st->listasituacao(array($situacao))->current()->toArray();
                     $providencia = $_POST['situacao'] == null ? 'PROJETO APROVADO NA CNIC N ' . $nrreuniaoatual . ' - ' . $buscarsituacao['Descricao'] : 'PROJETO INDEFERIDO NA CNIC N ' . $nrreuniaoatual . ' - ' . $buscarsituacao['Descricao'];
                     $where = "IdPRONAC = {$idpronac}";
                     $dados = array("Situacao" => $situacao, "DtSituacao" => date('Y-m-d H:i:s'), "ProvidenciaTomada" => $providencia);
                     $tblProjetos->alterar($dados, $where);
                     //$tblProjetos->alterarSituacao($idpronac, null, $situacao, $providencia);
                 }
             }
             /************** COPIA PLANILHAS *****************************************/
             $arrBuscaPlanilha = array();
             $arrBuscaPlanilha["idPronac = ?"] = $idpronac;
             $arrBuscaPlanilha["tpPlanilha = ? "] = 'CO';
             $arrBuscaPlanilha["stAtivo = ? "] = 'S';
             //TRATANDO QUANDO o PROJETO FOR DE READEQUACAO
             if ($this->bln_readequacao != "false") {
                 $arrBuscaPlanilha["idPedidoAlteracao = (SELECT TOP 1 max(idPedidoAlteracao) from SAC.dbo.tbPlanilhaAprovacao where IdPRONAC = '{$idpronac}')"] = '(?)';
             }
             $planilhaaprovacao = $pa->buscar($arrBuscaPlanilha);
             //Manteve o resultado igual
             if ($tpresultadovotacao == 1 and $resultado == 'AS') {
                 $consolidacao = $parecer->buscar(array('IdPRONAC = ?' => $idpronac, 'stAtivo = ?' => 1))->current()->toArray();
                 $consolidacao = $consolidacao['ResumoParecer'];
             } else {
                 if ($tpresultadovotacao == 2 and $resultado == 'AS') {
                     $consolidacao = Seguranca::tratarVarAjaxUFT8($_POST['parecerconsolidado']);
                 } else {
                     if ($tpresultadovotacao == 3 and $resultado == 'AS') {
                         foreach ($planilhaaprovacao as $resu) {
                             $data = array('tpPlanilha' => 'SE', 'dtPlanilha' => date('Y-m-d H:i:s'), 'idPlanilhaProjeto' => $resu->idPlanilhaProjeto, 'idPlanilhaProposta' => $resu->idPlanilhaProposta, 'IdPRONAC' => $resu->IdPRONAC, 'idProduto' => $resu->idProduto, 'idEtapa' => $resu->idEtapa, 'idPlanilhaItem' => $resu->idPlanilhaItem, 'idUnidade' => $resu->idUnidade, 'qtItem' => $resu->qtItem, 'dsItem' => '', 'nrOcorrencia' => $resu->nrOcorrencia, 'vlUnitario' => $resu->vlUnitario, 'qtDias' => $resu->qtDias, 'tpDespesa' => $resu->tpDespesa, 'tpPessoa' => $resu->tpPessoa, 'nrContraPartida' => $resu->nrContraPartida, 'nrFonteRecurso' => $resu->nrFonteRecurso, 'idUFDespesa' => $resu->idUFDespesa, 'idMunicipioDespesa' => $resu->idMunicipioDespesa, 'dsJustificativa' => $resu->dsJustificativa, 'stAtivo' => 'S', 'idPedidoAlteracao' => $resu->idPedidoAlteracao, 'idPlanilhaAprovacaoPai' => $resu->idPlanilhaAprovacaoPai);
                             $inserirPlanilhaAprovacao = $pa->inserir($data);
                         }
                         //$where = "IdPRONAC = $idpronac and tpPlanilha = 'CO' and stAtivo = 'S'";
                         $where = "IdPRONAC = '{$idpronac}'";
                         $where .= " AND tpPlanilha = 'CO'";
                         $where .= " AND stAtivo    = 'S'";
                         //TRATANDO QUANDO o PROJETO FOR DE READEQUACAO
                         if ($this->bln_readequacao != "false") {
                             $where .= " AND idPedidoAlteracao = (SELECT TOP 1 max(idPedidoAlteracao) from SAC.dbo.tbPlanilhaAprovacao where IdPRONAC = '{$idpronac}')";
                         }
                         $dados = array('stAtivo' => 'N');
                         $pa->alterar($dados, $where);
                         $ana = new AnaliseAprovacao();
                         $RanaliseConteudo = $ana->buscar(array("tpAnalise = ?" => 'CO', "IdPRONAC = ?" => $idpronac, 'idAnaliseAprovacaoPai is null' => null));
                         foreach ($RanaliseConteudo as $resu) {
                             $data = array('tpAnalise' => 'SE', 'dtAnalise' => date('Y-m-d H:i:s'), 'idAnaliseConteudo' => $resu->idAnaliseConteudo, 'IdPRONAC' => $resu->IdPRONAC, 'idProduto' => $resu->idProduto, 'stLei8313' => $resu->stLei8313, 'stArtigo3' => $resu->stArtigo3, 'nrIncisoArtigo3' => $resu->nrIncisoArtigo3, 'dsAlineaArt3' => $resu->dsAlineaArt3, 'stArtigo18' => $resu->stArtigo18, 'dsAlineaArtigo18' => $resu->dsAlineaArtigo18, 'stArtigo26' => $resu->stArtigo26, 'stLei5761' => $resu->stLei5761, 'stArtigo27' => $resu->stArtigo27, 'stIncisoArtigo27_I' => $resu->stIncisoArtigo27_I, 'stIncisoArtigo27_II' => $resu->stIncisoArtigo27_II, 'stIncisoArtigo27_III' => $resu->stIncisoArtigo27_III, 'stIncisoArtigo27_IV' => $resu->stIncisoArtigo27_IV, 'stAvaliacao' => $resu->stAvaliacao, 'dsAvaliacao' => $resu->dsAvaliacao, 'idAnaliseAprovacaoPai' => $resu->idAnaliseAprovacao);
                             $ana->inserir($data);
                         }
                         $dados = array('Situacao' => 'D01');
                         $where = 'IdPRONAC = ' . $idpronac;
                         $tblProjetos->alterar($dados, $where);
                     }
                 }
             }
             echo json_encode(array('error' => false));
         } catch (Exception $e) {
             echo json_encode(array('error' => true, 'descricao' => $e->getMessage()));
             //parent::message("", "gerenciarpautareuniao/gerenciaradministrativo", "ALERT");
         }
         //INATIVA DISTRIBUICAO DESSE PROJETO PARA O COMPONENTE POIS SUA ANALIZE FOI FINALIZADA
         /*try{
               $tblDistribuicao = new tbDistribuicaoProjetoComissao();
               $tblDistribuicao->alterar(array('stDistribuicao' => 'I'), array('idPRONAC = ?'=>$idpronac));
               return;
           }// fecha try
           catch (Exception $e)
           {
               echo json_encode(array('error' => true, 'descricao' => $e->getMessage()));
               return;
               //parent::message("Ocorreu um erro ao inativar a distribuição desse Projeto feita ao Componente, mas as outras ações foram realizadas com sucesso.", "gerenciarpautareuniao/gerenciaradministrativo", "ALERT");
           }*/
         //echo "<script>msg();</script>";
     }
 }
 public function concluiuAction()
 {
     //** Usuario Logado ************************************************/
     $auth = Zend_Auth::getInstance();
     // pega a autenticação
     $idusuario = $auth->getIdentity()->usu_codigo;
     $GrupoAtivo = new Zend_Session_Namespace('GrupoAtivo');
     // cria a sessão com o grupo ativo
     $codOrgao = $GrupoAtivo->codOrgao;
     //  Órgão ativo na sessão
     /******************************************************************/
     $idDistribuirParecer = $this->_request->getParam("idDistribuirParecer");
     $idPronac = $this->_request->getParam("idpronac");
     $observacao = $this->_request->getParam("obs");
     if (strlen($observacao) < 11 or strlen($observacao) > 8000) {
         parent::message("Dados obrigatórios n&atilde;o informados.", "gerenciarparecer/concluir/idDistribuirParecer/" . $idDistribuirParecer . "/idpronac/" . $idPronac, "ALERT");
     }
     $db = Zend_Registry::get('db');
     $db->setFetchMode(Zend_DB::FETCH_OBJ);
     try {
         $db->beginTransaction();
         $tbDistribuirParecer = new tbDistribuirParecer();
         $dadosWhere["t.idDistribuirParecer = ?"] = $idDistribuirParecer;
         $buscaDadosProjeto = $tbDistribuirParecer->dadosParaDistribuir($dadosWhere);
         foreach ($buscaDadosProjeto as $dp) {
             // FECHAR ANALISE ( COORDENADOR DE PARECER )
             $orgaos = array('91', '92', '93', '94', '95', '160', '171', '335');
             // Caso não esteja dentro do array
             if (!in_array($dp->idOrgao, $orgaos)) {
                 $idOrgao = 91;
                 $fecharAnalise = 0;
             } else {
                 $idOrgao = $dp->idOrgao;
                 $fecharAnalise = 1;
             }
             $dados = array('DtEnvio' => $dp->DtEnvio, 'idAgenteParecerista' => $dp->idAgenteParecerista, 'DtDistribuicao' => $dp->DtDistribuicao, 'DtDevolucao' => $dp->DtDevolucao, 'DtRetorno' => new Zend_Db_Expr("GETDATE()"), 'Observacao' => $observacao, 'idUsuario' => $idusuario, 'FecharAnalise' => $fecharAnalise, 'idOrgao' => $idOrgao, 'idPRONAC' => $dp->IdPRONAC, 'idProduto' => $dp->idProduto, 'TipoAnalise' => $dp->TipoAnalise, 'stEstado' => 0, 'stPrincipal' => $dp->stPrincipal, 'stDiligenciado' => null);
             $whereD['idDistribuirParecer = ?'] = $idDistribuirParecer;
             $salvar = $tbDistribuirParecer->alterar(array('stEstado' => 1), $whereD);
             $insere = $tbDistribuirParecer->inserir($dados);
         }
         /** Grava o Parecer nas Tabelas tbPlanilhaProjeto e Parecer e altera a situação do Projeto para  ***************/
         $projeto = new Projetos();
         $wherePro['IdPRONAC = ?'] = $idPronac;
         $buscaDadosdoProjeto = $projeto->buscar($wherePro);
         if ($buscaDadosProjeto[0]->stPrincipal == 1) {
             $inabilitadoDAO = new Inabilitado();
             $buscaInabilitado = $inabilitadoDAO->BuscarInabilitado($buscaDadosdoProjeto[0]->CgcCpf, $buscaDadosdoProjeto[0]->AnoProjeto, $buscaDadosdoProjeto[0]->Sequencial);
             if (count($buscaInabilitado == 0)) {
                 if (in_array($dp->idOrgao, array(91, 92, 93, 94, 95, 160, 171, 335))) {
                     $dadosProjeto = array('ProvidenciaTomada' => 'Análise técnica concluída', 'DtSituacao' => new Zend_Db_Expr('GETDATE()'), 'Situacao' => 'C20');
                 } else {
                     $dadosProjeto = array('ProvidenciaTomada' => 'Análise técnica concluída', 'DtSituacao' => new Zend_Db_Expr('GETDATE()'));
                 }
             } else {
                 $dadosProjeto = array('ProvidenciaTomada' => 'Projeto fora da pauta de reunião da CNIC porque o proponente está inabilitado no Ministério da Cultura.', 'DtSituacao' => new Zend_Db_Expr('GETDATE()'), 'Situacao' => 'C09');
             }
             $where['IdPRONAC = ?'] = $idPronac;
             $alterar = $projeto->alterarProjetos($dadosProjeto, $where);
             /****************************************************************************************************************/
             $parecerDAO = new Parecer();
             $whereParecer['idPRONAC = ?'] = $idPronac;
             $buscarParecer = $parecerDAO->buscar($whereParecer);
             $analiseDeConteudoDAO = new Analisedeconteudo();
             $whereADC['idPRONAC = ?'] = $idPronac;
             $dadosADC = array('idParecer' => $buscarParecer[0]->IdParecer);
             $alteraADC = $analiseDeConteudoDAO->alterar($dadosADC, $whereADC);
             $planilhaProjetoDAO = new PlanilhaProjeto();
             $wherePP['idPRONAC = ?'] = $idPronac;
             $dadosPP = array('idParecer' => $buscarParecer[0]->IdParecer);
             $alteraPP = $planilhaProjetoDAO->alterar($dadosPP, $wherePP);
             /****************************************************************************************************************/
         }
         $db->commit();
         parent::message("Concluído com sucesso!", "gerenciarparecer/listaprojetos?tipoFiltro=2", "CONFIRM");
     } catch (Zend_Exception $ex) {
         $db->rollBack();
         parent::message("Erro ao concluir " . $ex->getMessage(), "gerenciarparecer/concluir/idDistribuirParecer/" . $idDistribuirParecer, "ERROR");
     }
 }
 /**
  * Metodo com o parecer consolidado - Recursos
  * @access public
  * @param void
  * @return void
  */
 public function parecerconsolidadorecursosAction()
 {
     $this->_helper->layout->disableLayout();
     // desabilita o Zend_Layout
     $idPronac = $_POST['idpronac'];
     $tbRecurso = new tbRecurso();
     $dadosRecurso = $tbRecurso->buscar(array('IdPRONAC=?' => $idPronac, 'siRecurso in (?)' => array(8, 9), 'stEstado=?' => 0))->current();
     if ($dadosRecurso) {
         $dados = $tbRecurso->buscarDadosRecursos(array('idRecurso = ?' => $dadosRecurso->idRecurso))->current();
         $this->view->dados = $dados;
         $this->view->nmPagina = '';
         if ($dados->siFaseProjeto == 2) {
             if ($dados->tpSolicitacao == 'PI' || $dados->tpSolicitacao == 'EO' || $dados->tpSolicitacao == 'OR') {
                 $d = array();
                 $d['situacao'] = 'B11';
                 $d['ProvidenciaTomada'] = 'Recurso enviado para avaliação técnica.';
                 $d['dtSituacao'] = new Zend_Db_Expr('GETDATE()');
                 $where = "IdPRONAC = {$dados->IdPRONAC}";
                 $Projetos = new Projetos();
                 $Projetos->update($d, $where);
                 //ATUALIZA OS DADOS DA TABELA tbAnaliseAprovacao
                 $e = array();
                 $e['stDistribuicao'] = 'I';
                 // I=Inativo
                 $w = "idPRONAC = {$dados->IdPRONAC}";
                 $tbDistribuicaoProjetoComissao = new tbDistribuicaoProjetoComissao();
                 $tbDistribuicaoProjetoComissao->update($e, $w);
                 $PlanoDistribuicaoProduto = new PlanoDistribuicaoProduto();
                 $dadosProdutos = $PlanoDistribuicaoProduto->buscarProdutosProjeto($dados->IdPRONAC);
                 $this->view->produtos = $dadosProdutos;
                 $spPlanilhaOrcamentaria = new spPlanilhaOrcamentaria();
                 $planilhaOrcamentaria = $spPlanilhaOrcamentaria->exec($dados->IdPRONAC, 4);
                 // 4=Cortes Orçamentários Aprovados
                 $this->view->planilha = $this->montarPlanilhaOrcamentaria($planilhaOrcamentaria, 4);
                 // 4=Cortes Orçamentários Aprovados
             }
         }
         if ($dados->tpSolicitacao == 'EN' || $dados->tpSolicitacao == 'EO' || $dados->tpSolicitacao == 'OR' || $dados->tpSolicitacao == 'PI') {
             $Projetos = new Projetos();
             $this->view->projetosEN = $Projetos->buscaAreaSegmentoProjeto($dados->IdPRONAC);
             $this->view->comboareasculturais = ManterAgentesDAO::buscarAreasCulturais();
             $this->view->combosegmentosculturais = Segmentocultural::buscarSegmento($this->view->projetosEN->cdArea);
             $parecer = new Parecer();
             $this->view->Parecer = $parecer->buscar(array('IdPRONAC = ?' => $dados->IdPRONAC, 'TipoParecer in (?)' => array(1, 7), 'stAtivo = ?' => 1))->current();
         }
         //DADOS DO PROJETO
         $Projetos = new Projetos();
         $p = $Projetos->buscarProjetoXProponente(array('idPronac = ?' => $dados->IdPRONAC))->current();
         $this->view->projeto = $p;
     } else {
         $this->view->dados = array();
     }
 }
Пример #9
0
 /**
  * M?todo que chama as fun??es de balancear projeto, copiar tabelas e alterar a situa??o do projeto
  * @access public
  * @param void
  * @return void
  */
 public function aprovacaodiretaAction()
 {
     $GrupoAtivo = new Zend_Session_Namespace('GrupoAtivo');
     // cria a sess?o com o grupo ativo
     $codOrgao = $GrupoAtivo->codOrgao;
     //  Órg?o ativo na sess?o
     $this->view->codOrgao = $codOrgao;
     $idPronac = $_POST['idpronac'];
     $idusuario = $_POST['idusuario'];
     $tipo_doc = $_POST['tipo_doc'];
     //$cod_ect = $_POST['cod_ect'];
     $cod_ect = null;
     //pega as informaç?es do arquivo
     $arquivoNome = $_FILES['documento']['name'];
     // nome
     $arquivoTemp = $_FILES['documento']['tmp_name'];
     // nome temporário
     $arquivoTipo = $_FILES['documento']['type'];
     // tipo
     $arquivoTamanho = $_FILES['documento']['size'];
     // tamanho
     if (!empty($arquivoNome)) {
         $arquivoExtensao = Upload::getExtensao($arquivoNome);
         // extens?o
     }
     if (!empty($arquivoTemp)) {
         $arquivoBinario = Upload::setBinario($arquivoTemp);
         // binário
         $arquivoHash = Upload::setHash($arquivoTemp);
         // hash
     }
     $tbDoc = array('idPronac' => $idPronac, 'stEstado' => 0, 'imDocumento' => null, 'idTipoDocumento' => $tipo_doc, 'idUsuario' => $idusuario, 'dtDocumento' => '2008/12/21', 'NoArquivo' => $arquivoNome, 'TaArquivo' => $arquivoTamanho, 'idUsuarioJuntada' => null, 'dtJuntada' => null, 'idUnidadeCadastro' => $codOrgao, 'CodigoCorreio' => $cod_ect, 'biDocumento' => $arquivoBinario);
     $dados = "Insert into SAC.dbo.tbDocumento\n                  (idPronac, stEstado, imDocumento, idTipoDocumento, idUsuario, dtDocumento, NoArquivo, TaArquivo, idUsuarioJuntada, dtJuntada, idUnidadeCadastro, CodigoCorreio, biDocumento)\n                  values\n                  (" . $idPronac . ", 0, null, " . $tipo_doc . ", " . $idusuario . ", GETDATE(), '" . $arquivoNome . "', " . $arquivoTamanho . ", null, null, " . $codOrgao . ", '" . $cod_ect . "', " . $arquivoBinario . ")\n            ";
     $db = Zend_Registry::get('db');
     $db->setFetchMode(Zend_DB::FETCH_OBJ);
     try {
         $db->beginTransaction();
         if (empty($arquivoTemp)) {
             // nome do arquivo
             parent::message("Por favor, informe o arquivo!!", "gerenciarpareceres/index", "ALERT");
         } else {
             if (empty($arquivoTemp)) {
                 // nome do arquivo
                 parent::message("Por favor, informe o arquivo!", "gerenciarpareceres/index", "ALERT");
             } else {
                 if ($arquivoExtensao != 'pdf') {
                     // extens?o do arquivo
                     parent::message("O arquivo deve ser PDF!", "gerenciarpareceres/index", "ALERT");
                 } else {
                     if ($arquivoTamanho > 10485760) {
                         // tamanho do arquivo: 10MB
                         parent::message("O arquivo n?o pode ser maior do que 10MB!", "gerenciarpareceres/index", "ALERT");
                     } else {
                         $resultado = TramitarDocumentosDAO::cadDocumento($dados);
                         $tbHistoricoDoc = array('idPronac' => $idPronac, 'idDocumento' => $resultado, 'idUnidade' => $codOrgao, 'dtTramitacaoEnvio' => date('Y/m/d H:i:s'), 'idUsuarioEmissor' => $idusuario, 'meDespacho' => null, 'idLote' => null, 'dtTramitacaoRecebida' => null, 'idUsuarioReceptor' => null, 'Acao' => 1, 'stEstado' => 1);
                         $resultado2 = TramitarDocumentosDAO::cadHistorico('SAC.dbo.tbHistoricoDocumento', $tbHistoricoDoc);
                     }
                 }
             }
         }
         $this->_helper->viewRenderer->setNoRender();
         //$servico   = $this->_request->getParam("servico"); // pega o id do pronac via get
         $aprovacao = new Aprovacao();
         $parecer = new Parecer();
         $planilhaaprovacao = new PlanilhaAprovacao();
         $projeto = new Projetos();
         $planilhaProjeto = new PlanilhaProjeto();
         $analiseConteudo = new Analisedeconteudo();
         $analiseaprovacao = new AnaliseAprovacao();
         $Distribuicao = new DistribuicaoProjetoComissao();
         $reuniao = new Reuniao();
         $pauta = new Pauta();
         $sp = new paVerificarAtualizarSituacaoAprovacao();
         // copia as tabelas
         $buscarParecer = $parecer->buscar(array('idPronac = ?' => $idPronac, 'stAtivo = ?' => 1))->current()->toArray();
         $Rplanilhaprojeto = $planilhaProjeto->buscar(array('idPRONAC = ?' => $idPronac));
         foreach ($Rplanilhaprojeto as $resu) {
             $data = array('tpPlanilha' => 'CO', 'dtPlanilha' => date('Y-m-d H:i:s'), 'idPlanilhaProjeto' => $resu->idPlanilhaProjeto, 'idPlanilhaProposta' => $resu->idPlanilhaProposta, 'IdPRONAC' => $resu->idPRONAC, 'idProduto' => $resu->idProduto, 'idEtapa' => $resu->idEtapa, 'idPlanilhaItem' => $resu->idPlanilhaItem, 'dsItem' => '', 'idUnidade' => $resu->idUnidade, 'qtItem' => $resu->Quantidade, 'nrOcorrencia' => $resu->Ocorrencia, 'vlUnitario' => $resu->ValorUnitario, 'qtDias' => $resu->QtdeDias, 'tpDespesa' => $resu->TipoDespesa, 'tpPessoa' => $resu->TipoPessoa, 'nrContraPartida' => $resu->Contrapartida, 'nrFonteRecurso' => $resu->FonteRecurso, 'idUFDespesa' => $resu->UfDespesa, 'idMunicipioDespesa' => $resu->MunicipioDespesa, 'dsJustificativa' => $resu->Justificativa, 'stAtivo' => 'S');
             $inserirPlanilhaAprovacao = $planilhaaprovacao->inserir($data);
         }
         $RanaliseConteudo = $analiseConteudo->buscar(array('IdPRONAC = ?' => $idPronac));
         foreach ($RanaliseConteudo as $resu) {
             $data = array('tpAnalise' => 'CO', 'dtAnalise' => date('Y-m-d H:i:s'), 'idAnaliseConteudo' => $resu->idAnaliseDeConteudo, 'IdPRONAC' => $resu->idPronac, 'idProduto' => $resu->idProduto, 'stLei8313' => $resu->Lei8313, 'stArtigo3' => $resu->Artigo3, 'nrIncisoArtigo3' => $resu->IncisoArtigo3, 'dsAlineaArt3' => $resu->AlineaArtigo3, 'stArtigo18' => $resu->Artigo18, 'dsAlineaArtigo18' => $resu->AlineaArtigo18, 'stArtigo26' => $resu->Artigo26, 'stLei5761' => $resu->Lei5761, 'stArtigo27' => $resu->Artigo27, 'stIncisoArtigo27_I' => $resu->IncisoArtigo27_I, 'stIncisoArtigo27_II' => $resu->IncisoArtigo27_II, 'stIncisoArtigo27_III' => $resu->IncisoArtigo27_III, 'stIncisoArtigo27_IV' => $resu->IncisoArtigo27_IV, 'stAvaliacao' => $resu->ParecerFavoravel, 'dsAvaliacao' => $resu->ParecerDeConteudo);
             //xd($data);
             $analiseaprovacao->inserir($data);
         }
         $consolidarAprovacao = TratarString::escapeString($buscarParecer['ResumoParecer']);
         $somaPlanilhaAprovacao = $planilhaaprovacao->somarPlanilhaAprovacao($idPronac);
         $valoraprovacao = $somaPlanilhaAprovacao['soma'];
         $tipoAprovacao = $buscarParecer['TipoParecer'];
         $buscarprojetos = $projeto->buscar(array('IdPRONAC = ?' => $idPronac))->current()->toArray();
         $dados = array('IdPRONAC' => $idPronac, 'AnoProjeto' => $buscarprojetos['AnoProjeto'], 'Sequencial' => $buscarprojetos['Sequencial'], 'TipoAprovacao' => $tipoAprovacao, 'dtAprovacao' => date('Y-m-d H:i:s'), 'ResumoAprovacao' => $consolidarAprovacao, 'dtInicioCaptacao' => date('Y-m-d H:i:s'), 'dtFimCaptacao' => date('Y-12-31 11:59:59'), 'AprovadoReal' => $valoraprovacao, 'AprovadoUfir' => 0, 'AutorizadoUfir' => 0, 'AutorizadoReal' => 0, 'ConcedidoCusteioReal' => 0, 'ConcedidoCapitalReal' => 0, 'ContraPartidaReal' => 0, 'Logon' => $idusuario);
         $inserir = $aprovacao->inserir($dados);
         $buscarReuniaoAberta = $reuniao->buscarReuniaoAberta();
         $dadosPauta = array("idNrReuniao" => $buscarReuniaoAberta['idNrReuniao'], "IdPRONAC" => $idPronac, "dtEnvioPauta" => date("Y-m-d H:i:s"), "stEnvioPlenario" => "N", "tpPauta" => '1', "stAnalise" => 'AR', "dsAnalise" => 'AD Referendum');
         $inserirProjetoPauta = $pauta->inserir($dadosPauta);
         $verificarSituacao = $sp->expaVerificarAtualizarSituacaoAprovacao($idPronac);
         $db->commit();
         parent::message("Projeto aprovado com sucesso!", "gerenciarpareceres/index", "CONFIRM");
     } catch (Zend_Exception $ex) {
         $db->rollBack();
         parent::message("Erro ao realizar cadastro", "gerenciarpareceres/index", "ERROR");
     }
 }
 public function recursoAction()
 {
     $this->_helper->layout->disableLayout();
     // Desabilita o Zend Layout
     $idPronac = $this->_request->getParam("idPronac");
     if (strlen($idPronac) > 7) {
         $idPronac = Seguranca::dencrypt($idPronac);
     }
     if (!empty($idPronac)) {
         $Projetos = new Projetos();
         $rsProjeto = $Projetos->buscar(array("IdPronac=?" => $idPronac))->current();
         $this->view->projeto = $rsProjeto;
         // verifica se há pedidos de reconsideração e de recurso
         $tbRecurso = new tbRecurso();
         $recursos = $tbRecurso->buscar(array('IdPRONAC = ?' => $idPronac));
         $pedidoReconsideracao = 0;
         $pedidoRecurso = 0;
         if (count($recursos) > 0) {
             foreach ($recursos as $r) {
                 if ($r->tpRecurso == 1) {
                     $pedidoReconsideracao = $r->idRecurso;
                     $dados = $tbRecurso->buscarDadosRecursos(array('idRecurso = ?' => $r->idRecurso))->current();
                     $this->view->dadosReconsideracao = $dados;
                     if ($r->siRecurso == 0) {
                         $this->view->desistenciaReconsideracao = true;
                     } else {
                         $this->view->desistenciaReconsideracao = false;
                         $this->view->produtosReconsideracao = array();
                         if ($dados->siFaseProjeto == 2) {
                             if ($dados->tpSolicitacao == 'PI' || $dados->tpSolicitacao == 'EO' || $dados->tpSolicitacao == 'OR') {
                                 $PlanoDistribuicaoProduto = new PlanoDistribuicaoProduto();
                                 $dadosProdutos = $PlanoDistribuicaoProduto->buscarProdutosProjeto($dados->IdPRONAC);
                                 $this->view->produtosReconsideracao = $dadosProdutos;
                                 $tipoDaPlanilha = 3;
                                 // 3=Planilha Orçamentária Aprovada Ativa
                                 //                                    if($dados->tpSolicitacao == 'EO' || $dados->tpSolicitacao == 'OR'){
                                 //                                        $tipoDaPlanilha = 4; // 4=Cortes Orçamentários Aprovados
                                 //                                    }
                                 $spPlanilhaOrcamentaria = new spPlanilhaOrcamentaria();
                                 $planilhaOrcamentaria = $spPlanilhaOrcamentaria->exec($dados->IdPRONAC, $tipoDaPlanilha);
                                 $this->view->planilhaReconsideracao = $this->montarPlanilhaOrcamentaria($planilhaOrcamentaria, $tipoDaPlanilha);
                             }
                         }
                         if ($dados->tpSolicitacao == 'EN' || $dados->tpSolicitacao == 'EO' || $dados->tpSolicitacao == 'OR' || $dados->tpSolicitacao == 'PI') {
                             $this->view->projetosENReconsideracao = $Projetos->buscaAreaSegmentoProjeto($dados->IdPRONAC);
                             $this->view->comboareasculturaisReconsideracao = ManterAgentesDAO::buscarAreasCulturais();
                             $this->view->combosegmentosculturaisReconsideracao = Segmentocultural::buscarSegmento($this->view->projetosENReconsideracao->cdArea);
                             $parecer = new Parecer();
                             $this->view->ParecerReconsideracao = $parecer->buscar(array('IdPRONAC = ?' => $dados->IdPRONAC, 'TipoParecer in (?)' => array(1, 7), 'stAtivo = ?' => 1))->current();
                         }
                     }
                 }
                 if ($r->tpRecurso == 2) {
                     $pedidoRecurso = $r->idRecurso;
                     $dados = $tbRecurso->buscarDadosRecursos(array('idRecurso = ?' => $r->idRecurso))->current();
                     $this->view->dadosRecurso = $dados;
                     if ($r->siRecurso == 0) {
                         $this->view->desistenciaRecurso = true;
                     } else {
                         $this->view->desistenciaRecurso = false;
                         if ($dados->siFaseProjeto == 2) {
                             if ($dados->tpSolicitacao == 'PI' || $dados->tpSolicitacao == 'EO' || $dados->tpSolicitacao == 'OR') {
                                 $PlanoDistribuicaoProduto = new PlanoDistribuicaoProduto();
                                 $dadosProdutos = $PlanoDistribuicaoProduto->buscarProdutosProjeto($dados->IdPRONAC);
                                 $this->view->produtosRecurso = $dadosProdutos;
                                 $tipoDaPlanilha = 2;
                                 // 2=Planilha Aprovada Parecerista
                                 if ($dados->tpSolicitacao == 'EO' || $dados->tpSolicitacao == 'OR') {
                                     $tipoDaPlanilha = 4;
                                     // 4=Cortes Orçamentários Aprovados
                                 }
                                 $spPlanilhaOrcamentaria = new spPlanilhaOrcamentaria();
                                 $planilhaOrcamentaria = $spPlanilhaOrcamentaria->exec($dados->IdPRONAC, $tipoDaPlanilha);
                                 $this->view->planilhaRecurso = $this->montarPlanilhaOrcamentaria($planilhaOrcamentaria, $tipoDaPlanilha);
                             }
                         }
                         if ($dados->tpSolicitacao == 'EN' || $dados->tpSolicitacao == 'EO' || $dados->tpSolicitacao == 'OR' || $dados->tpSolicitacao == 'PI') {
                             $this->view->projetosENRecurso = $Projetos->buscaAreaSegmentoProjeto($dados->IdPRONAC);
                             $this->view->comboareasculturaisRecurso = ManterAgentesDAO::buscarAreasCulturais();
                             $this->view->combosegmentosculturaisRecurso = Segmentocultural::buscarSegmento($this->view->projetosENRecurso->cdArea);
                             $parecer = new Parecer();
                             $this->view->ParecerRecurso = $parecer->buscar(array('IdPRONAC = ?' => $dados->IdPRONAC, 'TipoParecer = ?' => 7, 'stAtivo = ?' => 1))->current();
                         }
                     }
                 }
             }
         }
         $this->view->pedidoReconsideracao = $pedidoReconsideracao;
         $this->view->pedidoRecurso = $pedidoRecurso;
     }
 }
 public function encaminharReadequacaoChecklistAction()
 {
     if ($this->idPerfil != 93 && $this->idPerfil != 94 && $this->idPerfil != 121 && $this->idPerfil != 122 && $this->idPerfil != 123) {
         parent::message("Você não tem permissão para acessar essa área do sistema!", "principal", "ALERT");
     }
     $auth = Zend_Auth::getInstance();
     $idCoordenador = $auth->getIdentity()->usu_codigo;
     $get = Zend_Registry::get('get');
     $idReadequacao = (int) $get->id;
     $reuniao = new Reuniao();
     $raberta = $reuniao->buscarReuniaoAberta();
     $idNrReuniao = $raberta['stPlenaria'] == 'A' ? $raberta['idNrReuniao'] + 1 : $raberta['idNrReuniao'];
     $tbReadequacaoXParecer = new tbReadequacaoXParecer();
     $dadosParecer = $tbReadequacaoXParecer->buscar(array('idReadequacao=?' => $idReadequacao));
     foreach ($dadosParecer as $key => $dp) {
         $pareceres = array();
         $pareceres[$key] = $dp->idParecer;
     }
     $Parecer = new Parecer();
     $parecerTecnico = $Parecer->buscar(array('IdParecer=(?)' => $pareceres), array('IdParecer'))->current();
     $tbReadequacao = new tbReadequacao();
     if ($parecerTecnico->ParecerFavoravel == 2) {
         //Se for parecer favorável, atualiza os dados solicitados na readequação
         $read = $tbReadequacao->buscarReadequacao(array('idReadequacao =?' => $idReadequacao))->current();
         // READEQUAÇÃO DE PLANILHA ORÇAMENTÁRIA
         if ($read->idTipoReadequacao == 2) {
             $Projetos = new Projetos();
             $dadosPrj = $Projetos->find(array('IdPRONAC=?' => $read->idPronac))->current();
             $tbPlanilhaAprovacao = new tbPlanilhaAprovacao();
             //BUSCAR VALOR TOTAL DA PLANILHA ATIVA
             $where = array();
             $where['a.IdPRONAC = ?'] = $read->idPronac;
             $where['a.stAtivo = ?'] = 'S';
             $PlanilhaAtiva = $tbPlanilhaAprovacao->valorTotalPlanilha($where)->current();
             //BUSCAR VALOR TOTAL DA PLANILHA DE READEQUADA
             $where = array();
             $where['a.IdPRONAC = ?'] = $read->idPronac;
             $where['a.tpPlanilha = ?'] = 'SR';
             $where['a.stAtivo = ?'] = 'N';
             $PlanilhaReadequada = $tbPlanilhaAprovacao->valorTotalPlanilha($where)->current();
             if ($PlanilhaAtiva->Total < $PlanilhaReadequada->Total) {
                 $TipoAprovacao = 2;
                 $dadosPrj->Situacao = 'D28';
             } else {
                 $TipoAprovacao = 4;
                 $dadosPrj->Situacao = 'D29';
             }
             $dadosPrj->save();
             $AprovadoReal = number_format($PlanilhaReadequada->Total - $PlanilhaAtiva->Total, 2, '.', '');
             $tbAprovacao = new Aprovacao();
             $dadosAprovacao = array('IdPRONAC' => $read->idPronac, 'AnoProjeto' => $dadosPrj->AnoProjeto, 'Sequencial' => $dadosPrj->Sequencial, 'TipoAprovacao' => $TipoAprovacao, 'DtAprovacao' => new Zend_Db_Expr('GETDATE()'), 'ResumoAprovacao' => 'Parecer favorável para readequação', 'AprovadoReal' => $AprovadoReal, 'Logon' => $this->idUsuario, 'idReadequacao' => $idReadequacao);
             $idAprovacao = $tbAprovacao->inserir($dadosAprovacao);
             // READEQUAÇÃO DE ALTERAÇÃO DE RAZÃO SOCIAL
         } else {
             if ($read->idTipoReadequacao == 3) {
                 //Se for readequação de alteração de razão social, atualiza os dados na AGENTES.dbo.Nomes.
                 $Projetos = new Projetos();
                 $dadosPrj = $Projetos->find(array('IdPRONAC=?' => $read->idPronac))->current();
                 $tbAprovacao = new Aprovacao();
                 $dadosAprovacao = array('IdPRONAC' => $read->idPronac, 'AnoProjeto' => $dadosPrj->AnoProjeto, 'Sequencial' => $dadosPrj->Sequencial, 'TipoAprovacao' => 8, 'DtAprovacao' => new Zend_Db_Expr('GETDATE()'), 'ResumoAprovacao' => 'Parecer favorável para readequação', 'Logon' => $this->idUsuario, 'idReadequacao' => $idReadequacao);
                 $idAprovacao = $tbAprovacao->inserir($dadosAprovacao);
                 // READEQUAÇÃO DE AGÊNCIA BANCÁRIA
             } else {
                 if ($read->idTipoReadequacao == 4) {
                     //Se for readequação de agência bancária, atualiza os dados na SAC.dbo.PreProjeto.
                     $Projetos = new Projetos();
                     $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current();
                     $agenciaBancaria = str_replace('-', '', $read->dsSolicitacao);
                     $tblContaBancaria = new ContaBancaria();
                     $arrayDadosBancarios = array('Agencia' => $agenciaBancaria, 'ContaBloqueada' => '000000000000', 'DtLoteRemessaCB' => NULL, 'LoteRemessaCB' => '00000', 'OcorrenciaCB' => '000', 'ContaLivre' => '000000000000', 'DtLoteRemessaCL' => NULL, 'LoteRemessaCL' => '00000', 'OcorrenciaCL' => '000', 'Logon' => $this->idUsuario, 'idPronac' => $read->idPronac);
                     $whereDadosBancarios['AnoProjeto = ?'] = $dadosPrj->AnoProjeto;
                     $whereDadosBancarios['Sequencial = ?'] = $dadosPrj->Sequencial;
                     $tblContaBancaria->alterar($arrayDadosBancarios, $whereDadosBancarios);
                     // READEQUAÇÃO DE SINOPSE DA OBRA
                 } else {
                     if ($read->idTipoReadequacao == 5) {
                         //Se for readequação de sinopse da obra, atualiza os dados na SAC.dbo.PreProjeto.
                         $Projetos = new Projetos();
                         $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current();
                         $PrePropojeto = new PreProjeto();
                         $dadosPreProjeto = $PrePropojeto->find(array('idPreProjeto=?' => $dadosPrj->idProjeto))->current();
                         $dadosPreProjeto->Sinopse = $read->dsSolicitacao;
                         $dadosPreProjeto->save();
                         // READEQUAÇÃO DE IMPACTO AMBIENTAL
                     } else {
                         if ($read->idTipoReadequacao == 6) {
                             //Se for readequação de impacto ambiental, atualiza os dados na SAC.dbo.PreProjeto.
                             $Projetos = new Projetos();
                             $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current();
                             $PrePropojeto = new PreProjeto();
                             $dadosPreProjeto = $PrePropojeto->find(array('idPreProjeto=?' => $dadosPrj->idProjeto))->current();
                             $dadosPreProjeto->ImpactoAmbiental = $read->dsSolicitacao;
                             $dadosPreProjeto->save();
                             // READEQUAÇÃO DE ESPECIFICAÇÃO TÉCNICA
                         } else {
                             if ($read->idTipoReadequacao == 7) {
                                 //Se for readequação de especificação técnica, atualiza os dados na SAC.dbo.PreProjeto.
                                 $Projetos = new Projetos();
                                 $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current();
                                 $PrePropojeto = new PreProjeto();
                                 $dadosPreProjeto = $PrePropojeto->find(array('idPreProjeto=?' => $dadosPrj->idProjeto))->current();
                                 $dadosPreProjeto->EspecificacaoTecnica = $read->dsSolicitacao;
                                 $dadosPreProjeto->save();
                                 // READEQUAÇÃO DE ESTRATÉGIA DE EXECUÇÃO
                             } else {
                                 if ($read->idTipoReadequacao == 8) {
                                     //Se for readequação de estratégia de execução, atualiza os dados na SAC.dbo.PreProjeto.
                                     $Projetos = new Projetos();
                                     $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current();
                                     $PrePropojeto = new PreProjeto();
                                     $dadosPreProjeto = $PrePropojeto->find(array('idPreProjeto=?' => $dadosPrj->idProjeto))->current();
                                     $dadosPreProjeto->EstrategiadeExecucao = $read->dsSolicitacao;
                                     $dadosPreProjeto->save();
                                     // READEQUAÇÃO DE LOCAL DE REALIZAÇÃO
                                 } else {
                                     if ($read->idTipoReadequacao == 9) {
                                         //Se for readequação de local de realização, atualiza os dados na SAC.dbo.Abrangencia.
                                         $Abrangencia = new Abrangencia();
                                         $tbAbrangencia = new tbAbrangencia();
                                         $abrangencias = $tbAbrangencia->buscar(array('idReadequacao=?' => $idReadequacao));
                                         foreach ($abrangencias as $abg) {
                                             $Projetos = new Projetos();
                                             $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current();
                                             //Se não houve avalição do conselheiro, pega a avaliação técnica como referencia.
                                             $avaliacao = $abg->tpAnaliseComissao;
                                             if ($abg->tpAnaliseComissao == 'N') {
                                                 $avaliacao = $abg->tpAnaliseTecnica;
                                             }
                                             //Se a avaliação foi deferida, realiza as mudanças necessárias na tabela original.
                                             if ($avaliacao == 'D') {
                                                 if ($abg->tpSolicitacao == 'E') {
                                                     //Se a abrangencia foi excluída, atualiza os status da abrangencia na SAC.dbo.Abrangencia
                                                     $Abrangencia->delete(array('idProjeto = ?' => $dadosPrj->idProjeto, 'idPais = ?' => $abg->idPais, 'idUF = ?' => $abg->idUF, 'idMunicipioIBGE = ?' => $abg->idMunicipioIBGE));
                                                 } else {
                                                     if ($abg->tpSolicitacao == 'I') {
                                                         //Se a abangência foi incluída, cria um novo registro na tabela SAC.dbo.Abrangencia
                                                         $novoLocalRead = array();
                                                         $novoLocalRead['idProjeto'] = $dadosPrj->idProjeto;
                                                         $novoLocalRead['idPais'] = $abg->idPais;
                                                         $novoLocalRead['idUF'] = $abg->idUF;
                                                         $novoLocalRead['idMunicipioIBGE'] = $abg->idMunicipioIBGE;
                                                         $novoLocalRead['Usuario'] = $this->idUsuario;
                                                         $novoLocalRead['stAbrangencia'] = 1;
                                                         $Abrangencia->salvar($novoLocalRead);
                                                     }
                                                 }
                                             }
                                         }
                                         $dadosAbr = array();
                                         $dadosAbr['stAtivo'] = 'N';
                                         $whereAbr = "idPronac = {$read->idPronac} AND idReadequacao = {$idReadequacao}";
                                         $tbAbrangencia->update($dadosAbr, $whereAbr);
                                         // READEQUAÇÃO DE ALTERAÇÃO DE PROPONENTE
                                     } else {
                                         if ($read->idTipoReadequacao == 10) {
                                             //Se for readequação de alteração de proponente, atualiza os dados na SAC.dbo.Projetos.
                                             $Projetos = new Projetos();
                                             $dadosPrj = $Projetos->find(array('IdPRONAC=?' => $read->idPronac))->current();
                                             $tbAprovacao = new Aprovacao();
                                             $dadosAprovacao = array('IdPRONAC' => $read->idPronac, 'AnoProjeto' => $dadosPrj->AnoProjeto, 'Sequencial' => $dadosPrj->Sequencial, 'TipoAprovacao' => 8, 'DtAprovacao' => new Zend_Db_Expr('GETDATE()'), 'ResumoAprovacao' => 'Parecer favorável para readequação', 'Logon' => $this->idUsuario, 'idReadequacao' => $idReadequacao);
                                             $idAprovacao = $tbAprovacao->inserir($dadosAprovacao);
                                             // READEQUAÇÃO DE PLANO DE DISTRIBUIÇÃO
                                         } else {
                                             if ($read->idTipoReadequacao == 11) {
                                                 //Se for readequação de plano de distribuição, atualiza os dados na SAC.dbo.PlanoDistribuicaoProduto.
                                                 $PlanoDistribuicaoProduto = new PlanoDistribuicaoProduto();
                                                 $tbPlanoDistribuicao = new tbPlanoDistribuicao();
                                                 $planosDistribuicao = $tbPlanoDistribuicao->buscar(array('idReadequacao=?' => $idReadequacao));
                                                 foreach ($planosDistribuicao as $plano) {
                                                     $Projetos = new Projetos();
                                                     $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current();
                                                     //Se não houve avalição do conselheiro, pega a avaliação técnica como referencia.
                                                     $avaliacao = $plano->tpAnaliseComissao;
                                                     if ($plano->tpAnaliseComissao == 'N') {
                                                         $avaliacao = $plano->tpAnaliseTecnica;
                                                     }
                                                     //Se a avaliação foi deferida, realiza as mudanças necessárias na tabela original.
                                                     if ($avaliacao == 'D') {
                                                         if ($plano->tpSolicitacao == 'E') {
                                                             //Se o plano de distribuição foi excluído, atualiza os status do plano na SAC.dbo.PlanoDistribuicaoProduto
                                                             $PlanoDistribuicaoProduto->delete(array('idProjeto = ?' => $dadosPrj->idProjeto, 'idProduto = ?' => $plano->idProduto, 'Area = ?' => $plano->cdArea, 'Segmento = ?' => $plano->cdSegmento));
                                                         } else {
                                                             if ($plano->tpSolicitacao == 'I') {
                                                                 //Se o plano de distribuição foi incluído, cria um novo registro na tabela SAC.dbo.PlanoDistribuicaoProduto
                                                                 $novoPlanoDistRead = array();
                                                                 $novoPlanoDistRead['idProjeto'] = $dadosPrj->idProjeto;
                                                                 $novoPlanoDistRead['idProduto'] = $plano->idProduto;
                                                                 $novoPlanoDistRead['Area'] = $plano->cdArea;
                                                                 $novoPlanoDistRead['Segmento'] = $plano->cdSegmento;
                                                                 $novoPlanoDistRead['idPosicaoDaLogo'] = $plano->idPosicaoLogo;
                                                                 $novoPlanoDistRead['QtdeProduzida'] = $plano->qtProduzida;
                                                                 $novoPlanoDistRead['QtdePatrocinador'] = $plano->qtPatrocinador;
                                                                 $novoPlanoDistRead['QtdeProponente'] = $plano->qtProponente;
                                                                 $novoPlanoDistRead['QtdeOutros'] = $plano->qtOutros;
                                                                 $novoPlanoDistRead['QtdeVendaNormal'] = $plano->qtVendaNormal;
                                                                 $novoPlanoDistRead['QtdeVendaPromocional'] = $plano->qtVendaPromocional;
                                                                 $novoPlanoDistRead['PrecoUnitarioNormal'] = $plano->vlUnitarioNormal;
                                                                 $novoPlanoDistRead['PrecoUnitarioPromocional'] = $plano->vlUnitarioPromocional;
                                                                 $novoPlanoDistRead['stPrincipal'] = 0;
                                                                 $novoPlanoDistRead['Usuario'] = $this->idUsuario;
                                                                 $novoPlanoDistRead['dsJustificativaPosicaoLogo'] = null;
                                                                 $novoPlanoDistRead['stPlanoDistribuicaoProduto'] = 1;
                                                                 $PlanoDistribuicaoProduto->inserir($novoPlanoDistRead);
                                                             }
                                                         }
                                                     }
                                                 }
                                                 $dadosPDD = array();
                                                 $dadosPDD['stAtivo'] = 'N';
                                                 $wherePDD = "idPronac = {$read->idPronac} AND idReadequacao = {$idReadequacao}";
                                                 $tbPlanoDistribuicao->update($dadosPDD, $wherePDD);
                                                 // READEQUAÇÃO DE NOME DO PROJETO
                                             } else {
                                                 if ($read->idTipoReadequacao == 12) {
                                                     //Se for readequação de nome do projeto, insere o registo na tela de Checklist de Publicação.
                                                     $Projetos = new Projetos();
                                                     $dadosPrj = $Projetos->find(array('IdPRONAC=?' => $read->idPronac))->current();
                                                     $tbAprovacao = new Aprovacao();
                                                     $dadosAprovacao = array('IdPRONAC' => $read->idPronac, 'AnoProjeto' => $dadosPrj->AnoProjeto, 'Sequencial' => $dadosPrj->Sequencial, 'TipoAprovacao' => 8, 'DtAprovacao' => new Zend_Db_Expr('GETDATE()'), 'ResumoAprovacao' => 'Parecer favorável para readequação', 'Logon' => $this->idUsuario, 'idReadequacao' => $idReadequacao);
                                                     $idAprovacao = $tbAprovacao->inserir($dadosAprovacao);
                                                     // READEQUAÇÃO DE PERÍODO DE EXECUÇÃO
                                                 } else {
                                                     if ($read->idTipoReadequacao == 13) {
                                                         //Se for readequação de período de execução, atualiza os dados na SAC.dbo.Projetos.
                                                         $dtFimExecucao = Data::dataAmericana($read->dsSolicitacao);
                                                         $Projetos = new Projetos();
                                                         $dadosPrj = $Projetos->find(array('IdPRONAC=?' => $read->idPronac))->current();
                                                         $dadosPrj->DtFimExecucao = $dtFimExecucao;
                                                         $dadosPrj->save();
                                                         // READEQUAÇÃO DE PLANO DE DIVULGAÇÃO
                                                     } else {
                                                         if ($read->idTipoReadequacao == 14) {
                                                             //Se for readequação de plano de divulgacao, atualiza os dados na SAC.dbo.PlanoDeDivulgacao.
                                                             $PlanoDeDivulgacao = new PlanoDeDivulgacao();
                                                             $tbPlanoDivulgacao = new tbPlanoDivulgacao();
                                                             $planosDivulgacao = $tbPlanoDivulgacao->buscar(array('idReadequacao=?' => $idReadequacao));
                                                             foreach ($planosDivulgacao as $plano) {
                                                                 $Projetos = new Projetos();
                                                                 $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current();
                                                                 //Se não houve avalição do conselheiro, pega a avaliação técnica como referencia.
                                                                 $avaliacao = $plano->tpAnaliseComissao;
                                                                 if ($plano->tpAnaliseComissao == 'N') {
                                                                     $avaliacao = $plano->tpAnaliseTecnica;
                                                                 }
                                                                 //Se a avaliação foi deferida, realiza as mudanças necessárias na tabela original.
                                                                 if ($avaliacao == 'D') {
                                                                     if ($plano->tpSolicitacao == 'E') {
                                                                         //Se o plano de divulgação foi excluído, atualiza os status do plano na SAC.dbo.PlanoDeDivulgacao
                                                                         $PlanoDivulgacaoEmQuestao = $PlanoDeDivulgacao->buscar(array('idProjeto = ?' => $dadosPrj->idProjeto, 'idPeca = ?' => $plano->idPeca, 'idVeiculo = ?' => $plano->idVeiculo))->current();
                                                                         $tbLogomarca = new tbLogomarca();
                                                                         $dadosLogomarcaDaDivulgacao = $tbLogomarca->buscar(array('idPlanoDivulgacao = ?' => $PlanoDivulgacaoEmQuestao->idPlanoDivulgacao))->current();
                                                                         $dadosLogomarcaDaDivulgacao->delete();
                                                                         $PlanoDivulgacaoEmQuestao->delete();
                                                                     } else {
                                                                         if ($plano->tpSolicitacao == 'I') {
                                                                             //Se o plano de divulgação foi incluído, cria um novo registro na tabela SAC.dbo.PlanoDeDivulgacao
                                                                             $novoPlanoDivRead = array();
                                                                             $novoPlanoDivRead['idProjeto'] = $dadosPrj->idProjeto;
                                                                             $novoPlanoDivRead['idPeca'] = $plano->idPeca;
                                                                             $novoPlanoDivRead['idVeiculo'] = $plano->idVeiculo;
                                                                             $novoPlanoDivRead['Usuario'] = $this->idUsuario;
                                                                             $novoPlanoDivRead['siPlanoDeDivulgacao'] = 0;
                                                                             $novoPlanoDivRead['idDocumento'] = null;
                                                                             $novoPlanoDivRead['stPlanoDivulgacao'] = 1;
                                                                             $PlanoDeDivulgacao->inserir($novoPlanoDivRead);
                                                                         }
                                                                     }
                                                                 }
                                                             }
                                                             $dadosPDD = array();
                                                             $dadosPDD['stAtivo'] = 'N';
                                                             $wherePDD = "idPronac = {$read->idPronac} AND idReadequacao = {$idReadequacao}";
                                                             $tbPlanoDivulgacao->update($dadosPDD, $wherePDD);
                                                             // READEQUAÇÃO DE RESUMO DO PROJETO
                                                         } else {
                                                             if ($read->idTipoReadequacao == 15) {
                                                                 //Se for readequação de resumo do projeto, atualiza os dados na SAC.dbo.PreProjeto.
                                                                 $Projetos = new Projetos();
                                                                 $dadosPrj = $Projetos->find(array('IdPRONAC=?' => $read->idPronac))->current();
                                                                 $tbAprovacao = new Aprovacao();
                                                                 $dadosAprovacao = array('IdPRONAC' => $read->idPronac, 'AnoProjeto' => $dadosPrj->AnoProjeto, 'Sequencial' => $dadosPrj->Sequencial, 'TipoAprovacao' => 8, 'DtAprovacao' => new Zend_Db_Expr('GETDATE()'), 'ResumoAprovacao' => 'Parecer favorável para readequação', 'Logon' => $this->idUsuario, 'idReadequacao' => $idReadequacao);
                                                                 $idAprovacao = $tbAprovacao->inserir($dadosAprovacao);
                                                                 // READEQUAÇÃO DE OBJETIVOS
                                                             } else {
                                                                 if ($read->idTipoReadequacao == 16) {
                                                                     //Se for readequação de objetivos, atualiza os dados na SAC.dbo.PreProjeto.
                                                                     $Projetos = new Projetos();
                                                                     $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current();
                                                                     $PrePropojeto = new PreProjeto();
                                                                     $dadosPreProjeto = $PrePropojeto->find(array('idPreProjeto=?' => $dadosPrj->idProjeto))->current();
                                                                     $dadosPreProjeto->Objetivos = $read->dsSolicitacao;
                                                                     $dadosPreProjeto->save();
                                                                     // READEQUAÇÃO DE JUSTIFICATIVA
                                                                 } else {
                                                                     if ($read->idTipoReadequacao == 17) {
                                                                         //Se for readequação de justificativa, atualiza os dados na SAC.dbo.PreProjeto.
                                                                         $Projetos = new Projetos();
                                                                         $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current();
                                                                         $PrePropojeto = new PreProjeto();
                                                                         $dadosPreProjeto = $PrePropojeto->find(array('idPreProjeto=?' => $dadosPrj->idProjeto))->current();
                                                                         $dadosPreProjeto->Justificativa = $read->dsSolicitacao;
                                                                         $dadosPreProjeto->save();
                                                                         // READEQUAÇÃO DE ACESSIBILIDADE
                                                                     } else {
                                                                         if ($read->idTipoReadequacao == 18) {
                                                                             //Se for readequação de acesibilidade, atualiza os dados na SAC.dbo.PreProjeto.
                                                                             $Projetos = new Projetos();
                                                                             $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current();
                                                                             $PrePropojeto = new PreProjeto();
                                                                             $dadosPreProjeto = $PrePropojeto->find(array('idPreProjeto=?' => $dadosPrj->idProjeto))->current();
                                                                             $dadosPreProjeto->Acessibilidade = $read->dsSolicitacao;
                                                                             $dadosPreProjeto->save();
                                                                             // READEQUAÇÃO DE DEMOCRATIZAÇÃO DE ACESSO
                                                                         } else {
                                                                             if ($read->idTipoReadequacao == 19) {
                                                                                 //Se for readequação de democratização de acesso, atualiza os dados na SAC.dbo.PreProjeto.
                                                                                 $Projetos = new Projetos();
                                                                                 $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current();
                                                                                 $PrePropojeto = new PreProjeto();
                                                                                 $dadosPreProjeto = $PrePropojeto->find(array('idPreProjeto=?' => $dadosPrj->idProjeto))->current();
                                                                                 $dadosPreProjeto->DemocratizacaoDeAcesso = $read->dsSolicitacao;
                                                                                 $dadosPreProjeto->save();
                                                                                 // READEQUAÇÃO DE ETAPAS DE TRABALHO
                                                                             } else {
                                                                                 if ($read->idTipoReadequacao == 20) {
                                                                                     //Se for readequação de etapas de trabalho, atualiza os dados na SAC.dbo.PreProjeto.
                                                                                     $Projetos = new Projetos();
                                                                                     $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current();
                                                                                     $PrePropojeto = new PreProjeto();
                                                                                     $dadosPreProjeto = $PrePropojeto->find(array('idPreProjeto=?' => $dadosPrj->idProjeto))->current();
                                                                                     $dadosPreProjeto->EtapaDeTrabalho = $read->dsSolicitacao;
                                                                                     $dadosPreProjeto->save();
                                                                                     // READEQUAÇÃO DE FICHA TÉCNICA
                                                                                 } else {
                                                                                     if ($read->idTipoReadequacao == 21) {
                                                                                         //Se for readequação de ficha técnica, atualiza os dados na SAC.dbo.PreProjeto.
                                                                                         $Projetos = new Projetos();
                                                                                         $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current();
                                                                                         $PrePropojeto = new PreProjeto();
                                                                                         $dadosPreProjeto = $PrePropojeto->find(array('idPreProjeto=?' => $dadosPrj->idProjeto))->current();
                                                                                         $dadosPreProjeto->FichaTecnica = $read->dsSolicitacao;
                                                                                         $dadosPreProjeto->save();
                                                                                     }
                                                                                 }
                                                                             }
                                                                         }
                                                                     }
                                                                 }
                                                             }
                                                         }
                                                     }
                                                 }
                                             }
                                         }
                                     }
                                 }
                             }
                         }
                     }
                 }
             }
         }
     }
     //Atualiza a tabela tbReadequacao
     $dados = array();
     $dados['siEncaminhamento'] = 15;
     //Finalizam sem a necessidade de passar pela publicação no DOU.
     $dados['stEstado'] = 1;
     $tiposParaChecklist = array(2, 3, 10, 12, 15);
     if (in_array($read->idTipoReadequacao, $tiposParaChecklist)) {
         $dados['siEncaminhamento'] = 9;
         //Encaminhado pelo sistema para o Checklist de Publicação
         $dados['stEstado'] = 0;
     }
     $dados['idNrReuniao'] = $idNrReuniao;
     $where = "idReadequacao = {$idReadequacao}";
     $return = $tbReadequacao->update($dados, $where);
     //Atualiza a tabela tbDistribuirReadequacao
     $dados = array();
     $dados['stValidacaoCoordenador'] = 1;
     $dados['DtValidacaoCoordenador'] = new Zend_Db_Expr('GETDATE()');
     $dados['idCoordenador'] = $idCoordenador;
     $where = "idReadequacao = {$idReadequacao}";
     $tbDistribuirReadequacao = new tbDistribuirReadequacao();
     $return2 = $tbDistribuirReadequacao->update($dados, $where);
     if (!$return && !$return2) {
         parent::message("Não foi possível encaminhar a readequação para o Checklist de Publicação", "readequacoes/painel?tipoFiltro=analisados", "ERROR");
     }
     parent::message("Readequação encaminhada com sucesso!", "readequacoes/painel?tipoFiltro=analisados", "CONFIRM");
 }