fixes bug#20799
qua: dev:Valdir Realizado alteracao para mostrar relatorio linha sumarizado. git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@104670 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
d43ad3518f
commit
5f48417c6e
|
@ -4,282 +4,32 @@
|
||||||
package com.rjconsultores.ventaboletos.relatorios.impl;
|
package com.rjconsultores.ventaboletos.relatorios.impl;
|
||||||
|
|
||||||
import java.sql.Connection;
|
import java.sql.Connection;
|
||||||
import java.sql.ResultSet;
|
|
||||||
import java.text.SimpleDateFormat;
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import org.apache.log4j.Logger;
|
|
||||||
|
|
||||||
import com.rjconsultores.ventaboletos.relatorios.utilitarios.DataSource;
|
|
||||||
import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio;
|
import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio;
|
||||||
import com.rjconsultores.ventaboletos.relatorios.utilitarios.RelatorioResumoLinhasAnaliticoBean;
|
|
||||||
import com.rjconsultores.ventaboletos.web.utilerias.NamedParameterStatement;
|
|
||||||
|
|
||||||
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Bruno H. G. Gouvêa <bruno@rjconsultores.com.br>
|
* @author Bruno H. G. Gouvêa <bruno@rjconsultores.com.br>
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public class RelatorioResumoLinhasAnalitico extends Relatorio {
|
public class RelatorioResumoLinhasAnalitico extends Relatorio {
|
||||||
private static Logger log = Logger.getLogger(RelatorioCaixaOrgaoConcedente.class);
|
|
||||||
private List<RelatorioResumoLinhasAnaliticoBean> lsDadosRelatorio;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param parametros
|
* @param parametros
|
||||||
* @param conexao
|
* @param conexao
|
||||||
* @throws Exception
|
|
||||||
*/
|
*/
|
||||||
public RelatorioResumoLinhasAnalitico(Map<String, Object> parametros, Connection conexao) throws Exception {
|
public RelatorioResumoLinhasAnalitico(Map<String, Object> parametros, Connection conexao) {
|
||||||
super(parametros, conexao);
|
super(parametros, conexao);
|
||||||
this.setCustomDataSource(new DataSource(this) {
|
// TODO Auto-generated constructor stub
|
||||||
|
|
||||||
@Override
|
|
||||||
public void initDados() throws Exception {
|
|
||||||
try {
|
|
||||||
Connection conexao = this.relatorio.getConexao();
|
|
||||||
|
|
||||||
Map<String, Object> parametros = this.relatorio.getParametros();
|
|
||||||
|
|
||||||
|
|
||||||
String fecInicio = null;
|
|
||||||
if (parametros.get("fecInicio") != null) {
|
|
||||||
fecInicio = parametros.get("fecInicio").toString() + " 00:00:00";
|
|
||||||
}
|
|
||||||
String fecFinal = null;
|
|
||||||
if (parametros.get("fecFinal") != null) {
|
|
||||||
fecFinal = parametros.get("fecFinal").toString() + " 23:59:59";
|
|
||||||
}
|
|
||||||
|
|
||||||
String empresaId = parametros.get("EMPRESA_ID") != null ? parametros.get("EMPRESA_ID").toString() : "";
|
|
||||||
String rutaId = parametros.get("RUTA_ID") != null ? parametros.get("RUTA_ID").toString() : "";
|
|
||||||
String grupoRutaId = parametros.get("GRUPORUTA_ID") != null ? parametros.get("GRUPORUTA_ID").toString() : "";
|
|
||||||
|
|
||||||
String sql = getSql();
|
|
||||||
|
|
||||||
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss");
|
|
||||||
NamedParameterStatement stmt = new NamedParameterStatement(conexao, sql);
|
|
||||||
|
|
||||||
|
|
||||||
if (fecInicio != null) {
|
|
||||||
stmt.setTimestamp("fecInicio", new java.sql.Timestamp(sdf.parse(fecInicio).getTime()));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (fecFinal != null) {
|
|
||||||
stmt.setTimestamp("fecFinal", new java.sql.Timestamp(sdf.parse(fecFinal).getTime()));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (empresaId != null && !empresaId.equals("")) {
|
|
||||||
stmt.setInt("empresaId", Integer.parseInt(empresaId));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (rutaId != null && !rutaId.equals("")) {
|
|
||||||
stmt.setInt("rutaId", Integer.parseInt(rutaId));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (grupoRutaId != null && !grupoRutaId.equals("")) {
|
|
||||||
stmt.setInt("grupoRutaId", Integer.parseInt(grupoRutaId));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
ResultSet rset = null;
|
|
||||||
|
|
||||||
rset = stmt.executeQuery();
|
|
||||||
|
|
||||||
lsDadosRelatorio = new ArrayList<RelatorioResumoLinhasAnaliticoBean>();
|
|
||||||
|
|
||||||
while (rset.next()) {
|
|
||||||
RelatorioResumoLinhasAnaliticoBean bean = new RelatorioResumoLinhasAnaliticoBean();
|
|
||||||
lsDadosRelatorio.add(bean);
|
|
||||||
bean.setIndSentidoIda(rset.getBoolean("INDSENTIDOIDA"));
|
|
||||||
bean.setRutaId(rset.getInt("RUTA_ID"));
|
|
||||||
bean.setNumRuta(rset.getInt("NUMRUTA"));
|
|
||||||
bean.setDescruta(rset.getString("DESCRUTA"));
|
|
||||||
bean.setTarifa(rset.getBigDecimal("TARIFA"));
|
|
||||||
bean.setAssentos(rset.getInt("ASSENTOS"));
|
|
||||||
bean.setRolOperativoId(rset.getInt("ROLOPERATIVO_ID"));
|
|
||||||
bean.setInterestadual(rset.getString("INTERESTADUAL"));
|
|
||||||
bean.setGrupoLinha(rset.getString("GRUPO_LINHA"));
|
|
||||||
bean.setExtensaoKm(rset.getBigDecimal("EXTENSAO_KM"));
|
|
||||||
bean.setCveClaseServicio(rset.getString("CVE_CLASE_SERVICIO"));
|
|
||||||
bean.setReceitaSeguro(rset.getBigDecimal("RECEITA_SEGURO"));
|
|
||||||
bean.setReceitaBagagem(rset.getBigDecimal("RECEITA_BAGAGEM"));
|
|
||||||
bean.setReceitaSeguroOutros(rset.getBigDecimal("RECEITA_SEGURO_OUTROS"));
|
|
||||||
bean.setReceitaTarifa(rset.getBigDecimal("RECEITA_TARIFA"));
|
|
||||||
bean.setReceitaPedagio(rset.getBigDecimal("RECEITA_PEDAGIO"));
|
|
||||||
bean.setReceitaEmbarque(rset.getBigDecimal("RECEITA_EMBARQUE"));
|
|
||||||
bean.setPassageiros(rset.getInt("PASSAGEIROS"));
|
|
||||||
bean.setViagensExtra(rset.getInt("VIAGENS_EXTRA"));
|
|
||||||
bean.setViagens(rset.getInt("VIAGENS"));
|
|
||||||
bean.setReceitaTotal(rset.getBigDecimal("RECEITA_TOTAL"));
|
|
||||||
bean.setViagensTotal(rset.getInt("VIAGENS_TOTAL"));
|
|
||||||
bean.setKmRodado(rset.getBigDecimal("KM_RODADO"));
|
|
||||||
bean.setPassageirosEquivalentes(rset.getBigDecimal("PASSAGEIROS_EQUIVALENTE"));
|
|
||||||
bean.setPassageirosMpa(rset.getBigDecimal("PASSAGEIROS_MPA"));
|
|
||||||
bean.setPassageirosMpe(rset.getBigDecimal("PASSAGEIROS_MPE"));
|
|
||||||
bean.setReceitaKm(rset.getBigDecimal("RECEITA_KM"));
|
|
||||||
bean.setReceitaViagem(rset.getBigDecimal("RECEITA_VIAGEM"));
|
|
||||||
bean.setPaxKm(rset.getBigDecimal("PAX_KM"));
|
|
||||||
bean.setPaxOfertado(rset.getBigDecimal("PAX_OFERTADO"));
|
|
||||||
bean.setIap(rset.getBigDecimal("IAP"));
|
|
||||||
lsDadosRelatorio.add(bean);
|
|
||||||
}
|
|
||||||
|
|
||||||
log.info("TAMANHO == null ? " + lsDadosRelatorio == null);
|
|
||||||
|
|
||||||
if (lsDadosRelatorio.size() > 0) {
|
|
||||||
log.info("TAMANHO DA LISTA: " + lsDadosRelatorio.size());
|
|
||||||
setLsDadosRelatorio(lsDadosRelatorio);
|
|
||||||
}
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
|
||||||
log.error("Erro na geração do Relatório de Caixa Orgão Concedente: \n" + e);
|
|
||||||
e.printStackTrace();
|
|
||||||
throw e;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setLsDadosRelatorio(List<RelatorioResumoLinhasAnaliticoBean> lsDadosRelatorio) {
|
/*
|
||||||
log.info("Setando dados do relatorio Operacional Financeiro ");
|
* (non-Javadoc)
|
||||||
this.setCollectionDataSource(new JRBeanCollectionDataSource(lsDadosRelatorio));
|
*
|
||||||
this.lsDadosRelatorio = lsDadosRelatorio;
|
* @see com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio#processaParametros()
|
||||||
log.info("depois de Setar dados do relatorio Operacional Financeiro ");
|
*/
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void processaParametros() throws Exception {
|
public void processaParametros() throws Exception {
|
||||||
}
|
}
|
||||||
|
|
||||||
private String getSql() {
|
|
||||||
StringBuilder sql = new StringBuilder();
|
|
||||||
sql.append("SELECT SUB.*, ");
|
|
||||||
sql.append(" (NVL(SUB.PASSAGEIROS,0) / DECODE(NVL(SUB.VIAGENS_TOTAL,0), 0, 1, NVL(SUB.VIAGENS_TOTAL,0))) AS PASSAGEIROS_MPA, ");
|
|
||||||
sql.append(" ( ROUND(NVL(SUB.PASSAGEIROS_EQUIVALENTE,0), 2) / DECODE(NVL(SUB.VIAGENS_TOTAL,0), 0, 1, NVL(SUB.VIAGENS_TOTAL,0))) AS PASSAGEIROS_MPE, ");
|
|
||||||
sql.append(" (NVL(SUB.RECEITA_TOTAL,0) / DECODE(NVL(SUB.KM_RODADO,0), 0, 1, NVL(SUB.KM_RODADO,0))) RECEITA_KM, ");
|
|
||||||
sql.append(" (NVL(SUB.RECEITA_TOTAL,0) / DECODE(NVL(SUB.VIAGENS_TOTAL,0), 0, 1, NVL(SUB.VIAGENS_TOTAL,0))) AS RECEITA_VIAGEM, ");
|
|
||||||
sql.append(" ROUND(((NVL(SUB.RECEITA_TOTAL,0) / DECODE(NVL(SUB.VIAGENS_TOTAL,0), 0, 1, NVL(SUB.VIAGENS_TOTAL,0))) / DECODE(NVL(SUB.TARIFA,0), 0, 1, NVL(SUB.TARIFA,0))), 2) AS EQ, ");
|
|
||||||
sql.append(" (ROUND(NVL(SUB.PASSAGEIROS_EQUIVALENTE,0), 2) * NVL(SUB.EXTENSAO_KM,0)) AS PAX_KM, ");
|
|
||||||
sql.append(" (NVL(SUB.ASSENTOS,0) * NVL(SUB.KM_RODADO,0)) AS PAX_OFERTADO, ");
|
|
||||||
sql.append(" ((ROUND(NVL(SUB.PASSAGEIROS_EQUIVALENTE,0), 2) * NVL(SUB.EXTENSAO_KM,0)) / (NVL(SUB.ASSENTOS,0) * NVL(SUB.KM_RODADO,0))) * 100 AS IAP ");
|
|
||||||
sql.append(" ");
|
|
||||||
sql.append("FROM ( ");
|
|
||||||
sql.append(" ");
|
|
||||||
sql.append("SELECT TAB.INDSENTIDOIDA, TAB.RUTA_ID, TAB.NUMRUTA, TAB.DESCRUTA, TAB.TARIFA, TAB.ASSENTOS, TAB.ROLOPERATIVO_ID, ");
|
|
||||||
sql.append("TAB.INTERESTADUAL, TAB.GRUPO_LINHA, TAB.EXTENSAO_KM, TAB.CVE_CLASE_SERVICIO, ");
|
|
||||||
sql.append("SUM(NVL(TAB.RECEITA_SEGURO,0)) AS RECEITA_SEGURO, SUM(NVL(TAB.RECEITA_BAGAGEM,0)) AS RECEITA_BAGAGEM, ");
|
|
||||||
sql.append("SUM(NVL(TAB.RECEITA_SEGURO_OUTROS,0)) AS RECEITA_SEGURO_OUTROS, SUM(NVL(TAB.RECEITA_TARIFA,0)) AS RECEITA_TARIFA, ");
|
|
||||||
sql.append("SUM(NVL(TAB.RECEITA_PEDAGIO,0)) AS RECEITA_PEDAGIO, SUM(NVL(TAB.RECEITA_EMBARQUE,0)) AS RECEITA_EMBARQUE, SUM(NVL(TAB.PASSAGEIROS,0)) AS PASSAGEIROS, ");
|
|
||||||
sql.append("SUM(NVL(TAB.VIAGENS_EXTRA,0)) AS VIAGENS_EXTRA, SUM(NVL(TAB.VIAGENS,0)) AS VIAGENS, SUM(NVL(TAB.RECEITA_TOTAL,0)) AS RECEITA_TOTAL, ");
|
|
||||||
sql.append("SUM(NVL(TAB.VIAGENS_TOTAL,0)) AS VIAGENS_TOTAL, SUM(NVL(TAB.KM_RODADO,0)) AS KM_RODADO, SUM(NVL(TAB.PASSAGEIROS_EQUIVALENTE,0)) AS PASSAGEIROS_EQUIVALENTE ");
|
|
||||||
sql.append(" ");
|
|
||||||
sql.append("FROM (SELECT TAB1.*, ");
|
|
||||||
sql.append(" (TAB1.RECEITA_TARIFA + RECEITA_SEGURO + RECEITA_EMBARQUE + RECEITA_PEDAGIO) RECEITA_TOTAL, ");
|
|
||||||
sql.append(" (NVL(TAB1.VIAGENS,0) + NVL(TAB1.VIAGENS_EXTRA,0)) VIAGENS_TOTAL, ");
|
|
||||||
sql.append(" ((NVL(TAB1.VIAGENS,0) + NVL(TAB1.VIAGENS_EXTRA,0)) * NVL(TAB1.EXTENSAO_KM,0)) KM_RODADO, ");
|
|
||||||
sql.append(" (SELECT SUM(NVL(PE.EQUIVALENTE,0)) ");
|
|
||||||
sql.append(" FROM (SELECT CO.FECCORRIDA, CO.RUTA_ID, BO.PRECIOBASE, ROUND((BO.NUMKMVIAJE * COUNT(1) / ");
|
|
||||||
sql.append(" (SELECT SUM(NVL(TR.CANTKMREAL,0)) FROM RUTA_COMBINACION RS, TRAMO TR WHERE RS.RUTA_ID = CO.RUTA_ID AND RS.TRAMO_ID = TR.TRAMO_ID)), 2) EQUIVALENTE ");
|
|
||||||
sql.append(" FROM CORRIDA CO, BOLETO BO ");
|
|
||||||
sql.append(" WHERE CO.CORRIDA_ID = BO.CORRIDA_ID ");
|
|
||||||
sql.append(" AND CO.FECCORRIDA = BO.FECCORRIDA ");
|
|
||||||
sql.append(" AND BO.ACTIVO = 1 ");
|
|
||||||
sql.append(" AND (BO.MOTIVOCANCELACION_ID IS NULL OR BO.MOTIVOCANCELACION_ID = 0) ");
|
|
||||||
sql.append(" GROUP BY CO.FECCORRIDA, CO.RUTA_ID, BO.PRECIOBASE, BO.NUMKMVIAJE) PE ");
|
|
||||||
sql.append(" WHERE PE.FECCORRIDA = TAB1.FECCORRIDA AND PE.RUTA_ID = TAB1.RUTA_ID) PASSAGEIROS_EQUIVALENTE ");
|
|
||||||
sql.append(" FROM (SELECT RT.RUTA_ID, ");
|
|
||||||
sql.append(" RT.INDSENTIDOIDA, ");
|
|
||||||
sql.append(" RT.NUMRUTA, ");
|
|
||||||
sql.append(" CR.FECCORRIDA, ");
|
|
||||||
sql.append(" CONCAT(RT.DESCRUTA, CASE WHEN RT.INDSENTIDOIDA = 0 THEN ' - VOLTA' ELSE ' - IDA' END) DESCRUTA, ");
|
|
||||||
sql.append(" TF.PRECIO TARIFA, ");
|
|
||||||
sql.append(" DA.CANTASIENTOS ASSENTOS, ");
|
|
||||||
sql.append(" RO.ROLOPERATIVO_ID, ");
|
|
||||||
sql.append(" CASE WHEN CO.ESTADO_ID <> CD.ESTADO_ID THEN 'S' ELSE 'N' END INTERESTADUAL, ");
|
|
||||||
sql.append(" NVL(GR.DESCGRUPO, 'Não Definido') GRUPO_LINHA, ");
|
|
||||||
sql.append(" (SELECT SUM(NVL(RS.KMORIGINAL,0)) FROM RUTA_SECUENCIA RS, TRAMO TR WHERE RS.RUTA_ID = RT.RUTA_ID AND RS.TRAMO_ID = TR.TRAMO_ID AND RS.ACTIVO = 1) EXTENSAO_KM, ");
|
|
||||||
sql.append(" NVL(SUM(NVL(BL.IMPORTESEGURO,0)), 0) RECEITA_SEGURO, ");
|
|
||||||
sql.append(" 0 RECEITA_BAGAGEM, ");
|
|
||||||
sql.append(" 0 RECEITA_SEGURO_OUTROS, ");
|
|
||||||
sql.append(" SUM(NVL(BL.PRECIOPAGADO,0)) RECEITA_TARIFA, ");
|
|
||||||
sql.append(" SUM(NVL(BL.IMPORTEPEDAGIO,0)) RECEITA_PEDAGIO, ");
|
|
||||||
sql.append(" SUM(NVL(BL.IMPORTETAXAEMBARQUE,0)) RECEITA_EMBARQUE, ");
|
|
||||||
sql.append(" COUNT(1) PASSAGEIROS, ");
|
|
||||||
sql.append(" COUNT(DISTINCT CASE WHEN CR.TIPOSERVICIO_ID = 2 THEN CR.FECCORRIDA || CR.CORRIDA_ID ELSE NULL END) VIAGENS_EXTRA, ");
|
|
||||||
sql.append(" COUNT(DISTINCT CASE WHEN CR.TIPOSERVICIO_ID <> 2 THEN CR.FECCORRIDA || CR.CORRIDA_ID ELSE NULL END) VIAGENS, ");
|
|
||||||
sql.append(" NVL(CS.CVECLASE, ' ') CVE_CLASE_SERVICIO ");
|
|
||||||
sql.append(" FROM RUTA RT, ");
|
|
||||||
sql.append(" BOLETO BL, ");
|
|
||||||
sql.append(" CORRIDA CR, ");
|
|
||||||
sql.append(" TRAMO TR, ");
|
|
||||||
sql.append(" ROL_OPERATIVO RO, ");
|
|
||||||
sql.append(" DIAGRAMA_AUTOBUS DA, ");
|
|
||||||
sql.append(" TARIFA TF, ");
|
|
||||||
sql.append(" VIGENCIA_TARIFA VT, ");
|
|
||||||
sql.append(" GRUPO_RUTA GR, ");
|
|
||||||
sql.append(" PARADA PO, ");
|
|
||||||
sql.append(" PARADA PD, ");
|
|
||||||
sql.append(" CIUDAD CO, ");
|
|
||||||
sql.append(" CIUDAD CD, ");
|
|
||||||
sql.append(" CLASE_SERVICIO CS ");
|
|
||||||
sql.append(" WHERE RT.RUTA_ID = CR.RUTA_ID ");
|
|
||||||
sql.append(" AND CS.CLASESERVICIO_ID = RT.CLASESERVICIO_ID ");
|
|
||||||
sql.append(" AND CR.FECCORRIDA = BL.FECCORRIDA ");
|
|
||||||
sql.append(" AND CR.RUTA_ID = NVL(:rutaId, CR.RUTA_ID) ");
|
|
||||||
sql.append(" AND DECODE(:grupoRutaId, NULL, 1, RT.GRUPORUTA_ID) = DECODE(:grupoRutaId, NULL, 1, :grupoRutaId) ");
|
|
||||||
sql.append(" AND CR.CORRIDA_ID = BL.CORRIDA_ID ");
|
|
||||||
sql.append(" AND CR.EMPRESACORRIDA_ID = :empresaId ");
|
|
||||||
sql.append(" AND CR.ORIGEN_ID = PO.PARADA_ID ");
|
|
||||||
sql.append(" AND CR.DESTINO_ID = PD.PARADA_ID ");
|
|
||||||
sql.append(" AND PO.CIUDAD_ID = CO.CIUDAD_ID ");
|
|
||||||
sql.append(" AND PD.CIUDAD_ID = CD.CIUDAD_ID ");
|
|
||||||
sql.append(" AND RT.GRUPORUTA_ID = GR.GRUPORUTA_ID(+) ");
|
|
||||||
sql.append(" AND RO.ROLOPERATIVO_ID = CR.ROLOPERATIVO_ID ");
|
|
||||||
sql.append(" AND RO.DIAGRAMAAUTOBUS_ID = DA.DIAGRAMAAUTOBUS_ID ");
|
|
||||||
sql.append(" AND TF.CLASESERVICIO_ID = CR.CLASESERVICIO_ID ");
|
|
||||||
sql.append(" AND TR.ORIGEN_ID = CR.ORIGEN_ID ");
|
|
||||||
sql.append(" AND TR.DESTINO_ID = CR.DESTINO_ID ");
|
|
||||||
sql.append(" AND TF.MARCA_ID = CR.MARCA_ID ");
|
|
||||||
sql.append(" AND TF.RUTA_ID = CR.RUTA_ID ");
|
|
||||||
sql.append(" AND TF.TRAMO_ID = TR.TRAMO_ID ");
|
|
||||||
sql.append(" AND TF.STATUSTARIFA = 'A' ");
|
|
||||||
sql.append(" AND TF.ACTIVO = 1 ");
|
|
||||||
sql.append(" AND BL.MOTIVOCANCELACION_ID IS NULL ");
|
|
||||||
sql.append(" AND BL.INDSTATUSOPERACION = 'F' ");
|
|
||||||
sql.append(" AND TF.VIGENCIATARIFA_ID = VT.VIGENCIATARIFA_ID ");
|
|
||||||
sql.append(" AND VT.ACTIVO = 1 ");
|
|
||||||
sql.append(" AND CR.FECCORRIDA BETWEEN VT.FECINICIOVIGENCIA AND VT.FECFINVIGENCIA ");
|
|
||||||
sql.append(" AND CR.FECCORRIDA BETWEEN :dataInicial AND :dataFinal ");
|
|
||||||
sql.append(" AND CR.ACTIVO = 1 ");
|
|
||||||
sql.append(" GROUP BY CS.CVECLASE, ");
|
|
||||||
sql.append(" RT.RUTA_ID, ");
|
|
||||||
sql.append(" RT.NUMRUTA, ");
|
|
||||||
sql.append(" CR.FECCORRIDA, ");
|
|
||||||
sql.append(" RT.DESCRUTA, ");
|
|
||||||
sql.append(" TF.PRECIO, ");
|
|
||||||
sql.append(" DA.CANTASIENTOS, ");
|
|
||||||
sql.append(" RO.ROLOPERATIVO_ID, ");
|
|
||||||
sql.append(" GR.DESCGRUPO, ");
|
|
||||||
sql.append(" CO.ESTADO_ID, ");
|
|
||||||
sql.append(" CD.ESTADO_ID, ");
|
|
||||||
sql.append(" RT.INDSENTIDOIDA) TAB1) TAB ");
|
|
||||||
sql.append("GROUP BY TAB.RUTA_ID, TAB.NUMRUTA, TAB.DESCRUTA, TAB.TARIFA, TAB.ASSENTOS, TAB.ROLOPERATIVO_ID, ");
|
|
||||||
sql.append("TAB.INTERESTADUAL, TAB.GRUPO_LINHA, TAB.EXTENSAO_KM, TAB.CVE_CLASE_SERVICIO, TAB.INDSENTIDOIDA) SUB ");
|
|
||||||
sql.append("WHERE ");
|
|
||||||
sql.append(" (DECODE(NVL(SUB.VIAGENS_TOTAL,0), 0, 1, NVL(SUB.VIAGENS_TOTAL,0)) != 0) ");
|
|
||||||
sql.append(" AND DECODE(NVL(SUB.VIAGENS_TOTAL,0), 0, 1, NVL(SUB.VIAGENS_TOTAL,0)) != 0 ");
|
|
||||||
sql.append(" AND DECODE(NVL(SUB.KM_RODADO,0), 0, 1, NVL(SUB.KM_RODADO,0)) != 0 ");
|
|
||||||
sql.append(" AND DECODE(NVL(SUB.VIAGENS_TOTAL,0), 0, 1, NVL(SUB.VIAGENS_TOTAL,0)) != 0 ");
|
|
||||||
sql.append(" AND DECODE(NVL(SUB.VIAGENS_TOTAL,0), 0, 1, NVL(SUB.VIAGENS_TOTAL,0)) != 0 ");
|
|
||||||
sql.append(" AND DECODE(NVL(SUB.TARIFA,0), 0, 1, NVL(SUB.TARIFA,0)) != 0 ");
|
|
||||||
sql.append(" AND (NVL(SUB.ASSENTOS,0) * NVL(SUB.KM_RODADO,0)) != 0 ");
|
|
||||||
sql.append("ORDER BY SUB.DESCRUTA, SUB.INDSENTIDOIDA, SUB.ASSENTOS, SUB.TARIFA ");
|
|
||||||
return sql.toString();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue