package gcom.gui.cobranca.parcelamento; import gcom.cadastro.imovel.Categoria; import gcom.cadastro.imovel.ImovelPerfil; import gcom.cadastro.imovel.ImovelSituacaoTipo; import gcom.cadastro.imovel.Subcategoria; import gcom.cobranca.FiltroResolucaoDiretoria; import gcom.cobranca.ResolucaoDiretoria; import gcom.cobranca.parcelamento.FiltroParcelamentoPerfil; import gcom.cobranca.parcelamento.ParcDesctoInativVista; import gcom.cobranca.parcelamento.ParcelamentoDescontoAntiguidade; import gcom.cobranca.parcelamento.ParcelamentoDescontoInatividade; import gcom.cobranca.parcelamento.ParcelamentoPerfil; import gcom.cobranca.parcelamento.ParcelamentoQuantidadeReparcelamentoHelper; import gcom.fachada.Fachada; import gcom.gui.ActionServletException; import gcom.gui.GcomAction; import gcom.util.ConstantesSistema; import gcom.util.Util; import gcom.util.filtro.ParametroSimples; import java.math.BigDecimal; import java.util.Collection; import java.util.Iterator; import java.util.List; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; /** * Action form de manter Perfil de Parcelamento * * @author Vivianne Sousa * @created 12/05/2006 */ public class AtualizarPerfilParcelamentoAction extends GcomAction { /** * @author Vivianne Sousa * @date 12/05/2006 * * @param actionMapping * @param actionForm * @param httpServletRequest * @param httpServletResponse * @return */ public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { AtualizarParcelamentoPerfilActionForm atualizarParcelamentoPerfilActionForm = (AtualizarParcelamentoPerfilActionForm) actionForm; ActionForward retorno = actionMapping.findForward("telaSucesso"); Fachada fachada = Fachada.getInstancia(); HttpSession sessao = httpServletRequest.getSession(false); String idPerfilParcelamento = (String) sessao .getAttribute("idRegistroAtualizacao"); String numeroResolucaoDiretoria = atualizarParcelamentoPerfilActionForm .getNumeroResolucaoDiretoria(); FiltroParcelamentoPerfil filtroParcelamentoPerfil = new FiltroParcelamentoPerfil(); // Seta o filtro para buscar o ParcelamentoPerfil na base // e recuperar o idImovelSituacaoTipo,idImovelPerfil e o idSubcategoria filtroParcelamentoPerfil.adicionarParametro(new ParametroSimples( FiltroParcelamentoPerfil.ID, idPerfilParcelamento)); filtroParcelamentoPerfil .adicionarCaminhoParaCarregamentoEntidade("imovelSituacaoTipo"); filtroParcelamentoPerfil .adicionarCaminhoParaCarregamentoEntidade("imovelPerfil"); filtroParcelamentoPerfil .adicionarCaminhoParaCarregamentoEntidade("subcategoria"); filtroParcelamentoPerfil .adicionarCaminhoParaCarregamentoEntidade("categoria"); // Procura o ParcelamentoPerfil na base ParcelamentoPerfil parcelamentoPerfilNaBase = null; parcelamentoPerfilNaBase = (ParcelamentoPerfil) ((List) (fachada .pesquisar(filtroParcelamentoPerfil, ParcelamentoPerfil.class .getName()))).get(0); Integer idImovelSituacaoTipo = parcelamentoPerfilNaBase .getImovelSituacaoTipo().getId(); Integer idImovelPerfil = null; if (parcelamentoPerfilNaBase.getImovelPerfil() != null && !parcelamentoPerfilNaBase.getImovelPerfil().equals("")) { idImovelPerfil = parcelamentoPerfilNaBase.getImovelPerfil().getId(); } Integer idSubcategoria = null; if (parcelamentoPerfilNaBase.getSubcategoria() != null && !parcelamentoPerfilNaBase.getSubcategoria().equals("")) { idSubcategoria = parcelamentoPerfilNaBase.getSubcategoria().getId(); } Integer idCategoria = null; if (parcelamentoPerfilNaBase.getCategoria() != null && !parcelamentoPerfilNaBase.getCategoria().equals("")) { idCategoria = parcelamentoPerfilNaBase.getCategoria().getId(); } String percentualDescontoAcrescimoMulta = null; if (atualizarParcelamentoPerfilActionForm.getPercentualDescontoAcrescimoMulta() != null) { percentualDescontoAcrescimoMulta = atualizarParcelamentoPerfilActionForm .getPercentualDescontoAcrescimoMulta().toString().replace(",", "."); } String percentualDescontoAcrescimoJurosMora = null; if (atualizarParcelamentoPerfilActionForm.getPercentualDescontoAcrescimoJurosMora() != null) { percentualDescontoAcrescimoJurosMora = atualizarParcelamentoPerfilActionForm .getPercentualDescontoAcrescimoJurosMora().toString().replace(",", "."); } String percentualDescontoAcrescimoAtualizacaoMonetaria = null; if (atualizarParcelamentoPerfilActionForm.getPercentualDescontoAcrescimoAtualizacaoMonetaria() != null) { percentualDescontoAcrescimoAtualizacaoMonetaria = atualizarParcelamentoPerfilActionForm .getPercentualDescontoAcrescimoAtualizacaoMonetaria().toString().replace(",", "."); } String percentualDescontoAcrescimoPagamentoAVista = null; if (atualizarParcelamentoPerfilActionForm .getPercentualDescontoAcrescimoPagamentoAVista() != null && !atualizarParcelamentoPerfilActionForm .getPercentualDescontoAcrescimoPagamentoAVista() .equalsIgnoreCase("")) { percentualDescontoAcrescimoPagamentoAVista = atualizarParcelamentoPerfilActionForm .getPercentualDescontoAcrescimoPagamentoAVista().toString() .replace(",", "."); } String percentualTarifaMinimaPrestacao = null; if (atualizarParcelamentoPerfilActionForm .getPercentualTarifaMinimaPrestacao() != null && !atualizarParcelamentoPerfilActionForm .getPercentualTarifaMinimaPrestacao().equalsIgnoreCase( "")) { percentualTarifaMinimaPrestacao = atualizarParcelamentoPerfilActionForm .getPercentualTarifaMinimaPrestacao().toString().replace( ",", "."); } atualizaColecoesNaSessao(sessao, httpServletRequest); // collectionParcelamentoQuantidadeReparcelamentoHelper Collection collectionParcelamentoQuantidadeReparcelamentoHelper = null; if (sessao .getAttribute("collectionParcelamentoQuantidadeReparcelamentoHelper") != null) { collectionParcelamentoQuantidadeReparcelamentoHelper = (Collection) sessao .getAttribute("collectionParcelamentoQuantidadeReparcelamentoHelper"); } // collectionParcelamentoDescontoInatividade Collection collectionParcelamentoDescontoInatividade = null; if (sessao.getAttribute("collectionParcelamentoDescontoInatividade") != null) { collectionParcelamentoDescontoInatividade = (Collection) sessao .getAttribute("collectionParcelamentoDescontoInatividade"); } // collectionParcelamentoDescontoInatividadeAVista Collection collectionParcelamentoDescontoInatividadeAVista = null; if (sessao.getAttribute("collectionParcelamentoDescontoInatividadeAVista") != null) { collectionParcelamentoDescontoInatividadeAVista = (Collection) sessao .getAttribute("collectionParcelamentoDescontoInatividadeAVista"); } // collectionParcelamentoDescontoAntiguidade Collection collectionParcelamentoDescontoAntiguidade = null; if (sessao.getAttribute("collectionParcelamentoDescontoAntiguidade") != null) { collectionParcelamentoDescontoAntiguidade = (Collection) sessao .getAttribute("collectionParcelamentoDescontoAntiguidade"); } Collection collectionParcelamentoQuantidadeReparcelamentoHelperLinhaRemovidas = (Collection) sessao .getAttribute("collectionParcelamentoQuantidadeReparcelamentoHelperLinhaRemovidas"); Collection collectionParcelamentoDescontoInatividadeLinhaRemovidas = (Collection) sessao .getAttribute("collectionParcelamentoDescontoInatividadeLinhaRemovidas"); Collection collectionParcelamentoDescontoInatividadeAVistaLinhaRemovidas = (Collection) sessao .getAttribute("collectionParcelamentoDescontoInatividadeAVistaLinhaRemovidas"); Collection collectionParcelamentoDescontoAntiguidadeLinhaRemovidas = (Collection) sessao .getAttribute("collectionParcelamentoDescontoAntiguidadeLinhaRemovidas"); Collection collectionParcelamentoQuantidadePrestacaoHelperLinhaRemovidas = (Collection) sessao .getAttribute("collectionParcelamentoQuantidadePrestacaoHelperLinhaRemovidas"); validacaoFinal(percentualDescontoAcrescimoMulta, percentualDescontoAcrescimoJurosMora, percentualDescontoAcrescimoAtualizacaoMonetaria, percentualDescontoAcrescimoPagamentoAVista, percentualTarifaMinimaPrestacao, httpServletRequest, collectionParcelamentoQuantidadeReparcelamentoHelper, collectionParcelamentoDescontoAntiguidade, collectionParcelamentoDescontoInatividade, idPerfilParcelamento, fachada, collectionParcelamentoDescontoInatividadeAVista); ParcelamentoPerfil parcelamentoPerfil = new ParcelamentoPerfil(); parcelamentoPerfil.setId(new Integer(idPerfilParcelamento)); ResolucaoDiretoria resolucaoDiretoria = null; if (numeroResolucaoDiretoria != null && !numeroResolucaoDiretoria.equals("")) { FiltroResolucaoDiretoria filtroResolucaoDiretoria = new FiltroResolucaoDiretoria(); filtroResolucaoDiretoria.adicionarParametro(new ParametroSimples( FiltroResolucaoDiretoria.NUMERO, numeroResolucaoDiretoria)); Collection<ResolucaoDiretoria> collectionResolucaoDiretoria = fachada .pesquisar(filtroResolucaoDiretoria, ResolucaoDiretoria.class.getName()); if (collectionResolucaoDiretoria != null && !collectionResolucaoDiretoria.isEmpty()) { resolucaoDiretoria = (ResolucaoDiretoria) Util .retonarObjetoDeColecao(collectionResolucaoDiretoria); parcelamentoPerfil.setResolucaoDiretoria(resolucaoDiretoria); } } ImovelSituacaoTipo imovelSituacaoTipo = null; if (idImovelSituacaoTipo != null && !idImovelSituacaoTipo.equals("" + ConstantesSistema.NUMERO_NAO_INFORMADO)) { imovelSituacaoTipo = new ImovelSituacaoTipo(); imovelSituacaoTipo.setId(new Integer(idImovelSituacaoTipo)); parcelamentoPerfil.setImovelSituacaoTipo(imovelSituacaoTipo); } ImovelPerfil imovelPerfil = null; if (idImovelPerfil != null && !idImovelPerfil.equals("" + ConstantesSistema.NUMERO_NAO_INFORMADO)) { imovelPerfil = new ImovelPerfil(); imovelPerfil.setId(new Integer(idImovelPerfil)); parcelamentoPerfil.setImovelPerfil(imovelPerfil); } Subcategoria subcategoria = null; if (idSubcategoria != null && !idSubcategoria.equals("" + ConstantesSistema.NUMERO_NAO_INFORMADO)) { subcategoria = new Subcategoria(); subcategoria.setId(new Integer(idSubcategoria)); parcelamentoPerfil.setSubcategoria(subcategoria); } Categoria categoria = null; if (idCategoria != null && !idCategoria.equals("" + ConstantesSistema.NUMERO_NAO_INFORMADO)) { categoria = new Categoria(); categoria.setId(new Integer(idCategoria)); parcelamentoPerfil.setCategoria(categoria); } if (percentualDescontoAcrescimoMulta != null && !percentualDescontoAcrescimoMulta.equals("")) { BigDecimal percentual = Util.formatarMoedaRealparaBigDecimal(percentualDescontoAcrescimoMulta); verificarPercentualMaximo(percentual); parcelamentoPerfil.setPercentualDescontoAcrescimoMulta(percentual); } else { parcelamentoPerfil.setPercentualDescontoAcrescimoMulta(new BigDecimal(0)); } if (percentualDescontoAcrescimoJurosMora != null && !percentualDescontoAcrescimoJurosMora.equals("")) { BigDecimal percentual = Util.formatarMoedaRealparaBigDecimal(percentualDescontoAcrescimoJurosMora); verificarPercentualMaximo(percentual); parcelamentoPerfil.setPercentualDescontoAcrescimoJurosMora(percentual); } else { parcelamentoPerfil.setPercentualDescontoAcrescimoJurosMora(new BigDecimal(0)); } if (percentualDescontoAcrescimoAtualizacaoMonetaria != null && !percentualDescontoAcrescimoAtualizacaoMonetaria.equals("")) { BigDecimal percentual = Util.formatarMoedaRealparaBigDecimal(percentualDescontoAcrescimoAtualizacaoMonetaria); verificarPercentualMaximo(percentual); parcelamentoPerfil.setPercentualDescontoAcrescimoAtualizacaoMonetaria(percentual); } else { parcelamentoPerfil.setPercentualDescontoAcrescimoAtualizacaoMonetaria(new BigDecimal(0)); } if (percentualDescontoAcrescimoPagamentoAVista != null && !percentualDescontoAcrescimoPagamentoAVista.equals("")) { BigDecimal percentual = Util .formatarMoedaRealparaBigDecimal(percentualDescontoAcrescimoPagamentoAVista); verificarPercentualMaximo(percentual); parcelamentoPerfil.setPercentualDescontoAcrescimoPagamentoAVista(percentual); } else { parcelamentoPerfil.setPercentualDescontoAcrescimoPagamentoAVista(new BigDecimal(0)); } if (percentualTarifaMinimaPrestacao != null && !percentualTarifaMinimaPrestacao.equalsIgnoreCase("")) { parcelamentoPerfil .setPercentualTarifaMinimaPrestacao(new BigDecimal( percentualTarifaMinimaPrestacao)); } else { parcelamentoPerfil .setPercentualTarifaMinimaPrestacao(new BigDecimal(0)); } if (atualizarParcelamentoPerfilActionForm .getIndicadorParcelarChequeDevolvido() != null && !atualizarParcelamentoPerfilActionForm .getIndicadorParcelarChequeDevolvido().equals("")) { parcelamentoPerfil.setIndicadorChequeDevolvido(new Short( atualizarParcelamentoPerfilActionForm .getIndicadorParcelarChequeDevolvido())); } else { throw new ActionServletException( "atencao.campo_selecionado.obrigatorio", null, "N�o parcelar com cheque devolvido"); } if (atualizarParcelamentoPerfilActionForm.getConsumoMinimo() != null && !atualizarParcelamentoPerfilActionForm.getConsumoMinimo() .equals("")) { parcelamentoPerfil.setNumeroConsumoMinimo(new Integer( atualizarParcelamentoPerfilActionForm.getConsumoMinimo())); } if (atualizarParcelamentoPerfilActionForm .getPercentualVariacaoConsumoMedio() != null && !atualizarParcelamentoPerfilActionForm .getPercentualVariacaoConsumoMedio().equals("")) { parcelamentoPerfil .setPercentualVariacaoConsumoMedio(Util .formatarMoedaRealparaBigDecimal(atualizarParcelamentoPerfilActionForm .getPercentualVariacaoConsumoMedio())); } if (atualizarParcelamentoPerfilActionForm .getIndicadorParcelarSancoesMaisDeUmaConta() != null && !atualizarParcelamentoPerfilActionForm .getIndicadorParcelarSancoesMaisDeUmaConta().equals("")) { parcelamentoPerfil.setIndicadorSancoesUnicaConta(new Short( atualizarParcelamentoPerfilActionForm .getIndicadorParcelarSancoesMaisDeUmaConta())); } else { throw new ActionServletException( "atencao.campo_selecionado.obrigatorio", null, "N�o parcelar com san��es em mais de uma conta"); } if (atualizarParcelamentoPerfilActionForm.getNumeroConsumoEconomia() != null && !atualizarParcelamentoPerfilActionForm .getNumeroConsumoEconomia().trim().equals("")) { parcelamentoPerfil.setNumeroConsumoEconomia(new Integer( atualizarParcelamentoPerfilActionForm .getNumeroConsumoEconomia())); } if (atualizarParcelamentoPerfilActionForm.getNumeroAreaConstruida() != null && !atualizarParcelamentoPerfilActionForm .getNumeroAreaConstruida().trim().equals("")) { parcelamentoPerfil .setNumeroAreaConstruida(Util .formatarMoedaRealparaBigDecimal(atualizarParcelamentoPerfilActionForm .getNumeroAreaConstruida())); } if (atualizarParcelamentoPerfilActionForm .getIndicadorRetroativoTarifaSocial() != null && !atualizarParcelamentoPerfilActionForm .getIndicadorRetroativoTarifaSocial().equals("")) { parcelamentoPerfil.setIndicadorRetroativoTarifaSocial(new Short( atualizarParcelamentoPerfilActionForm .getIndicadorRetroativoTarifaSocial())); } else { throw new ActionServletException( "atencao.campo_selecionado.obrigatorio", null, "Indicador de retroativo de tarifa social"); } if (atualizarParcelamentoPerfilActionForm .getAnoMesReferenciaLimiteInferior() != null && !atualizarParcelamentoPerfilActionForm .getAnoMesReferenciaLimiteInferior().trim().equals("")) { parcelamentoPerfil .setAnoMesReferenciaLimiteInferior(new Integer( Util .formatarMesAnoParaAnoMesSemBarra(atualizarParcelamentoPerfilActionForm .getAnoMesReferenciaLimiteInferior()))); } if (atualizarParcelamentoPerfilActionForm .getAnoMesReferenciaLimiteSuperior() != null && !atualizarParcelamentoPerfilActionForm .getAnoMesReferenciaLimiteSuperior().trim().equals("")) { parcelamentoPerfil .setAnoMesReferenciaLimiteSuperior(new Integer( Util .formatarMesAnoParaAnoMesSemBarra(atualizarParcelamentoPerfilActionForm .getAnoMesReferenciaLimiteSuperior()))); } if (atualizarParcelamentoPerfilActionForm.getPercentualDescontoTarifaSocial() != null && !atualizarParcelamentoPerfilActionForm .getPercentualDescontoTarifaSocial().trim().equals("")) { BigDecimal percentual = Util .formatarMoedaRealparaBigDecimal(atualizarParcelamentoPerfilActionForm .getPercentualDescontoTarifaSocial()); verificarPercentualMaximo(percentual); parcelamentoPerfil.setPercentualDescontoTarifaSocial(percentual); } if (atualizarParcelamentoPerfilActionForm .getParcelaQuantidadeMinimaFatura() != null && !atualizarParcelamentoPerfilActionForm .getParcelaQuantidadeMinimaFatura().trim().equals("")) { parcelamentoPerfil.setParcelaQuantidadeMinimaFatura(new Integer( atualizarParcelamentoPerfilActionForm .getParcelaQuantidadeMinimaFatura())); } if (atualizarParcelamentoPerfilActionForm .getIndicadorAlertaParcelaMinima() != null && !atualizarParcelamentoPerfilActionForm .getIndicadorAlertaParcelaMinima().equals("")) { parcelamentoPerfil.setIndicadorAlertaParcelaMinima(new Short( atualizarParcelamentoPerfilActionForm .getIndicadorAlertaParcelaMinima())); } else { throw new ActionServletException( "atencao.campo_selecionado.obrigatorio", null, "Indicador de alerta de parcela m�nima"); } if (atualizarParcelamentoPerfilActionForm.getPercentualDescontoSancao() != null && !atualizarParcelamentoPerfilActionForm .getPercentualDescontoSancao().trim().equals("")) { BigDecimal percentual = Util .formatarMoedaRealparaBigDecimal(atualizarParcelamentoPerfilActionForm .getPercentualDescontoSancao()); verificarPercentualMaximo(percentual); parcelamentoPerfil.setPercentualDescontoSancao(percentual); } if (atualizarParcelamentoPerfilActionForm.getQuantidadeEconomias() != null && !atualizarParcelamentoPerfilActionForm .getQuantidadeEconomias().trim().equals("")) { parcelamentoPerfil.setQuantidadeEconomias(new Integer( atualizarParcelamentoPerfilActionForm .getQuantidadeEconomias())); } if (atualizarParcelamentoPerfilActionForm .getQuantidadeMaximaReparcelamento() != null && !atualizarParcelamentoPerfilActionForm .getQuantidadeMaximaReparcelamento().trim().equals("")) { parcelamentoPerfil.setQuantidadeMaximaReparcelamento(new Integer( atualizarParcelamentoPerfilActionForm .getQuantidadeMaximaReparcelamento())); } if (atualizarParcelamentoPerfilActionForm.getIndicadorEntradaMinima() != null && !atualizarParcelamentoPerfilActionForm .getIndicadorEntradaMinima().equals("")) { parcelamentoPerfil.setIndicadorEntradaMinima(new Short( atualizarParcelamentoPerfilActionForm .getIndicadorEntradaMinima())); } else { throw new ActionServletException( "atencao.campo_selecionado.obrigatorio", null, "Indicador de entrada m�nima"); } if (atualizarParcelamentoPerfilActionForm.getCapacidadeHidrometro() != null && !atualizarParcelamentoPerfilActionForm .getCapacidadeHidrometro().trim().equals("")) { parcelamentoPerfil.setCapacidadeHidrometro(new Short( atualizarParcelamentoPerfilActionForm .getCapacidadeHidrometro())); } else { throw new ActionServletException( "atencao.campo_selecionado.obrigatorio", null, "Indicador pesquisa capacidade do hidrometro"); } if (atualizarParcelamentoPerfilActionForm.getDataLimiteDescontoPagamentoAVista() != null && !atualizarParcelamentoPerfilActionForm.getDataLimiteDescontoPagamentoAVista().trim().equals("")){ parcelamentoPerfil.setDataLimiteDescontoPagamentoAVista( Util.converteStringParaDate(atualizarParcelamentoPerfilActionForm.getDataLimiteDescontoPagamentoAVista())); } parcelamentoPerfil .setUltimaAlteracao(Util .converteStringParaDateHora(atualizarParcelamentoPerfilActionForm .getUltimaAlteracao())); fachada .atualizarPerfilParcelamento( parcelamentoPerfil, collectionParcelamentoQuantidadeReparcelamentoHelper, collectionParcelamentoDescontoInatividade, collectionParcelamentoDescontoAntiguidade, collectionParcelamentoQuantidadeReparcelamentoHelperLinhaRemovidas, collectionParcelamentoDescontoInatividadeLinhaRemovidas, collectionParcelamentoDescontoAntiguidadeLinhaRemovidas, collectionParcelamentoQuantidadePrestacaoHelperLinhaRemovidas, this.getUsuarioLogado(httpServletRequest), collectionParcelamentoDescontoInatividadeAVista, collectionParcelamentoDescontoInatividadeAVistaLinhaRemovidas); sessao.removeAttribute("collectionParcelamentoQuantidadeReparcelamentoHelper"); sessao.removeAttribute("collectionParcelamentoDescontoInatividade"); sessao.removeAttribute("collectionParcelamentoDescontoAntiguidade"); sessao.removeAttribute("idRegistroAtualizacao"); sessao.removeAttribute("collectionParcelamentoQuantidadeReparcelamentoHelperLinhaRemovidas"); sessao.removeAttribute("collectionParcelamentoDescontoInatividadeLinhaRemovidas"); sessao.removeAttribute("collectionParcelamentoDescontoAntiguidadeLinhaRemovidas"); sessao.removeAttribute("collectionParcelamentoQuantidadePrestacaoHelperLinhaRemovidas"); sessao.removeAttribute("collectionParcelamentoDescontoInatividadeAVista"); sessao.removeAttribute("collectionParcelamentoDescontoInatividadeAVistaLinhaRemovidas"); // // Monta a p�gina de sucesso if (retorno.getName().equalsIgnoreCase("telaSucesso")) { montarPaginaSucesso(httpServletRequest, "Perfil de Parcelamento da RD de n�mero " + numeroResolucaoDiretoria + " atualizado com sucesso.", "Realizar outra Manuten��o de Perfil de Parcelamento", "exibirFiltrarPerfilParcelamentoAction.do?desfazer=S"); } return retorno; } private void validacaoFinal(String percentualDescontoAcrescimoMulta, String percentualDescontoAcrescimoJurosMora, String percentualDescontoAcrescimoAtualizacaoMonetaria, String percentualDescontoAcrescimoPagamentoAVista, String percentualTarifaMinimaPrestacao, HttpServletRequest httpServletRequest, Collection collectionParcelamentoQuantidadeReparcelamentoHelper, Collection collectionParcelamentoDescontoAntiguidade, Collection collectionParcelamentoDescontoInatividade, String idPerfilParcelamento, Fachada fachada, Collection collectionParcelamentoDescontoInatividadeAVista) { if (percentualDescontoAcrescimoMulta == null || percentualDescontoAcrescimoMulta.equalsIgnoreCase("")){ httpServletRequest.setAttribute("nomeCampo","percentualDescontoAcrescimoMulta"); //Informe Percentual de Desconto sobre Multa throw new ActionServletException("atencao.required", null, " Percentual de Desconto sobre Multa"); } if (percentualDescontoAcrescimoJurosMora == null || percentualDescontoAcrescimoJurosMora.equalsIgnoreCase("")){ httpServletRequest.setAttribute("nomeCampo","percentualDescontoAcrescimoJurosMora"); //Informe Percentual de Desconto sobre Juros Mora throw new ActionServletException("atencao.required", null, " Percentual de Desconto sobre Juros Mora"); } if (percentualDescontoAcrescimoAtualizacaoMonetaria == null || percentualDescontoAcrescimoAtualizacaoMonetaria.equalsIgnoreCase("")){ httpServletRequest.setAttribute("nomeCampo","percentualDescontoAcrescimoAtualizacaoMonetaria"); //Informe Percentual de Desconto sobre Atualiza��o Monet�ria throw new ActionServletException("atencao.required", null, " Percentual de Desconto sobre Atualiza��o Monet�ria"); } if (percentualDescontoAcrescimoPagamentoAVista == null || percentualDescontoAcrescimoPagamentoAVista.equalsIgnoreCase("")){ httpServletRequest.setAttribute("nomeCampo","percentualDescontoAcrescimoPagamentoAVista"); //Informe Percentual de Desconto sobre os Acr�scimos por Impontualidade para pagamento � vista throw new ActionServletException("atencao.required", null, " Percentual de Desconto sobre os Acr�scimos por Impontualidade para pagamento � vista"); } if (percentualTarifaMinimaPrestacao == null || percentualTarifaMinimaPrestacao.equalsIgnoreCase("")) { httpServletRequest.setAttribute("nomeCampo", "percentualTarifaMinimaPrestacao"); // Informe Percentual da Tarifa M�nima para C�lculo do Valor M�nimo // da Presta��o throw new ActionServletException("atencao.required", null, " Percentual da Tarifa M�nima para C�lculo do Valor M�nimo da Presta��o"); } // [FS0002]Verificar se perfil de parcelamento j� foi utilizado // FiltroParcelamento filtroParcelamento = new FiltroParcelamento(); // // filtroParcelamento.adicionarParametro(new ParametroSimples( // FiltroParcelamento.PARCELAMENTO_PERFIL_ID, idPerfilParcelamento)); // // Collection colecaoParcelamento = // fachada.pesquisar(filtroParcelamento, // Parcelamento.class.getName()); // // if (colecaoParcelamento != null && !colecaoParcelamento.isEmpty()) { // //Perfil de Parcelamento j� utilizado, n�o pode ser alterado nem // exclu�do. // throw new ActionServletException( // "atencao.perfil_parcelamento_ja_utilizado"); // } // if (collectionParcelamentoQuantidadeReparcelamentoHelper == null || collectionParcelamentoQuantidadeReparcelamentoHelper .isEmpty()) { throw new ActionServletException( // Informe os dados de Reparcelamento Consecutivo "atencao.required", null, " Reparcelamento Consecutivo"); } Iterator iterator = collectionParcelamentoQuantidadeReparcelamentoHelper .iterator(); while (iterator.hasNext()) { ParcelamentoQuantidadeReparcelamentoHelper parcelamentoQuantidadeReparcelamentoHelper = (ParcelamentoQuantidadeReparcelamentoHelper) iterator .next(); /* * if * (parcelamentoQuantidadeReparcelamentoHelper.getValorMinimoPrestacao() == * null){ throw new ActionServletException( // Informe Valor * M�nimo da Presta��o "atencao.required", null, " Valor M�nimo * da Presta��o"); } */ Collection collectionParcelamentoQuantidadePrestacaoHelper = parcelamentoQuantidadeReparcelamentoHelper .getCollectionParcelamentoQuantidadePrestacaoHelper(); if (collectionParcelamentoQuantidadePrestacaoHelper == null || collectionParcelamentoQuantidadePrestacaoHelper .isEmpty()) { throw new ActionServletException( // Informa��es do Parcelamento por Quantidade de // Reparcelamentos deve ser informado "atencao.campo.informado", null, "Informa��es do Parcelamento por Quantidade de Reparcelamentos"); } } // filtro para descobrir o percentual m�ximo de desconto permitido para // financiamento /* * FiltroSistemaParametro filtroSistemaParametro = new * FiltroSistemaParametro(); Collection colecaoSistemaParametros; * * colecaoSistemaParametros = fachada.pesquisar( filtroSistemaParametro, * SistemaParametro.class.getName()); SistemaParametro sistemaParametro = * (SistemaParametro)colecaoSistemaParametros .iterator().next(); * BigDecimal percentualMaximoAbatimentoPermitido = * sistemaParametro.getPercentualMaximoAbatimento(); */ if (collectionParcelamentoDescontoAntiguidade != null && !collectionParcelamentoDescontoAntiguidade.isEmpty()) { Iterator iteratorParcelamentoDescontoAntiguidade = collectionParcelamentoDescontoAntiguidade .iterator(); while (iteratorParcelamentoDescontoAntiguidade.hasNext()) { ParcelamentoDescontoAntiguidade parcelamentoDescontoAntiguidade = (ParcelamentoDescontoAntiguidade) iteratorParcelamentoDescontoAntiguidade .next(); if (parcelamentoDescontoAntiguidade .getPercentualDescontoSemRestabelecimento() == null) { throw new ActionServletException( // Percentual de Desconto Sem Restabelecimento "atencao.required", null, " Percentual de Desconto Sem Restabelecimento"); } if (parcelamentoDescontoAntiguidade .getPercentualDescontoComRestabelecimento() == null) { throw new ActionServletException( // Informe Percentual de Desconto Com Restabelecimento "atencao.required", null, " Percentual de Desconto Com Restabelecimento"); } if (parcelamentoDescontoAntiguidade .getPercentualDescontoAtivo() == null) { throw new ActionServletException( // Informe Percentual de Desconto Ativo "atencao.required", null, " Percentual de Desconto Ativo"); } } } if (collectionParcelamentoDescontoInatividade != null && !collectionParcelamentoDescontoInatividade.isEmpty()) { Iterator iteratorParcelamentoDescontoInatividade = collectionParcelamentoDescontoInatividade .iterator(); while (iteratorParcelamentoDescontoInatividade.hasNext()) { ParcelamentoDescontoInatividade parcelamentoDescontoInatividade = (ParcelamentoDescontoInatividade) iteratorParcelamentoDescontoInatividade .next(); if (parcelamentoDescontoInatividade .getPercentualDescontoSemRestabelecimento() == null) { throw new ActionServletException( // Percentual de Desconto Sem Restabelecimento "atencao.required", null, " Percentual de Desconto Sem Restabelecimento"); } if (parcelamentoDescontoInatividade .getPercentualDescontoComRestabelecimento() == null) { throw new ActionServletException( // Informe Percentual de Desconto Com Restabelecimento "atencao.required", null, " Percentual de Desconto Com Restabelecimento"); } } } if (collectionParcelamentoDescontoInatividadeAVista != null && !collectionParcelamentoDescontoInatividadeAVista.isEmpty()) { Iterator iteratorParcelamentoDescontoInatividade = collectionParcelamentoDescontoInatividadeAVista .iterator(); while (iteratorParcelamentoDescontoInatividade.hasNext()) { ParcDesctoInativVista parcelamentoDescontoInatividade = (ParcDesctoInativVista) iteratorParcelamentoDescontoInatividade.next(); if (parcelamentoDescontoInatividade .getPercentualDescontoSemRestabelecimento() == null) { throw new ActionServletException( // Percentual de Desconto Sem Restabelecimento "atencao.required", null, " Percentual de Desconto Sem Restabelecimento"); } if (parcelamentoDescontoInatividade .getPercentualDescontoComRestabelecimento() == null) { throw new ActionServletException( // Informe Percentual de Desconto Com Restabelecimento "atencao.required", null, " Percentual de Desconto Com Restabelecimento"); } } } } private void atualizaColecoesNaSessao(HttpSession sessao, HttpServletRequest httpServletRequest) { // collectionParcelamentoDescontoAntiguidade if (sessao.getAttribute("collectionParcelamentoDescontoAntiguidade") != null && !sessao.getAttribute( "collectionParcelamentoDescontoAntiguidade").equals("")) { Collection collectionParcelamentoDescontoAntiguidade = (Collection) sessao .getAttribute("collectionParcelamentoDescontoAntiguidade"); // cria as vari�veis para recuperar os par�metros do request e jogar // no objeto ParcelamentoDescontoAntiguidade String vlSemRestAntiguidade = null; String vlComRestAntiguidade = null; String vlDescontoAtivo = null; Iterator iteratorParcelamentoDescontoAntiguidade = collectionParcelamentoDescontoAntiguidade .iterator(); while (iteratorParcelamentoDescontoAntiguidade.hasNext()) { ParcelamentoDescontoAntiguidade parcelamentoDescontoAntiguidade = (ParcelamentoDescontoAntiguidade) iteratorParcelamentoDescontoAntiguidade .next(); long valorTempo = parcelamentoDescontoAntiguidade .getUltimaAlteracao().getTime(); vlSemRestAntiguidade = httpServletRequest .getParameter("vlSemRestAntiguidade" + valorTempo); vlComRestAntiguidade = httpServletRequest .getParameter("vlComRestAntiguidade" + valorTempo); vlDescontoAtivo = httpServletRequest .getParameter("vlDescontoAtivo" + valorTempo); // inseri essas vari�veis no objeto // ParcelamentoDescontoAntiguidade BigDecimal percentualDescontoSemRestabelecimentoAntiguidade = null; if (vlSemRestAntiguidade != null && !vlSemRestAntiguidade.equals("")) { percentualDescontoSemRestabelecimentoAntiguidade = Util .formatarMoedaRealparaBigDecimal(vlSemRestAntiguidade); } BigDecimal percentualDescontoComRestabelecimentoAntiguidade = null; if (vlComRestAntiguidade != null && !vlComRestAntiguidade.equals("")) { percentualDescontoComRestabelecimentoAntiguidade = Util .formatarMoedaRealparaBigDecimal(vlComRestAntiguidade); } BigDecimal percentualDescontoAtivoAntiguidade = null; if (vlDescontoAtivo != null && !vlDescontoAtivo.equals("")) { percentualDescontoAtivoAntiguidade = Util .formatarMoedaRealparaBigDecimal(vlDescontoAtivo); } parcelamentoDescontoAntiguidade .setPercentualDescontoSemRestabelecimento(percentualDescontoSemRestabelecimentoAntiguidade); parcelamentoDescontoAntiguidade .setPercentualDescontoComRestabelecimento(percentualDescontoComRestabelecimentoAntiguidade); parcelamentoDescontoAntiguidade .setPercentualDescontoAtivo(percentualDescontoAtivoAntiguidade); } } // collectionParcelamentoDescontoInatividade if (sessao.getAttribute("collectionParcelamentoDescontoInatividade") != null && !sessao.getAttribute( "collectionParcelamentoDescontoInatividade").equals("")) { Collection collectionParcelamentoDescontoInatividade = (Collection) sessao .getAttribute("collectionParcelamentoDescontoInatividade"); // cria as vari�veis para recuperar os par�metros do request e jogar // no objeto ParcelamentoDescontoInatividade String vlSemRestInatividade = null; String vlComRestInatividade = null; Iterator iteratorParcelamentoDescontoInatividade = collectionParcelamentoDescontoInatividade .iterator(); while (iteratorParcelamentoDescontoInatividade.hasNext()) { ParcelamentoDescontoInatividade parcelamentoDescontoInatividade = (ParcelamentoDescontoInatividade) iteratorParcelamentoDescontoInatividade .next(); long valorTempo = parcelamentoDescontoInatividade .getUltimaAlteracao().getTime(); vlSemRestInatividade = httpServletRequest .getParameter("vlSemRestInatividade" + valorTempo); vlComRestInatividade = httpServletRequest .getParameter("vlComRestInatividade" + valorTempo); // insere essas vari�veis no objeto // ParcelamentoDescontoInatividade BigDecimal percentualDescontoSemRestabelecimentoInatividade = null; if (vlSemRestInatividade != null && !vlSemRestInatividade.equals("")) { percentualDescontoSemRestabelecimentoInatividade = Util .formatarMoedaRealparaBigDecimal(vlSemRestInatividade); } BigDecimal percentualDescontoComRestabelecimentoInatividade = null; if (vlComRestInatividade != null && !vlComRestInatividade.equals("")) { percentualDescontoComRestabelecimentoInatividade = Util .formatarMoedaRealparaBigDecimal(vlComRestInatividade); } parcelamentoDescontoInatividade .setPercentualDescontoSemRestabelecimento(percentualDescontoSemRestabelecimentoInatividade); parcelamentoDescontoInatividade .setPercentualDescontoComRestabelecimento(percentualDescontoComRestabelecimentoInatividade); } } //collectionParcelamentoDescontoInatividadeAVista if (sessao.getAttribute("collectionParcelamentoDescontoInatividadeAVista") != null && !sessao.getAttribute("collectionParcelamentoDescontoInatividadeAVista").equals("")) { Collection collectionParcelamentoDescontoInatividadeAVista = (Collection) sessao .getAttribute("collectionParcelamentoDescontoInatividadeAVista"); // cria as vari�veis para recuperar os par�metros do request e jogar // no objeto ParcelamentoDescontoInatividade String vlSemRestInatividade = null; String vlComRestInatividade = null; Iterator iteratorParcelamentoDescontoInatividade = collectionParcelamentoDescontoInatividadeAVista.iterator(); while (iteratorParcelamentoDescontoInatividade.hasNext()) { ParcDesctoInativVista parcelamentoDescontoInatividade = (ParcDesctoInativVista) iteratorParcelamentoDescontoInatividade.next(); long valorTempo = parcelamentoDescontoInatividade.getUltimaAlteracao().getTime(); vlSemRestInatividade = (String) httpServletRequest.getParameter("vlSemRestInatividadeAVista"+ valorTempo); vlComRestInatividade = httpServletRequest.getParameter("vlComRestInatividadeAVista"+ valorTempo); // insere essas vari�veis no objeto ParcelamentoDescontoInatividade BigDecimal percentualDescontoSemRestabelecimentoInatividade = null; if (vlSemRestInatividade != null && !vlSemRestInatividade.equals("")) { percentualDescontoSemRestabelecimentoInatividade = Util .formatarMoedaRealparaBigDecimal(vlSemRestInatividade); } BigDecimal percentualDescontoComRestabelecimentoInatividade = null; if (vlComRestInatividade != null && !vlComRestInatividade.equals("")) { percentualDescontoComRestabelecimentoInatividade = Util .formatarMoedaRealparaBigDecimal(vlComRestInatividade); } parcelamentoDescontoInatividade. setPercentualDescontoSemRestabelecimento(percentualDescontoSemRestabelecimentoInatividade); parcelamentoDescontoInatividade. setPercentualDescontoComRestabelecimento(percentualDescontoComRestabelecimentoInatividade); } } // collectionParcelamentoQuantidadeReparcelamentoHelper /* * if * (sessao.getAttribute("collectionParcelamentoQuantidadeReparcelamentoHelper") != * null && * !sessao.getAttribute("collectionParcelamentoQuantidadeReparcelamentoHelper").equals( * "")) { * * Collection collectionParcelamentoQuantidadeReparcelamentoHelper = * (Collection) sessao * .getAttribute("collectionParcelamentoQuantidadeReparcelamentoHelper"); // * cria as vari�veis para recuperar os par�metros do request e jogar // * no objeto ParcelamentoQuantidadeReparcelamentoHelper String * vlMinPrest = null; * * Iterator iteratorParcelamentoQuantidadeReparcelamentoHelper = * collectionParcelamentoQuantidadeReparcelamentoHelper.iterator(); * * while (iteratorParcelamentoQuantidadeReparcelamentoHelper.hasNext()) { * ParcelamentoQuantidadeReparcelamentoHelper * parcelamentoQuantidadeReparcelamentoHelper = * (ParcelamentoQuantidadeReparcelamentoHelper) * iteratorParcelamentoQuantidadeReparcelamentoHelper .next(); long * valorTempo = * parcelamentoQuantidadeReparcelamentoHelper.getUltimaAlteracao() * .getTime(); vlMinPrest = (String) * httpServletRequest.getParameter("vlMinPrest" + valorTempo); * // insere essas vari�veis no objeto * ParcelamentoQuantidadeReparcelamentoHelper BigDecimal * valorMinimoPrestacao = null; if (vlMinPrest != null && * !vlMinPrest.equals("")) { valorMinimoPrestacao = * Util.formatarMoedaRealparaBigDecimal(vlMinPrest); } * * parcelamentoQuantidadeReparcelamentoHelper.setValorMinimoPrestacao(valorMinimoPrestacao); * } } */ } // [FS0010]-Verificar Percentual M�ximo private void verificarPercentualMaximo(BigDecimal percentual) { BigDecimal percentualMaximo = new BigDecimal("100"); if (percentual.compareTo(percentualMaximo) == 1) { throw new ActionServletException( "atencao.percentual_maior_percentual_maximo"); } } }