diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioAcompanhamentoEquivalentes.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioAcompanhamentoEquivalentes.java index b715be2b2..9c997fe79 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioAcompanhamentoEquivalentes.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioAcompanhamentoEquivalentes.java @@ -166,7 +166,7 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio { break; } - return getValorIndicador(data, corridaId, indicador, assentos, sql); + return getValorIndicador(data, corridaId, rolOperativoId, indicador, assentos, sql); } }); @@ -178,6 +178,7 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio { sql.append(" FROM CORRIDA CR, TRAMO TR, TARIFA TF, VIGENCIA_TARIFA VT"); sql.append(" WHERE CR.CORRIDA_ID = :CORRIDA_ID"); sql.append(" AND CR.FECCORRIDA = :FECCORRIDA"); + sql.append(" AND CR.ROLOPERATIVO_ID = :ROLOPERATIVO_ID"); sql.append(" AND TF.CLASESERVICIO_ID = CR.CLASESERVICIO_ID"); sql.append(" AND TF.MARCA_ID = CR.MARCA_ID"); sql.append(" AND TF.RUTA_ID = CR.RUTA_ID"); @@ -196,7 +197,6 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio { sql.append(" WHERE BO.CORRIDA_ID = :CORRIDA_ID"); sql.append(" AND BO.FECCORRIDA = :FECCORRIDA"); sql.append(" AND BO.ACTIVO = 1"); - sql.append(" AND BO.INDREIMPRESION = 0"); sql.append(" AND BO.INDSTATUSOPERACION = 'F'"); sql.append(" AND (BO.MOTIVOCANCELACION_ID IS NULL OR"); sql.append(" BO.MOTIVOCANCELACION_ID = 0)),"); @@ -221,6 +221,7 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio { sql.append(" CORRIDA_TRAMO CTO"); sql.append(" WHERE CR.CORRIDA_ID = :CORRIDA_ID"); sql.append(" AND CR.FECCORRIDA = :FECCORRIDA"); + sql.append(" AND CR.ROLOPERATIVO_ID = :ROLOPERATIVO_ID"); sql.append(" AND CT.FECCORRIDA = CR.FECCORRIDA"); sql.append(" AND CT.CORRIDA_ID = CR.CORRIDA_ID"); sql.append(" AND TR.TRAMO_ID = CT.TRAMO_ID"); @@ -237,7 +238,6 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio { sql.append(" AND CT.NUMSECUENCIA BETWEEN CTO.NUMSECUENCIA AND"); sql.append(" CTD.NUMSECUENCIA"); sql.append(" AND BO.ACTIVO = 1"); - sql.append(" AND BO.INDREIMPRESION = 0"); sql.append(" AND BO.INDSTATUSOPERACION = 'F'"); sql.append(" AND (BO.MOTIVOCANCELACION_ID IS NULL OR"); sql.append(" BO.MOTIVOCANCELACION_ID = 0)"); @@ -288,17 +288,23 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio { protected String getSqlIndicadorReceitaKm() { StringBuilder sql = new StringBuilder(); sql.append(" SELECT (RECEITA / (SELECT SUM(TR1.CANTKMREAL) "); - sql.append(" FROM CORRIDA_TRAMO CT1, TRAMO TR1 "); + sql.append(" FROM CORRIDA_TRAMO CT1 "); + sql.append(" RIGHT JOIN CORRIDA CR ON "); + sql.append(" (CR.CORRIDA_ID = CT1.CORRIDA_ID AND CR.FECCORRIDA = CT1.FECCORRIDA), "); + sql.append(" TRAMO TR1 "); sql.append(" WHERE CT1.CORRIDA_ID = :CORRIDA_ID "); sql.append(" AND CT1.FECCORRIDA = :FECCORRIDA "); + sql.append(" AND CR.ROLOPERATIVO_ID = :ROLOPERATIVO_ID "); sql.append(" AND TR1.TRAMO_ID = CT1.TRAMO_ID)) VALOR "); sql.append(" FROM (SELECT SUM(BO.PRECIOPAGADO + BO.IMPORTEPEDAGIO + BO.IMPORTESEGURO + "); sql.append(" BO.IMPORTETAXAEMBARQUE) RECEITA "); sql.append(" FROM BOLETO BO "); + sql.append(" RIGHT JOIN CORRIDA CR ON "); + sql.append(" (CR.CORRIDA_ID = BO.CORRIDA_ID AND CR.FECCORRIDA = BO.FECCORRIDA) "); sql.append(" WHERE BO.CORRIDA_ID = :CORRIDA_ID "); sql.append(" AND BO.FECCORRIDA = :FECCORRIDA "); + sql.append(" AND CR.ROLOPERATIVO_ID = :ROLOPERATIVO_ID "); sql.append(" AND BO.ACTIVO = 1 "); - sql.append(" AND BO.INDREIMPRESION = 0 "); sql.append(" AND BO.INDSTATUSOPERACION = 'F' "); sql.append(" AND (BO.MOTIVOCANCELACION_ID IS NULL OR "); sql.append(" BO.MOTIVOCANCELACION_ID = 0)) RC "); @@ -313,10 +319,12 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio { sql.append("SELECT SUM(BO.PRECIOPAGADO + BO.IMPORTEPEDAGIO + BO.IMPORTESEGURO + "); sql.append(" BO.IMPORTETAXAEMBARQUE) VALOR "); sql.append(" FROM BOLETO BO "); + sql.append(" RIGHT JOIN CORRIDA CR ON "); + sql.append(" (CR.CORRIDA_ID = BO.CORRIDA_ID AND CR.FECCORRIDA = BO.FECCORRIDA) "); sql.append(" WHERE BO.CORRIDA_ID = :CORRIDA_ID "); sql.append(" AND BO.FECCORRIDA = :FECCORRIDA "); + sql.append(" AND CR.ROLOPERATIVO_ID = :ROLOPERATIVO_ID "); sql.append(" AND BO.ACTIVO = 1 "); - sql.append(" AND BO.INDREIMPRESION = 0 "); sql.append(" AND BO.INDSTATUSOPERACION = 'F' "); sql.append(" AND (BO.MOTIVOCANCELACION_ID IS NULL OR "); sql.append(" BO.MOTIVOCANCELACION_ID = 0) "); @@ -342,6 +350,7 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio { sql.append(" AND TR1.TRAMO_ID = CT1.TRAMO_ID) EL "); sql.append(" WHERE CR.CORRIDA_ID = :CORRIDA_ID "); sql.append(" AND CR.FECCORRIDA = :FECCORRIDA "); + sql.append(" AND CR.ROLOPERATIVO_ID = :ROLOPERATIVO_ID "); sql.append(" AND CT.FECCORRIDA = CR.FECCORRIDA "); sql.append(" AND CT.CORRIDA_ID = CR.CORRIDA_ID "); sql.append(" AND TR.TRAMO_ID = CT.TRAMO_ID "); @@ -357,7 +366,6 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio { sql.append(" AND CTD.ACTIVO = 1 "); sql.append(" AND CT.NUMSECUENCIA BETWEEN CTO.NUMSECUENCIA AND CTD.NUMSECUENCIA "); sql.append(" AND BO.ACTIVO = 1 "); - sql.append(" AND BO.INDREIMPRESION = 0 "); sql.append(" AND BO.INDSTATUSOPERACION = 'F' "); sql.append(" AND (BO.MOTIVOCANCELACION_ID IS NULL OR BO.MOTIVOCANCELACION_ID = 0) "); sql.append(" GROUP BY CT.TRAMO_ID, TR.CANTKMREAL, EL.EXTENSAO_LINHA "); @@ -372,18 +380,20 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio { sql.append(" SELECT SUM(1) AS VALOR"); sql.append(" FROM BOLETO BO "); + sql.append(" RIGHT JOIN CORRIDA CR ON "); + sql.append(" (CR.CORRIDA_ID = BO.CORRIDA_ID AND CR.FECCORRIDA = BO.FECCORRIDA) "); sql.append(" WHERE BO.INDSTATUSOPERACION = 'F' "); sql.append(" AND BO.ACTIVO = 1 "); sql.append(" AND (BO.MOTIVOCANCELACION_ID IS NULL OR BO.MOTIVOCANCELACION_ID = 0) "); - sql.append(" AND BO.INDREIMPRESION = 0 "); sql.append(" AND BO.CORRIDA_ID = :CORRIDA_ID "); sql.append(" AND BO.FECCORRIDA = :FECCORRIDA "); + sql.append(" AND CR.ROLOPERATIVO_ID = :ROLOPERATIVO_ID "); return sql.toString(); } - protected BigDecimal getValorIndicador(Date data, Integer corridaId, Integer indicador, Integer assentos, String sql) throws SQLException { + protected BigDecimal getValorIndicador(Date data, Integer corridaId, Integer rolOperativoId, Integer indicador, Integer assentos, String sql) throws SQLException { BigDecimal retorno = null; try { @@ -398,6 +408,8 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio { stmt.setInt("CAPACIDADE", assentos); stmt.setInt("CEM", CEM); stmt.setInt("MAX_DECIMAL", MAX_DECIMAL); + } else { + stmt.setInt("ROLOPERATIVO_ID", rolOperativoId); } ResultSet resultSet = stmt.executeQuery(); diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAcompanhamentoEquivalentes.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAcompanhamentoEquivalentes.jasper index 3029c8636..9cf2e7451 100644 Binary files a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAcompanhamentoEquivalentes.jasper and b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAcompanhamentoEquivalentes.jasper differ diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAcompanhamentoEquivalentes.jrxml b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAcompanhamentoEquivalentes.jrxml index 801968346..09868e9d8 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAcompanhamentoEquivalentes.jrxml +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioAcompanhamentoEquivalentes.jrxml @@ -1,8 +1,8 @@ - - + +