fixes bug#18804

dev:Daniel
qua:Debora
Alteração no SQL da geração do relatório.
fixes bug#18744
dev:Daniel
qua:Debora
Alteração no SQL da geração do relatório.

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@101029 d1611594-4594-4d17-8e1d-87c2c4800839
master
guilherme.lopes 2020-03-31 17:45:28 +00:00
parent 75d425d714
commit 7727c5abf7
1 changed files with 22 additions and 8 deletions

View File

@ -86,6 +86,8 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
Integer assentos = this.resultSet.getInt("ASSENTOS"); Integer assentos = this.resultSet.getInt("ASSENTOS");
Integer rutaId = this.resultSet.getInt("RUTA_ID"); Integer rutaId = this.resultSet.getInt("RUTA_ID");
Integer diagramaAutoBusId = this.resultSet.getInt("DIAGRAMAAUTOBUS_ID");
String horario = this.resultSet.getString("HORARIO"); String horario = this.resultSet.getString("HORARIO");
boolean isServicoExtra = isTipoServicoExtra(this.resultSet.getString("TIPO_SERVICO")); boolean isServicoExtra = isTipoServicoExtra(this.resultSet.getString("TIPO_SERVICO"));
@ -105,7 +107,8 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
// Assim foi retirado a coluna ROLOPERATIVO_ID da query principal mas foi feito antes um mapa com a relação CORRIDA_ID x ROLOPERATIVO_ID(s) // Assim foi retirado a coluna ROLOPERATIVO_ID da query principal mas foi feito antes um mapa com a relação CORRIDA_ID x ROLOPERATIVO_ID(s)
if (listaRoloperativoId != null) { if (listaRoloperativoId != null) {
for (Integer rolOperativoId : listaRoloperativoId) { for (Integer rolOperativoId : listaRoloperativoId) {
ls.addAll(getValorByIndicador(corridaId, rolOperativoId, indicador, assentos, dataInicial, rutaId, horario, isServicoExtra)); ls.addAll(getValorByIndicador(corridaId, rolOperativoId, indicador, assentos, dataInicial, rutaId, horario, isServicoExtra,
diagramaAutoBusId));
} }
} }
@ -197,7 +200,7 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
protected List<RelatorioAcompanhamentoEquivalenteBean> getValorByIndicador(Integer corridaId, protected List<RelatorioAcompanhamentoEquivalenteBean> getValorByIndicador(Integer corridaId,
Integer rolOperativoId, Integer indicador, Integer assentos, Date dataInicial, Integer rolOperativoId, Integer indicador, Integer assentos, Date dataInicial,
Integer rutaId, String horario, boolean isServicoExtra) throws SQLException { Integer rutaId, String horario, boolean isServicoExtra, Integer diagramaAutoBusId) throws SQLException {
String sql = null; String sql = null;
@ -213,7 +216,6 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
break; break;
case IAP: case IAP:
sql = getSqlIndicadorIap(isServicoExtra); sql = getSqlIndicadorIap(isServicoExtra);
System.out.println(sql);
break; break;
case PAXKM: case PAXKM:
sql = getSqlIndicadorPax(isServicoExtra); sql = getSqlIndicadorPax(isServicoExtra);
@ -225,8 +227,10 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
sql = getSqlIndicadorReceitaViagem(isServicoExtra); sql = getSqlIndicadorReceitaViagem(isServicoExtra);
break; break;
} }
System.out.println(sql);
return getListaValoresIndicadores(corridaId, rolOperativoId, indicador, assentos, sql, dataInicial, rutaId, horario); return getListaValoresIndicadores(corridaId, rolOperativoId, indicador, assentos, sql, dataInicial, rutaId, horario,
diagramaAutoBusId);
} }
protected Map<Integer, List<Integer>> getMapaCorridaIdListaRoloperativoId() throws SQLException { protected Map<Integer, List<Integer>> getMapaCorridaIdListaRoloperativoId() throws SQLException {
@ -273,7 +277,8 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
} }
protected List<RelatorioAcompanhamentoEquivalenteBean> getListaValoresIndicadores(Integer corridaId, Integer rolOperativoId, protected List<RelatorioAcompanhamentoEquivalenteBean> getListaValoresIndicadores(Integer corridaId, Integer rolOperativoId,
Integer indicador, Integer assentos, String sql, Date dataInicial, Integer rutaId, String horario) throws SQLException { Integer indicador, Integer assentos, String sql, Date dataInicial, Integer rutaId, String horario,
Integer diagramaAutoBusId) throws SQLException {
List<RelatorioAcompanhamentoEquivalenteBean> lsEquivalente = new ArrayList<RelatorioAcompanhamentoEquivalenteBean>(); List<RelatorioAcompanhamentoEquivalenteBean> lsEquivalente = new ArrayList<RelatorioAcompanhamentoEquivalenteBean>();
try { try {
@ -287,6 +292,10 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
stmt.setInt("ROLOPERATIVO_ID", rolOperativoId); stmt.setInt("ROLOPERATIVO_ID", rolOperativoId);
stmt.setInt("RUTA_ID", rutaId); stmt.setInt("RUTA_ID", rutaId);
stmt.setString("HORARIO", horario); stmt.setString("HORARIO", horario);
if(IndicadorRelatorio.fromInt(indicador).equals(IndicadorRelatorio.RECEITA_VIAGEM)
|| IndicadorRelatorio.fromInt(indicador).equals(IndicadorRelatorio.IAP)) {
stmt.setInt("DIAGRAMAAUTOBUS_ID", diagramaAutoBusId);
}
if (IndicadorRelatorio.fromInt(indicador).equals(IndicadorRelatorio.IAP)) { if (IndicadorRelatorio.fromInt(indicador).equals(IndicadorRelatorio.IAP)) {
stmt.setInt("CAPACIDADE", assentos); stmt.setInt("CAPACIDADE", assentos);
@ -425,6 +434,7 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
sql.append(" EXTENSAO_LINHA.EL EL, C.CORRIDA_ID, C.FECCORRIDA "); sql.append(" EXTENSAO_LINHA.EL EL, C.CORRIDA_ID, C.FECCORRIDA ");
sql.append(" FROM CORRIDA C "); sql.append(" FROM CORRIDA C ");
sql.append(" inner join ROL_OPERATIVO ro on ro.ROLOPERATIVO_ID = C.ROLOPERATIVO_ID ");
sql.append(" LEFT JOIN BOLETO BO ON ((BO.MOTIVOCANCELACION_ID IS NULL OR BO.MOTIVOCANCELACION_ID = 0 ) "); sql.append(" LEFT JOIN BOLETO BO ON ((BO.MOTIVOCANCELACION_ID IS NULL OR BO.MOTIVOCANCELACION_ID = 0 ) ");
sql.append(" AND C.CORRIDA_ID = BO.CORRIDA_ID AND C.FECCORRIDA = BO.FECCORRIDA "); sql.append(" AND C.CORRIDA_ID = BO.CORRIDA_ID AND C.FECCORRIDA = BO.FECCORRIDA ");
sql.append(" AND BO.CATEGORIA_ID <> ").append(CONSTANTE_GRATUIDADE_CRIANCA).append(" ), ") ; sql.append(" AND BO.CATEGORIA_ID <> ").append(CONSTANTE_GRATUIDADE_CRIANCA).append(" ), ") ;
@ -440,6 +450,7 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
sql.append(" GROUP BY CR.CORRIDA_ID, CR.FECCORRIDA, CR.ROLOPERATIVO_ID) EXTENSAO_LINHA "); sql.append(" GROUP BY CR.CORRIDA_ID, CR.FECCORRIDA, CR.ROLOPERATIVO_ID) EXTENSAO_LINHA ");
sql.append(" WHERE C.CORRIDA_ID = :CORRIDA_ID "); sql.append(" WHERE C.CORRIDA_ID = :CORRIDA_ID ");
sql.append(" AND TO_CHAR(C.FECCORRIDA, 'MMYYYY') = TO_CHAR(:DATA_MES, 'MMYYYY') "); sql.append(" AND TO_CHAR(C.FECCORRIDA, 'MMYYYY') = TO_CHAR(:DATA_MES, 'MMYYYY') ");
sql.append(" AND ro.DIAGRAMAAUTOBUS_ID = :DIAGRAMAAUTOBUS_ID ");
sql.append(" AND EXTENSAO_LINHA.CORRIDA_ID = C.CORRIDA_ID "); sql.append(" AND EXTENSAO_LINHA.CORRIDA_ID = C.CORRIDA_ID ");
sql.append(" AND EXTENSAO_LINHA.FECCORRIDA = C.FECCORRIDA "); sql.append(" AND EXTENSAO_LINHA.FECCORRIDA = C.FECCORRIDA ");
sql.append(" AND EXTENSAO_LINHA.ROLOPERATIVO_ID = C.ROLOPERATIVO_ID "); sql.append(" AND EXTENSAO_LINHA.ROLOPERATIVO_ID = C.ROLOPERATIVO_ID ");
@ -512,6 +523,7 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
sql.append(" BO.FECCORRIDA AS FECCORRIDA "); sql.append(" BO.FECCORRIDA AS FECCORRIDA ");
sql.append("FROM BOLETO BO "); sql.append("FROM BOLETO BO ");
sql.append("INNER JOIN CORRIDA CR ON CR.CORRIDA_ID = BO.CORRIDA_ID AND CR.FECCORRIDA = BO.FECCORRIDA "); sql.append("INNER JOIN CORRIDA CR ON CR.CORRIDA_ID = BO.CORRIDA_ID AND CR.FECCORRIDA = BO.FECCORRIDA ");
sql.append("inner join ROL_OPERATIVO ro on ro.ROLOPERATIVO_ID = cr.ROLOPERATIVO_ID ");
sql.append("WHERE "); sql.append("WHERE ");
sql.append(" BO.CORRIDA_ID = :CORRIDA_ID "); sql.append(" BO.CORRIDA_ID = :CORRIDA_ID ");
sql.append("AND TO_CHAR(BO.FECCORRIDA, 'MMYYYY') = TO_CHAR(:DATA_MES, 'MMYYYY') "); sql.append("AND TO_CHAR(BO.FECCORRIDA, 'MMYYYY') = TO_CHAR(:DATA_MES, 'MMYYYY') ");
@ -519,10 +531,11 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
sql.append(isServicoExtra ? "AND CR.TIPOSERVICIO_ID = 2 " : " AND CR.TIPOSERVICIO_ID <> 2 "); sql.append(isServicoExtra ? "AND CR.TIPOSERVICIO_ID = 2 " : " AND CR.TIPOSERVICIO_ID <> 2 ");
sql.append("AND CR.RUTA_ID = :RUTA_ID "); sql.append("AND CR.RUTA_ID = :RUTA_ID ");
sql.append("AND CR.ROLOPERATIVO_ID = :ROLOPERATIVO_ID "); sql.append("AND CR.ROLOPERATIVO_ID = :ROLOPERATIVO_ID ");
sql.append("AND ro.DIAGRAMAAUTOBUS_ID = :DIAGRAMAAUTOBUS_ID ");
sql.append("AND BO.ACTIVO = 1 "); sql.append("AND BO.ACTIVO = 1 ");
sql.append("AND BO.INDSTATUSOPERACION = 'F' "); sql.append("AND BO.INDSTATUSOPERACION = 'F' ");
sql.append("AND BO.MOTIVOCANCELACION_ID IS NULL OR BO.MOTIVOCANCELACION_ID = 0 "); sql.append("AND BO.MOTIVOCANCELACION_ID IS NULL OR BO.MOTIVOCANCELACION_ID = 0 ");
sql.append("GROUP BY BO.CORRIDA_ID, BO.FECCORRIDA "); sql.append("GROUP BY ro.DIAGRAMAAUTOBUS_ID, BO.CORRIDA_ID, BO.FECCORRIDA ");
sql.append("ORDER BY BO.FECCORRIDA"); sql.append("ORDER BY BO.FECCORRIDA");
return sql.toString(); return sql.toString();
@ -631,15 +644,16 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
StringBuilder sql = new StringBuilder(); StringBuilder sql = new StringBuilder();
sql.append(" SELECT DISTINCT RT.RUTA_ID, "); sql.append(" SELECT DISTINCT RT.RUTA_ID, ");
sql.append(" DA.DIAGRAMAAUTOBUS_ID, ");
sql.append(" CR.CORRIDA_ID, "); sql.append(" CR.CORRIDA_ID, ");
sql.append(" RT.DESCRUTA, "); sql.append(" RT.DESCRUTA, ");
sql.append(" DA.CANTASIENTOS ASSENTOS, "); sql.append(" DA.CANTASIENTOS ASSENTOS, ");
sql.append(" PO.CVEPARADA||' - '||PD.CVEPARADA SIGLA, "); sql.append(" PO.CVEPARADA||' - '||PD.CVEPARADA SIGLA, ");
sql.append(" TO_CHAR(CR.FECHORSALIDAORIGINAL, 'HH24:MI') HORARIO, "); sql.append(" TO_CHAR(CR.FECHORSALIDAORIGINAL, 'HH24:MI') HORARIO, ");
if (addRoloperativo_id) { //if (addRoloperativo_id) {
sql.append(" CR.ROLOPERATIVO_ID, "); sql.append(" CR.ROLOPERATIVO_ID, ");
} //}
sql.append(" CASE "); sql.append(" CASE ");
sql.append(" WHEN CO.ESTADO_ID <> CD.ESTADO_ID THEN "); sql.append(" WHEN CO.ESTADO_ID <> CD.ESTADO_ID THEN ");