コード例 #1
0
 public function indexAction()
 {
     $auth = Zend_Auth::getInstance();
     // pega a autenticação
     $Usuario = new Usuario();
     // objeto usuário
     $idagente = $Usuario->getIdUsuario($auth->getIdentity()->usu_codigo);
     $idagente = $idagente['idAgente'];
     // caso o formulário seja enviado via post
     // atualiza a planilha
     if ($this->getRequest()->isPost()) {
         // recebe os dados via post
         $post = Zend_Registry::get('post');
         $idPronac = $post->idPronac;
         $justificativa = $post->justificativa;
         $TipoAprovacao = $post->aprovacao;
         try {
             // valida os campos
             if (empty($justificativa) || $justificativa == "Digite a justificativa...") {
                 throw new Exception("Por favor, informe a justificativa!");
             } else {
                 if (strlen($justificativa) < 20) {
                     throw new Exception("A justificativa deve conter no m�nimo 20 caracteres!");
                 } else {
                     // verifica se já está na pauta
                     $projetos = new Projetos();
                     $reuniao = new Reuniao();
                     $diligencia = new Diligencia();
                     $idReuniao = $reuniao->buscarReuniaoAberta();
                     $idReuniao = $idReuniao['idNrReuniao'];
                     $dadosDiligencia = array('idPronac' => $idPronac, 'idTipoDiligencia' => 126, 'DtSolicitacao' => date('Y-m-d H:i:s'), 'Solicitacao' => TratarString::escapeString($justificativa), 'idSolicitante' => $idagente);
                     $gravarDiligiencia = $diligencia->inserirDiligencia($dadosDiligencia);
                     $dadosAltProjetos = array('Situacao' => 'C30');
                     $whereAltProjetos = "IdPRONAC = {$idPronac}";
                     $alterarSituacao = $projetos->alterar($dadosAltProjetos, $whereAltProjetos);
                     $this->_redirect('areadetrabalho/index');
                 }
             }
             // fecha else
         } catch (Exception $e) {
             parent::message($e->getMessage(), "diligenciarproponente/index", "ERROR");
         }
     } else {
         // recebe os dados via get
         $idpronac = $this->_request->getParam("idpronac");
         // dados via get
         try {
             // busca o pronac
             $pronac = ProjetoDAO::buscarPronac($idpronac);
             $buscarPronac = ProjetoDAO::buscar($pronac['pronac']);
             // valida��o
             if (empty($pronac)) {
                 throw new Exception("Por favor, clique no Pronac Aguardando An�lise!");
             } else {
                 $diligencia = new Diligencia();
                 $respostaDiligencia = $diligencia->buscar(array('idPronac = ?' => $idpronac));
                 //                                        xd($respostaDiligencia);
                 // manda os dados para a visão
                 //$this->view->buscar          = $buscar;
                 $this->view->pronac = $buscarPronac;
                 $this->view->idpronac = $idpronac;
                 $this->view->Respostas = $respostaDiligencia->count() > 0 ? $respostaDiligencia : false;
                 //-------------------------------------------------------------------------------------------------------------
                 $reuniao = new Reuniao();
                 $ConsultaReuniaoAberta = $reuniao->buscar(array("stEstado = ?" => 0));
                 if ($ConsultaReuniaoAberta->count() > 0) {
                     $ConsultaReuniaoAberta = $ConsultaReuniaoAberta->current()->toArray();
                     $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ão existe CNIC aberta no momento. Favor aguardar!", "principal/index", "ERROR");
                 }
             }
             // fecha else
         } catch (Exception $e) {
             parent::message($e->getMessage(), "diligenciarproponente/index", "ERROR");
         }
     }
     // fecha else
 }
コード例 #2
0
 /**
  * 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 finalizageralAction()
 {
     //idAcaoAvaliacaoItemPedidoAlteracao da Tabela BDCORPORATIVO.scSAC.tbAcaoAvaliacaoItemPedidoAlteracao
     $idAcao = $_GET['id'];
     //            $new = new tbProposta();
     //            $ss = $new->finalizarReadequacaoDeProposta('119720');
     //            xd($ss);
     //retorna o id do agente logado
     $idAgenteRemetente = $this->getIdUsuario;
     $idPerfilRemetente = $this->codGrupo;
     $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;
         //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;
         //ATUALIZA O CAMPO stVerificacao NA TABELA tbPedidoAlteracaoXTipoAlteracao
         $sqlfin4 = ReadequacaoProjetos::retornaSQLfinalizaGeral4($idPedidoAlt, $tpAlt);
         $dados = $db->fetchAll($sqlfin4);
         //CRIAR NOVO REGISTRO DE ENCAMINHAMENTO NA TABELA tbAcaoAvaliacaoItemPedidoAlteracao
         if (!isset($_GET['checklist'])) {
             $sqlfin5 = ReadequacaoProjetos::retornaSQLfinalizaGeral5($id, $idOrgao, $idAgenteRemetente, $idPerfilRemetente);
             $dados = $db->fetchAll($sqlfin5);
         }
         //BUSCA O IDPRONAC DA TABELA tbPedidoAlteracaoProjeto
         $sqlfin6 = ReadequacaoProjetos::retornaSQLfinalizaGeral6($idPedidoAlt);
         $dados = $db->fetchAll($sqlfin6);
         $idPronac = $dados[0]->IdPRONAC;
         //Verifica se possui item de custo NA TABELA tbPedidoAlteracaoXTipoAlteracao
         if ($tpAlt == 7) {
             $sqlfin7 = ReadequacaoProjetos::retornaSQLfinalizaGeral7($idPedidoAlt);
             $itens = $db->fetchAll($sqlfin7);
             if (count($itens) == 2) {
                 $tpAlt = 10;
             }
         }
         $auth = Zend_Auth::getInstance();
         // pega a autenticação
         $agente = GerenciarPautaReuniaoDAO::consultaAgenteUsuario($auth->getIdentity()->usu_codigo);
         $idagente = $agente['idAgente'];
         if ($stAvaliacaoItem == 'AP') {
             if ($tpAlt == 1 && isset($_GET['checklist'])) {
                 //NOME DO PROPONENTE
                 $NomeProponenteSolicitado = PedidoAlteracaoDAO::buscarAlteracaoNomeProponente($idPronac);
                 $proponente = new Interessado();
                 $dados = array('Nome' => mb_convert_case(strtolower($NomeProponenteSolicitado['proponente']), MB_CASE_TITLE, "ISO-8859-1"));
                 $proponente->alterar($dados, array('CgcCpf = ?' => $NomeProponenteSolicitado['CgcCpf']));
             } else {
                 if ($tpAlt == 2 && isset($_GET['checklist'])) {
                     //TROCA DE PROPONENTE
                     $trocaProponenteAtual = VerificarAlteracaoProjetoDAO::BuscarDadosGenericos($idPronac);
                     $NomeAtual = $trocaProponenteAtual['proponente'];
                     $CpfCnpjAtual = $trocaProponenteAtual['CgcCpf'];
                     $idNome = $trocaProponenteAtual['idNome'];
                     $trocaProponenteSolicitada = PedidoAlteracaoDAO::buscarAlteracaoRazaoSocial($idPronac);
                     $NomeSolicitado = $trocaProponenteSolicitada['nmRazaoSocial'];
                     $CpfCnpjSolicitado = $trocaProponenteSolicitada['CgcCpf'];
                     // altera o cpf do proponente
                     $_Projetos = new Projetos();
                     $_alterarProponente = $_Projetos->alterar(array('CgcCpf' => $CpfCnpjSolicitado), array('IdPRONAC = ?' => $idPronac));
                     // altera o nome do proponente
                     $_Nomes = new Nomes();
                     $_alterarNome = $_Nomes->alterar(array('Descricao' => $NomeSolicitado), array('idNome = ?' => $idNome));
                     $proponente = new Interessado();
                     $dados = array('Nome' => mb_convert_case(strtolower($NomeSolicitado), MB_CASE_TITLE, "ISO-8859-1"));
                     $proponente->alterar($dados, array('CgcCpf = ?' => $CpfCnpjSolicitado));
                     /**
                      * ==============================================================
                      * INICIO DA ATUALIZACAO DO VINCULO DO PROPONENTE
                      * ==============================================================
                      */
                     $Projetos = new Projetos();
                     $Agentes = new Agentes();
                     $Visao = new Visao();
                     $tbVinculo = new TbVinculo();
                     $tbVinculoProposta = new tbVinculoProposta();
                     /* ========== BUSCA OS DADOS DO PROPONENTE ANTIGO ========== */
                     $buscarCpfProponenteAntigo = $Projetos->buscar(array('IdPRONAC = ?' => $idPronac));
                     $cpfProponenteAntigo = count($buscarCpfProponenteAntigo) > 0 ? $buscarCpfProponenteAntigo[0]->CgcCpf : 0;
                     $buscarIdProponenteAntigo = $Agentes->buscar(array('CNPJCPF = ?' => $cpfProponenteAntigo));
                     $idProponenteAntigo = count($buscarIdProponenteAntigo) > 0 ? $buscarIdProponenteAntigo[0]->idAgente : 0;
                     $idPreProjetoVinculo = count($buscarCpfProponenteAntigo) > 0 ? $buscarCpfProponenteAntigo[0]->idProjeto : 0;
                     /* ========== BUSCA OS DADOS DO NOVO PROPONENTE ========== */
                     $buscarNovoProponente = $Agentes->buscar(array('CNPJCPF = ?' => $CpfCnpjSolicitado));
                     $idNovoProponente = count($buscarNovoProponente) > 0 ? $buscarNovoProponente[0]->idAgente : 0;
                     $buscarVisao = $Visao->buscar(array('Visao = ?' => 144, 'idAgente = ?' => $idNovoProponente));
                     /* ========== BUSCA OS DADOS DA PROPOSTA VINCULADA ========== */
                     $idVinculo = $tbVinculoProposta->buscar(array('idPreProjeto = ?' => $idPreProjetoVinculo));
                     /* ========== ATUALIZA O VINCULO DO PROPONENTE ========== */
                     if (count($buscarVisao) > 0 && count($idVinculo) > 0) {
                         $whereVinculo = array('idVinculo = ?' => $idVinculo[0]->idVinculo);
                         $dadosVinculo = array('idAgenteProponente' => $idNovoProponente, 'dtVinculo' => new Zend_Db_Expr('GETDATE()'));
                         $tbVinculo->alterar($dadosVinculo, $whereVinculo);
                     } else {
                         parent::message("O usuário informado não é Proponente ou o Projeto não está vinculado a uma Proposta!", "verificarreadequacaodeprojeto/verificarreadequacaodeprojetocoordacompanhamento", "ERROR");
                     }
                     /**
                      * ==============================================================
                      * FIM DA ATUALIZACAO DO VINCULO DO PROPONENTE
                      * ==============================================================
                      */
                 } else {
                     if ($tpAlt == 3) {
                         //FICHA TÉCNICA
                         $fichatecAtual = FichaTecnicaDAO::buscarFichaTecnicaFinal($idPronac, $idPedidoAlt);
                         $Atual = $fichatecAtual[0]->FichaTecnica;
                         $idPreProjeto = $fichatecAtual[0]->idPreProjeto;
                         $fichatecSolicitada = PedidoAlteracaoDAO::buscarAlteracaoFichaTecnicaFinal($idPronac, $idPedidoAlt);
                         $Solicitada = $fichatecSolicitada[0]['dsFichaTecnica'];
                         $avaliacao = ReadequacaoProjetos::finalizacaoCoordAcomp("SAC.dbo.PreProjeto", "FichaTecnica", $Solicitada, "idPreProjeto", $idPreProjeto);
                         $result = $db->fetchAll($avaliacao);
                     } else {
                         if ($tpAlt == 4) {
                             //LOCAL DE REALIZAÇÃO
                             $local = ProjetoDAO::buscarPronac($idPronac);
                             $idProjeto = $local['idProjeto'];
                             $dadosTbAbran = tbAbrangenciaDAO::buscarDadosTbAbrangencia(null, $id);
                             foreach ($dadosTbAbran as $x) {
                                 if (trim($x->tpAcao) == 'I') {
                                     $dados = array('idProjeto' => $idProjeto, 'idPais' => $x->idPais, 'idUF' => $x->idUF, 'idMunicipioIBGE' => $x->idMunicipioIBGE, 'Usuario' => $idagente, 'stAbrangencia' => '1');
                                     //if (count(AbrangenciaDAO::verificarLocalRealizacao($idProjeto, $x->idMunicipioIBGE)) <= 0) :
                                     $local = AbrangenciaDAO::cadastrar($dados);
                                     //endif;
                                     //print_r($local);
                                 } else {
                                     if (trim($x->tpAcao) == 'E') {
                                         // altera o status dos locais excluídos
                                         $Abrangencia = new Abrangencia();
                                         $Abrangencia->update(array('stAbrangencia' => 0), array('idAbrangencia = ?' => $x->idAbrangenciaAntiga));
                                         //$_local = AbrangenciaDAO::buscarAbrangenciasAtuais($idProjeto, $x->idPais, $x->idUF, $x->idMunicipioIBGE);
                                         //$__local = AbrangenciaDAO::excluir($_local[0]->idAbrangencia);
                                     }
                                 }
                             }
                         } else {
                             if ($tpAlt == 5 && isset($_GET['checklist'])) {
                                 //NOME DO PROJETO
                                 $Projetos = new Projetos();
                                 $DadosAlteracaoNomeProjeto = PedidoAlteracaoDAO::buscarAlteracaoNomeProjeto($idPronac);
                                 $dados = array('NomeProjeto' => $DadosAlteracaoNomeProjeto['nmProjeto']);
                                 $Projetos->alterar($dados, array('IdPRONAC = ?' => $idPronac));
                             } else {
                                 if ($tpAlt == 6) {
                                     //PROPOSTA PEDAGÓGICA
                                     $sqlproposta = ReadequacaoProjetos::retornaSQLproposta("sqlpropostafinalizar", $idPronac);
                                     $dadosSolicitado = $db->fetchAll($sqlproposta);
                                     $Projeto = new Projetos();
                                     $DadosProj = $Projeto->buscar(array('IdPRONAC = ?' => $idPronac));
                                     if (count($DadosProj) > 0 && !empty($DadosProj[0]->idProjeto)) {
                                         $PreProjeto = new PreProjeto();
                                         $dados = array('EstrategiadeExecucao' => $dadosSolicitado[0]['dsEstrategiaExecucao'], 'EspecificacaoTecnica' => $dadosSolicitado[0]['dsEspecificacaoSolicitacao']);
                                         PreProjeto::alterarDados($dados, array('idPreProjeto = ?' => $DadosProj[0]->idProjeto));
                                     }
                                 } else {
                                     if ($tpAlt == 7) {
                                         $tbPlanoDistribuicao = new tbPlanoDistribuicao();
                                         $produtosAnalisadosDeferidos = $tbPlanoDistribuicao->produtosAvaliadosReadequacao($idPedidoAlt, $id);
                                         foreach ($produtosAnalisadosDeferidos as $valores) {
                                             $Projeto = new Projetos();
                                             $DadosProj = $Projeto->buscar(array('IdPRONAC = ?' => $idPronac));
                                             $dadosProduto = array('idPlanoDistribuicao' => $valores->idPlanoDistribuicao, 'idProjeto' => $DadosProj[0]->idProjeto, 'idProduto' => $valores->idProduto, 'Area' => $valores->cdArea, 'Segmento' => $valores->cdSegmento, 'idPosicaoDaLogo' => $valores->idPosicaoLogo, 'QtdeProduzida' => $valores->qtProduzida, 'QtdePatrocinador' => $valores->qtPatrocinador, 'QtdeProponente' => NULL, 'QtdeOutros' => $valores->qtOutros, 'QtdeVendaNormal' => $valores->qtVendaNormal, 'QtdeVendaPromocional' => $valores->qtVendaPromocional, 'PrecoUnitarioNormal' => $valores->vlUnitarioNormal, 'PrecoUnitarioPromocional' => $valores->vlUnitarioPromocional, 'stPrincipal' => $valores->stPrincipal, 'stPlanoDistribuicaoProduto' => 1);
                                             //ALTERA OU INSERE O PLANO DE DISTRIBUICAO
                                             $PlanoDistribuicao = new PlanoDistribuicao();
                                             $x = $PlanoDistribuicao->salvar($dadosProduto);
                                         }
                                     } else {
                                         if ($tpAlt == 8 && isset($_GET['checklist'])) {
                                             //PRORROGACAO DE PRAZOS - CAPTACAO
                                             $datas = PedidoAlteracaoDAO::buscarAlteracaoPrazoCaptacao($idPronac);
                                             $Projeto = new Projetos();
                                             $DadosProj = $Projeto->buscar(array('IdPRONAC = ?' => $idPronac));
                                             $Aprovacao = new Aprovacao();
                                             $registro = $Aprovacao->buscar(array('AnoProjeto = ?' => $DadosProj[0]->AnoProjeto, 'Sequencial = ?' => $DadosProj[0]->Sequencial));
                                             $dados = array('IdPRONAC' => $idPronac, 'AnoProjeto' => $DadosProj[0]->AnoProjeto, 'Sequencial' => $DadosProj[0]->Sequencial, 'TipoAprovacao' => 3, 'DtAprovacao' => new Zend_Db_Expr('GETDATE()'), 'DtInicioCaptacao' => $datas['dtInicioNovoPrazo'], 'DtFimCaptacao' => $datas['dtFimNovoPrazo'], 'Logon' => $idagente);
                                             $Aprovacao->inserir($dados);
                                         } else {
                                             if ($tpAlt == 9 && isset($_GET['checklist'])) {
                                                 //PRORROGACAO DE PRAZOS - EXECUCAO
                                                 $datas = PedidoAlteracaoDAO::buscarAlteracaoPrazoExecucao($idPronac);
                                                 $projetos = new Projetos();
                                                 $dados = array('DtInicioExecucao' => $datas['dtInicioNovoPrazo'], 'DtFimExecucao' => $datas['dtFimNovoPrazo']);
                                                 $projetos->alterar($dados, array('IdPRONAC = ?' => $idPronac));
                                             } else {
                                                 if ($tpAlt == 10) {
                                                     $tbPlanoDistribuicao = new tbPlanoDistribuicao();
                                                     $produtosAnalisadosDeferidos = $tbPlanoDistribuicao->produtosAvaliadosReadequacao($idPedidoAlt, $id);
                                                     foreach ($produtosAnalisadosDeferidos as $valores) {
                                                         $Projeto = new Projetos();
                                                         $DadosProj = $Projeto->buscar(array('IdPRONAC = ?' => $idPronac));
                                                         $dadosProduto = array('idPlanoDistribuicao' => $valores->idPlanoDistribuicao, 'idProjeto' => $DadosProj[0]->idProjeto, 'idProduto' => $valores->idProduto, 'Area' => $valores->cdArea, 'Segmento' => $valores->cdSegmento, 'idPosicaoDaLogo' => $valores->idPosicaoLogo, 'QtdeProduzida' => $valores->qtProduzida, 'QtdePatrocinador' => $valores->qtPatrocinador, 'QtdeProponente' => NULL, 'QtdeOutros' => $valores->qtOutros, 'QtdeVendaNormal' => $valores->qtVendaNormal, 'QtdeVendaPromocional' => $valores->qtVendaPromocional, 'PrecoUnitarioNormal' => $valores->vlUnitarioNormal, 'PrecoUnitarioPromocional' => $valores->vlUnitarioPromocional, 'stPrincipal' => $valores->stPrincipal, 'stPlanoDistribuicaoProduto' => 1);
                                                         //ALTERA OU INSERE O PLANO DE DISTRIBUICAO
                                                         $PlanoDistribuicao = new PlanoDistribuicao();
                                                         $x = $PlanoDistribuicao->salvar($dadosProduto);
                                                     }
                                                     // PRODUTO + ITEN DE CUSTO
                                                     $planilhaProposta = new PlanilhaProposta();
                                                     $planilhaProjeto = new PlanilhaProjeto();
                                                     $DeParaPlanilhaAprovacao = new DeParaPlanilhaAprovacao();
                                                     $Projetos = new Projetos();
                                                     $planilha = new PlanilhaAprovacao();
                                                     $PlanilhasSolicitadas = $planilha->buscar(array('IdPRONAC = ?' => $idPronac, 'tpPlanilha = ?' => 'PA'));
                                                     $buscarProjeto = $Projetos->buscar(array('IdPRONAC = ?' => $idPronac));
                                                     foreach ($PlanilhasSolicitadas as $dadosP) {
                                                         if (!empty($dadosP->idPedidoAlteracao)) {
                                                             // busca a ação a ser executada conforme solicitação de readequação
                                                             //$_idPlanilhaProjeto      = empty($dadosP->idPlanilhaProjeto) ? ('idPlanilhaProjeto ? ' => new Zend_Db_Expr('IS NULL')) : ('idPlanilhaProjeto = ? ' => $dadosP->idPlanilhaProjeto);
                                                             //$_idPlanilhaProposta     = empty($dadosP->idPlanilhaProposta) ? ('idPlanilhaProposta ? ' => new Zend_Db_Expr('IS NULL')) : ('idPlanilhaProposta = ? ' => $dadosP->idPlanilhaProposta);
                                                             //$_idPlanilhaAprovacaoPai = empty($dadosP->idPlanilhaAprovacaoPai) ? ('idPlanilhaAprovacaoPai ? ' => new Zend_Db_Expr('IS NULL')) : ('idPlanilhaAprovacaoPai = ? ' => $dadosP->idPlanilhaAprovacaoPai);
                                                             $_dados = array('IdPRONAC = ?' => $idPronac, 'tpPlanilha = ?' => 'SR', 'IdPRONAC = ?' => $idPronac, 'idPedidoAlteracao = ? ' => $dadosP->idPedidoAlteracao);
                                                             $buscarTpAcaoSR = $planilha->buscar($_dados);
                                                             if (count($buscarTpAcaoSR) > 0 && !empty($buscarProjeto[0]->idProjeto)) {
                                                                 // EXCLUSÃO
                                                                 if ($buscarTpAcaoSR[0]->tpAcao == 'E') {
                                                                     // planilha antiga
                                                                     $idProjeto = $buscarProjeto[0]->idProjeto;
                                                                     $dadosAprovados = $planilhaProposta->buscar(array('idProjeto = ?' => $idProjeto, 'idProduto = ?' => $dadosP->idProduto, 'idEtapa = ?' => $dadosP->idEtapa, 'idPlanilhaItem = ?' => $dadosP->idPlanilhaItem));
                                                                     foreach ($dadosAprovados as $dadosExculsao) {
                                                                         $buscarDeParaPlanilhaAprovacao = $DeParaPlanilhaAprovacao->buscarPlanilhaProposta($dadosExculsao->idPlanilhaProposta);
                                                                         foreach ($buscarDeParaPlanilhaAprovacao as $b) {
                                                                             $DeParaPlanilhaAprovacao->delete(array('idPlanilhaAprovacao = ?' => $b->idPlanilhaAprovacao));
                                                                         }
                                                                         $planilha->delete(array('idPlanilhaProposta = ?' => $dadosExculsao->idPlanilhaProposta));
                                                                         $planilhaProjeto->delete(array('idPlanilhaProposta = ?' => $dadosExculsao->idPlanilhaProposta));
                                                                         $planilhaProposta->delete(array('idPlanilhaProposta = ?' => $dadosExculsao->idPlanilhaProposta));
                                                                     }
                                                                     // ALTERAÇÃO
                                                                 } elseif ($buscarTpAcaoSR[0]->tpAcao == 'A') {
                                                                     // planilha antiga
                                                                     $idProjeto = $buscarProjeto[0]->idProjeto;
                                                                     $dadosAprovados = $planilhaProposta->buscar(array('idProjeto = ?' => $idProjeto, 'idProduto = ?' => $dadosP->idProduto, 'idEtapa = ?' => $dadosP->idEtapa, 'idPlanilhaItem = ?' => $dadosP->idPlanilhaItem));
                                                                     foreach ($dadosAprovados as $dadosAlteracao) {
                                                                         $where = array('idPlanilhaProposta = ?' => $dadosAlteracao->idPlanilhaProposta);
                                                                         $dados = array('idProduto' => $dadosP->idProduto, 'idEtapa' => $dadosP->idEtapa, 'idPlanilhaItem' => $dadosP->idPlanilhaItem, 'Descricao' => $dadosP->dsItem, 'Unidade' => $dadosP->idUnidade, 'Quantidade' => $dadosP->qtItem, 'Ocorrencia' => $dadosP->nrOcorrencia, 'ValorUnitario' => $dadosP->vlUnitario, 'QtdeDias' => $dadosP->qtDias, 'TipoDespesa' => $dadosP->tpDespesa, 'TipoPessoa' => $dadosP->tpPessoa, 'Contrapartida' => $dadosP->nrContraPartida, 'FonteRecurso' => $dadosP->nrFonteRecurso, 'UfDespesa' => $dadosP->idUFDespesa, 'MunicipioDespesa' => $dadosP->idMunicipioDespesa, 'idUsuario' => $dadosP->idAgente, 'dsJustificativa' => $dadosP->dsJustificativa);
                                                                         $planilhaProposta->alterar($dados, $where);
                                                                     }
                                                                     $planilha->update(array('tpPlanilha' => 'CO', 'stAtivo' => 'N'), array('idPlanilhaAprovacao = ? ' => $dadosP->idPlanilhaAprovacao));
                                                                     $planilha->update(array('tpPlanilha' => 'CO', 'stAtivo' => 'N'), array('idPlanilhaAprovacao = ? ' => $buscarTpAcaoSR[0]->idPlanilhaAprovacao));
                                                                     // INCLUSÃO
                                                                 } elseif ($buscarTpAcaoSR[0]->tpAcao == 'I') {
                                                                     // planilha antiga
                                                                     $ReplicaDados = array('idProjeto' => $buscarProjeto[0]->idProjeto, 'idProduto' => $dadosP->idProduto, 'idEtapa' => $dadosP->idEtapa, 'idPlanilhaItem' => $dadosP->idPlanilhaItem, 'Descricao' => $dadosP->dsItem, 'Unidade' => $dadosP->idUnidade, 'Quantidade' => $dadosP->qtItem, 'Ocorrencia' => $dadosP->nrOcorrencia, 'ValorUnitario' => $dadosP->vlUnitario, 'QtdeDias' => $dadosP->qtDias, 'TipoDespesa' => $dadosP->tpDespesa, 'TipoPessoa' => $dadosP->tpPessoa, 'Contrapartida' => $dadosP->nrContraPartida, 'FonteRecurso' => $dadosP->nrFonteRecurso, 'UfDespesa' => $dadosP->idUFDespesa, 'MunicipioDespesa' => $dadosP->idMunicipioDespesa, 'idUsuario' => $dadosP->idAgente, 'dsJustificativa' => $dadosP->dsJustificativa);
                                                                     $planilhaProposta->inserir($ReplicaDados);
                                                                     $planilha->update(array('tpPlanilha' => 'CO', 'stAtivo' => 'N'), array('idPlanilhaAprovacao = ? ' => $dadosP->idPlanilhaAprovacao));
                                                                     $planilha->update(array('tpPlanilha' => 'CO', 'stAtivo' => 'N'), array('idPlanilhaAprovacao = ? ' => $buscarTpAcaoSR[0]->idPlanilhaAprovacao));
                                                                 }
                                                             }
                                                         }
                                                         // fecha if
                                                     }
                                                 }
                                             }
                                         }
                                     }
                                 }
                             }
                         }
                     }
                 }
             }
         }
         $db->commit();
         //CASO SEJA O ÚLTIMO ITEM DO PEDIDO DE ALTERAÇÃO, FINALIZA O STATUS DA MESMA
         $tbPedidoAlteracaoXTipoAlteracao = new tbPedidoAlteracaoXTipoAlteracao();
         $verificarPedidosAtivos = $tbPedidoAlteracaoXTipoAlteracao->buscar(array('idPedidoAlteracao = ?' => $idPedidoAlt, 'stVerificacao <> ?' => 4));
         $arrBusca = array();
         $arrBusca['p.siVerificacao IN (?)'] = array('1');
         $arrBusca['p.IdPRONAC = ?'] = $idPronac;
         $arrBusca['x.tpAlteracaoProjeto IN (?)'] = array('1', '2', '5', '7', '8', '9', '10');
         $arrBusca['a.stAvaliacaoItemPedidoAlteracao IN (?)'] = array('AP');
         $arrBusca['c.stVerificacao NOT IN (?)'] = array('4');
         $buscaChecklist = $tbPedidoAlteracaoXTipoAlteracao->buscarPedidoChecklist($arrBusca);
         if (count($verificarPedidosAtivos) == 0 && count($buscaChecklist) == 0) {
             $tbPedidoAlteracaoProjeto = new tbPedidoAlteracaoProjeto();
             $tbPedidoAlteracaoProjeto->alterar(array('siVerificacao' => 2), array('idPedidoAlteracao = ?' => $idPedidoAlt));
         }
         if (isset($_GET['checklist'])) {
             parent::message("Portaria publicada com sucesso!", "publicacaodou/index", "CONFIRM");
         } else {
             parent::message("Projeto finalizado com sucesso!", "verificarreadequacaodeprojeto/verificarreadequacaodeprojetocoordacompanhamento", "CONFIRM");
         }
     } catch (Zend_Exception $e) {
         $db->rollBack();
         parent::message("Erro na devolução da solicitação", "verificarreadequacaodeprojeto/verificarreadequacaodeprojetocoordacompanhamento", "ERROR");
     }
 }
コード例 #4
0
 public function diligenciaAction()
 {
     $this->view->idpronac = $this->_request->getParam('idpronac');
     $Usuario = new Usuario();
     // objeto usuário
     $auth = Zend_Auth::getInstance();
     // pega a autenticação
     $d = new tbDiligencia();
     $p = new Projetos();
     if (isset($_POST['idpronac'])) {
         $db = Zend_Db_Table::getDefaultAdapter();
         $db->beginTransaction();
         try {
             $dados = array('idPronac' => $_POST['idpronac'], 'idTipoDiligencia' => 174, 'DtSolicitacao' => date('Y-m-d H:i:s'), 'Solicitacao' => $_POST['justificativa'], 'idSolicitante' => $auth->getIdentity()->usu_codigo, 'stEnviado' => 'S');
             $d->inserir($dados);
             $where = "IdPRONAC = " . $_POST['idpronac'];
             $dadosalterar = array('Situacao' => 'E61');
             $p->alterar($dadosalterar, $where);
             $db->commit();
             echo "<script>history.go(-1);</script>";
         } catch (Zend_Exception $e) {
             $db->rollBack();
             echo $e->getMessage();
         }
     }
 }
コード例 #5
0
 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>";
     }
 }
コード例 #6
0
 public function gerarportariaAction()
 {
     ini_set('memory_limit', '-1');
     //        $this->_helper->layout->disableLayout(); // desabilita o Zend_Layout
     $ap = new Aprovacao();
     $pr = new Projetos();
     if ($this->getRequest()->isPost()) {
         // recebe os dados via post
         $post = Zend_Registry::get('post');
         $id = $post->idAprovacao;
         $dia = (int) date("d");
         $mes = (int) date("m");
         $ano = date("Y");
         $ano2Digitos = date("y");
         $semana = date("w");
         $dias = 86400;
         $datas = array();
         $datas['pascoa'] = easter_date($ano);
         $datas['sexta_santa'] = $datas['pascoa'] - 2 * $dias;
         $datas['carnaval'] = $datas['pascoa'] - 47 * $dias;
         $datas['corpus_cristi'] = $datas['pascoa'] + 60 * $dias;
         $feriados = array('Ano Novo' => date('Y') . '-01-01', 'Carnaval' => date('Y-m-d', $datas['carnaval']), 'Sexta-Feira Santa' => date('Y-m-d', $datas['sexta_santa']), 'Pascoa' => date('Y-m-d', $datas['pascoa']), 'Tiradentes' => date('Y') . '-04-21', 'Dia do Trabalhador' => date('Y') . '-05-01', 'Corpus Cristi' => date('Y-m-d', $datas['corpus_cristi']), 'Dia da Independencia' => date('Y') . '-09-07', 'Nossa Senhora de Aparecida' => date('Y') . '-10-12', 'Dia de Finados' => date('Y') . '-11-02', 'Proclamacao da Republica' => date('Y') . '-11-15', 'Natal' => date('Y') . '-12-25');
         $DtPortariaAprovacao = date("Y-m-d H:i:s");
         if ($semana == 5) {
             // sexta
             // feriado na segunda
             if (in_array(strftime("%Y-%m-%d", strtotime("+3 days")), $feriados)) {
                 $DtPublicacaoAprovacao = strftime("%Y-%m-%d %H:%M:%S", strtotime("+4 days"));
             } else {
                 $DtPublicacaoAprovacao = strftime("%Y-%m-%d %H:%M:%S", strtotime("+3 days"));
             }
         } else {
             // feriado na sexta (supondo que hoje � quinta)
             if (in_array(strftime("%Y-%m-%d", strtotime("+1 days")), $feriados) && !in_array(strftime("%Y-%m-%d", strtotime("+4 days")), $feriados)) {
                 $DtPublicacaoAprovacao = strftime("%Y-%m-%d %H:%M:%S", strtotime("+4 days"));
             } else {
                 if (in_array(strftime("%Y-%m-%d", strtotime("+1 days")), $feriados) && in_array(strftime("%Y-%m-%d", strtotime("+4 days")), $feriados)) {
                     $DtPublicacaoAprovacao = strftime("%Y-%m-%d %H:%M:%S", strtotime("+5 days"));
                 } else {
                     $DtPublicacaoAprovacao = strftime("%Y-%m-%d %H:%M:%S", strtotime("+1 days"));
                 }
             }
         }
         try {
             // manda todos os pronac para publicacao (alteracao)
             foreach ($id as $idaprovacao) {
                 //busca o idPronac do projeto
                 $buscaridpronac = $ap->buscar(array('idAprovacao = ?' => $idaprovacao))->current();
                 //busca a data final de execução do projeto em questão
                 $resultado = $pr->buscar(array('IdPRONAC = ?' => $buscaridpronac->IdPRONAC))->current();
                 $dtFimCaptacao = $resultado->DtFimExecucao;
                 //É isso mesmo que vc vê. A data fim captação vai receber o mesmo valor da fim de execução.
                 $dtFimExecucao = $resultado->DtFimExecucao;
                 $dtInicioExecucao = $resultado->DtInicioExecucao;
                 //se a data final de execução estiver em branco (projetos antigos) o sistema considera o 31/12/ano em questão
                 if ($resultado->DtFimExecucao == '' || empty($resultado->DtFimExecucao)) {
                     $dtFimCaptacao = date("Y", strtotime($DtPublicacaoAprovacao)) . '-12-31 ' . date("H:i:s");
                 } else {
                     //se o ano da data final de execução for maior do que o ano em questão, o fim de captação vai até 31/12/ano em questão
                     if (date("Y", strtotime($dtFimCaptacao)) > date("Y", strtotime($DtPublicacaoAprovacao))) {
                         $dtFimCaptacao = date("Y", strtotime($DtPublicacaoAprovacao)) . '-12-31 ' . date("H:i:s");
                     }
                 }
                 // dados para realizar a publicacao
                 $dadosPortaria = array('PortariaAprovacao' => $post->nrPortaria . '/' . date('y'), 'DtPortariaAprovacao' => $DtPortariaAprovacao, 'DtPublicacaoAprovacao' => $DtPublicacaoAprovacao, 'DtInicioCaptacao' => $DtPublicacaoAprovacao, 'DtFimCaptacao' => $dtFimCaptacao);
                 if ($post->tipoPublicacao == 'prorrogacao') {
                     $pronac = $resultado->AnoProjeto . $resultado->Sequencial;
                     $datas = $ap->buscarDatasCaptacao($pronac, $buscaridpronac->idProrrogacao);
                     $dadosPortaria['DtInicioCaptacao'] = $datas[0]->DtInicio;
                     $dadosPortaria['DtFimCaptacao'] = $datas[0]->DtFinal;
                     if (strtotime($dtFimExecucao) < strtotime($datas[0]->DtFinal)) {
                         $dtFimExecucao = $datas[0]->DtFinal;
                     }
                 }
                 $where = 'idAprovacao = ' . $idaprovacao;
                 $portariagerar = $ap->alterar($dadosPortaria, $where);
                 if ($portariagerar) {
                     $dadosSituacao = array('dtSituacao' => date('Y-m-d'), 'DtFimExecucao' => $dtFimExecucao);
                     if ($post->tipoPublicacao == 'prorrogacao' && (empty($dtInicioExecucao) || $dtInicioExecucao == '')) {
                         $dadosSituacao['DtInicioExecucao'] = $datas[0]->DtInicio;
                     }
                     if (isset($post->tipoPublicacao)) {
                         switch ($post->tipoPublicacao) {
                             case '':
                                 $dadosSituacao['Situacao'] = 'D09';
                                 $dadosSituacao['ProvidenciaTomada'] = 'Portaria de aprovação inicial encaminhada à Imprensa Nacional para publicação no Diário Oficial da União.';
                                 break;
                             case 'complementacao':
                                 $dadosSituacao['Situacao'] = 'D16';
                                 $dadosSituacao['ProvidenciaTomada'] = 'Portaria de complementação encaminhada à Imprensa Nacional para publicação no Diário Oficial da União.';
                                 break;
                             case 'prorrogacao':
                                 $dadosSituacao['Situacao'] = 'D17';
                                 $dadosSituacao['ProvidenciaTomada'] = 'Portaria de prorrogação encaminhada à Imprensa Nacional para publicação no Diário Oficial da União.';
                                 break;
                             case 'reducao':
                                 $dadosSituacao['Situacao'] = 'D23';
                                 $dadosSituacao['ProvidenciaTomada'] = 'Portaria de redução encaminhada à Imprensa Nacional para publicação no Diário Oficial da União.';
                                 break;
                             case 'aprovacaoPrestacao':
                                 $dadosSituacao['Situacao'] = 'D42';
                                 $dadosSituacao['ProvidenciaTomada'] = 'Portaria de Prestação de Contas encaminhada à Imprensa Nacional para publicação no Diário Oficial da União.';
                                 break;
                             case 'reprovacaoPrestacao':
                                 $dadosSituacao['Situacao'] = 'D43';
                                 $dadosSituacao['ProvidenciaTomada'] = 'Portaria de Prestação de Contas encaminhada à Imprensa Nacional para publicação no Diário Oficial da União.';
                                 break;
                         }
                     } else {
                         $dadosSituacao['Situacao'] = 'D09';
                         $dadosSituacao['ProvidenciaTomada'] = 'Portaria de aprovação inicial encaminhada à Imprensa Nacional para publicação no Diário Oficial da União.';
                     }
                     $where = 'IdPRONAC = ' . $buscaridpronac->IdPRONAC;
                     $pr->alterar($dadosSituacao, $where);
                 }
                 // fecha if
             }
             // fecha foreach
             if ($post->nome == 1) {
                 //Ana Cristina da Cunha Wanzeler
                 $textoPortaria = '426 de 28 de maio de 2014 e o art. 4&ordm; da Portaria n&ordm; 120, de 30 de mar&ccedil;o de 2010';
                 $nm = 'Ivan Domingues das Neves';
             } else {
                 if ($post->nome == 2) {
                     //João Batista da Silva
                     $textoPortaria = '805 de 09 de outubro de 2013, e em cumprimento ao disposto na Lei 8.313, de 23 de dezembro de 1991, Decreto nº 5.761, de 27 de abril de 2006, Medida Provisória nº 2.228-1, de 06 de setembro de 2001, alterada pela Lei nº 10.454 de 13 de maio de 2002';
                     $nm = 'João Batista da Silva';
                 } else {
                     if ($post->nome == 3) {
                         //Kleber da Silva Rocha
                         $textoPortaria = '909 de 19 de novembro de 2013 e o art. 4&ordm; da Portaria n&ordm; 120, de 30 de Mar&ccedil;o de 2010';
                         $nm = 'Kleber da Silva Rocha';
                     } else {
                         if ($post->nome == 4) {
                             //Mário Henrique Costa Borgneth
                             $textoPortaria = '846 de 07 de novembro de 2013, e em cumprimento ao disposto na Lei 8.313, de 23 de dezembro de 1991, Decreto nº 5.761, de 27 de abril de 2006, Medida Provisória nº 2.228-1, de 06 de setembro de 2001, alterada pela Lei nº 10.454 de 13 de maio de 2002';
                             $nm = 'Mário Henrique Costa Borgneth';
                         } else {
                             $textoPortaria = '17 de 12 de janeiro de 2010 e o art. 4&ordm; da Portaria n&ordm; 120, de 30 de Mar&ccedil;o de 2010';
                             $nm = 'Ivan Domingues das Neves';
                         }
                     }
                 }
             }
             $this->view->cargo = strtoupper(strtr($post->cargo, "áéíóúâêôãõàèìòùç", "ÁÉÍÓÚÂÊÔÃÕÀÈÌÒÙÇ"));
             $this->view->nome = strtoupper(strtr($nm, "áéíóúâêôãõàèìòùç", "ÁÉÍÓÚÂÊÔÃÕÀÈÌÒÙÇ"));
             $this->view->tipoPublicacao = $post->tipoPublicacao;
             $this->view->textoPortaria = $textoPortaria;
             parent::message("Portaria nº " . $_POST['nrPortaria'] . "/" . $ano2Digitos . " foi gerada com sucesso!", "publicacaodou/consultar-portaria?portaria=" . $_POST['nrPortaria'] . "/" . $ano2Digitos . "&situacao=" . $post->tipoPublicacao, "CONFIRM");
             // pega a portaria gerada
             //                $portaria = PublicacaoDouDAO::ProjetoPortaria($_POST['nrPortaria'].'/'.date('y'), $dadosSituacao['Situacao']);
             //                $this->view->portaria = $portaria;
         } catch (Exception $e) {
             parent::message($e->getMessage(), "publicacaodou?situacao=" . $post->tipoPublicacao, "ERROR");
         }
     }
     // fecha if
 }
コード例 #7
0
 /**
  * Metodo que chama as funcoes de balancear projeto, copiar tabelas e alterar a situacao do projeto
  * @access public
  * @param void
  * @return void
  */
 public function balancearAction()
 {
     $auth = Zend_Auth::getInstance();
     // pega a autenticacao
     $idPronac = $this->_request->getParam("idpronac");
     // pega o id do pronac via get
     $servico = $this->_request->getParam("servico");
     // pega o id do pronac via get
     $tipousuario = $this->_request->getParam("idusuario");
     // pega o id do pronac via get
     $tbDistParecer = new tbDistribuirParecer();
     $w1['a.IdPRONAC = ?'] = $idPronac;
     $qntdProd = $tbDistParecer->QntdProdutosXValidados($w1);
     $w2['a.IdPRONAC = ?'] = $idPronac;
     $w2['a.stEstado = ?'] = 0;
     $w2['a.FecharAnalise in (?)'] = array(1, 2);
     $qntdProdValidados = $tbDistParecer->QntdProdutosXValidados($w2);
     if ($qntdProdValidados != $qntdProd) {
         //Se não houver validação para cada produto, o sistema não deixa continuar.
         parent::message("Produto sem validação do Coordenador da Vinculada!", "gerenciarpareceres/index", "ERROR");
     }
     $planilhaAprovacao = new PlanilhaAprovacao();
     $buscarplanilhaaprovacao = $planilhaAprovacao->buscar(array("IdPRONAC = ?" => $idPronac, "tpPlanilha = ?" => "CO"))->current();
     if (count($buscarplanilhaaprovacao) == 0) {
         try {
             // copia as tabelas
             $planilhaProjeto = new PlanilhaProjeto();
             $analiseConteudo = new Analisedeconteudo();
             $analiseaprovacao = new AnaliseAprovacao();
             $projetos = new Projetos();
             $Distribuicao = new DistribuicaoProjetoComissao();
             $titulacaoConselheiro = new TitulacaoConselheiro();
             $arrParecerProduto = array();
             //ANALISE DE CONTEUDO
             $RanaliseConteudo = $analiseConteudo->dadosAnaliseconteudo($idPronac);
             foreach ($RanaliseConteudo as $resu) {
                 $data = array('tpAnalise' => 'CO', 'dtAnalise' => new Zend_Db_Expr('GETDATE()'), 'idAnaliseConteudo' => $resu->idAnaliseDeConteudo, 'IdPRONAC' => $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);
                 if ($resu->idProduto >= 1) {
                     $arrParecerProduto[$resu->idProduto] = $resu->ParecerFavoravel;
                 } else {
                     $arrParecerProduto[0] = 1;
                     //Admistracao do Projeto, que nao possui codigo de produto
                 }
                 $analiseaprovacao->inserir($data);
             }
             //ANALISE DE CUSTO
             $Rplanilhaprojeto = $planilhaProjeto->dadosPlanilhaProjeto($idPronac);
             foreach ($Rplanilhaprojeto as $resu) {
                 $data = array('tpPlanilha' => 'CO', 'dtPlanilha' => new Zend_Db_Expr('GETDATE()'), 'idPlanilhaProjeto' => $resu->idPlanilhaProjeto, 'idPlanilhaProposta' => $resu->idPlanilhaProposta, 'IdPRONAC' => $idPronac, 'idProduto' => $resu->idProduto, 'idEtapa' => $resu->idEtapa, 'idPlanilhaItem' => $resu->idPlanilhaItem, 'dsItem' => '', 'idUnidade' => $resu->idUnidade, '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');
                 //zera valores de produto desfavorecido
                 if (isset($arrParecerProduto[$resu->idProduto])) {
                     if ($arrParecerProduto[$resu->idProduto] == '1') {
                         //produto favorecido
                         $data['qtItem'] = $resu->Quantidade;
                         $data['nrOcorrencia'] = $resu->Ocorrencia;
                         $data['vlUnitario'] = $resu->ValorUnitario;
                     } else {
                         //produto desfavorecido
                         $data['qtItem'] = 0;
                         $data['nrOcorrencia'] = 0;
                         $data['vlUnitario'] = 0;
                     }
                 } else {
                     //condicao para a Admistracao do Projeto, que nao possui codigo de produto
                     $data['qtItem'] = $resu->Quantidade;
                     $data['nrOcorrencia'] = $resu->Ocorrencia;
                     $data['vlUnitario'] = $resu->ValorUnitario;
                 }
                 $inserirPlanilhaAprovacao = $planilhaAprovacao->inserir($data);
             }
             //VERIFICA QUANTOS PRODUTOS O PROJETO POSSUI POR AREA
             $rsProdutos = $tbDistParecer->BuscarQtdAreasProjetos($idPronac);
             $totalArea = $rsProdutos->QDTArea;
             if ($totalArea >= '2') {
                 $area = 7;
                 //Area = Artes integradas
             } else {
                 //BUSCA AREA DO PROJETO
                 $areaProjeto = $projetos->BuscarAreaSegmentoProjetos($idPronac);
                 $area = $areaProjeto['area'];
                 //Area do projeto
             }
             $Rtitulacao = $titulacaoConselheiro->buscarcomponentebalanceamento($area)->current();
             $dados = array('idPRONAC' => $idPronac, 'idAgente' => $Rtitulacao->idAgente, 'dtDistribuicao' => new Zend_Db_Expr('GETDATE()'), 'idResponsavel' => 0);
             $Distribuicao->inserir($dados);
             // chama a funcao para alterar a situacao do projeto - Padrao C10
             $data = array('Situacao' => 'C10', 'dtSituacao' => new Zend_Db_Expr('GETDATE()'));
             //$where = "IdPRONAC = $idPronac";
             $where['IdPRONAC = ?'] = $idPronac;
             $projetos->alterar($data, $where);
             //echo 'Conselheiro = ' . $Rtitulacao->idAgente . '<br/>';
             parent::message("Projeto encaminhado para o Componente da Comissão. Conselheiro: " . $Rtitulacao->Nome, "gerenciarpareceres/index", "CONFIRM");
         } catch (Exception $e) {
             parent::message("Error: " . $e->getMessage(), "gerenciarpareceres/index", "ERROR");
             die($e->getMessage());
         }
     } else {
         parent::message("Planilhas já copiadas.", "gerenciarpareceres/index", "ALERT");
     }
     // colocar um else aqui!!!
 }