/**
  * Metodo com a tabela de analise de custos - Projetos em Readequacao
  * @access public
  * @param void
  * @return void
  */
 public function analisedecustosreadequacaoAction()
 {
     $auth = Zend_Auth::getInstance();
     // pega a autenticao
     $idagente = GerenciarPautaReuniaoDAO::consultaAgenteUsuario($auth->getIdentity()->usu_codigo);
     $idagente = $idagente['idAgente'];
     $tblPlanilhaAprovacao = new PlanilhaAprovacao();
     $tblPlanilhaProposta = new PlanilhaProposta();
     $tblPlanilhaProjeto = new PlanilhaProjeto();
     $tblPlanoDistribuicao = new PlanoDistribuicaoProduto();
     $tblAnaliseAprovacao = new AnaliseAprovacao();
     // caso o formulario seja enviado via post
     // atualiza a planilha
     if ($this->getRequest()->isPost()) {
         // recebe os dados via post
         $post = Zend_Registry::get('post');
         $idPronac = $post->idpronac;
         $idplanilhaaprovacao = $post->idPlanilha;
         $unidade = $post->unidade;
         $qtdItem = $post->qtd;
         $ocorrencia = $post->ocorrencia;
         $vlunitario = Mascara::delMaskMoeda($post->vlunitario);
         $dias = $post->dias;
         $justificativa = $post->justificativa;
         $idEtapa = $post->idEtapaDoItem;
         try {
             $rsPlanilhaAtual = $tblPlanilhaAprovacao->buscar(array('IdPRONAC = ?' => $idPronac), array('dtPlanilha DESC'))->current();
             $tpPlanilha = !empty($rsPlanilhaAtual) && $rsPlanilhaAtual->tpPlanilha == 'SE' ? 'SE' : 'CO';
             $this->view->tpPlanilha = $tpPlanilha;
             $dados = array('tpPlanilha' => $tpPlanilha, 'dtPlanilha' => new Zend_Db_Expr('GETDATE()'), 'idUnidade' => $unidade, 'qtItem' => $qtdItem, 'nrOcorrencia' => $ocorrencia, 'vlUnitario' => $vlunitario, 'qtDias' => $dias, 'dsJustificativa' => $justificativa, 'idAgente' => $idagente, 'stAtivo' => 'N');
             $where = 'idPlanilhaAprovacao = ' . $idplanilhaaprovacao;
             $alterarPlanilha = $tblPlanilhaAprovacao->alterar($dados, $where);
             //ATUALIZA ETAPA DO ITEM CASO TENHA SIDO ENVIADA
             if (!empty($idEtapa)) {
                 //recupera informacoes do item de custo que esta sendo alterado
                 $rsPlanCO = $tblPlanilhaAprovacao->buscar(array('idPlanilhaAprovacao = ? ' => $idplanilhaaprovacao))->current();
                 //recupera item de custo correspondente na planilha PA
                 $rsPlanPA = $tblPlanilhaAprovacao->buscar(array('idPlanilhaAprovacao = ? ' => $rsPlanCO->idPlanilhaAprovacaoPai))->current();
                 //recupera item de custo correspondente na planilha SR
                 $rsPlanSR = $tblPlanilhaAprovacao->buscar(array('idPlanilhaAprovacao = ? ' => $rsPlanPA->idPlanilhaAprovacaoPai))->current();
                 //etapa a ser atualizada
                 $dados = array('idEtapa' => $idEtapa);
                 //ATUALIZA ETAPA - PLANILHA CO ou SE
                 $where = 'idPlanilhaAprovacao = ' . $idplanilhaaprovacao;
                 $tblPlanilhaAprovacao->alterar($dados, $where);
                 //ATUALIZA ETAPA - PLANILHA PA
                 $wherePA = 'idPlanilhaAprovacao = ' . $rsPlanPA->idPlanilhaAprovacao;
                 $tblPlanilhaAprovacao->alterar($dados, $wherePA);
                 //ATUALIZA ETAPA - PLANILHA SR
                 $whereSR = 'idPlanilhaAprovacao = ' . $rsPlanSR->idPlanilhaAprovacao;
                 $tblPlanilhaAprovacao->alterar($dados, $whereSR);
             }
             if ($alterarPlanilha) {
                 parent::message("Registro inserido com sucesso!", "realizaranaliseprojeto/analisedecustosreadequacao/idpronac/" . $idPronac . "/?idplanilha=" . $idplanilhaaprovacao, "CONFIRM");
             } else {
                 throw new Exception("Erro ao efetuar alteraço!");
             }
         } catch (Exception $e) {
             parent::message($e->getMessage(), "realizaranaliseprojeto/analisedecustosreadequacao/idpronac/" . $idPronac, "ERROR");
         }
     } else {
         // recebe os dados via get
         $idpronac = $this->_request->getParam("idpronac");
         $tblPlanilhaAprovacao = new PlanilhaAprovacao();
         $tblPlanilhaProposta = new PlanilhaProposta();
         $tblPlanilhaProjeto = new PlanilhaProjeto();
         $tblProjetos = new Projetos();
         $rsPlanilhaAtual = $tblPlanilhaAprovacao->buscar(array('IdPRONAC = ?' => $idpronac), array('dtPlanilha DESC'))->current();
         $tipoplanilha = !empty($rsPlanilhaAtual) && $rsPlanilhaAtual->tpPlanilha == 'SE' ? 'SE' : 'CO';
         $this->view->tpPlanilha = $tipoplanilha;
         $rsProjeto = $tblProjetos->buscar(array('IdPRONAC=?' => $idpronac))->current();
         $idPreProjeto = !empty($rsProjeto->idProjeto) ? $rsProjeto->idProjeto : '0';
         $rsProdutoPrincipal = $tblPlanoDistribuicao->buscar(array('idProjeto=?' => $idPreProjeto, 'stPrincipal=?' => 1, 'stPlanoDistribuicaoProduto = ?' => 1))->current();
         $rsAnaliseProdutoPrincipal = $tblAnaliseAprovacao->buscar(array('idPronac=?' => $idpronac, 'idProduto=?' => $rsProdutoPrincipal->idProduto, 'tpAnalise=?' => $tipoplanilha))->current();
         $arrBuscaPlanilha = array();
         $arrBuscaPlanilha["pap.stAtivo = ? "] = 'N';
         $arrBuscaPlanilha["pap.idPedidoAlteracao = (SELECT TOP 1 max(idPedidoAlteracao) from SAC.dbo.tbPlanilhaAprovacao where IdPRONAC = '{$idpronac}')"] = '(?)';
         $buscarplanilhaCO = $tblPlanilhaAprovacao->buscarAnaliseCustosPlanilhaAprovacao($idpronac, $tipoplanilha, $arrBuscaPlanilha);
         //xd($buscarplanilhaCO);
         $planilhaaprovacao = array();
         $count = 0;
         $fonterecurso = null;
         foreach ($buscarplanilhaCO as $resuplanilha) {
             $produto = $resuplanilha->Produto == null ? 'Adminitração do Projeto' : $resuplanilha->Produto;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['idPlanilhaAprovacao'] = $resuplanilha->idPlanilhaAprovacao;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['idUnidade'] = $resuplanilha->idUnidade;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['nrFonteRecurso'] = $resuplanilha->nrFonteRecurso;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['item'] = $resuplanilha->Item;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['Unidade'] = $resuplanilha->Unidade;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['qtitemcomp'] = $resuplanilha->qtItem;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['nrocorrenciacomp'] = $resuplanilha->nrOcorrencia;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['vlunitariocomp'] = $resuplanilha->vlUnitario;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['qtdiascomp'] = $resuplanilha->qtDias;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['Unidadecomp'] = $resuplanilha->Unidade;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['vlconselheiro'] = $resuplanilha->vlTotal ? $resuplanilha->vlTotal : 0;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['justificativaconselheiro'] = $resuplanilha->dsJustificativa;
             //$planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa.' - '.$resuplanilha->Etapa][$resuplanilha->UF.' - '.$resuplanilha->Cidade][$count]['reducao'] = $resuplanilha->VlSugeridoConselheiro < $resuplanilha->VlSolicitado ? 1 : 0;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['idProduto'] = $resuplanilha->idProduto;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['idEtapa'] = $resuplanilha->idEtapa;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['idPlanilhaItem'] = $resuplanilha->idPlanilhaItem;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['stAvaliacao'] = $resuplanilha->stAvaliacao;
             //grava array com produtos favorecidos na analise de conteudo
             if ($resuplanilha->idProduto >= 1) {
                 if ($resuplanilha->stAvaliacao == 1) {
                     $arrProdutosFavoraveis[$produto] = $resuplanilha->stAvaliacao;
                 }
             } else {
                 if ($rsAnaliseProdutoPrincipal->stAvaliacao == 1) {
                     $arrProdutosFavoraveis[$produto] = 1;
                     //Admistracao do Projeto, que nao possui codigo de produto (so favorece os custos administrativos se o produto principal estiver favorecido)
                 }
             }
             $count++;
         }
         /******** Planilha aprovacao SR (Proponente - solicitada) ****************/
         $arrBuscaPlanilha = array();
         $arrBuscaPlanilha["pap.stAtivo = ? "] = 'N';
         $arrBuscaPlanilha["pap.idPedidoAlteracao = (SELECT TOP 1 max(idPedidoAlteracao) from SAC.dbo.tbPlanilhaAprovacao where IdPRONAC = '{$idpronac}')"] = '(?)';
         $resuplanilha = null;
         $count = 0;
         $buscarplanilhaSR = $tblPlanilhaAprovacao->buscarAnaliseCustosPlanilhaAprovacao($idpronac, 'SR', $arrBuscaPlanilha);
         //xd($buscarplanilhaSR);
         foreach ($buscarplanilhaSR as $resuplanilha) {
             $produto = $resuplanilha->Produto == null ? 'Adminitra&ccedil;&atilde;o do Projeto' : $resuplanilha->Produto;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['diasprop'] = $resuplanilha->qtDias;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['quantidadeprop'] = $resuplanilha->qtItem;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['ocorrenciaprop'] = $resuplanilha->nrOcorrencia;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['valorUnitarioprop'] = $resuplanilha->vlUnitario;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['UnidadeProposta'] = $resuplanilha->Unidade;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['vlproponente'] = $resuplanilha->vlTotal ? $resuplanilha->vlTotal : 0;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['justificitivaproponente'] = $resuplanilha->dsJustificativa;
             $valorConselheiro = $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['vlconselheiro'];
             $valorSolicitado = $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['vlproponente'];
             $reducao = $valorConselheiro < $valorSolicitado ? 1 : 0;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['reducao'] = $reducao;
             $count++;
         }
         /******** Planilha aprovacao PA (Parecerista) ****************/
         $arrBuscaPlanilha = array();
         $arrBuscaPlanilha["pap.stAtivo = ? "] = 'N';
         $arrBuscaPlanilha["pap.idPedidoAlteracao = (SELECT TOP 1 max(idPedidoAlteracao) from SAC.dbo.tbPlanilhaAprovacao where IdPRONAC = '{$idpronac}')"] = '(?)';
         $resuplanilha = null;
         $count = 0;
         $buscarplanilhaPA = $tblPlanilhaAprovacao->buscarAnaliseCustosPlanilhaAprovacao($idpronac, 'PA', $arrBuscaPlanilha);
         //xd($buscarplanilhaSR);
         foreach ($buscarplanilhaPA as $resuplanilha) {
             $produto = $resuplanilha->Produto == null ? 'Adminitra&ccedil;&atilde;o do Projeto' : $resuplanilha->Produto;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['UnidadeProjeto'] = $resuplanilha->Unidade;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['quantidadeparc'] = $resuplanilha->qtItem;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['ocorrenciaparc'] = $resuplanilha->nrOcorrencia;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['diasparc'] = $resuplanilha->qtDias;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['valorUnitarioparc'] = $resuplanilha->vlUnitario;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['vlparecerista'] = $resuplanilha->vlTotal ? $resuplanilha->vlTotal : 0;
             $planilhaaprovacao[$resuplanilha->FonteRecurso][$produto][$resuplanilha->idEtapa . ' - ' . $resuplanilha->Etapa][$resuplanilha->UF . ' - ' . $resuplanilha->Cidade][$count]['justificativaparecerista'] = $resuplanilha->dsJustificativa;
             $count++;
         }
         $buscarprojeto = $tblProjetos->buscar(array('IdPRONAC = ?' => $idpronac))->current();
         //$buscarsomaaprovacao = $tblPlanilhaAprovacao->somarPlanilhaAprovacao($idpronac, 206 , $tipoplanilha, array('PAP.stAtivo=?'=>'N'));
         $arrWhereSomaPlanilha = array();
         $arrWhereSomaPlanilha['idPronac = ?'] = $idpronac;
         $arrWhereSomaPlanilha['idPlanilhaItem <> ? '] = '206';
         //elaboracao e agenciamento
         $arrWhereSomaPlanilha['tpPlanilha = ? '] = $tipoplanilha;
         $arrWhereSomaPlanilha['NrFonteRecurso = ? '] = '109';
         $arrWhereSomaPlanilha['stAtivo = ? '] = 'N';
         $arrWhereSomaPlanilha["idPedidoAlteracao = (SELECT TOP 1 max(idPedidoAlteracao) from SAC.dbo.tbPlanilhaAprovacao where IdPRONAC = '{$idpronac}')"] = '(?)';
         $arrWhereSomaPlanilha["tpAcao <> ('E') OR tpAcao IS NULL "] = '(?)';
         $buscarsomaaprovacao = $tblPlanilhaAprovacao->somarItensPlanilhaAprovacao($arrWhereSomaPlanilha);
         $arrWhereSomaPlanilha['tpPlanilha = ? '] = 'SR';
         $buscarsomaproposta = $tblPlanilhaAprovacao->somarItensPlanilhaAprovacao($arrWhereSomaPlanilha);
         $arrWhereSomaPlanilha['tpPlanilha = ? '] = 'PA';
         $buscarsomaprojeto = $tblPlanilhaAprovacao->somarItensPlanilhaAprovacao($arrWhereSomaPlanilha);
         //$buscarsomaproposta = $tblPlanilhaProposta->somarPlanilhaProposta($buscarprojeto->idProjeto);
         //$buscarsomaprojeto = $tblPlanilhaProjeto->somarPlanilhaProjeto($idpronac, 109);
         $buscarPlanilhaUnidade = PlanilhaUnidadeDAO::buscar();
         $this->view->planilhaUnidade = $buscarPlanilhaUnidade;
         $this->view->planilha = $planilhaaprovacao;
         //xd($planilhaaprovacao);
         $this->view->projeto = $buscarprojeto;
         $this->view->totalcomponente = $buscarsomaaprovacao['soma'];
         $this->view->totalparecerista = $buscarsomaprojeto['soma'];
         $this->view->totalproponente = $buscarsomaproposta['soma'];
         $this->view->produtosFavoraveis = $arrProdutosFavoraveis;
         $this->montaTela("realizaranaliseprojeto/analisedecustos.phtml", array());
     }
     // fecha else
 }
 /**
  * Método com a Planilha de Custos (Tanto pra Produtos como para Administrativos)
  * @access public
  * @param void
  * @return void
  */
 public function custoAction()
 {
     try {
         // verifica se o usuário logado tem permissão para acessar o projeto
         $this->verificarPermissaoAcesso(false, true, false);
         // objetos utilizados
         $this->tbPlanilhaAprovacao = new PlanilhaAprovacao();
         $this->tbPlanilhaEtapa = new PlanilhaEtapa();
         $this->tbPlanilhaUnidade = new tbPlanilhaUnidade();
         $this->tbPlanilhaItens = new PlanilhaItens();
         $this->tbPlanoDistribuicao = new tbPlanoDistribuicao();
         $this->Uf = new Uf();
         $this->Verificacao = new Verificacao();
         $this->tbPedidoAlteracaoXTipoAlteracao = new tbPedidoAlteracaoXTipoAlteracao();
         // pega o código do produto
         $idProduto = $this->_request->getParam('idproduto');
         $idProduto = empty($idProduto) ? 0 : $idProduto;
         // busca os dados aprovado do produto
         $buscarProdutoAP = $this->tbPlanoDistribuicao->buscarProdutosAprovados(array('p.idProduto = ?' => $idProduto, 'p.idProjeto = ?' => $this->_idPreProjeto, 'p.stPlanoDistribuicaoProduto = ?' => 1));
         // busca os dados com solicitação de readequação do produto
         $buscarProdutoSR = $this->tbPlanoDistribuicao->buscarProdutosSolicitados(array('p.idProduto = ?' => $idProduto, 'p.idPedidoAlteracao = ?' => $this->_idPedidoAlteracao, 'p.tpAcao <> ?' => 'E'));
         /*if (count($buscarProdutoAP) <= 0 && count($buscarProdutoSR) <= 0) :
         			parent::message('Nenhum projeto encontrado para o Produto informado!', 'principalproponente', 'ALERT');
         		endif;*/
         // atribui o nome do produto
         $nomeProduto = isset($buscarProdutoSR[0]['dsProduto']) ? $buscarProdutoSR[0]['dsProduto'] : $buscarProdutoAP[0]['dsProduto'];
         $nomeProduto = !empty($nomeProduto) ? $nomeProduto : 'Adminitra&ccedil;&atilde;o do Projeto';
         // pega a planilha aprovada e a planilha solicitada com os itens de custo do produto
         $orderPlanilha = array('PAP.NrFonteRecurso ASC', 'PAP.idProduto ASC', 'PAP.idEtapa ASC', 'FED.Sigla ASC', 'CID.Descricao ASC', 'I.Descricao ASC');
         $whereAP = array('PAP.tpPlanilha = ?' => 'CO', 'PAP.stAtivo = ?' => 'S', 'PAP.IdPRONAC = ?' => $this->_idPronac, 'PAP.idProduto = ?' => $idProduto);
         $whereSR = array('PAP.tpPlanilha = ?' => 'SR', 'PAP.stAtivo = ?' => 'N', 'PAP.IdPRONAC = ?' => $this->_idPronac, 'PAP.idProduto = ?' => $idProduto, 'PAP.idPedidoAlteracao = ?' => $this->_idPedidoAlteracao);
         $buscarAP = $this->tbPlanilhaAprovacao->buscarCustosReadequacao($whereAP, $orderPlanilha);
         $buscarSR = $this->tbPlanilhaAprovacao->buscarCustosReadequacao($whereSR, $orderPlanilha);
         // monta as combos
         $this->view->etapas = $this->tbPlanilhaEtapa->buscar(array(), array('idPlanilhaEtapa ASC'));
         $this->view->unidades = $this->tbPlanilhaUnidade->buscar(array(), array('Descricao ASC'));
         $this->view->fontes = $this->Verificacao->buscarTipos(array('t.idTipo = ?' => 5), array('v.Descricao ASC'));
         $this->view->uf = $this->Uf->buscar(array(), array('Sigla ASC'));
         // monta a planilha aprovada
         $planAP = array();
         $cont = 0;
         foreach ($buscarAP as $r) {
             $produto = empty($r->Produto) ? 'Adminitra&ccedil;&atilde;o do Projeto' : $r->Produto;
             $planAP[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['idPlanilhaAprovacao'] = $r->idPlanilhaAprovacao;
             $planAP[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['nrFonteRecurso'] = $r->nrFonteRecurso;
             $planAP[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['FonteRecurso'] = $r->FonteRecurso;
             $planAP[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['idProduto'] = $r->idProduto;
             $planAP[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['Produto'] = $r->Produto;
             $planAP[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['idEtapa'] = $r->idEtapa;
             $planAP[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['Etapa'] = $r->Etapa;
             $planAP[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['UF'] = $r->UF;
             $planAP[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['Cidade'] = $r->Cidade;
             $planAP[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['idPlanilhaItem'] = $r->idPlanilhaItem;
             $planAP[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['Item'] = $r->Item;
             $planAP[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['idUnidade'] = $r->idUnidade;
             $planAP[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['Unidade'] = $r->Unidade;
             $planAP[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['qtItem'] = (int) $r->qtItem;
             $planAP[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['nrOcorrencia'] = (int) $r->nrOcorrencia;
             $planAP[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['vlUnitario'] = $r->vlUnitario;
             $planAP[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['vlTotal'] = $r->vlTotal;
             $planAP[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['qtDias'] = $r->qtDias;
             $planAP[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['dsJustificativa'] = $r->dsJustificativa;
             $cont++;
         }
         // monta a planilha solicitada
         $planSR = array();
         $cont = 0;
         foreach ($buscarSR as $r) {
             $produto = empty($r->Produto) ? 'Adminitra&ccedil;&atilde;o do Projeto' : $r->Produto;
             $planSR[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['idPlanilhaAprovacao'] = $r->idPlanilhaAprovacao;
             $planSR[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['nrFonteRecurso'] = $r->nrFonteRecurso;
             $planSR[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['FonteRecurso'] = $r->FonteRecurso;
             $planSR[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['idProduto'] = $r->idProduto;
             $planSR[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['Produto'] = $r->Produto;
             $planSR[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['idEtapa'] = $r->idEtapa;
             $planSR[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['Etapa'] = $r->Etapa;
             $planSR[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['UF'] = $r->UF;
             $planSR[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['Cidade'] = $r->Cidade;
             $planSR[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['idPlanilhaItem'] = $r->idPlanilhaItem;
             $planSR[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['Item'] = $r->Item;
             $planSR[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['idUnidade'] = $r->idUnidade;
             $planSR[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['Unidade'] = $r->Unidade;
             $planSR[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['qtItem'] = (int) $r->qtItem;
             $planSR[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['nrOcorrencia'] = (int) $r->nrOcorrencia;
             $planSR[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['vlUnitario'] = $r->vlUnitario;
             $planSR[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['vlTotal'] = $r->vlTotal;
             $planSR[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['qtDias'] = $r->qtDias;
             $planSR[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['dsJustificativa'] = $r->dsJustificativa;
             $planSR[$r->FonteRecurso][$produto][$r->idEtapa . ' - ' . $r->Etapa][$r->UF . ' - ' . $r->Cidade][$cont]['tpAcao'] = $r->tpAcao;
             $cont++;
         }
         // manda as informações do produto, a planilha aprovada e a solicitada para a visão
         $this->view->idProduto = $idProduto;
         $this->view->Produto = $nomeProduto;
         $this->view->planAP = $planAP;
         $this->view->planSR = $planSR;
     } catch (Exception $e) {
         parent::message($e->getMessage(), $this->_urlAtual, 'ERROR');
     }
     // ========== INÍCIO: FORMULÁRIO ENVIADO VIA POST ==========
     if ($this->getRequest()->isPost()) {
         // recebe os dados do formulário
         $post = Zend_Registry::get('post');
         $dadosEtapa = explode(':', $post->etapa);
         $dadosEtapa = $dadosEtapa[0];
         $idPlanilhaAprovacao = $post->idPlanilhaAprovacao;
         $etapa = $dadosEtapa;
         $item = $post->item;
         $unidade = $post->unidade;
         $qtd = (int) $post->qtd;
         $ocorrencia = (int) $post->ocorrencia;
         $vlUnitario = Mascara::delMaskMoeda($post->vlUnitario);
         $dias = $post->dias;
         $fonte = $post->fonte;
         $uf = $post->uf;
         $cidade = $post->cidade;
         $justificativa = $post->justificativa;
         $stPedidoAlteracao = $post->stPedidoAlteracao;
         $siVerificacao = $post->siVerificacao;
         //                $tpAlteracaoProjeto     = $post->tpAlteracaoProjeto;
         $tpAlteracaoProjeto = 7;
         //Agora passa a ser o mesmo de produto.
         $tpAcao = $post->tpAcao;
         $dsItem = 'Produto';
         $tpDespesa = 0;
         $nrContraPartida = 0;
         $tpPlanilha = 'SR';
         $stAtivo = 'N';
         $tpPessoa = 0;
         $tpPlanilhaEnviada = $post->tpPlanilhaEnviada;
         try {
             // validação dos dados
             if (empty($etapa) || empty($item) || empty($unidade) || empty($vlUnitario) || empty($fonte) || empty($uf) || empty($cidade) || empty($justificativa)) {
                 throw new Exception('Dados obrigat&oacute;rios n&atilde;o informados!');
             }
             // atualiza o status do pedido de readequação
             $this->_stPedidoAlteracao = $stPedidoAlteracao;
             // salva os dados do pedido
             $this->salvarPedido($stPedidoAlteracao, $siVerificacao);
             // faz a cópia da tabela original para a solicitada caso não exista na solicitada, e, exista algum registro na aprovada
             $wherePlanilhaAP = array('PAP.tpPlanilha = ?' => 'CO', 'PAP.stAtivo = ?' => 'S', 'PAP.IdPRONAC = ?' => $this->_idPronac);
             $wherePlanilhaSR = array('PAP.tpPlanilha = ?' => 'SR', 'PAP.stAtivo = ?' => 'N', 'PAP.IdPRONAC = ?' => $this->_idPronac, 'PAP.idPedidoAlteracao = ?' => $this->_idPedidoAlteracao);
             $buscarPlanilhaAP = $this->tbPlanilhaAprovacao->buscarCustosReadequacao($wherePlanilhaAP);
             $buscarPlanilhaSR = $this->tbPlanilhaAprovacao->buscarCustosReadequacao($wherePlanilhaSR);
             if (count($buscarPlanilhaSR) <= 0 && count($buscarPlanilhaAP) > 0) {
                 foreach ($buscarPlanilhaAP as $d) {
                     $dadosCopia = array('tpPlanilha' => $tpPlanilha, 'dtPlanilha' => new Zend_Db_Expr('GETDATE()'), 'idPlanilhaProjeto' => $d->idPlanilhaProjeto, 'idPlanilhaProposta' => $d->idPlanilhaProposta, 'IdPRONAC' => $d->IdPRONAC, 'idProduto' => $d->idProduto, 'idEtapa' => $d->idEtapa, 'idPlanilhaItem' => $d->idPlanilhaItem, 'dsItem' => $d->dsItem, 'idUnidade' => $d->idUnidade, 'qtItem' => $d->qtItem, 'nrOcorrencia' => $d->nrOcorrencia, 'vlUnitario' => $d->vlUnitario, 'qtDias' => $d->qtDias, 'tpDespesa' => $d->tpDespesa, 'tpPessoa' => $d->tpPessoa, 'nrContraPartida' => $d->nrContraPartida, 'nrFonteRecurso' => $d->nrFonteRecurso, 'idUFDespesa' => $d->idUF, 'idMunicipioDespesa' => $d->idMunicipio, 'dsJustificativa' => null, 'idAgente' => $this->_idAgenteProjeto, 'idPlanilhaAprovacaoPai' => $d->idPlanilhaAprovacao, 'idPedidoAlteracao' => $this->_idPedidoAlteracao, 'tpAcao' => $stAtivo, 'idRecursoDecisao' => null, 'stAtivo' => $stAtivo);
                     $this->tbPlanilhaAprovacao->inserir($dadosCopia);
                 }
             }
             // salva os dados do item do pedido
             if ($tpAcao == 'I') {
                 // CADASTRA
                 $dadosItemPedido = array('dtPlanilha' => new Zend_Db_Expr('GETDATE()'), 'IdPRONAC' => $this->_idPronac, 'idProduto' => $idProduto, 'idEtapa' => $etapa, 'idPlanilhaItem' => $item, 'dsItem' => $dsItem, 'idUnidade' => $unidade, 'qtItem' => $qtd, 'nrOcorrencia' => $ocorrencia, 'vlUnitario' => $vlUnitario, 'qtDias' => $dias, 'tpDespesa' => $tpDespesa, 'tpPessoa' => $tpPessoa, 'nrContraPartida' => $nrContraPartida, 'nrFonteRecurso' => $fonte, 'idUFDespesa' => $uf, 'idMunicipioDespesa' => $cidade, 'dsJustificativa' => $justificativa, 'idAgente' => $this->_idAgenteProjeto, 'idPedidoAlteracao' => $this->_idPedidoAlteracao, 'tpAcao' => $tpAcao, 'tpPlanilha' => $tpPlanilha, 'stAtivo' => $stAtivo);
                 $this->tbPlanilhaAprovacao->inserir($dadosItemPedido);
             } else {
                 // ALTERACAO OU EXCLUSAO
                 if ($tpAcao == 'E') {
                     $whereBusca = array('idPlanilhaAprovacao = ?' => $_POST['idPlanilhaAprovacao'], 'tpPlanilha = ?' => 'SR', 'IdPRONAC = ?' => $this->_idPronac, 'idProduto = ?' => $idProduto, 'idPlanilhaAprovacaoPai IS NULL' => '', 'idPlanilhaProjeto IS NULL' => '', 'idPedidoAlteracao = ?' => $this->_idPedidoAlteracao, 'tpAcao = ?' => 'I', 'stAtivo = ?' => 'N');
                     $dadosItem = $this->tbPlanilhaAprovacao->buscar($whereBusca);
                     if (count($dadosItem) > 0) {
                         $this->tbPlanilhaAprovacao->delete($whereBusca);
                     }
                 }
                 $dadosItemUnico = $this->tbPlanilhaAprovacao->fetchRow(array('idPlanilhaAprovacao = ?' => $_POST['idPlanilhaAprovacao']));
                 if ($dadosItemUnico && $dadosItemUnico->tpAcao == 'I') {
                     $tpAcao = 'I';
                 }
                 $whereTbPlanilha = array();
                 if ($tpPlanilhaEnviada == 'SR') {
                     $whereTbPlanilha['idPlanilhaAprovacao = ?'] = $idPlanilhaAprovacao;
                 } else {
                     $whereTbPlanilha['idPlanilhaAprovacaoPai = ?'] = $idPlanilhaAprovacao;
                 }
                 $whereTbPlanilha['idPedidoAlteracao = ?'] = $this->_idPedidoAlteracao;
                 $whereTbPlanilha['tpPlanilha = ?'] = $tpPlanilha;
                 $dadosItemPedido = array('dtPlanilha' => new Zend_Db_Expr('GETDATE()'), 'idEtapa' => $etapa, 'idPlanilhaItem' => $item, 'dsItem' => $dsItem, 'idUnidade' => $unidade, 'qtItem' => $qtd, 'nrOcorrencia' => $ocorrencia, 'vlUnitario' => $vlUnitario, 'qtDias' => $dias, 'nrFonteRecurso' => $fonte, 'idUFDespesa' => $uf, 'idMunicipioDespesa' => $cidade, 'dsJustificativa' => $justificativa, 'idAgente' => $this->_idAgenteProjeto, 'tpAcao' => $tpAcao);
                 $this->tbPlanilhaAprovacao->alterar($dadosItemPedido, $whereTbPlanilha);
             }
             // salva os dados da justificativa
             $whereItemPedido = array('tpAlteracaoProjeto = ?' => $tpAlteracaoProjeto, 'idPedidoAlteracao = ?' => $this->_idPedidoAlteracao);
             // filtro para alteração
             if (count($this->tbPedidoAlteracaoXTipoAlteracao->buscar($whereItemPedido)) <= 0) {
                 // CADASTRA
                 $dadosJustificativa = array('idPedidoAlteracao' => $this->_idPedidoAlteracao, 'dsJustificativa' => $justificativa, 'tpAlteracaoProjeto' => $tpAlteracaoProjeto, 'stVerificacao' => 0);
                 $this->tbPedidoAlteracaoXTipoAlteracao->inserir($dadosJustificativa);
             } else {
                 // ALTERA
                 $dadosJustificativa = array('dsJustificativa' => $justificativa);
                 $this->tbPedidoAlteracaoXTipoAlteracao->alterar($dadosJustificativa, $whereItemPedido);
             }
             parent::message('Solicita&ccedil;&atilde;o realizada com sucesso!', $this->_urlAtual . '/idproduto/' . $idProduto, 'CONFIRM');
         } catch (Exception $e) {
             $this->view->message = $e->getMessage();
             $this->view->message_type = 'ERROR';
         }
     }
     // fecha if
     // ========== FIM: FORMULÁRIO ENVIADO VIA POST ==========
 }
Esempio n. 3
0
 public function salvaFormaPagamentoAction()
 {
     $idFormaPagamento = $this->_request->getParam('idFormaPagamento');
     $idEdital = $this->_request->getParam('idEdital');
     $idCategoria = $this->_request->getParam('idCategoria');
     $idModulo = $this->_request->getParam('idModulo');
     $dsFormaPagamento = $this->_request->getParam('dsFormaPagamento');
     $vlrApoio = $this->_request->getParam('vlrApoio');
     $qtPremiados = $this->_request->getParam('qtPremiados');
     $qtParcela = $this->_request->getParam('qtdParcelas');
     $parcelas = $this->_request->getParam('parcela');
     //        xd($this->_request->getParams());
     $this->view->idEdital = $idEdital;
     $modelFormaPagamento = new tbFormaPagamento();
     $modelParcelaFormaPagamento = new tbParcelaFormaPagamento();
     $db = Zend_Db_Table::getDefaultAdapter();
     $db->beginTransaction();
     try {
         $dadosFormaPagamento = array('idCategoria' => $idCategoria, 'dsFormaPagamento' => $dsFormaPagamento, 'vlrApoio' => Mascara::delMaskMoeda($vlrApoio), 'qtPremiados' => $qtPremiados, 'qtParcelas' => $qtParcela);
         if (!empty($idFormaPagamento) && isset($idFormaPagamento)) {
             $modelFormaPagamento->update($dadosFormaPagamento, array('idFormaPagamento = ?' => $idFormaPagamento));
         } else {
             $idFormaPagamento = $modelFormaPagamento->salvarFormaPagamento($dadosFormaPagamento);
         }
         $modelParcelaFormaPagamento->delete(array('idFormaPagamento = ?' => $idFormaPagamento));
         if (count($parcelas) > 0) {
             $nrParcela = 1;
             foreach ($parcelas as $p) {
                 $dadosParcela = array('idFormaPagamento' => intval($idFormaPagamento), 'nrParcela' => intval($nrParcela), 'vlrParcela' => Mascara::delMaskMoeda($p));
                 // Salva a parcela
                 $modelParcelaFormaPagamento->inserir($dadosParcela);
                 $nrParcela++;
             }
         }
         $db->commit();
         parent::message('Forma de Pagamento cadastrado com sucesso!', 'edital/forma-pagamento/idEdital/' . $idEdital . '/idModulo/' . $idModulo . '/idCategoria/' . $idCategoria, 'CONFIRM');
     } catch (Exception $exc) {
         $db->rollBack();
         xd($exc);
         parent::message('Erro ao cadastrar a Forma de Pagamento', 'edital/forma-pagamento/idEdital/' . $idEdital . '/idModulo/' . $idModulo . '/idCategoria/' . $idCategoria, 'ERROR');
     }
 }
 public function novoproduto2Action()
 {
     $status = 7;
     $stPedido = 'A';
     $areaCultural = $_POST["areaCultural"];
     $segmentoCultural = $_POST["segmentoCultural"];
     $idPronac = $_POST["idPronac"];
     $idProdutoNovo = $_POST["produto"];
     $idPosicaoLogo = $_POST["posicao"];
     $qtPatrocinador = $_POST["Patrocinador"];
     $qtOutros = $_POST["Divulgacao"];
     $qtProduzida = $_POST["Beneficiario"];
     $qtVendaNormal = str_replace(".", "", $_POST["Normal"]);
     $qtVendaNormal = str_replace(",", "", $qtVendaNormal);
     $qtVendaPromocional = str_replace(".", "", $_POST["Promocional"]);
     $qtVendaPromocional = str_replace(",", "", $qtVendaPromocional);
     //$vlUnitarioNormal = str_replace(".", "", $_POST["Normal_Uni"]);
     //$vlUnitarioNormal = str_replace(",", "", $vlUnitarioNormal);
     //$vlUnitarioPromocional = str_replace(".", "", $_POST["Proporcional"]);
     //$vlUnitarioPromocional = str_replace(",", "", $vlUnitarioPromocional);
     $vlUnitarioNormal = Mascara::delMaskMoeda($_POST["Normal_Uni"]);
     $vlUnitarioPromocional = Mascara::delMaskMoeda($_POST["Proporcional"]);
     $idSolicitante = 1;
     $auth = Zend_Auth::getInstance();
     $idSolicitante = $auth->getIdentity()->IdUsuario;
     $areaCultural = $_POST["areaCultural"];
     $segmentoCultural = $_POST["segmentoCultural"];
     $buscaSoliciatacao = new ReadequacaoProjetos();
     $valores = $buscaSoliciatacao->buscarSolicitacao($idPronac);
     $idPedidoAlteracao = $valores[0]->idPedidoAlteracao;
     if (!empty($idPedidoAlteracao)) {
         $idPedidoAlteracao = $valores[0]->idPedidoAlteracao;
         $status1 = $buscaSoliciatacao->buscaridPedidoAlteracao($idPedidoAlteracao);
         if (empty($status1)) {
             $justificativa = $buscaSoliciatacao->inserirJustificativa($idPedidoAlteracao, $dsJustificativa, $status);
         }
         $dados = $buscaSoliciatacao->buscarprodutoSolicitado($idPedidoAlteracao);
         if (!empty($dados)) {
             $buscaidProjeto = $buscaSoliciatacao->buscarID($idPronac);
             $idProjeto = $buscaidProjeto[0]->idProjeto;
             $p = $buscaSoliciatacao->buscarProdutostabelaAtiva($idProjeto);
             foreach ($p as $result) {
                 $idProduto = $result->idProduto;
                 $d = $buscaSoliciatacao->compararProdutos($idPedidoAlteracao, $idProjeto, $idProduto);
                 if (empty($dados)) {
                     $inserirprodutotabela = $buscaSoliciatacao->inserirProdutoPlano($idProjeto, $idPedidoAlteracao, $idProduto);
                 }
             }
             $busca = $buscaSoliciatacao->buscarProdutobd($idPedidoAlteracao, $idProdutoNovo);
             if (empty($busca)) {
                 $inserirproduto = $buscaSoliciatacao->inserirProduto($idPedidoAlteracao, $idProdutoNovo, $areaCultural, $segmentoCultural, $idPosicaoLogo, $qtProduzida, $qtPatrocinador, $qtOutros, $qtVendaNormal, $qtVendaPromocional, $vlUnitarioNormal, $vlUnitarioPromocional, $areaCultural, $segmentoCultural);
                 $enviarsolicitacao = $buscaSoliciatacao->alterarSolicitacao($idPedidoAlteracao, $stPedido);
             } else {
                 $updateproduto = $buscaSoliciatacao->alterarProduto($idPedidoAlteracao, $idProdutoNovo, $idPosicaoLogo, $qtProduzida, $qtPatrocinador, $qtOutros, $qtVendaNormal, $qtVendaPromocional, $vlUnitarioNormal, $vlUnitarioPromocional, $areaCultural, $segmentoCultural);
                 $enviarsolicitacao = $buscaSoliciatacao->alterarSolicitacao($idPedidoAlteracao, $stPedido);
             }
             $enviarsolicitacao = $buscaSoliciatacao->alterarSolicitacao($idPedidoAlteracao, $stPedido);
             parent::message("Solicitação enviada com sucesso!", "solicitarreadequacaodoprojeto/index?idpronac={$idPronac}", "CONFIRM");
         } else {
             $buscaidProjeto = $buscaSoliciatacao->buscarID($idPronac);
             $idProjeto = $buscaidProjeto[0]->idProjeto;
             $p = $buscaSoliciatacao->buscarProdutostabelaAtiva($idProjeto);
             foreach ($p as $result) {
                 $idProduto = $result->idProduto;
                 $d = $buscaSoliciatacao->compararProdutos($idPedidoAlteracao, $idProjeto, $idProduto);
                 if (empty($dados)) {
                     $inserirprodutotabela = $buscaSoliciatacao->inserirProdutoPlano($idProjeto, $idPedidoAlteracao, $idProduto);
                 }
             }
             $busca = $buscaSoliciatacao->buscarProdutobd($idPedidoAlteracao, $idProdutoNovo);
             if (empty($busca)) {
                 $inserirproduto = $buscaSoliciatacao->inserirProduto($idPedidoAlteracao, $idProdutoNovo, $areaCultural, $segmentoCultural, $idPosicaoLogo, $qtProduzida, $qtPatrocinador, $qtOutros, $qtVendaNormal, $qtVendaPromocional, $vlUnitarioNormal, $vlUnitarioPromocional, $areaCultural, $segmentoCultural);
                 $enviarsolicitacao = $buscaSoliciatacao->alterarSolicitacao($idPedidoAlteracao, $stPedido);
             } else {
                 $updateproduto = $buscaSoliciatacao->alterarProduto($idPedidoAlteracao, $idProdutoNovo, $idPosicaoLogo, $qtProduzida, $qtPatrocinador, $qtOutros, $qtVendaNormal, $qtVendaPromocional, $vlUnitarioNormal, $vlUnitarioPromocional, $areaCultural, $segmentoCultural);
                 $enviarsolicitacao = $buscaSoliciatacao->alterarSolicitacao($idPedidoAlteracao, $stPedido);
                 parent::message("Solicitação enviada com sucesso!", "solicitarreadequacaodoprojeto/index?idpronac={$idPronac}", "CONFIRM");
             }
             $enviarsolicitacao = $buscaSoliciatacao->alterarSolicitacao($idPedidoAlteracao, $stPedido);
             parent::message("Solicitação enviada com sucesso!", "solicitarreadequacaodoprojeto/index?idpronac={$idPronac}", "CONFIRM");
         }
     } else {
         $buscaidProjeto = $buscaSoliciatacao->buscarID($idPronac);
         $idProjeto = $buscaidProjeto[0]->idProjeto;
         $p = $buscaSoliciatacao->buscarProdutostabelaAtiva($idProjeto);
         $inserirSolitacao = $buscaSoliciatacao->inserirSolicitacao($idPronac, $idSolicitante, $stPedido);
         $valores = $buscaSoliciatacao->buscarSolicitacao($idPronac);
         $idPedidoAlteracao = $valores[0]->idPedidoAlteracao;
         $status1 = $buscaSoliciatacao->buscaridPedidoAlteracao($idPedidoAlteracao);
         if (empty($status1)) {
             $justificativa = $buscaSoliciatacao->inserirJustificativa($idPedidoAlteracao, $dsJustificativa, $status);
         }
         foreach ($p as $result) {
             $idProduto = $result->idProduto;
             $d = $buscaSoliciatacao->compararProdutos($idPedidoAlteracao, $idProjeto, $idProduto);
             if (empty($dados)) {
                 $inserirprodutotabela = $buscaSoliciatacao->inserirProdutoPlano($idProjeto, $idPedidoAlteracao, $idProduto);
             }
         }
         $busca = $buscaSoliciatacao->buscarProdutobd($idPedidoAlteracao, $idProdutoNovo);
         if (empty($busca)) {
             $inserirproduto = $buscaSoliciatacao->inserirProduto($idPedidoAlteracao, $idProdutoNovo, $areaCultural, $segmentoCultural, $idPosicaoLogo, $qtProduzida, $qtPatrocinador, $qtOutros, $qtVendaNormal, $qtVendaPromocional, $vlUnitarioNormal, $vlUnitarioPromocional, $areaCultural, $segmentoCultural);
         } else {
             $updateproduto = $buscaSoliciatacao->alterarProduto($idPedidoAlteracao, $idProdutoNovo, $idPosicaoLogo, $qtProduzida, $qtPatrocinador, $qtOutros, $qtVendaNormal, $qtVendaPromocional, $vlUnitarioNormal, $vlUnitarioPromocional, $areaCultural, $segmentoCultural);
         }
         parent::message("Solicitação enviada com sucesso!", "solicitarreadequacaodoprojeto/index?idpronac={$idPronac}", "CONFIRM");
     }
 }
 /**
  * 
  */
 public function cadastrarcotacaoAction()
 {
     try {
         $this->_helper->layout->disableLayout();
         $post = Zend_Registry::get('post');
         $valido = true;
         // validar item
         if (!$post->produto) {
             throw new Exception('Item não selecionado ou inválido.');
         }
         //cadastro cotacao inicio
         $cadastro['nrCotacao'] = $post->nrCotacao;
         $cadastro['dsCotacao'] = $post->dsCotacao;
         $cadastro['dtCotacao'] = data::dataAmericana($post->dtCotacao);
         $cotacaoDAO = new Cotacao();
         $cotacaoxAgentesDao = new Cotacaoxagentes();
         if ($post->idcotacao == '') {
             $idCotacao = $cotacaoDAO->inserirCotacao($cadastro);
         } else {
             $idCotacao = $post->idcotacao;
             $cotacaoDAO->alterarCotacao($cadastro, " idCotacao = {$idCotacao} ");
             $cotacaoxAgentesDao->delete(" idCotacao = {$idCotacao} ");
             $CotacaoxPlanilhaAprovacao = new Cotacaoxplanilhaaprovacao();
             $CotacaoxPlanilhaAprovacao->delete(" idCotacao = {$idCotacao} ");
         }
         //cadastro fornecedor inicio
         $dadosFornecedor['idCotacao'] = $idCotacao;
         $dadosFornecedor['DispensaLicitacao'] = '';
         $dadosFornecedor['idLicitacao'] = '';
         $dadosFornecedor['idContrato'] = '';
         //******** FORNECEDOR 1 ************//
         if ($post->tpFornecedor1 == 'cpf') {
             $dadosFornecedor['TipoPessoa'] = 0;
             $dadosFornecedor['TipoNome'] = 18;
         } else {
             $dadosFornecedor['TipoPessoa'] = 1;
             $dadosFornecedor['TipoNome'] = 19;
         }
         $dadosFornecedor['idAgente'] = $post->idAgente1;
         $dadosFornecedor['CNPJCPF'] = preg_replace('/\\.|-|\\//', '', $post->CNPJCPF1);
         $dadosFornecedor['Descricao'] = $post->Descricao1;
         $idAgente1 = $this->cadastrarVinculoFornecedor($dadosFornecedor);
         $idCotacaoxAgentes1 = $cotacaoxAgentesDao->insert(array('idCotacao' => $idCotacao, 'idAgente' => $idAgente1, 'vlCotacao' => Mascara::delMaskMoeda($post->vlCotacao1)));
         //******** FORNECEDOR 2 ************//
         if ($post->tpFornecedor2 == 'cpf') {
             $dadosFornecedor['TipoPessoa'] = 0;
             $dadosFornecedor['TipoNome'] = 18;
         } else {
             $dadosFornecedor['TipoPessoa'] = 1;
             $dadosFornecedor['TipoNome'] = 19;
         }
         $dadosFornecedor['idAgente'] = $post->idAgente2;
         $dadosFornecedor['CNPJCPF'] = preg_replace('/\\.|-|\\//', '', $post->CNPJCPF2);
         $dadosFornecedor['Descricao'] = $post->Descricao2;
         $idAgente2 = $this->cadastrarVinculoFornecedor($dadosFornecedor);
         $idCotacaoxAgentes2 = $cotacaoxAgentesDao->insert(array('idCotacao' => $idCotacao, 'idAgente' => $idAgente2, 'vlCotacao' => Mascara::delMaskMoeda($post->vlCotacao2)));
         //******** FORNECEDOR 3 ************//
         if ($post->tpFornecedor3 == 'cpf') {
             $dadosFornecedor['TipoPessoa'] = 0;
             $dadosFornecedor['TipoNome'] = 18;
         } else {
             $dadosFornecedor['TipoPessoa'] = 1;
             $dadosFornecedor['TipoNome'] = 19;
         }
         $dadosFornecedor['idAgente'] = $post->idAgente3;
         $dadosFornecedor['CNPJCPF'] = preg_replace('/\\.|-|\\//', '', $post->CNPJCPF3);
         $dadosFornecedor['Descricao'] = $post->Descricao3;
         $idAgente3 = $this->cadastrarVinculoFornecedor($dadosFornecedor);
         $idCotacaoxAgentes3 = $cotacaoxAgentesDao->insert(array('idCotacao' => $idCotacao, 'idAgente' => $idAgente3, 'vlCotacao' => Mascara::delMaskMoeda($post->vlCotacao3)));
         //cadastro fornecedor fim
         //cadastro itens de custo inicio
         $dados['idCotacao'] = $idCotacao;
         $dados['idEtapa'] = $post->etapaSelect;
         $dados['idProduto'] = $post->produtoSelect;
         $dados['idItem'] = $post->itensSelect;
         $dados['idFornecedor'] = $post->fornecedorSelect;
         $dados['idDispensaLicitacao'] = '';
         $dados['idLicitacao'] = '';
         $dados['idContrato'] = '';
         foreach ($post->produto as $key => $idProduto) {
             $idCotacaoxAgente = 'idCotacaoxAgentes' . ($key + 1);
             $dados['idCotacao'] = $idCotacao;
             $dados['idEtapa'] = $post->etapa[$key];
             $dados['idProduto'] = $idProduto;
             $dados['idItem'] = $post->item[$key];
             $dados['idCotacaoxAgente'] = ${$idCotacaoxAgente};
             $dados['idDispensaLicitacao'] = '';
             $dados['idLicitacao'] = '';
             $dados['idContrato'] = '';
             $this->cadastravinculoitemcusto($dados);
             if (!$this->view->resposta['vinculado']) {
                 $valido = false;
             }
         }
         //cadastro itens de custo fim
         parent::message('Salvo com sucesso.', "comprovarexecucaofinanceira/incluircotacao/idusuario/{$this->view->idusuario}/idpronac/{$post->idpronac}/idcotacao/{$idCotacao}", 'CONFIRM');
     } catch (Exception $e) {
         $this->view->message = $e->getMessage();
         $this->view->message_type = 'ERROR';
         $this->_forward('incluircotacao');
     }
 }