public function validarPercentualAction() { $this->_helper->layout->disableLayout(); // desabilita o layout $this->_helper->viewRenderer->setNoRender(true); $buscaPedido = new SolicitarReadequacaoCustoDAO(); $verificapedido = $buscaPedido->verificaPedidoAlteracao($_POST['idpronac']); // xd($_POST['idpronac']); //REGRA DOS 15% *********************************************** //soma valor total do projeto $planilhaAprovacao = new PlanilhaAprovacao(); $ProjetoAprovado = new Projetos(); $AprovadoReal = $ProjetoAprovado->buscarProjetosAprovados(array('pr.IdPRONAC = ?' => $_POST['idpronac'], 'ap.TipoAprovacao = ?' => 1))->current(); $AprovadoReal = $AprovadoReal['AprovadoReal']; //somar valor dos custos administrativo $arrWhereCustoAdm = array(); $arrWhereCustoAdm['idPronac = ?'] = $_POST['idpronac']; $arrWhereCustoAdm['idProduto = ?'] = 0; //custos administrativos $arrWhereCustoAdm['tpPlanilha = ? '] = 'SR'; // $valoracustosadministrativos = $planilhaAprovacao->somarItensPlanilhaAprovacao($arrWhereCustoAdm); // xd($valoracustosadministrativos); $valoracustosadministrativos = $valoracustosadministrativos['soma']; //$valoracustosadministrativos += (float) $_POST['qtd'] * $_POST['ocorrencia'] * $_POST['vlUnitario']; // $valorquinzeporceto = $AprovadoReal * 0.15; //pegando o valor de 15% do projeto para incluir na msg abaixo //***REGRA 20% DIVULGAÇÃO/COMERCIALIZAÇÃO *****************************************************************************/ //soma valor dos custos DIVULGAÇÃO / COMERCIALIZAÇÃO $arrWhereCustoDC = array(); $arrWhereCustoDC['idPronac = ?'] = $_POST['idpronac']; $arrWhereCustoDC['idEtapa = ?'] = 3; //custos DIVULGAÇÃO E COMERCIALIZAÇÃO $arrWhereCustoDC['tpPlanilha = ? '] = 'SR'; $valoracustosdivulgacaocomercializacao = $planilhaAprovacao->somarItensPlanilhaAprovacao($arrWhereCustoDC); $valoracustosdivulgacaocomercializacao = !empty($valoracustosdivulgacaocomercializacao['soma']) ? $valoracustosdivulgacaocomercializacao['soma'] : 0; // $valoracustosdivulgacaocomercializacao += (float) $_POST['qtd'] * $_POST['ocorrencia'] * $_POST['vlUnitario']; $valorvinteporcento = $AprovadoReal * 0.2; $novos_valores = array(); $dados = array('stPedidoAlteracao' => $_POST['acao']); if ($valoracustosdivulgacaocomercializacao > $valorvinteporcento) { // xd("valor porcento: " . "$valorvinteporcento" . "aprovado real: " . "$AprovadoReal". "valor cursto divulgação: " ."$valoracustosdivulgacaocomercializacao"); $atualizaPedido = SolicitarReadequacaoCustoDAO::atualizaPedidoAlteracao($dados, $_POST['idPedidoAlteracao']); //xd('2- custo produto'); $msg = 'Favor ajustar os custos de Divulgação / Comercialização que excedem <b>' . number_format($valorvinteporcento, '2', ',', '.') . '</b>, valor para que possa enviar sua solicitação de readequação.'; // $msg = 'Na readequação de planilha orçamentária, o sistema deve bloquear envio planilha com custos administrativos superior a 15% do valor total do projeto.'; $novos_valores['error'] = true; $novos_valores['descricao'] = utf8_encode($msg); echo json_encode($novos_valores); die; } else { if ($valoracustosadministrativos > $valorquinzeporceto) { // xd("valor porcento: " . "$valorquinzeporceto" . "aprovado real: " . "$AprovadoReal". "valor custo administrativo: " ."$valoracustosadministrativos"); $atualizaPedido = SolicitarReadequacaoCustoDAO::atualizaPedidoAlteracao($dados, $_POST['idPedidoAlteracao']); // xd('1- custo administrativo'); $msg = 'Favor ajustar os Custos Administrativos que excedem <b>' . number_format($valorquinzeporceto, '2', ',', '.') . '</b>, valor para que possa enviar sua solicitação de readequação.'; $novos_valores['error'] = true; $novos_valores['descricao'] = utf8_encode($msg); echo json_encode($novos_valores); die; } else { $novos_valores['error'] = false; echo json_encode($novos_valores); die; } } //***FINAL REGRA 15% CUSTOS ADMINISRATIVOS *****************************************************************************/ //***FINAL REGRA 20% DIVULGAÇÃO/COMERCIALIZAÇÃO*****************************************************************************/ }