public function validaritemAction() { $auth = Zend_Auth::getInstance(); // pega a autenticação $idPronac = $this->_request->getParam("idPronac"); $idPlanilhaItem = $this->_request->getParam("idPlanilhaItem"); $idPlanilhaAprovacao = $this->_request->getParam("idPlanilhaAprovacao"); $redirector = $this->_helper->getHelper('Redirector'); $redirector->setExit(false)->setGotoSimple('analisar-comprovacao', 'realizarprestacaodecontas', null, array('idPronac' => $idPronac, 'idPlanilhaAprovacao' => $idPlanilhaAprovacao, 'idPlanilhaItem' => $idPlanilhaItem)); if (!$this->getRequest()->isPost()) { $this->_helper->flashMessenger->addMessage('Erro ao validar item.'); $this->_helper->flashMessengerType->addMessage('ERROR'); $redirector->redirectAndExit(); } $itemValidado = false; $tblComprovantePag = new ComprovantePagamentoxPlanilhaAprovacao(); $tblComprovantePag->getAdapter()->beginTransaction(); foreach ($this->getRequest()->getParam('comprovantePagamento') as $comprovantePagamento) { try { if (!isset($comprovantePagamento['situacao'])) { continue; } $rsComprovantePag = $tblComprovantePag->buscar(array('idComprovantePagamento=?' => $comprovantePagamento['idComprovantePagamento'], 'idPlanilhaAprovacao=?' => $comprovantePagamento['idPlanilhaAprovacao']))->current(); $rsComprovantePag->dtValidacao = date('Y/m/d H:i:s'); $rsComprovantePag->dsJustificativa = isset($comprovantePagamento['observacao']) ? $comprovantePagamento['observacao'] : null; $rsComprovantePag->stItemAvaliado = $comprovantePagamento['situacao']; # validacao de valor $tblComprovantePag->validarValorComprovado($idPronac, $idPlanilhaAprovacao, $idPlanilhaItem, $rsComprovantePag->vlComprovado); $rsComprovantePag->save(); $itemValidado = true; } catch (Exception $e) { $this->_helper->flashMessenger->addMessage($e->getMessage()); $this->_helper->flashMessengerType->addMessage('ERROR'); $tblComprovantePag->getAdapter()->rollBack(); $redirector->redirectAndExit(); } } if ($itemValidado) { $this->_helper->flashMessenger->addMessage('Item validado com sucesso!'); $this->_helper->flashMessengerType->addMessage('CONFIRM'); } else { $this->_helper->flashMessenger->addMessage('Preencha os dados para validação de item.'); $this->_helper->flashMessengerType->addMessage('ERROR'); } $tblComprovantePag->getAdapter()->commit(); $redirector->redirectAndExit(); }
/** * @todo remover esse metodo apos implementacao ideal planilha comprovacao */ private function comprovarPlanilhaAtualizarStatus($status, $idComprovantePagamento) { $comprovantePlanilha = new ComprovantePagamentoxPlanilhaAprovacao(); $comprovantePlanilha->update(array('stItemAvaliado' => $status), array('idComprovantePagamento = ?' => $idComprovantePagamento)); }
public function dadosdoitem($idPlanilhaAprovacao, $idpronac) { $cpxpaDAO = new ComprovantePagamentoxPlanilhaAprovacao(); $selectAux = $cpxpaDAO->valorComprovadoItem(true); $select = $this->select(); $select->setIntegrityCheck(false); $select->from(array('pa' => $this->_name), array('pa.idPlanilhaAprovacao', 'vlItem' => 'pa.vlUnitario', 'vlAprovado' => new Zend_Db_Expr('pa.vlUnitario*pa.qtItem*pa.nrOcorrencia')), 'SAC.dbo'); $select->joinInner(array('paux' => $this->valoresAgrupados($idpronac, true)), 'pa.idPlanilhaItem = paux.idPlanilhaItem AND pa.idEtapa = paux.idEtapa AND pa.idProduto = paux.idProduto AND pa.idUnidade = paux.idUnidade AND paux.idPlanilhaAprovacao = pa.idPlanilhaAprovacao ', array('paux.Total', 'paux.qtTotal')); $select->joinInner(array('pli' => 'tbPlanilhaItens'), 'pli.idPlanilhaItens = pa.idPlanilhaItem', array('idPlanilhaItens' => 'pli.idPlanilhaItens', 'NomeItem' => 'pli.Descricao'), 'SAC.dbo'); $select->joinInner(array('eta' => 'tbPlanilhaEtapa'), 'eta.idPlanilhaEtapa = pa.idEtapa', array('Etapa' => 'eta.Descricao'), 'SAC.dbo'); $select->joinLeft(array('pro' => 'Produto'), 'pro.Codigo = pa.idProduto', array('Produto' => new Zend_Db_Expr("CASE WHEN pro.Descricao IS NULL\n THEN 'Administração do Projeto'\n ELSE pro.Descricao END")), 'SAC.dbo'); $select->joinLeft(array('cpxpa' => 'tbComprovantePagamentoxPlanilhaAprovacao'), 'cpxpa.idPlanilhaAprovacao = pa.idPlanilhaAprovacao', array('cpxpa.stItemAvaliado', 'cpxpa.dsJustificativa', 'CONVERT(CHAR(23), cpxpa.dtValidacao, 120) AS dtValidacao'), 'BDCORPORATIVO.scSAC'); $select->joinLeft(array('cp' => 'tbComprovantePagamento'), 'cp.idComprovantePagamento = cpxpa.idComprovantePagamento', array(), 'BDCORPORATIVO.scSAC'); $select->joinLeft(array('di' => $selectAux), 'di.idPlanilhaAprovacao = pa.idPlanilhaAprovacao', array('di.vlComprovado')); $select->joinLeft(array('lxpa' => 'tbLicitacaoxPlanilhaAprovacao'), 'lxpa.idPlanilhaAprovacao = pa.idPlanilhaAprovacao', array(), 'BDCORPORATIVO.scSAC'); $select->joinLeft(array('lic' => 'tbLicitacao'), 'lxpa.idLicitacao = lic.idLicitacao', array('lic.nrLicitacao', 'modalidadeLicitacao' => 'lic.tpModalidade', 'processoLicitacao' => 'lic.nrProcesso', 'CONVERT(CHAR(23), lic.dtPublicacaoEdital, 120) AS dtPubliEditalLicitacao', 'objetoLicitacao' => 'lic.dsObjeto', 'fundamentoLicitacao' => 'lic.dsFundamentoLegal'), 'BDCORPORATIVO.scSAC'); $select->joinLeft(array('lxa' => 'tbLicitacaoxAgentes'), 'lxa.idLicitacao = lic.idLicitacao and lxa.stVencedor = 1', array(), 'BDCORPORATIVO.scSAC'); $select->joinLeft(array('dlxpa' => 'tbDispensaLicitacaoxPlanilhaAprovacao'), 'dlxpa.idPlanilhaAprovacao = pa.idPlanilhaAprovacao', array(), 'BDCORPORATIVO.scSAC'); $select->joinLeft(array('dlic' => 'tbDispensaLicitacao'), 'dlxpa.idDispensaLicitacao = dlic.idDispensaLicitacao', array('dsDispensa' => 'dlic.dsDispensaLicitacao', 'dtDispensa' => 'dlic.dtContrato'), 'BDCORPORATIVO.scSAC'); $select->joinLeft(array('cxpa' => 'tbCotacaoxPlanilhaAprovacao'), 'cxpa.idPlanilhaAprovacao = pa.idPlanilhaAprovacao', array(), 'BDCORPORATIVO.scSAC'); $select->joinLeft(array('cota' => 'tbCotacao'), 'cxpa.idCotacao = cota.idCotacao', array('cota.dsCotacao', 'cota.dtCotacao', 'cota.nrCotacao'), 'BDCORPORATIVO.scSAC'); $select->joinLeft(array('cxa' => 'tbCotacaoxAgentes'), 'cxa.idCotacao = cota.idCotacao and cxa.idCotacaoxAgentes = cxpa.idCotacaoxAgentes', array(), 'BDCORPORATIVO.scSAC'); $select->joinLeft(array('ag' => 'Agentes'), 'ag.idAgente = lxa.idAgente OR ag.idAgente = dlic.idAgente OR ag.idAgente = cxa.idAgente OR cp.idFornecedor = ag.idAgente', array('cpfcnpjFornecedor' => 'ag.CNPJCPF'), 'AGENTES.dbo'); $select->joinLeft(array('nm' => 'Nomes'), 'nm.idAgente = ag.idAgente', array('nmFornecedor' => 'nm.Descricao'), 'AGENTES.dbo'); $select->joinLeft(array('p' => 'Projetos'), 'pa.IdPRONAC = p.IdPRONAC', array('p.IdPRONAC', '(p.AnoProjeto + p.Sequencial) AS PRONAC', 'p.NomeProjeto'), 'SAC.dbo'); $select->where('pa.idPlanilhaAprovacao = ?', $idPlanilhaAprovacao); return $this->fetchAll($select); }
public function verificarvaloresajaxAction() { /* =============================================================================== */ /* ==== VERIFICA PERMISSAO DE ACESSO DO PROPONENTE A PROPOSTA OU AO PROJETO ====== */ /* =============================================================================== */ $this->verificarPermissaoAcesso(false, true, false); $this->_helper->layout->disableLayout(); $this->_helper->ViewRenderer->setNoRender(true); $post = Zend_Registry::get('post'); $idPlanilhaAprovacao = $post->idPlanilhaAprovacao; $valor = $post->valor; $idpronac = $post->idpronac; if (!empty($idPlanilhaAprovacao)) { $valor = str_replace('.', '', $valor); $valor = str_replace(',', '', $valor); $valor = $valor / 100; $cppaDao = new ComprovantePagamentoxPlanilhaAprovacao(); $total = $cppaDao->valorTotalPorItem($idPlanilhaAprovacao); $PlanilhaAprovacaoDAO = new PlanilhaAprovacao(); $resposta = $PlanilhaAprovacaoDAO->valoresAgrupados($idpronac, false); $resp = true; $valorAprovado = 0; foreach ($resposta as $value) { if ($value->idPlanilhaAprovacao == $idPlanilhaAprovacao) { if ($value->Total < $valor + $total[0]->Total) { $valorAprovado = $value->Total; $resp = false; } } } if ($resp) { echo json_encode(array('retorno' => true)); } else { echo json_encode(array('retorno' => false, 'mensagem' => utf8_encode('Nao é possivel registrar a comprovoção do valor R$' . number_format($valor + $total[0]->Total, 2, ',', '.') . ', tendo em vista que o valor aprovado é de R$' . number_format($valorAprovado, 2, ',', '.') . '.'))); } } else { //echo json_encode(array('retorno'=>false,'mensagem'=>utf8_encode('Selecione um item de custo!'))); echo json_encode(array('retorno' => true)); } }