From d14c28cfb35c5111f3f97a6a3cd57449e787e252 Mon Sep 17 00:00:00 2001 From: valdevir Date: Mon, 5 Jun 2023 11:54:05 -0300 Subject: [PATCH] fixes bug #AL-2518 --- .../impl/RelatorioComissaoSintetico.java | 32 +++++++++++++------ 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioComissaoSintetico.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioComissaoSintetico.java index 634543173..3a4012b78 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioComissaoSintetico.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioComissaoSintetico.java @@ -18,6 +18,8 @@ import java.util.Map; import java.util.Objects; import java.util.Set; +import org.apache.log4j.Logger; + import com.rjconsultores.ventaboletos.entidad.PuntoVenta; import com.rjconsultores.ventaboletos.relatorios.negocio.CalculoImposto; import com.rjconsultores.ventaboletos.relatorios.utilitarios.DataSource; @@ -32,14 +34,18 @@ import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource; public class RelatorioComissaoSintetico extends Relatorio { + +private Logger log; private List lsDadosRelatorio; private LinkedHashMap> mapCacheConfigComissao; private Set pontoVendaConfiguracao; + public RelatorioComissaoSintetico(Map parametros, Connection conexao) throws Exception { super(parametros, conexao); + log = Logger.getLogger(RelatorioComissaoSintetico.class); CalculoImposto.limpaCache(); this.mapCacheConfigComissao = new LinkedHashMap>(); @@ -269,16 +275,22 @@ private Set pontoVendaConfiguracao; } public void setLsDadosRelatorio(List lsDadosRelatorio) { - lsDadosRelatorio.forEach(bean -> { - BigDecimal totalComissoes = bean.getComissaoTarifa() - .add(bean.getComissaoImpPosterior()) - .add(bean.getComissaoVendaImpPosterior()) - .add(bean.getComissaoExcBagagem()) - .add(bean.getComissaoOutros()); - bean.setComissaoTotal(totalComissoes); - }); - this.setCollectionDataSource(new JRBeanCollectionDataSource(lsDadosRelatorio)); - this.lsDadosRelatorio = lsDadosRelatorio; + if(lsDadosRelatorio!=null && !lsDadosRelatorio.isEmpty()) { + try { + lsDadosRelatorio.forEach(bean -> { + BigDecimal totalComissoes = bean.getComissaoTarifa() + .add(bean.getComissaoImpPosterior()) + .add(bean.getComissaoVendaImpPosterior()) + .add(bean.getComissaoExcBagagem()) + .add(bean.getComissaoOutros()); + bean.setComissaoTotal(totalComissoes); + }); + this.setCollectionDataSource(new JRBeanCollectionDataSource(lsDadosRelatorio)); + this.lsDadosRelatorio = lsDadosRelatorio; + }catch(ArrayIndexOutOfBoundsException e) { + log.error("Erro a gerar relatorio Comissao sintetico", e); + } + } } public HashMap getConfigImposto(Integer empresaId, Integer estadoId) throws Exception {