/** * Método para aplicar no banco de dados a desistência do recurso * @author Jefferson Alessandro <*****@*****.**> * @since 24/10/2013 */ public function recursoDesistenciaAction() { $post = Zend_Registry::get('post'); $idPronac = $this->_request->getParam("idPronac"); // pega o id do pronac via get $auth = Zend_Auth::getInstance(); if (strlen($idPronac) > 7) { $idPronac = Seguranca::dencrypt($idPronac); } if ($post->deacordo) { $dados = array('IdPRONAC' => $post->idPronac, 'dtSolicitacaoRecurso' => new Zend_Db_Expr('GETDATE()'), 'dsSolicitacaoRecurso' => 'Desistência do prazo recursal', 'idAgenteSolicitante' => $auth->getIdentity()->IdUsuario, 'stAtendimento' => 'N', 'siFaseProjeto' => 2, 'siRecurso' => 0, 'tpSolicitacao' => 'DR', 'tpRecurso' => 1, 'stAnalise' => null, 'stEstado' => 1); $tbRecurso = new tbRecurso(); $resultadoPesquisa = $tbRecurso->buscar(array('IdPRONAC = ?' => $_POST['idPronac'])); if (count($resultadoPesquisa) > 0) { $dados['tpRecurso'] = 2; } RecursoDAO::cadastrar($dados); parent::message('A desistência do prazo recursal foi cadastrada com sucesso!', "consultardadosprojeto?idPronac=" . Seguranca::encrypt($idPronac), "CONFIRM"); } else { parent::message('É necessário estar de acordo com os termos para registrar a sua desistência do prazo recursal!', "solicitarrecursodecisao/recurso-desistir?idPronac=" . Seguranca::encrypt($idPronac), "ERROR"); } }
<div class="sanfonaDiv<?php echo $sumirCusto; ?> "> <?php $i--; // $i = 7 ?> <?php for ($j = 1; $j <= 2; $j++) { ?> <a class="<?php echo $mAtivo[$i + $j]; ?> " href="<?php echo $this->url(array('controller' => $controle, 'action' => $acao[$i + $j], 'idpronac' => Seguranca::encrypt($this->idPronac)), '', true); ?> " <?php echo $onClick[$i + $j]; ?> title="Ir para <?php echo $menu[3][$j]; ?> "><?php echo $menu[3][$j]; ?> </a> <?php } ?> </div>
public function deletarImagemCumprimentoDoObjetoAction() { $url = '/comprovarexecucaofisica/etapas-de-trabalho-final/idpronac/' . $this->getRequest()->getParam('idpronac'); try { Seguranca::encrypt($this->getRequest()->getParam('idpronac')); $cumprimentoObjetoArquivoModel = new CumprimentoObjetoXArquivo(null, $this->getRequest()->getParam('idCumprimentoDoObjeto'), $this->getRequest()->getParam('idArquivo')); $cumprimentoObjetoArquivoModel->apagarArquivo(); parent::message('Imagem deletada com sucesso', $url, 'CONFIRM'); } catch (Exception $exception) { parent::message('Não foi possível deletar a imagem', $url, 'ERROR'); } }
/** * Método para inclusões de novos Produtos (Plano de Distribuição) * @access public * @param void * @return void */ public function cadastrarProdutosAction() { try { // verifica se o usuário logado tem permissão para acessar o projeto $this->verificarPermissaoAcesso(false, true, false); // objetos utilizados $this->Produto = new Produto(); $this->Area = new Area(); $this->Verificacao = new Verificacao(); $this->PreProjeto = new PreProjeto(); $this->tbPlanoDistribuicao = new tbPlanoDistribuicao(); $this->tbPedidoAlteracaoXTipoAlteracao = new tbPedidoAlteracaoXTipoAlteracao(); $this->tbPedidoAltProjetoXArquivo = new tbPedidoAltProjetoXArquivo(); // busca os dados das combos $this->view->produto = $this->Produto->buscar(array(), array('Descricao ASC')); $this->view->area = $this->Area->buscar(array('Codigo <> ?' => 7), array('Descricao ASC')); $this->view->posicaoLogo = $this->Verificacao->buscarTipos(array('t.idTipo = ?' => 3), array('v.Descricao ASC')); // pega o código do produto (se for vazio, faz o cadastro, caso contrário, faz a alteração ou exclusão) $idProduto = $this->_request->getParam('idproduto'); $this->view->idProduto = $idProduto; // busca os dados aprovados if (!empty($idProduto)) { $orderProdutoAP = array('p.stPrincipal DESC', 'd.Descricao'); $whereProdutoAP = array('p.idProjeto = ?' => $this->_idPreProjeto, 'p.stPlanoDistribuicaoProduto = ?' => 1, 'p.idProduto = ?' => $idProduto); $buscarAP = $this->tbPlanoDistribuicao->buscarProdutosAprovados($whereProdutoAP, $orderProdutoAP); $this->view->dadosAP = $buscarAP; // manda as informações para a visão // busca os dados com solicitação de readequação $whereProdutoSR = array('p.idPedidoAlteracao = ?' => $this->_idPedidoAlteracao, 'p.tpAcao <> ?' => 'E', 'p.idProduto = ?' => $idProduto, 'tpPlanoDistribuicao = ?' => 'SR'); $buscarSR = $this->tbPlanoDistribuicao->buscarProdutosSolicitados($whereProdutoSR, $orderProdutoAP); $this->view->dadosSR = $buscarSR; // manda as informações para a visão } else { $this->view->dadosAP = ''; $this->view->dadosSR = ''; } } catch (Exception $e) { parent::message($e->getMessage(), $this->_urlAtual, 'ERROR'); } // ========== INICIO: FORMULARIO ENVIADO VIA POST ========== if ($this->getRequest()->isPost()) { // recebe os dados do formulario $post = Zend_Registry::get('post'); $tpProduto = $post->tpProduto; $idArea = $post->area; $idSegmento = $post->segmento; $idPosicaoLogo = $post->posicaoLogo; $qtdPatrocinador = $post->patrocinador; $qtdDivulgacao = $post->divulgacao; $qtdBeneficiario = $post->beneficiario; $qtdNormal = $post->normal; $qtdPromocional = $post->promocional; $vlNormal = Mascara::delMaskMoeda($post->vlNormal); $vlPromocional = Mascara::delMaskMoeda($post->vlPromocional); $justificativa = $post->dsJustificativa; $stPedidoAlteracao = $post->stPedidoAlteracao; $siVerificacao = $post->siVerificacao; $tpAlteracaoProjeto = $post->tpAlteracaoProjeto; $tpAcao = $post->tpAcao; try { // validacao dos dados if (empty($idArea) || empty($idPosicaoLogo) || empty($justificativa)) { throw new Exception('Dados obrigatórios não informados!'); } // atualiza o status do pedido de readequacao $this->_stPedidoAlteracao = $stPedidoAlteracao; // salva os dados do pedido $this->salvarPedido($stPedidoAlteracao, $siVerificacao); // filtro para alteracao $whereItemPedido = array('idPedidoAlteracao = ?' => $this->_idPedidoAlteracao); // faz a copia da tabela original para a solicitada caso nao exista na solicitada, e, exista algum registro na aprovada $orderProdutoAP = array('p.stPrincipal DESC', 'd.Descricao'); $whereProdutoAP = array('p.idProjeto = ?' => $this->_idPreProjeto, 'p.stPlanoDistribuicaoProduto = ?' => 1); $buscarAP = $this->tbPlanoDistribuicao->buscarProdutosAprovados($whereProdutoAP, $orderProdutoAP); $whereProdutoSR = array('p.idPedidoAlteracao = ?' => $this->_idPedidoAlteracao, 'p.tpAcao <> ?' => 'E'); $buscarSR = $this->tbPlanoDistribuicao->buscarProdutosSolicitados($whereProdutoSR, $orderProdutoAP); if (count($buscarSR) <= 0 && count($buscarAP) > 0) { foreach ($buscarAP as $d) { $dadosCopia = array('idPlanoDistribuicao' => $d->idPlanoDistribuicao, 'cdArea' => $d->cdArea, 'cdSegmento' => $d->cdSegmento, 'idPedidoAlteracao' => $this->_idPedidoAlteracao, 'idProduto' => $d->idProduto, 'idPosicaoLogo' => $d->idPosicaoLogo, 'qtPatrocinador' => $d->qtdPatrocinador, 'qtProduzida' => $d->qtdProduzida, 'qtOutros' => $d->qtdOutros, 'qtVendaNormal' => $d->qtdVendaNormal, 'qtVendaPromocional' => $d->qtdVendaPromocional, 'vlUnitarioNormal' => $d->vlUnitarioNormal, 'vlUnitarioPromocional' => $d->vlUnitarioPromocional, 'stPrincipal' => $d->stPrincipal, 'tpAcao' => 'N', 'dtPlanoDistribuicao' => new Zend_Db_Expr('GETDATE()')); //INSERE UMA CÓPIA QUE NAO SERÁ ALTERADA - AP $dadosCopia['tpPlanoDistribuicao'] = 'AP'; $this->tbPlanoDistribuicao->inserir($dadosCopia); //INSERE UMA CÓPIA QUE SERÁ ALTERADA COM OS DADOS FORNECIDOS PELO PROPONENTE - SR $dadosCopia['tpPlanoDistribuicao'] = 'SR'; $this->tbPlanoDistribuicao->inserir($dadosCopia); } } // salva os dados do item do pedido if (isset($post->produto) && !empty($post->produto)) { $whereProduto = array_merge($whereItemPedido, array('idProduto = ?' => $post->produto, 'tpPlanoDistribuicao = ?' => 'SR')); } else { $whereProduto = array_merge($whereItemPedido, array('idProduto = ?' => $idProduto, 'tpPlanoDistribuicao = ?' => 'SR')); } if (count($this->tbPlanoDistribuicao->buscar($whereProduto)) <= 0) { // CADASTRA $dadosItemPedido = array('idPedidoAlteracao' => $this->_idPedidoAlteracao, 'idProduto' => $post->produto, 'cdArea' => $idArea, 'cdSegmento' => $idSegmento, 'idPosicaoLogo' => $idPosicaoLogo, 'qtProduzida' => $qtdBeneficiario, 'qtPatrocinador' => $qtdPatrocinador, 'qtOutros' => $qtdDivulgacao, 'qtVendaNormal' => $qtdNormal, 'qtVendaPromocional' => $qtdPromocional, 'vlUnitarioNormal' => $vlNormal, 'vlUnitarioPromocional' => $vlPromocional, 'stPrincipal' => 0, 'tpAcao' => $tpAcao, 'tpPlanoDistribuicao' => 'SR', 'dsjustificativa' => $justificativa, 'dtPlanoDistribuicao' => new Zend_Db_Expr('GETDATE()')); $this->tbPlanoDistribuicao->inserir($dadosItemPedido); } else { // ALTERA ou EXCLUI if ($tpAcao == 'E') { //EXCLUI AS PLANILHAS RELACIONADAS AO PRODUTO DA READEQUACAO $whereDeleteTbPlanilha = array('IdPRONAC = ?' => $this->_idPronac, 'idPedidoAlteracao = ?' => $this->_idPedidoAlteracao, 'idProduto = ?' => $idProduto, 'tpPlanilha = ?' => 'SR', 'tpAcao = ?' => 'I', 'stAtivo = ?' => 'N'); $this->tbPlanilhaAprovacao->delete($whereDeleteTbPlanilha); //EXCLUI O PRODUTO DA READEQUACAO $whereDeleteTbPlano = array('idPedidoAlteracao = ?' => $this->_idPedidoAlteracao, 'idProduto = ?' => $idProduto, 'tpPlanoDistribuicao = ?' => 'SR', 'stPrincipal = ?' => 0, 'tpAcao = ?' => 'I'); $this->tbPlanoDistribuicao->delete($whereDeleteTbPlano); } else { $dadosItemPedido = array('idPedidoAlteracao' => $this->_idPedidoAlteracao, 'cdArea' => $idArea, 'cdSegmento' => $idSegmento, 'idPosicaoLogo' => $idPosicaoLogo, 'qtProduzida' => $qtdBeneficiario, 'qtPatrocinador' => $qtdPatrocinador, 'qtOutros' => $qtdDivulgacao, 'qtVendaNormal' => $qtdNormal, 'qtVendaPromocional' => $qtdPromocional, 'vlUnitarioNormal' => $vlNormal, 'vlUnitarioPromocional' => $vlPromocional, 'tpAcao' => $tpAcao, 'dsjustificativa' => $justificativa, 'dtPlanoDistribuicao' => new Zend_Db_Expr('GETDATE()')); $this->tbPlanoDistribuicao->alterar($dadosItemPedido, $whereProduto); } } // salva os dados da justificativa $whereItemPedido = array_merge($whereItemPedido, array('tpAlteracaoProjeto = ?' => $tpAlteracaoProjeto)); // 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ção realizada com sucesso!', 'readequacao/produtos/idpronac/' . Seguranca::encrypt($this->_idPronac), 'CONFIRM'); } catch (Exception $e) { $this->view->message = $e->getMessage(); $this->view->message_type = 'ERROR'; } } // fecha if // ========== FIM: FORMULARIO ENVIADO VIA POST ========== }
echo $codPronac; ?> ','conteudo'); return false" title="Ir para Providência tomada">Providência tomada</a> </div> <!-- FIM - CONSULTAR DADOS DO PROJETO --> <!-- ======================= SOLICITAR READEQUACAO ======================= --> <?php if (in_array($this->intFaseProjeto, array('2'))) { ?> <?php if ($this->blnProcurador || $this->vinculo || $this->blnProponente) { ?> <a class="no_seta" href="<?php echo $this->url(array('controller' => 'readequacao', 'action' => 'index', 'idpronac' => Seguranca::encrypt($this->idPronac))); ?> ">Solicitar Readequação</a> <?php } ?> <?php } ?> <!-- FIM - SOLICITAR READEQUACAO --> <?php //if(($this->respProponente == 'P') && ($this->inabilitado == 'N') OR (($this->respProponente == 'R') && ($this->procuracaoValida == 'S') && ($this->inabilitado == 'N') && ($this->intFaseProjeto == 2))): if ($this->inabilitado == 'N' && $this->vinculo) { ?>
echo Seguranca::encrypt($this->idPronac); ?> " title="Metas Comprovadas" class="no_seta">Metas Comprovadas</a> <a href="<?php echo $this->baseUrl(); ?> /comprovarexecucaofisica/itens-comprovados?idpronac=<?php echo Seguranca::encrypt($this->idPronac); ?> " title="Itens Comprovados" class="no_seta">Itens Comprovados</a> <a href="<?php echo $this->baseUrl(); ?> /comprovarexecucaofisica/comprovantes-de-execucao?idpronac=<?php echo Seguranca::encrypt($this->idPronac); ?> " title="Comprovantes de Execução" class="no_seta">Comprovantes de Execução</a> <a href="<?php echo $this->baseUrl(); ?> /comprovarexecucaofisica/enviar-relatorio?idpronac=<?php echo Seguranca::encrypt($this->idPronac); ?> " title="Enviar Relatório" class="no_seta">Enviar Relatório</a> </div> <div class="bottom"></div> </div> </div> </div> <!-- ========== FIM MENU ========== -->
<?php if ($this->fnLiberarLinks['RelatorioTrimestral']) { ?> <a style="margin-left: 10px;" href="<?php echo $this->url(array('controller' => 'comprovarexecucaofisica', 'action' => 'relatoriotrimestral', 'idpronac' => Seguranca::encrypt($this->idPronac)), '', true); ?> ">Relatório Trimestral</a> <?php } ?> <?php if ($this->fnLiberarLinks['RelatorioFinal']) { ?> <a style="margin-left: 10px;" href="<?php echo $this->url(array('controller' => 'comprovarexecucaofisica', 'action' => 'etapas-de-trabalho-final', 'idpronac' => Seguranca::encrypt($this->idPronac)), '', true); ?> ">Comprovar Realização do Objeto</a> <?php } ?> </div> <?php } ?> <?php } ?> <!-- FIM - COMPROVACAO FISICA -->
public function cadastrarProrrogacaoAction() { $projetos = new Projetos(); $DadosProjeto = $projetos->buscar(array('idPronac = ?' => $_POST['pronac']))->current(); $dataI = explode('/', $_POST['dtInicio']); $dtI = checkdate($dataI[1], $dataI[0], $dataI[2]); if (!$dtI) { parent::message("Data Início inválida.", "solicitarprorrogacao", "ERROR"); } $dataF = explode('/', $_POST['dtFinal']); $dtF = checkdate($dataF[1], $dataF[0], $dataF[2]); if (!$dtF) { parent::message("Data Final inválida.", "solicitarprorrogacao", "ERROR"); } $pa = new paChecklistSolicitacaoProrrogacaoPrazo(); $resutadoPA = $pa->checkSolicitacao($_POST['pronac'], Data::dataAmericana($_POST['dtInicio']), Data::dataAmericana($_POST['dtFinal']), 'I'); if (count($resutadoPA) > 0) { $Projetos = new Projetos(); $this->view->dadosProjeto = $Projetos->buscar(array('IdPRONAC = ?' => $_POST['pronac'])); $this->view->Erros = $resutadoPA; } else { // $idDocumento = null; $idDocumento = ''; if (!empty($_FILES['arquivo']['tmp_name'])) { $arquivoNome = $_FILES['arquivo']['name']; // nome $arquivoTemp = $_FILES['arquivo']['tmp_name']; // nome temporário $arquivoTipo = $_FILES['arquivo']['type']; // tipo $arquivoTamanho = $_FILES['arquivo']['size']; // tamanho if (!empty($arquivoNome) && !empty($arquivoTemp)) { $arquivoExtensao = Upload::getExtensao($arquivoNome); // extensão $arquivoBinario = Upload::setBinario($arquivoTemp); // binário $arquivoHash = Upload::setHash($arquivoTemp); // hash } if (!isset($_FILES['arquivo'])) { parent::message("O arquivo não atende os requisitos informados no formulário.", "solicitarprorrogacao", "ERROR"); } if (empty($_FILES['arquivo']['tmp_name'])) { parent::message("Falha ao anexar o arquivo.", "solicitarprorrogacao", "ERROR"); } $tipos = array('pdf'); if (!in_array(strtolower($arquivoExtensao), $tipos)) { parent::message("Favor selecionar o arquivo no formato PDF!", "solicitarprorrogacao", "ERROR"); } $dataString = file_get_contents($arquivoTemp); $arrData = unpack("H*hex", $dataString); $data = "0x" . $arrData['hex']; // ==================== PERSISTE DADOS DO ARQUIVO =================// $dadosArquivo = array('nmArquivo' => $arquivoNome, 'sgExtensao' => $arquivoExtensao, 'biArquivo' => $data, 'dsDocumento' => 'Cadastro de Prorrogação de Prazo de Captação', 'idPronac' => $_POST['pronac'], 'idTipoDocumento' => 27); $Arquivo = new Arquivo(); $Arquivo->inserirUploads($dadosArquivo); $DocumentoProjeto = new tbDocumentoProjetoBDCORPORATIVO(); $dadosDocumento = $DocumentoProjeto->buscar(array('idPronac =?' => $_POST['pronac'], 'idTipoDocumento =?' => 27), array('idDocumento DESC')); $idDocumento = $dadosDocumento[0]->idDocumento; } $dados = array('idPronac' => $DadosProjeto->IdPRONAC, 'AnoProjeto' => $DadosProjeto->AnoProjeto, 'Sequencial' => $DadosProjeto->Sequencial, 'DtInicioExecucao' => $DadosProjeto->DtInicioExecucao, 'DtFimExecucao' => $DadosProjeto->DtFimExecucao, 'Justificativa' => $_POST['justificativa'], 'idUsuario' => $this->idUsuario, 'idDocumento' => $idDocumento, 'DtInicio' => Data::dataAmericana($_POST['dtInicio']), 'DtFinal' => Data::dataAmericana($_POST['dtFinal'])); $vw = new vwSolicitarProrrogacaoPrazoCaptacao(); $vw->inserir($dados); parent::message("Pedido de prorrogação enviado ao Ministério da Cultura com sucesso!", "consultardadosprojeto/index?idPronac=" . Seguranca::encrypt($DadosProjeto->IdPRONAC), "CONFIRM"); } }
public function remanejamentoMenorFinalizarAction() { //REMANEJAMENTO MENOR OU IGUAL A 20% $idPronac = $this->_request->getParam("idPronac"); if (strlen($idPronac) > 7) { $idPronac = Seguranca::dencrypt($idPronac); } $tbPlanilhaAprovacao = new tbPlanilhaAprovacao(); //ARRAY PARA BUSCAR VALOR TOTAL DA PLANILHA ATIVA $where = array(); $where['a.IdPRONAC = ?'] = $idPronac; $where['a.stAtivo = ?'] = 'S'; //PLANILHA ATIVA - GRUPO A $where['a.idEtapa in (?)'] = array(1, 2); $PlanilhaAtivaGrupoA = $tbPlanilhaAprovacao->valorTotalPlanilha($where)->current(); //PLANILHA ATIVA - GRUPO B $where['a.idEtapa in (?)'] = array(3); $PlanilhaAtivaGrupoB = $tbPlanilhaAprovacao->valorTotalPlanilha($where)->current(); //PLANILHA ATIVA - GRUPO C $where['a.idEtapa in (?)'] = array(4); $PlanilhaAtivaGrupoC = $tbPlanilhaAprovacao->valorTotalPlanilha($where)->current(); //PLANILHA ATIVA - GRUPO D $where['a.idEtapa in (?)'] = array(5); $PlanilhaAtivaGrupoD = $tbPlanilhaAprovacao->valorTotalPlanilha($where)->current(); //ARRAY PARA BUSCAR VALOR TOTAL DA PLANILHA REMANEJADA $where = array(); $where['a.IdPRONAC = ?'] = $idPronac; $where['a.tpPlanilha = ?'] = 'RP'; $where['a.stAtivo = ?'] = 'N'; //PLANILHA ATIVA - GRUPO A $where['a.idEtapa in (?)'] = array(1, 2); $PlanilhaRemanejadaGrupoA = $tbPlanilhaAprovacao->valorTotalPlanilha($where)->current(); //PLANILHA ATIVA - GRUPO B $where['a.idEtapa in (?)'] = array(3); $PlanilhaRemanejadaGrupoB = $tbPlanilhaAprovacao->valorTotalPlanilha($where)->current(); //PLANILHA ATIVA - GRUPO C $where['a.idEtapa in (?)'] = array(4); $PlanilhaRemanejadaGrupoC = $tbPlanilhaAprovacao->valorTotalPlanilha($where)->current(); //PLANILHA ATIVA - GRUPO D $where['a.idEtapa in (?)'] = array(5); $PlanilhaRemanejadaGrupoD = $tbPlanilhaAprovacao->valorTotalPlanilha($where)->current(); //Os grupos estão relacionados na tabela SAC.dbo.tbPlanilhaEtapa $valorTotalGrupoA = 0; $valorTotalGrupoB = 0; $valorTotalGrupoC = 0; $valorTotalGrupoD = 0; $valorTotalGrupoA = $PlanilhaAtivaGrupoA->Total - $PlanilhaRemanejadaGrupoA->Total; $valorTotalGrupoB = $PlanilhaAtivaGrupoB->Total - $PlanilhaRemanejadaGrupoB->Total; $valorTotalGrupoC = $PlanilhaAtivaGrupoC->Total - $PlanilhaRemanejadaGrupoC->Total; $valorTotalGrupoD = $PlanilhaAtivaGrupoD->Total - $PlanilhaRemanejadaGrupoD->Total; $erros = 0; if ($PlanilhaAtivaGrupoA->Total != $PlanilhaRemanejadaGrupoA->Total) { $erros++; } if ($PlanilhaAtivaGrupoB->Total != $PlanilhaRemanejadaGrupoB->Total) { $erros++; } if ($PlanilhaAtivaGrupoC->Total != $PlanilhaRemanejadaGrupoC->Total) { $erros++; } if ($PlanilhaAtivaGrupoD->Total != $PlanilhaRemanejadaGrupoD->Total) { $erros++; } $id = Seguranca::encrypt($idPronac); if ($erros > 0) { parent::message("<b>A T E N Ç Ã O !!!</b> Somente poderá finalizar a operação de remanejamento se os valores dos grupos A, B, C e D forem iguais a R\$0,00 (zero real)!", "consultardadosprojeto/remanejamento-menor?idPronac={$id}", "ERROR"); } else { $auth = Zend_Auth::getInstance(); // pega a autenticação $tblAgente = new Agentes(); $rsAgente = $tblAgente->buscar(array('CNPJCPF=?' => $auth->getIdentity()->Cpf))->current(); $tbReadequacao = new tbReadequacao(); $dadosReadequacao = array(); $dadosReadequacao['idPronac'] = $idPronac; $dadosReadequacao['idTipoReadequacao'] = 1; $dadosReadequacao['dtSolicitacao'] = new Zend_Db_Expr('GETDATE()'); $dadosReadequacao['idSolicitante'] = $rsAgente->idAgente; $dadosReadequacao['dsJustificativa'] = 'Readequação até 20%'; $dadosReadequacao['stAtendimento'] = 'D'; $dadosReadequacao['siEncaminhamento'] = 11; $dadosReadequacao['stEstado'] = 0; $idReadequacao = $tbReadequacao->inserir($dadosReadequacao); /*if($idReadequacao > 0){ $tbReadequacaoXtbTipoReadequacao = new tbReadequacaoXtbTipoReadequacao(); $dadosReadequacaoTipo = array(); $dadosReadequacaoTipo['idReadequacao'] = $idReadequacao; $dadosReadequacaoTipo['idTipoReadequacao'] = 1; $dadosReadequacaoTipo['dtSolicitacao'] = new Zend_Db_Expr('GETDATE()'); $dadosReadequacaoTipo['idSolicitante'] = $rsAgente->idAgente; $dadosReadequacaoTipo['dsSolicitacao'] = 'Readequação até 20%'; $idReadequacaoTipo = $tbReadequacaoXtbTipoReadequacao->inserir($dadosReadequacaoTipo); } else { parent::message("Ocorreu um erro durante o cadastro do remanejamento!", "consultardadosprojeto?idPronac=$id", "ERROR"); }*/ if ($idReadequacao > 0) { $d = array('stAtivo' => 'S'); $w = array('IdPRONAC = ?' => $idPronac, 'tpPlanilha = ?' => 'RP', 'stAtivo = ?' => 'N'); $update = $tbPlanilhaAprovacao->update($d, $w); $d2 = array('stAtivo' => 'N'); $w2 = array('IdPRONAC = ?' => $idPronac, 'tpPlanilha != ?' => 'RP', 'stAtivo = ?' => 'S'); $tbPlanilhaAprovacao->update($d2, $w2); parent::message("O remanejamento foi finalizado com sucesso!", "consultardadosprojeto?idPronac={$id}", "CONFIRM"); } else { parent::message("Ocorreu um erro durante o cadastro do remanejamento!", "consultardadosprojeto?idPronac={$id}", "ERROR"); } } }
private function validasituacao($dadosProjeto) { $post = Zend_Registry::get('post'); $tbl = new Captacao(); $capitacao = $tbl->listaCaptacao($dadosProjeto->AnoProjeto, $dadosProjeto->Sequencial); $erro = ""; $valor = 0; $situacao = 0; foreach ($capitacao as $capitacao) { $valor = $valor + $capitacao->CaptacaoReal; } $tbl2 = new Situacao(); $situacao = $tbl2->listasituacao(array($post->Situacao)); $situacao = $situacao[0]->StatusProjeto; if ($post->Situacao == 'E04' and $valor == 0) { $erro = "Projeto sem captação de recursos não pode ser arquivado nesta situação. A situação do projeto não foi alterada"; } elseif ($post->Situacao == 'E10' and $valor > 0) { $erro = "Situação incorreta. Para o projeto com captação a correta é E12. A situação do projeto não foi alterada"; } elseif ($post->Situacao == 'E11' and $valor > 0) { $erro = "Situação incorreta. Para o projeto com captação a correta é E15. A situação do projeto não foi alterada"; } elseif ($post->Situacao == 'E12' and $valor == 0) { $erro = "Situação incorreta. Para o projeto sem captação a correta é E10. A situação do projeto não foi alterada"; } elseif ($post->Situacao == 'E15' and $valor == 0) { $erro = "Situação incorreta. Para o projeto sem captação a correta é E11. A situação do projeto não foi alterada"; } elseif ($post->Situacao == 'E16' and $valor > 0) { $erro = "Situação incorreta. Para o projeto com captação a correta é E23. A situação do projeto não foi alterada"; } elseif ($post->Situacao == 'E23' and $valor == 0) { $erro = "Situação incorreta. Para o projeto sem captação a correta é E16. A situação do projeto não foi alterada"; } elseif ($post->Situacao == 'K00' and $valor > 0) { $erro = "Projeto com captação de recursos não pode ser arquivado. A situação do projeto não foi alterada"; } elseif ($situacao == 0) { $erro = "Situação desabilitada. A situação do projeto não foi alterada"; } if (strlen($erro) > 1) { parent::message($erro, "alterarprojeto/" . $post->pagina . "?pronac=" . Seguranca::encrypt($dadosProjeto->pronac), "ERROR"); } else { $tbl3 = new Projetos(); $tbl3->alterarSituacao(null, $dadosProjeto->AnoProjeto . $dadosProjeto->Sequencial, $post->Situacao); //Salvar Historico na tabela Situaç?o*/ return true; } }
public function componenteComissaoSalvarAvaliacaoAction() { if ($this->idPerfil != 118) { parent::message("Você não tem permissão para acessar essa área do sistema!", "principal", "ALERT"); } $idPronac = $_POST['idPronac']; $idReadequacao = $_POST['idReadequacao']; $parecerProjeto = $_POST['parecerProjeto']; $dsParecer = $_POST['dsParecer']; $campoTipoParecer = 8; $vlPlanilha = 0; $tbReadequacao = new tbReadequacao(); $dadosRead = $tbReadequacao->buscar(array('idReadequacao=?' => $idReadequacao))->current(); //SE FOR READEQUAÇÃO DE PLANILHA ORÇAMENTÁRIA, O CAMPO TipoParecer DA TABELA SAC.dbo.Parecer MUDARÁ. if ($dadosRead->idTipoReadequacao == 2) { $tbPlanilhaAprovacao = new tbPlanilhaAprovacao(); //BUSCAR VALOR TOTAL DA PLANILHA ATIVA $where = array(); $where['a.IdPRONAC = ?'] = $idPronac; $where['a.stAtivo = ?'] = 'S'; $PlanilhaAtiva = $tbPlanilhaAprovacao->valorTotalPlanilha($where)->current(); //BUSCAR VALOR TOTAL DA PLANILHA DE READEQUADA $where = array(); $where['a.IdPRONAC = ?'] = $idPronac; $where['a.tpPlanilha = ?'] = 'SR'; $where['a.stAtivo = ?'] = 'N'; $PlanilhaReadequada = $tbPlanilhaAprovacao->valorTotalPlanilha($where)->current(); if ($PlanilhaAtiva->Total > $PlanilhaReadequada->Total) { $vlPlanilha = $PlanilhaAtiva->Total - $PlanilhaReadequada->Total; $campoTipoParecer = 4; } else { $vlPlanilha = $PlanilhaReadequada->Total - $PlanilhaAtiva->Total; $campoTipoParecer = 2; } } try { $Projetos = new Projetos(); $enquadramentoDAO = new Enquadramento(); $buscaEnquadramento = $enquadramentoDAO->buscarDados($idPronac, null, false); $dadosProjeto = $Projetos->buscar(array('IdPRONAC = ?' => $idPronac)); if (count($dadosProjeto) > 0) { //CADASTRA OU ATUALIZA O PARECER DO TECNICO $parecerDAO = new Parecer(); $dadosParecer = array('idPRONAC' => $idPronac, 'AnoProjeto' => $dadosProjeto[0]->AnoProjeto, 'Sequencial' => $dadosProjeto[0]->Sequencial, 'TipoParecer' => $campoTipoParecer, 'ParecerFavoravel' => $parecerProjeto, 'DtParecer' => new Zend_Db_Expr("GETDATE()"), 'NumeroReuniao' => null, 'ResumoParecer' => $dsParecer, 'SugeridoReal' => $vlPlanilha, 'Atendimento' => 'S', 'idEnquadramento' => $buscaEnquadramento['IdEnquadramento'], 'stAtivo' => 1, 'idTipoAgente' => 6, 'Logon' => $this->idUsuario); foreach ($dadosParecer as $dp) { $parecerAntigo = array('Atendimento' => 'S', 'stAtivo' => 0); $whereUpdateParecer = 'IdPRONAC = ' . $idPronac; $alteraParecer = $parecerDAO->alterar($parecerAntigo, $whereUpdateParecer); } $tbReadequacaoXParecer = new tbReadequacaoXParecer(); $buscarParecer = $tbReadequacaoXParecer->buscarPareceresReadequacao(array('a.idReadequacao = ?' => $idReadequacao, 'b.idTipoAgente =?' => 6))->current(); if ($buscarParecer) { $whereUpdateParecer = 'IdParecer = ' . $buscarParecer->IdParecer; $parecerDAO->alterar($dadosParecer, $whereUpdateParecer); $idParecer = $buscarParecer->IdParecer; } else { $idParecer = $parecerDAO->inserir($dadosParecer); } $tbReadequacaoXParecer = new tbReadequacaoXParecer(); $parecerReadequacao = $tbReadequacaoXParecer->buscar(array('idReadequacao = ?' => $idReadequacao, 'idParecer =?' => $idParecer)); if (count($parecerReadequacao) == 0) { $dadosInclusao = array('idReadequacao' => $idReadequacao, 'idParecer' => $idParecer); $tbReadequacaoXParecer->inserir($dadosInclusao); } } if (isset($_POST['finalizarAvaliacao']) && $_POST['finalizarAvaliacao'] == 1) { $tbDistribuirReadequacao = new tbDistribuirReadequacao(); $dDP = $tbDistribuirReadequacao->buscar(array('idReadequacao = ?' => $idReadequacao, 'idUnidade =?' => 400, 'idAvaliador=?' => $this->idUsuario)); if (count($dDP) > 0) { //ATUALIZA A TABELA tbDistribuirReadequacao $dadosDP = array(); $dadosDP['DtRetornoAvaliador'] = new Zend_Db_Expr('GETDATE()'); $whereDP = "idDistribuirReadequacao = " . $dDP[0]->idDistribuirReadequacao; $x = $tbDistribuirReadequacao->update($dadosDP, $whereDP); $reuniao = new Reuniao(); $raberta = $reuniao->buscarReuniaoAberta(); $idNrReuniao = $raberta['stPlenaria'] == 'A' ? $raberta['idNrReuniao'] + 1 : $raberta['idNrReuniao']; $read = $tbReadequacao->buscarReadequacao(array('idReadequacao =?' => $idReadequacao))->current(); $stEstado = 0; if ($_POST['plenaria']) { $campoSiEncaminhamento = 8; // 8=Enviado à Plenária } else { $campoSiEncaminhamento = 9; // 9=Enviado para Checklist Publicação if (!in_array($read->idTipoReadequacao, array(2, 3, 10, 12, 15))) { $campoSiEncaminhamento = 15; // 15=Finaliza a readequação sem a necessidade de enviar para publicação no DOU. $stEstado = 1; } } //ATUALIZA A TABELA tbReadequacao $dados = array(); $dados['siEncaminhamento'] = $campoSiEncaminhamento; // Devolvido da análise técnica $dados['idNrReuniao'] = $idNrReuniao; $dados['stEstado'] = $stEstado; if ($parecerProjeto == 2) { $dados['stAnalise'] = 'AC'; } else { $dados['stAnalise'] = 'IC'; } $where = "idReadequacao = {$idReadequacao}"; $tbReadequacao = new tbReadequacao(); $tbReadequacao->update($dados, $where); if ($campoSiEncaminhamento != 8) { if ($parecerProjeto == 2) { //Se for parecer favorável, atualiza os dados solicitados na readequação // READEQUAÇÃO DE PLANILHA ORÇAMENTÁRIA if ($read->idTipoReadequacao == 2) { $Projetos = new Projetos(); $dadosPrj = $Projetos->find(array('IdPRONAC=?' => $read->idPronac))->current(); $tbPlanilhaAprovacao = new tbPlanilhaAprovacao(); //BUSCAR VALOR TOTAL DA PLANILHA ATIVA $where = array(); $where['a.IdPRONAC = ?'] = $read->idPronac; $where['a.stAtivo = ?'] = 'S'; $PlanilhaAtiva = $tbPlanilhaAprovacao->valorTotalPlanilha($where)->current(); //BUSCAR VALOR TOTAL DA PLANILHA DE READEQUADA $where = array(); $where['a.IdPRONAC = ?'] = $read->idPronac; $where['a.tpPlanilha = ?'] = 'SR'; $where['a.stAtivo = ?'] = 'N'; $PlanilhaReadequada = $tbPlanilhaAprovacao->valorTotalPlanilha($where)->current(); if ($PlanilhaAtiva->Total < $PlanilhaReadequada->Total) { $TipoAprovacao = 2; $dadosPrj->Situacao = 'D28'; } else { $TipoAprovacao = 4; $dadosPrj->Situacao = 'D29'; } $dadosPrj->save(); $AprovadoReal = number_format($PlanilhaReadequada->Total - $PlanilhaAtiva->Total, 2, '.', ''); $tbAprovacao = new Aprovacao(); $dadosAprovacao = array('IdPRONAC' => $read->idPronac, 'AnoProjeto' => $dadosPrj->AnoProjeto, 'Sequencial' => $dadosPrj->Sequencial, 'TipoAprovacao' => $TipoAprovacao, 'DtAprovacao' => new Zend_Db_Expr('GETDATE()'), 'ResumoAprovacao' => 'Parecer favorável para readequação', 'AprovadoReal' => $AprovadoReal, 'Logon' => $this->idUsuario, 'idReadequacao' => $idReadequacao); $idAprovacao = $tbAprovacao->inserir($dadosAprovacao); // READEQUAÇÃO DE ALTERAÇÃO DE RAZÃO SOCIAL } else { if ($read->idTipoReadequacao == 3) { //Se for readequação de alteração de razão social, atualiza os dados na AGENTES.dbo.Nomes. $Projetos = new Projetos(); $dadosPrj = $Projetos->find(array('IdPRONAC=?' => $read->idPronac))->current(); $tbAprovacao = new Aprovacao(); $dadosAprovacao = array('IdPRONAC' => $read->idPronac, 'AnoProjeto' => $dadosPrj->AnoProjeto, 'Sequencial' => $dadosPrj->Sequencial, 'TipoAprovacao' => 8, 'DtAprovacao' => new Zend_Db_Expr('GETDATE()'), 'ResumoAprovacao' => 'Parecer favorável para readequação', 'Logon' => $this->idUsuario, 'idReadequacao' => $idReadequacao); $idAprovacao = $tbAprovacao->inserir($dadosAprovacao); // READEQUAÇÃO DE AGÊNCIA BANCÁRIA } else { if ($read->idTipoReadequacao == 4) { //Se for readequação de agência bancária, atualiza os dados na SAC.dbo.PreProjeto.// READEQUAÇÃO DE ALTERAÇÃO DE RAZÃO SOCIAL $Projetos = new Projetos(); $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current(); $agenciaBancaria = str_replace('-', '', $read->dsSolicitacao); $tblContaBancaria = new ContaBancaria(); $arrayDadosBancarios = array('Agencia' => $agenciaBancaria, 'ContaBloqueada' => '000000000000', 'DtLoteRemessaCB' => NULL, 'LoteRemessaCB' => '00000', 'OcorrenciaCB' => '000', 'ContaLivre' => '000000000000', 'DtLoteRemessaCL' => NULL, 'LoteRemessaCL' => '00000', 'OcorrenciaCL' => '000', 'Logon' => $this->idUsuario, 'idPronac' => $read->idPronac); $whereDadosBancarios['AnoProjeto = ?'] = $dadosPrj->AnoProjeto; $whereDadosBancarios['Sequencial = ?'] = $dadosPrj->Sequencial; $tblContaBancaria->alterar($arrayDadosBancarios, $whereDadosBancarios); // READEQUAÇÃO DE SINOPSE DA OBRA } else { if ($read->idTipoReadequacao == 5) { //Se for readequação de sinopse da obra, atualiza os dados na SAC.dbo.PreProjeto. $Projetos = new Projetos(); $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current(); $PrePropojeto = new PreProjeto(); $dadosPreProjeto = $PrePropojeto->find(array('idPreProjeto=?' => $dadosPrj->idProjeto))->current(); $dadosPreProjeto->Sinopse = $read->dsSolicitacao; $dadosPreProjeto->save(); // READEQUAÇÃO DE IMPACTO AMBIENTAL } else { if ($read->idTipoReadequacao == 6) { //Se for readequação de impacto ambiental, atualiza os dados na SAC.dbo.PreProjeto. $Projetos = new Projetos(); $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current(); $PrePropojeto = new PreProjeto(); $dadosPreProjeto = $PrePropojeto->find(array('idPreProjeto=?' => $dadosPrj->idProjeto))->current(); $dadosPreProjeto->ImpactoAmbiental = $read->dsSolicitacao; $dadosPreProjeto->save(); // READEQUAÇÃO DE ESPECIFICAÇÃO TÉCNICA } else { if ($read->idTipoReadequacao == 7) { //Se for readequação de especificação técnica, atualiza os dados na SAC.dbo.PreProjeto. $Projetos = new Projetos(); $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current(); $PrePropojeto = new PreProjeto(); $dadosPreProjeto = $PrePropojeto->find(array('idPreProjeto=?' => $dadosPrj->idProjeto))->current(); $dadosPreProjeto->EspecificacaoTecnica = $read->dsSolicitacao; $dadosPreProjeto->save(); // READEQUAÇÃO DE ESTRATÉGIA DE EXECUÇÃO } else { if ($read->idTipoReadequacao == 8) { //Se for readequação de estratégia de execução, atualiza os dados na SAC.dbo.PreProjeto. $Projetos = new Projetos(); $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current(); $PrePropojeto = new PreProjeto(); $dadosPreProjeto = $PrePropojeto->find(array('idPreProjeto=?' => $dadosPrj->idProjeto))->current(); $dadosPreProjeto->EstrategiadeExecucao = $read->dsSolicitacao; $dadosPreProjeto->save(); // READEQUAÇÃO DE LOCAL DE REALIZAÇÃO } else { if ($read->idTipoReadequacao == 9) { //Se for readequação de local de realização, atualiza os dados na SAC.dbo.Abrangencia. $Abrangencia = new Abrangencia(); $tbAbrangencia = new tbAbrangencia(); $abrangencias = $tbAbrangencia->buscar(array('idReadequacao=?' => $idReadequacao)); foreach ($abrangencias as $abg) { $Projetos = new Projetos(); $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current(); //Se não houve avalição do conselheiro, pega a avaliação técnica como referencia. $avaliacao = $abg->tpAnaliseComissao; if ($abg->tpAnaliseComissao == 'N') { $avaliacao = $abg->tpAnaliseTecnica; } //Se a avaliação foi deferida, realiza as mudanças necessárias na tabela original. if ($avaliacao == 'D') { if ($abg->tpSolicitacao == 'E') { //Se a abrangencia foi excluída, atualiza os status da abrangencia na SAC.dbo.Abrangencia $Abrangencia->delete(array('idProjeto = ?' => $dadosPrj->idProjeto, 'idPais = ?' => $abg->idPais, 'idUF = ?' => $abg->idUF, 'idMunicipioIBGE = ?' => $abg->idMunicipioIBGE)); } else { if ($abg->tpSolicitacao == 'I') { //Se a abangência foi incluída, cria um novo registro na tabela SAC.dbo.Abrangencia $novoLocalRead = array(); $novoLocalRead['idProjeto'] = $dadosPrj->idProjeto; $novoLocalRead['idPais'] = $abg->idPais; $novoLocalRead['idUF'] = $abg->idUF; $novoLocalRead['idMunicipioIBGE'] = $abg->idMunicipioIBGE; $novoLocalRead['Usuario'] = $this->idUsuario; $novoLocalRead['stAbrangencia'] = 1; $Abrangencia->salvar($novoLocalRead); } } } } $dadosAbr = array(); $dadosAbr['stAtivo'] = 'N'; $whereAbr = "idPronac = {$read->idPronac} AND idReadequacao = {$idReadequacao}"; $tbAbrangencia->update($dadosAbr, $whereAbr); // READEQUAÇÃO DE ALTERAÇÃO DE PROPONENTE } else { if ($read->idTipoReadequacao == 10) { //Se for readequação de alteração de proponente, atualiza os dados na SAC.dbo.Projetos. $Projetos = new Projetos(); $dadosPrj = $Projetos->find(array('IdPRONAC=?' => $read->idPronac))->current(); $tbAprovacao = new Aprovacao(); $dadosAprovacao = array('IdPRONAC' => $read->idPronac, 'AnoProjeto' => $dadosPrj->AnoProjeto, 'Sequencial' => $dadosPrj->Sequencial, 'TipoAprovacao' => 8, 'DtAprovacao' => new Zend_Db_Expr('GETDATE()'), 'ResumoAprovacao' => 'Parecer favorável para readequação', 'Logon' => $this->idUsuario, 'idReadequacao' => $idReadequacao); $idAprovacao = $tbAprovacao->inserir($dadosAprovacao); // READEQUAÇÃO DE PLANO DE DISTRIBUIÇÃO } else { if ($read->idTipoReadequacao == 11) { //Se for readequação de plano de distribuição, atualiza os dados na SAC.dbo.PlanoDistribuicaoProduto. $PlanoDistribuicaoProduto = new PlanoDistribuicaoProduto(); $tbPlanoDistribuicao = new tbPlanoDistribuicao(); $planosDistribuicao = $tbPlanoDistribuicao->buscar(array('idReadequacao=?' => $idReadequacao)); foreach ($planosDistribuicao as $plano) { $Projetos = new Projetos(); $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current(); //Se não houve avalição do conselheiro, pega a avaliação técnica como referencia. $avaliacao = $plano->tpAnaliseComissao; if ($plano->tpAnaliseComissao == 'N') { $avaliacao = $plano->tpAnaliseTecnica; } //Se a avaliação foi deferida, realiza as mudanças necessárias na tabela original. if ($avaliacao == 'D') { if ($plano->tpSolicitacao == 'E') { //Se o plano de distribuição foi excluído, atualiza os status do plano na SAC.dbo.PlanoDistribuicaoProduto $PlanoDistribuicaoProduto->delete(array('idProjeto = ?' => $dadosPrj->idProjeto, 'idProduto = ?' => $plano->idProduto, 'Area = ?' => $plano->cdArea, 'Segmento = ?' => $plano->cdSegmento)); } else { if ($plano->tpSolicitacao == 'I') { //Se o plano de distribuição foi incluído, cria um novo registro na tabela SAC.dbo.PlanoDistribuicaoProduto $novoPlanoDistRead = array(); $novoPlanoDistRead['idProjeto'] = $dadosPrj->idProjeto; $novoPlanoDistRead['idProduto'] = $plano->idProduto; $novoPlanoDistRead['Area'] = $plano->cdArea; $novoPlanoDistRead['Segmento'] = $plano->cdSegmento; $novoPlanoDistRead['idPosicaoDaLogo'] = $plano->idPosicaoLogo; $novoPlanoDistRead['QtdeProduzida'] = $plano->qtProduzida; $novoPlanoDistRead['QtdePatrocinador'] = $plano->qtPatrocinador; $novoPlanoDistRead['QtdeProponente'] = $plano->qtProponente; $novoPlanoDistRead['QtdeOutros'] = $plano->qtOutros; $novoPlanoDistRead['QtdeVendaNormal'] = $plano->qtVendaNormal; $novoPlanoDistRead['QtdeVendaPromocional'] = $plano->qtVendaPromocional; $novoPlanoDistRead['PrecoUnitarioNormal'] = $plano->vlUnitarioNormal; $novoPlanoDistRead['PrecoUnitarioPromocional'] = $plano->vlUnitarioPromocional; $novoPlanoDistRead['stPrincipal'] = 0; $novoPlanoDistRead['Usuario'] = $this->idUsuario; $novoPlanoDistRead['dsJustificativaPosicaoLogo'] = null; $novoPlanoDistRead['stPlanoDistribuicaoProduto'] = 1; $PlanoDistribuicaoProduto->inserir($novoPlanoDistRead); } } } } $dadosPDD = array(); $dadosPDD['stAtivo'] = 'N'; $wherePDD = "idPronac = {$read->idPronac} AND idReadequacao = {$idReadequacao}"; $tbPlanoDistribuicao->update($dadosPDD, $wherePDD); // READEQUAÇÃO DE NOME DO PROJETO } else { if ($read->idTipoReadequacao == 12) { //Se for readequação de nome do projeto, insere o registo na tela de Checklist de Publicação. $Projetos = new Projetos(); $dadosPrj = $Projetos->find(array('IdPRONAC=?' => $read->idPronac))->current(); $tbAprovacao = new Aprovacao(); $dadosAprovacao = array('IdPRONAC' => $read->idPronac, 'AnoProjeto' => $dadosPrj->AnoProjeto, 'Sequencial' => $dadosPrj->Sequencial, 'TipoAprovacao' => 8, 'DtAprovacao' => new Zend_Db_Expr('GETDATE()'), 'ResumoAprovacao' => 'Parecer favorável para readequação', 'Logon' => $this->idUsuario, 'idReadequacao' => $idReadequacao); $idAprovacao = $tbAprovacao->inserir($dadosAprovacao); // READEQUAÇÃO DE PERÍODO DE EXECUÇÃO } else { if ($read->idTipoReadequacao == 13) { //Se for readequação de período de execução, atualiza os dados na SAC.dbo.Projetos. $dtFimExecucao = Data::dataAmericana($read->dsSolicitacao); $Projetos = new Projetos(); $dadosPrj = $Projetos->find(array('IdPRONAC=?' => $read->idPronac))->current(); $dadosPrj->DtFimExecucao = $dtFimExecucao; $dadosPrj->save(); // READEQUAÇÃO DE PLANO DE DIVULGAÇÃO } else { if ($read->idTipoReadequacao == 14) { //Se for readequação de plano de divulgacao, atualiza os dados na SAC.dbo.PlanoDeDivulgacao. $PlanoDeDivulgacao = new PlanoDeDivulgacao(); $tbPlanoDivulgacao = new tbPlanoDivulgacao(); $planosDivulgacao = $tbPlanoDivulgacao->buscar(array('idReadequacao=?' => $idReadequacao)); foreach ($planosDivulgacao as $plano) { $Projetos = new Projetos(); $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current(); //Se não houve avalição do conselheiro, pega a avaliação técnica como referencia. $avaliacao = $plano->tpAnaliseComissao; if ($plano->tpAnaliseComissao == 'N') { $avaliacao = $plano->tpAnaliseTecnica; } //Se a avaliação foi deferida, realiza as mudanças necessárias na tabela original. if ($avaliacao == 'D') { if ($plano->tpSolicitacao == 'E') { //Se o plano de divulgação foi excluído, atualiza os status do plano na SAC.dbo.PlanoDeDivulgacao $PlanoDivulgacaoEmQuestao = $PlanoDeDivulgacao->buscar(array('idProjeto = ?' => $dadosPrj->idProjeto, 'idPeca = ?' => $plano->idPeca, 'idVeiculo = ?' => $plano->idVeiculo))->current(); $tbLogomarca = new tbLogomarca(); $dadosLogomarcaDaDivulgacao = $tbLogomarca->buscar(array('idPlanoDivulgacao = ?' => $PlanoDivulgacaoEmQuestao->idPlanoDivulgacao))->current(); $dadosLogomarcaDaDivulgacao->delete(); $PlanoDivulgacaoEmQuestao->delete(); } else { if ($plano->tpSolicitacao == 'I') { //Se o plano de divulgação foi incluído, cria um novo registro na tabela SAC.dbo.PlanoDeDivulgacao $novoPlanoDivRead = array(); $novoPlanoDivRead['idProjeto'] = $dadosPrj->idProjeto; $novoPlanoDivRead['idPeca'] = $plano->idPeca; $novoPlanoDivRead['idVeiculo'] = $plano->idVeiculo; $novoPlanoDivRead['Usuario'] = $this->idUsuario; $novoPlanoDivRead['siPlanoDeDivulgacao'] = 0; $novoPlanoDivRead['idDocumento'] = null; $novoPlanoDivRead['stPlanoDivulgacao'] = 1; $PlanoDeDivulgacao->inserir($novoPlanoDivRead); } } } } $dadosPDD = array(); $dadosPDD['stAtivo'] = 'N'; $wherePDD = "idPronac = {$read->idPronac} AND idReadequacao = {$idReadequacao}"; $tbPlanoDivulgacao->update($dadosPDD, $wherePDD); // READEQUAÇÃO DE RESUMO DO PROJETO } else { if ($read->idTipoReadequacao == 15) { //Se for readequação de resumo do projeto, atualiza os dados na SAC.dbo.PreProjeto. $Projetos = new Projetos(); $dadosPrj = $Projetos->find(array('IdPRONAC=?' => $read->idPronac))->current(); $tbAprovacao = new Aprovacao(); $dadosAprovacao = array('IdPRONAC' => $read->idPronac, 'AnoProjeto' => $dadosPrj->AnoProjeto, 'Sequencial' => $dadosPrj->Sequencial, 'TipoAprovacao' => 8, 'DtAprovacao' => new Zend_Db_Expr('GETDATE()'), 'ResumoAprovacao' => 'Parecer favorável para readequação', 'Logon' => $this->idUsuario, 'idReadequacao' => $idReadequacao); $idAprovacao = $tbAprovacao->inserir($dadosAprovacao); // READEQUAÇÃO DE OBJETIVOS } else { if ($read->idTipoReadequacao == 16) { //Se for readequação de objetivos, atualiza os dados na SAC.dbo.PreProjeto. $Projetos = new Projetos(); $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current(); $PrePropojeto = new PreProjeto(); $dadosPreProjeto = $PrePropojeto->find(array('idPreProjeto=?' => $dadosPrj->idProjeto))->current(); $dadosPreProjeto->Objetivos = $read->dsSolicitacao; $dadosPreProjeto->save(); // READEQUAÇÃO DE JUSTIFICATIVA } else { if ($read->idTipoReadequacao == 17) { //Se for readequação de justificativa, atualiza os dados na SAC.dbo.PreProjeto. $Projetos = new Projetos(); $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current(); $PrePropojeto = new PreProjeto(); $dadosPreProjeto = $PrePropojeto->find(array('idPreProjeto=?' => $dadosPrj->idProjeto))->current(); $dadosPreProjeto->Justificativa = $read->dsSolicitacao; $dadosPreProjeto->save(); // READEQUAÇÃO DE ACESSIBILIDADE } else { if ($read->idTipoReadequacao == 18) { //Se for readequação de acesibilidade, atualiza os dados na SAC.dbo.PreProjeto. $Projetos = new Projetos(); $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current(); $PrePropojeto = new PreProjeto(); $dadosPreProjeto = $PrePropojeto->find(array('idPreProjeto=?' => $dadosPrj->idProjeto))->current(); $dadosPreProjeto->Acessibilidade = $read->dsSolicitacao; $dadosPreProjeto->save(); // READEQUAÇÃO DE DEMOCRATIZAÇÃO DE ACESSO } else { if ($read->idTipoReadequacao == 19) { //Se for readequação de democratização de acesso, atualiza os dados na SAC.dbo.PreProjeto. $Projetos = new Projetos(); $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current(); $PrePropojeto = new PreProjeto(); $dadosPreProjeto = $PrePropojeto->find(array('idPreProjeto=?' => $dadosPrj->idProjeto))->current(); $dadosPreProjeto->DemocratizacaoDeAcesso = $read->dsSolicitacao; $dadosPreProjeto->save(); // READEQUAÇÃO DE ETAPAS DE TRABALHO } else { if ($read->idTipoReadequacao == 20) { //Se for readequação de etapas de trabalho, atualiza os dados na SAC.dbo.PreProjeto. $Projetos = new Projetos(); $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current(); $PrePropojeto = new PreProjeto(); $dadosPreProjeto = $PrePropojeto->find(array('idPreProjeto=?' => $dadosPrj->idProjeto))->current(); $dadosPreProjeto->EtapaDeTrabalho = $read->dsSolicitacao; $dadosPreProjeto->save(); // READEQUAÇÃO DE FICHA TÉCNICA } else { if ($read->idTipoReadequacao == 21) { //Se for readequação de ficha técnica, atualiza os dados na SAC.dbo.PreProjeto. $Projetos = new Projetos(); $dadosPrj = $Projetos->buscar(array('IdPRONAC=?' => $read->idPronac))->current(); $PrePropojeto = new PreProjeto(); $dadosPreProjeto = $PrePropojeto->find(array('idPreProjeto=?' => $dadosPrj->idProjeto))->current(); $dadosPreProjeto->FichaTecnica = $read->dsSolicitacao; $dadosPreProjeto->save(); } } } } } } } } } } } } } } } } } } } } } //Atualiza a tabela tbDistribuirReadequacao $dados = array(); $dados['stValidacaoCoordenador'] = 1; $dados['DtValidacaoCoordenador'] = new Zend_Db_Expr('GETDATE()'); $dados['idCoordenador'] = $this->idUsuario; $where = "idReadequacao = {$idReadequacao}"; $tbDistribuirReadequacao = new tbDistribuirReadequacao(); $tbDistribuirReadequacao->update($dados, $where); } parent::message("A avaliação da readequação foi finalizada com sucesso!", "readequacoes/analisar-readequacoes-cnic", "CONFIRM"); } else { parent::message("Erro ao avaliar a readequação!", "form-avaliar-readequacao-cnic?id={$idReadequacao}", "ERROR"); } } $idReadequacao = Seguranca::encrypt($idReadequacao); parent::message("Dados salvos com sucesso!", "readequacoes/form-avaliar-readequacao-cnic?id={$idReadequacao}", "CONFIRM"); } catch (Exception $e) { parent::message($e->getMessage(), "readequacoes/form-avaliar-readequacao-cnic?id={$idReadequacao}", "ERROR"); } }