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 =
            (String) 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 =
            (String) 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);
      }
    }

    // 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);

    	}
    }	*/
  }
  private void validacaoFinal(
      String numeroResolucaoDiretoria,
      String imovelSituacaoTipo,
      String imovelPerfil,
      String subcategoria,
      String percentualDescontoAcrescimoMulta,
      String percentualDescontoAcrescimoJurosMora,
      String percentualDescontoAcrescimoAtualizacaoMonetaria,
      HttpServletRequest httpServletRequest,
      Collection collectionParcelamentoQuantidadeReparcelamentoHelper,
      Collection collectionParcelamentoDescontoAntiguidade,
      Collection collectionParcelamentoDescontoInatividade,
      String percentualTarifaMinimaPrestacao,
      Collection collectionParcelamentoDescontoInatividadeAVista,
      String percentualDescontoAcrescimoPagamentoAVista) {

    if (!Util.verificarNaoVazio(numeroResolucaoDiretoria)) {
      httpServletRequest.setAttribute("nomeCampo", "numeroResolucaoDiretoria");
      // Informe Numero da RD.
      throw new ActionServletException("atencao.numero_rd_nao_informado");
    }

    if ((imovelSituacaoTipo == null)
        || (imovelSituacaoTipo.equals("" + ConstantesSistema.NUMERO_NAO_INFORMADO))) {
      httpServletRequest.setAttribute("nomeCampo", "imovelSituacaoTipo");
      // Informe Tipo da Situação do Imóvel
      throw new ActionServletException("atencao.tipo_situacao_imovel_nao_informado");
    }
    /*
    if ((imovelPerfil == null)
    		|| (imovelPerfil.equals("" + ConstantesSistema.NUMERO_NAO_INFORMADO))) {
    	httpServletRequest.setAttribute("nomeCampo","imovelPerfil");
    	//Informe Perfil do Imóvel
    	throw new ActionServletException("atencao.perfil_imovel_nao_informado");
    }

    if ((subcategoria == null)
    		|| (subcategoria.equals("" + ConstantesSistema.NUMERO_NAO_INFORMADO))) {
    	httpServletRequest.setAttribute("nomeCampo","subcategoria");
    	//Informe Subcategoria
    	throw new ActionServletException("atencao.subcategoria_nao_informado");
    }

      	if (percentualDescontoAcrescimo == null ||
      			percentualDescontoAcrescimo.equalsIgnoreCase("")){
      		httpServletRequest.setAttribute("nomeCampo","percentualDescontoAcrescimo");
      		//Informe Percentual de Desconto sobre os Acréscimos  por Impontualidade
      		throw new ActionServletException("atencao.percentual_desconto_nao_informado");
      	}
      	*/

    /*
     *
     */
    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");
    }
    // fim alteração

    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");
    }

    // [FS0008]Verificar existência do perfil de parcelamento
    FiltroParcelamentoPerfil filtroParcelamentoPerfil = new FiltroParcelamentoPerfil();
    filtroParcelamentoPerfil.adicionarCaminhoParaCarregamentoEntidade("resolucaoDiretoria");
    filtroParcelamentoPerfil.adicionarParametro(
        new ParametroSimples(
            FiltroParcelamentoPerfil.RESOLUCAO_DIRETORIA_ID, numeroResolucaoDiretoria));
    filtroParcelamentoPerfil.adicionarCaminhoParaCarregamentoEntidade("imovelSituacaoTipo");
    filtroParcelamentoPerfil.adicionarParametro(
        new ParametroSimples(FiltroParcelamentoPerfil.IMOVEL_SITUACAO_TIPO_ID, imovelSituacaoTipo));
    filtroParcelamentoPerfil.adicionarCaminhoParaCarregamentoEntidade("imovelPerfil");

    if (imovelPerfil == null) {
      filtroParcelamentoPerfil.adicionarParametro(
          new ParametroNulo(FiltroParcelamentoPerfil.IMOVEL_PERFIL_ID));
    } else {
      filtroParcelamentoPerfil.adicionarParametro(
          new ParametroSimples(FiltroParcelamentoPerfil.IMOVEL_PERFIL_ID, imovelPerfil));
    }

    filtroParcelamentoPerfil.adicionarCaminhoParaCarregamentoEntidade("subcategoria");
    if (subcategoria == null) {
      filtroParcelamentoPerfil.adicionarParametro(
          new ParametroNulo(FiltroParcelamentoPerfil.SUBCATEGORIA_ID));
    } else {
      filtroParcelamentoPerfil.adicionarParametro(
          new ParametroSimples(FiltroParcelamentoPerfil.SUBCATEGORIA_ID, subcategoria));
    }

    Collection colecaoParcelamentoPerfil =
        fachada.pesquisar(filtroParcelamentoPerfil, ParcelamentoPerfil.class.getName());

    if (colecaoParcelamentoPerfil != null && !colecaoParcelamentoPerfil.isEmpty()) {
      throw new ActionServletException("atencao.perfil_parcelamento_ja_existe");
    }

    if (collectionParcelamentoQuantidadeReparcelamentoHelper == null
        || collectionParcelamentoQuantidadeReparcelamentoHelper.isEmpty()) {
      // Informe os dados de Reparcelamento Consecutivo
      throw new ActionServletException("atencao.required", null, "Reparcelamento Consecutivo");
    } else {
      Iterator iterator = collectionParcelamentoQuantidadeReparcelamentoHelper.iterator();

      while (iterator.hasNext()) {

        ParcelamentoQuantidadeReparcelamentoHelper parcelamentoQuantidadeReparcelamentoHelper =
            (ParcelamentoQuantidadeReparcelamentoHelper) iterator.next();
        /*
        if (parcelamentoQuantidadeReparcelamentoHelper.getValorMinimoPrestacao() == null){
         //Informe Valor Mínimo da Prestação
         throw new ActionServletException(
        			"atencao.required", null, "Valor Mínimo da Prestação");
        }*/

        Collection collectionParcelamentoQuantidadePrestacaoHelper =
            parcelamentoQuantidadeReparcelamentoHelper
                .getCollectionParcelamentoQuantidadePrestacaoHelper();

        if (collectionParcelamentoQuantidadePrestacaoHelper == null
            || collectionParcelamentoQuantidadePrestacaoHelper.isEmpty()) {
          // Informações do Parcelamento por Quantidade de Reparcelamentos deve ser informado
          throw new ActionServletException(
              "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) {
          // Percentual de Desconto Sem Restabelecimento
          throw new ActionServletException(
              "atencao.required", null, "  Percentual de Desconto Sem Restabelecimento");
        } else {
          // [FS0006]Verificar percentual de desconto
          // BigDecimal percentualDescontoSemRestabelecimento =
          // parcelamentoDescontoAntiguidade.getPercentualDescontoSemRestabelecimento();
          /*if (percentualDescontoSemRestabelecimento.compareTo(percentualMaximoAbatimentoPermitido) > 0 ){
          	//Percentual de Desconto Sem Restabelecimento é superior ao
          	//Percentual Máximo de Desconto de << percentualMaximoAbatimento >> permitido para Financiamneto
          	throw new ActionServletException(
          	"atencao.percentual_desconto_sem_rest_superior_percentual_max", null, "" + percentualMaximoAbatimentoPermitido);
          }	*/
        }

        if (parcelamentoDescontoAntiguidade.getPercentualDescontoComRestabelecimento() == null) {
          // Informe  Percentual de Desconto Com Restabelecimento
          throw new ActionServletException(
              "atencao.required", null, "  Percentual de Desconto Com Restabelecimento");
        } else {
          // [FS0006]Verificar percentual de desconto
          // BigDecimal percentualDescontoComRestabelecimento =
          // parcelamentoDescontoAntiguidade.getPercentualDescontoComRestabelecimento();
          /*if (percentualDescontoComRestabelecimento.compareTo(percentualMaximoAbatimentoPermitido) > 0  ){
          	//Percentual de Desconto Cem Restabelecimento é superior ao
          	//Percentual Máximo de Desconto de << percentualMaximoAbatimento >> permitido para Financiamneto
          	throw new ActionServletException(
          	"atencao.percentual_desconto_sem_rest_superior_percentual_max", null, "" + percentualMaximoAbatimentoPermitido);
          }*/
        }

        if (parcelamentoDescontoAntiguidade.getPercentualDescontoAtivo() == null) {
          throw new ActionServletException(
              // Informe  Percentual de Desconto Ativo
              "atencao.required", null, "  Percentual de Desconto Ativo");
        } else {
          // [FS0006]Verificar percentual de desconto
          // BigDecimal percentualDescontoAtivo =
          // parcelamentoDescontoAntiguidade.getPercentualDescontoAtivo();
          /*if (percentualDescontoAtivo.compareTo(percentualMaximoAbatimentoPermitido) > 0  ){
          	//Percentual de Desconto Ativo é superior ao
          	//Percentual Máximo de Desconto de << percentualMaximoAbatimento >> permitido para Financiamneto
          	throw new ActionServletException(
          	"atencao.percentual_desconto_sem_rest_superior_percentual_max", null, "" + percentualMaximoAbatimentoPermitido);
          }	*/
        }
      }
    }

    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");
        } // else{
        // [FS0006]Verificar percentual de desconto
        // BigDecimal percentualDescontoSemRestabelecimento =
        // parcelamentoDescontoInatividade.getPercentualDescontoSemRestabelecimento();
        /*if (percentualDescontoSemRestabelecimento.compareTo(percentualMaximoAbatimentoPermitido) > 0  ){
        	//Percentual de Desconto Sem Restabelecimento é superior ao
        	//Percentual Máximo de Desconto de << percentualMaximoAbatimento >> permitido para Financiamneto
        	throw new ActionServletException(
        	"atencao.percentual_desconto_sem_rest_superior_percentual_max", null, "" + percentualMaximoAbatimentoPermitido);
        }	*/
        // }

        if (parcelamentoDescontoInatividade.getPercentualDescontoComRestabelecimento() == null) {
          throw new ActionServletException(
              // Informe  Percentual de Desconto Com Restabelecimento
              "atencao.required", null, "  Percentual de Desconto Com Restabelecimento");
        } // else{
        // [FS0006]Verificar percentual de desconto
        // BigDecimal percentualDescontoComRestabelecimento =
        // parcelamentoDescontoInatividade.getPercentualDescontoComRestabelecimento();
        /*if (percentualDescontoComRestabelecimento.compareTo(percentualMaximoAbatimentoPermitido) > 0  ){
        	//Percentual de Desconto Cem Restabelecimento é superior ao
        	//Percentual Máximo de Desconto de << percentualMaximoAbatimento >> permitido para Financiamneto
        	throw new ActionServletException(
        	"atencao.percentual_desconto_sem_rest_superior_percentual_max", null, "" + percentualMaximoAbatimentoPermitido);
        }*/
        // }

      }
    }

    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 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");
        }
      }
    }
  }