From 12f690ede5a4afa28fd97e784b57802f158379f3 Mon Sep 17 00:00:00 2001 From: celio Date: Fri, 23 Sep 2022 17:25:25 +0000 Subject: [PATCH] fixes bug#AL-1188 dev: Wallace qua: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@114360 d1611594-4594-4d17-8e1d-87c2c4800839 --- ...trativoMovimentoPassageirosNovoLayout.java | 50 +++++++++++++------ 1 file changed, 36 insertions(+), 14 deletions(-) diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioQuadroDemonstrativoMovimentoPassageirosNovoLayout.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioQuadroDemonstrativoMovimentoPassageirosNovoLayout.java index 5095d3f4c..39fa268dd 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioQuadroDemonstrativoMovimentoPassageirosNovoLayout.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioQuadroDemonstrativoMovimentoPassageirosNovoLayout.java @@ -2,9 +2,7 @@ package com.rjconsultores.ventaboletos.relatorios.impl; import java.math.BigDecimal; import java.sql.Connection; -import java.sql.PreparedStatement; import java.sql.ResultSet; -import java.sql.SQLException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.HashMap; @@ -31,7 +29,8 @@ public class RelatorioQuadroDemonstrativoMovimentoPassageirosNovoLayout extends String dataDe = (String) parametros.get("DATA_DE"), dataAte = (String) parametros.get("DATA_ATE"), linhasIds = null; Boolean isLinhas = false; Integer empresaId = null; - + List> dadosOrdenados = new ArrayList>(); + if (parametros.get("LINHAS") != null) { linhasIds = (String) parametros.get("LINHAS"); isLinhas = true; @@ -65,7 +64,7 @@ public class RelatorioQuadroDemonstrativoMovimentoPassageirosNovoLayout extends dataResult.put("totalReceita", rset.getBigDecimal("totalReceita")); dataResult.put("numRuta", rset.getString("numRuta")); - for (Iterator iterator = dados.iterator(); iterator.hasNext();) { + for (Iterator iterator = dadosOrdenados.iterator(); iterator.hasNext();) { @SuppressWarnings("unchecked") Map map = (Map) iterator.next(); @@ -96,13 +95,14 @@ public class RelatorioQuadroDemonstrativoMovimentoPassageirosNovoLayout extends } } - + if (!agrupar) { - this.dados.add(dataResult); + dadosOrdenados.add(dataResult); } } + this.dados.addAll(ordenaListMap(dadosOrdenados)); this.resultSet = rset; } }); @@ -137,7 +137,7 @@ public class RelatorioQuadroDemonstrativoMovimentoPassageirosNovoLayout extends sql.append(" END "); sql.append(" ) AS totalvolta, "); sql.append(" rc.rutacombinacion_id AS rutaCombinacionId, "); - sql.append(" rs.numsecuencia, "); + sql.append(" tri.numsecuencia, "); sql.append(" r.indsentidoida "); sql.append(" FROM "); @@ -165,9 +165,10 @@ public class RelatorioQuadroDemonstrativoMovimentoPassageirosNovoLayout extends sql.append(" AND tar.destino_id = b.destino_id "); sql.append(" AND tar.TRAMO_ID = tr.TRAMO_ID "); sql.append(" AND tar.activo = 1 ) "); - sql.append(" LEFT JOIN ruta_secuencia rs ON (tr.tramo_id = rs.tramo_id "); - sql.append(" AND r.ruta_id = rs.ruta_id "); - sql.append(" AND rs.activo =1 ) "); + sql.append(" LEFT JOIN corrida_tramo tri ON ( b.corrida_id = tri.corrida_id "); + sql.append(" AND tri.origen_id = b.origen_id "); + sql.append(" AND b.feccorrida = tri.feccorrida "); + sql.append(" AND tri.activo = 1 ) "); sql.append(" WHERE b.empresacorrida_id IN :empresa_id "); @@ -187,14 +188,35 @@ public class RelatorioQuadroDemonstrativoMovimentoPassageirosNovoLayout extends sql.append(" ori.descparada, "); sql.append(" des.descparada, "); sql.append(" rc.rutacombinacion_id, "); - sql.append(" rs.numsecuencia,"); + sql.append(" tri.numsecuencia,"); sql.append(" r.indsentidoida "); sql.append(" ORDER BY "); sql.append(" r.indsentidoida DESC, "); - sql.append(" rs.numsecuencia, "); - sql.append(" r.descruta, "); - sql.append(" rc.rutacombinacion_id "); + sql.append(" tri.numsecuencia, "); + sql.append(" r.descruta, "); + sql.append(" rc.rutacombinacion_id "); return sql.toString(); } + + public List> ordenaListMap(List> dadosOrdenados) { + + List> semelhancas = new ArrayList>(); + for ( Map p : dadosOrdenados ) { + String origem = p.get("origem").toString(); + + for (Map dado : dadosOrdenados) { + @SuppressWarnings("unchecked") + Map map = (Map) dado; + + if (origem.equals(map.get("origem").toString()) && !semelhancas.contains(map) ) { + semelhancas.add(map); + } + + } + + } + return semelhancas; + } + }