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>";
     }
 }