diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioComissaoSintetico.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioComissaoSintetico.java index 3a4012b78..407ccd63b 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioComissaoSintetico.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioComissaoSintetico.java @@ -165,6 +165,7 @@ private Set pontoVendaConfiguracao; } } } + caulcaComissaoTotal(lsDadosRelatorio); setLsDadosRelatorio(lsDadosRelatorio); } @@ -275,20 +276,23 @@ private Set pontoVendaConfiguracao; } public void setLsDadosRelatorio(List lsDadosRelatorio) { + this.setCollectionDataSource(new JRBeanCollectionDataSource(lsDadosRelatorio)); + this.lsDadosRelatorio = lsDadosRelatorio; + } + + private void caulcaComissaoTotal(List lsDadosRelatorio) { if(lsDadosRelatorio!=null && !lsDadosRelatorio.isEmpty()) { - try { - lsDadosRelatorio.forEach(bean -> { + for (RelatorioComissaoSinteticoBean bean : lsDadosRelatorio) { + try { BigDecimal totalComissoes = bean.getComissaoTarifa() - .add(bean.getComissaoImpPosterior()) - .add(bean.getComissaoVendaImpPosterior()) - .add(bean.getComissaoExcBagagem()) - .add(bean.getComissaoOutros()); + .add(bean.getComissaoImpPosterior()!=null ? bean.getComissaoImpPosterior() : BigDecimal.ZERO) + .add(bean.getComissaoVendaImpPosterior()!=null ?bean.getComissaoVendaImpPosterior(): BigDecimal.ZERO) + .add(bean.getComissaoExcBagagem()!=null ? bean.getComissaoExcBagagem(): BigDecimal.ZERO) + .add(bean.getComissaoOutros()!=null ? bean.getComissaoOutros(): BigDecimal.ZERO); bean.setComissaoTotal(totalComissoes); - }); - this.setCollectionDataSource(new JRBeanCollectionDataSource(lsDadosRelatorio)); - this.lsDadosRelatorio = lsDadosRelatorio; - }catch(ArrayIndexOutOfBoundsException e) { - log.error("Erro a gerar relatorio Comissao sintetico", e); + }catch(ArrayIndexOutOfBoundsException | NullPointerException e) { + log.error("Erro a gerar relatorio Comissao sintetico", e); + } } } }