public void testePodeFinalizar(AcessoFormBean formulario, HttpServletRequest request) throws Exception { Long idFluxo = FluxoHelper.create().getPedidoFromSession(request).getIdFluxo(); SsaDeipHelper interfaceSsaDeip = SsaDeipHelper.create(); SsaDeipTO interfaceSsaDeipTO = new SsaDeipTO(); String lista = ""; if (isTrocaEnderecoOfertaParcialWorkflow(idFluxo)) { formulario.setPodeFinalizar( AcessoDelegate.getInstance().canFinalize(new Long(formulario.getCdContrato()))); if (!formulario.isPodeFinalizar()) formulario.setMsgPodeFinalizar( "É necessário preencher o acesso nas designações adicionadas!"); } else if (isTrocaEnderecoWorkflow(idFluxo)) { formulario.setPodeFinalizar( AcessoDelegate.getInstance() .canFinalizeInAddressChangeWorkflow(new Long(formulario.getCdContrato()))); if (!formulario.isPodeFinalizar()) formulario.setMsgPodeFinalizar( "É necessário marcar a ocorrência de mudança de acesso nas designações pendentes!"); } else { PedidoTO pedidoTO = FluxoHelper.create().getPedidoFromSession(request); if (idFluxo.equals(FluxoEnum.ATIVACAO_DE_SERVICO.id) || idFluxo.equals(FluxoEnum.ATIVACAO_DE_SITE.id)) { if (!AcessoDelegate.getInstance().canFinalize(new Long(formulario.getCdContrato()))) { formulario.setPodeFinalizar(false); formulario.setMsgPodeFinalizar("Há dados a serem cadastrados!"); return; } } if (!PendenciasDelegate.getInstance().canFinalizeTarefa(pedidoTO.getId())) { formulario.setPodeFinalizar(false); formulario.setMsgPodeFinalizar("Há pendências no pedido!"); return; } for (SiteTO site : formulario.getSitesOcorrs()) { interfaceSsaDeipTO = interfaceSsaDeip.recuperaDadosInterface(Long.parseLong(site.getSev())); if (interfaceSsaDeip.possuiCampoNulo(interfaceSsaDeipTO)) { formulario.setPodeFinalizar(false); lista = lista + site.getDesignacao() + ","; formulario.setMsgPodeFinalizar( "Sev Inconsistente. Favor checar se as informações Estac. Entrega, SEV Mestra, Tecnologia e Velocidade estão preenchidas. Site(s): " + lista.substring(0, lista.length() - 1) + "."); } return; } formulario.setPodeFinalizar(true); /** * */ } }
public void testePodeFinalizarAltParcial(AcessoFormBean formulario, HttpServletRequest request) throws Exception { AcessoDelegate delegate = AcessoDelegate.getInstance(); SiteHelper siteHelper = new SiteHelper(); Long idContrato = new Long(formulario.getCdContrato()); boolean isChildrenOk = siteHelper.getNumSitesChildIncByContrato(idContrato) == delegate.getNumSitesChildWithAccessByContrato(idContrato); boolean isFathersOk = siteHelper.getNumSitesFatherByContrato(idContrato) == delegate.getNumSitesFatherWithCheckedChangeAccessByContrato(idContrato); if (!isChildrenOk || !isFathersOk) { formulario.setPodeFinalizar(false); formulario.setMsgPodeFinalizar( "É necessário preencher o acesso nas designações adicionadas e marcar a ocorrência de mudança de acesso na(s) pendente(s)!"); return; } if (!PendenciasDelegate.getInstance() .canFinalizeTarefa(FluxoHelper.create().getPedidoFromSession(request).getId())) { formulario.setPodeFinalizar(false); formulario.setMsgPodeFinalizar("Há pendências no pedido!"); return; } formulario.setPodeFinalizar(true); }