diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDemandasDetalhadoNovoLayout.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDemandasDetalhadoNovoLayout.java index d283f5bc7..284cd3563 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDemandasDetalhadoNovoLayout.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDemandasDetalhadoNovoLayout.java @@ -72,9 +72,10 @@ public class RelatorioDemandasDetalhadoNovoLayout extends RelatorioDemandas { sql.append(" da.cantasientos as capacidade, "); sql.append(" count(bo.boleto_id) as ocupacao, "); sql.append(" ts.descservicio as tipo_servico, "); + sql.append(" nvl(ct.plataforma,'') AS plataforma, "); sql.append(" e.nombempresa as empresa, "); - sql.append(" r.INDSENTIDOIDA AS sentido, "); - sql.append(" nvl(ct.plataforma,'') AS plataforma "); + sql.append(" r.INDSENTIDOIDA AS sentido "); + sql.append("from boleto bo "); sql.append(" join corrida co on co.corrida_id = bo.corrida_id and co.feccorrida = bo.feccorrida "); sql.append(" join ruta r on co.ruta_id = r.ruta_id "); @@ -85,7 +86,7 @@ public class RelatorioDemandasDetalhadoNovoLayout extends RelatorioDemandas { sql.append(" join rol_operativo ro on ro.roloperativo_id = co.roloperativo_id "); sql.append(" join diagrama_autobus da on ro.diagramaautobus_id = da.diagramaautobus_id "); sql.append(" join tipo_servicio ts on ts.tiposervicio_id = co.tiposervicio_id "); - sql.append(" left join corrida_tramo ct on ct.corrida_id = bo.corrida_id and ct.feccorrida = bo.feccorrida and ct.numsecuencia = 1 and ct.activo = 1 "); + sql.append(" left join corrida_tramo ct on ct.corrida_id = bo.corrida_id and ct.feccorrida = bo.feccorrida and ct.numsecuencia = 1 and ct.activo = 1 "); sql.append(" where bo.motivocancelacion_id is null and bo.numasiento is not null and bo.indstatusoperacion = 'F' "); if (parametros.get("HORA_INICIAL") == null && parametros.get("HORA_FINAL") == null) { sql.append(" and co.fechorsalida >= :DATA_INICIAL and co.fechorsalida <= :DATA_FINAL "); @@ -137,13 +138,13 @@ public class RelatorioDemandasDetalhadoNovoLayout extends RelatorioDemandas { sql.append(" case when ((ori.indvisibleinternet is null or ori.indvisibleinternet = 1) "); sql.append(" and (des.indvisibleinternet is null or des.indvisibleinternet = 1)) then 'SIM' else 'NÃO' end, "); sql.append(" ori.descparada, des.descparada, cs.descclase, "); - sql.append(" da.cantasientos, ts.descservicio, e.nombempresa, r.INDSENTIDOIDA, nvl(ct.plataforma,'') "); - sql.append("order by data, horario, servico, linha, origem, destino "); + sql.append(" da.cantasientos, ts.descservicio, ct.plataforma, e.nombempresa, r.INDSENTIDOIDA "); + sql.append("order by data, horario, servico, linha, origem, destino , plataforma"); sql.append(" ), nao_vendidos as ( "); - sql.append(" SELECT TRUNC(co.FECHORSALIDA) AS data_corrida, "); + sql.append(" SELECT distinct TRUNC(co.FECHORSALIDA) AS data_corrida, "); sql.append(" TRUNC(co.FECHORSALIDA) AS data, "); sql.append(" r.descruta AS linha, "); sql.append(" r.numruta AS codlinha, "); @@ -163,9 +164,9 @@ public class RelatorioDemandasDetalhadoNovoLayout extends RelatorioDemandas { sql.append(" da.cantasientos AS capacidade, "); sql.append(" 0 AS ocupacao, "); sql.append(" ts.descservicio AS tipo_servico, "); + sql.append(" nvl(ct.plataforma,'') AS plataforma, "); sql.append(" e.nombempresa AS empresa, "); - sql.append(" r.INDSENTIDOIDA AS sentido, "); - sql.append(" nvl(ct.plataforma,'') AS plataforma "); + sql.append(" r.INDSENTIDOIDA AS sentido "); sql.append(" FROM corrida co "); sql.append(" JOIN ruta r "); sql.append(" ON co.ruta_id = r.ruta_id "); @@ -222,7 +223,7 @@ public class RelatorioDemandasDetalhadoNovoLayout extends RelatorioDemandas { sql.append(" from ( "); sql.append(" select * from vendidos v union select * from nao_vendidos ) "); sql.append(" GROUP BY DATA_CORRIDA, DATA, LINHA, CODLINHA, SERVICO, INTERNET, HORARIO, ORIGEM, DESTINO, CLASSE, CAPACIDADE, TIPO_SERVICO, EMPRESA, SENTIDO, PLATAFORMA "); - sql.append(" order by data, horario, servico, linha, origem, destino "); + sql.append(" order by data, horario, servico, linha, origem, destino, plataforma "); NamedParameterStatement stmt = new NamedParameterStatement(conexao, sql.toString()); @@ -256,6 +257,7 @@ public class RelatorioDemandasDetalhadoNovoLayout extends RelatorioDemandas { dataResult.put("CLASSE", rset.getString("CLASSE")); dataResult.put("CAPACIDADE", rset.getInt("CAPACIDADE")); dataResult.put("TIPO_SERVICO", rset.getString("TIPO_SERVICO")); + dataResult.put("PLATAFORMA", rset.getString("PLATAFORMA")); dataResult.put("OCUPACAO", rset.getInt("OCUPACAO")); dataResult.put("EMPRESA", rset.getString("EMPRESA")); dataResult.put("CODLINHA", rset.getString("CODLINHA"));