fixes bug#17603
qua:wallyson dev:julio git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@99849 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
40bef7e3bc
commit
9a806b6524
|
@ -100,38 +100,145 @@ public class RelatorioGratuidadeANTT extends Relatorio {
|
|||
|
||||
private String getSql(String fecInicioVenda, String fecFinalVenda, String linha, String tipoGratu, String empresa ) {
|
||||
|
||||
StringBuilder sql = new StringBuilder();
|
||||
|
||||
sql.append(" select ");
|
||||
sql.append(" ca.DESCCATEGORIA AS categoria, ");
|
||||
sql.append(" ori.CVEPARADA AS codOrigem, ");
|
||||
sql.append(" ori.DESCPARADA AS descOrigem, ");
|
||||
sql.append(" des.CVEPARADA AS codDestino, ");
|
||||
sql.append(" des.DESCPARADA AS descDestino, ");
|
||||
sql.append(" sum(case when (R.INDSENTIDOIDA = 1 ) then 1 else 0 end) as totalIda, ");
|
||||
sql.append(" sum(case when (R.INDSENTIDOIDA = 0 ) then 1 else 0 end) as totalVolta ");
|
||||
sql.append(" from BOLETO b ");
|
||||
sql.append(" JOIN categoria ca ON b.categoria_id = ca.categoria_id ");
|
||||
sql.append(" JOIN parada ori ON ori.parada_id = b.origen_id ");
|
||||
sql.append(" JOIN parada des ON des.parada_id = b.destino_id ");
|
||||
sql.append(" JOIN ruta r ON r.ruta_id = b.ruta_id ");
|
||||
sql.append(" WHERE b.fechorventa BETWEEN :fecInicioVenda AND :fecFinalVenda ");
|
||||
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append(" ");
|
||||
sb.append(" select tabela.categoria, tabela.codOrigem, tabela.descorigem, tabela.codDestino, tabela.descDestino, ");
|
||||
sb.append(" sum(CASE");
|
||||
sb.append(" WHEN (tabela.sentido = 1) THEN 1 ");
|
||||
sb.append(" ELSE 0");
|
||||
sb.append(" END) AS totalIda,");
|
||||
sb.append(" sum(CASE");
|
||||
sb.append(" WHEN (tabela.sentido = 0) THEN 1 ");
|
||||
sb.append(" ELSE 0");
|
||||
sb.append(" END) AS totalVolta from ( ");
|
||||
sb.append(" ");
|
||||
sb.append("SELECT ca.desccategoria as categoria, R.INDSENTIDOIDA as sentido, B.MOTIVOCANCELACION_ID, OC.DESCORGAO AS ORGAO, ");
|
||||
sb.append(" O.CODEMPRESAPORORGAO AS empresa,");
|
||||
sb.append(" TO_DATE(B.FECHORVIAJE, 'DD/MM/YY hh24:mi:ss') || '' AS dataViagem,");
|
||||
sb.append(" TO_CHAR(b.FECHORVIAJE, 'HH24:MI') AS horaViagem,");
|
||||
sb.append(" ori.cveparada AS codorigem,");
|
||||
sb.append(" ori.descparada AS descorigem,");
|
||||
sb.append(" des.cveparada AS coddestino,");
|
||||
sb.append(" des.descparada AS descdestino,");
|
||||
sb.append(" B.NUMASIENTO AS POLTRONA,");
|
||||
sb.append(" b.NUMFOLIOSISTEMA AS NUMBILHETE,");
|
||||
sb.append(" b.NOMBPASAJERO AS NOMBPASAJERO,");
|
||||
sb.append(" CASE");
|
||||
sb.append(" WHEN b.DESCNUMDOC IS NOT NULL THEN b.DESCNUMDOC");
|
||||
sb.append(" ELSE c.NUMIDENTIFICAUNO");
|
||||
sb.append(" END AS RG,");
|
||||
sb.append(" c.TIPOIDENTIFICAUNO_ID AS TIPODOC1,");
|
||||
sb.append(" b.descorgaodoc uforgaodoc,");
|
||||
sb.append(" c.TIPOIDENTIFICADOS_ID AS TIPODOC2,");
|
||||
sb.append(" CASE");
|
||||
sb.append(" WHEN b.DESCNUMDOC2 IS NOT NULL THEN b.DESCNUMDOC2");
|
||||
sb.append(" ELSE c.NUMIDENTIFICADOS");
|
||||
sb.append(" END AS CPF,");
|
||||
sb.append(" r.PREFIXO AS LINHA,");
|
||||
sb.append(" cd.DESCCALLE || ', ' || cd.NUMEXTERIOR || '-' || cd.DESCIUDAD || '/' || cd.DESESTADO AS ENDERECO,");
|
||||
sb.append(" c.NUMTELEFONO AS tel,");
|
||||
sb.append(" c.DESCCORREO AS email,");
|
||||
sb.append(" CASE");
|
||||
sb.append(" WHEN B.MOTIVOCANCELACION_ID IN (31,");
|
||||
sb.append(" 32,");
|
||||
sb.append(" 90) THEN 1");
|
||||
sb.append(" ELSE 0");
|
||||
sb.append(" END AS DESISTENCIA,");
|
||||
sb.append(" (COALESCE(T.PRECIO, 0) + COALESCE(T.IMPORTEPEDAGIO, 0)) -(COALESCE(b.PRECIOPAGADO, 0) + COALESCE(b.IMPORTEPEDAGIO, 0)) AS vlrGratuidade ");
|
||||
sb.append("FROM BOLETO b ");
|
||||
sb.append("JOIN categoria ca ON b.categoria_id = ca.categoria_id ");
|
||||
sb.append("JOIN empresa e ON e.empresa_id = b.EMPRESACORRIDA_ID ");
|
||||
sb.append("JOIN marca m ON m.EMPRESA_ID = e.EMPRESA_ID ");
|
||||
sb.append("JOIN parada ori ON ori.parada_id = b.origen_id ");
|
||||
sb.append("JOIN parada des ON des.parada_id = b.destino_id ");
|
||||
sb.append("JOIN ruta r ON r.ruta_id = b.ruta_id ");
|
||||
sb.append("LEFT JOIN cliente c ON c.cliente_id = b.cliente_id ");
|
||||
sb.append("LEFT JOIN CLIENTE_DIRECCION cd ON cd.cliente_id = c.cliente_id ");
|
||||
sb.append("AND cd.ACTIVO = 1 ");
|
||||
sb.append("JOIN ORGAO_CONCEDENTE OC ON r.ORGAOCONCEDENTE_ID = OC.ORGAOCONCEDENTE_ID ");
|
||||
sb.append("JOIN ORGAO_EMP_PARAM O ON e.empresa_id = O.EMPRESA_ID ");
|
||||
sb.append("AND OC.ORGAOCONCEDENTE_ID = O.ORGAOCONCEDENTE_ID ");
|
||||
sb.append("AND O.ACTIVO = 1 ");
|
||||
sb.append("JOIN TARIFA T ON r.RUTA_ID = T.RUTA_ID ");
|
||||
sb.append("AND b.ORIGEN_ID = T.ORIGEN_ID ");
|
||||
sb.append("AND b.DESTINO_ID = T.DESTINO_ID ");
|
||||
sb.append("AND b.CLASESERVICIO_ID = T.CLASESERVICIO_ID ");
|
||||
sb.append("AND m.MARCA_ID = T.MARCA_ID ");
|
||||
sb.append("AND o.ORGAOCONCEDENTE_ID = T.ORGAOCONCEDENTE_ID ");
|
||||
sb.append("JOIN VIGENCIA_TARIFA vt ON vt.VIGENCIATARIFA_ID = t.VIGENCIATARIFA_ID ");
|
||||
sb.append("AND b.FECHORVIAJE BETWEEN vt.FECINICIOVIGENCIA AND vt.FECFINVIGENCIA ");
|
||||
sb.append("WHERE b.fechorventa BETWEEN :fecInicioVenda AND :fecFinalVenda ");
|
||||
if( tipoGratu != null ) {
|
||||
sql.append(" AND b.CATEGORIA_ID in (").append(tipoGratu).append(") ");
|
||||
sb.append(" AND b.CATEGORIA_ID in (").append(tipoGratu).append(") ");
|
||||
}
|
||||
|
||||
if( linha != null && !linha.equals("Todas")) {
|
||||
sql.append(" AND r.ruta_id in (").append(linha).append(") ");
|
||||
sb.append(" AND r.ruta_id in (").append(linha).append(") ");
|
||||
}
|
||||
|
||||
if (!empresa.isEmpty()){
|
||||
sql.append("AND b.empresacorrida_id = :empresa_id ");
|
||||
sb.append("AND b.empresacorrida_id =:empresa_id ");
|
||||
}
|
||||
|
||||
sql.append(" group by ca.DESCCATEGORIA, ori.CVEPARADA, ori.DESCPARADA, des.CVEPARADA, des.DESCPARADA ");
|
||||
sql.append(" ORDER BY descOrigem, descDestino, categoria ");
|
||||
|
||||
return sql.toString();
|
||||
sb.append("GROUP BY OC.DESCORGAO,");
|
||||
sb.append(" O.CODEMPRESAPORORGAO,");
|
||||
sb.append(" B.FECHORVIAJE,");
|
||||
sb.append(" ca.desccategoria,");
|
||||
sb.append(" ori.cveparada,");
|
||||
sb.append(" ori.descparada,");
|
||||
sb.append(" des.cveparada,");
|
||||
sb.append(" B.NUMASIENTO,");
|
||||
sb.append(" des.descparada,");
|
||||
sb.append(" c.TIPOIDENTIFICAUNO_ID,");
|
||||
sb.append(" c.TIPOIDENTIFICADOS_ID,");
|
||||
sb.append(" b.FECCORRIDA,");
|
||||
sb.append(" C.NUMTELEFONO,");
|
||||
sb.append(" c.DESCCORREO,");
|
||||
sb.append(" CASE");
|
||||
sb.append(" WHEN b.DESCNUMDOC IS NOT NULL THEN b.DESCNUMDOC");
|
||||
sb.append(" ELSE c.NUMIDENTIFICAUNO");
|
||||
sb.append(" END,");
|
||||
sb.append(" b.NUMFOLIOSISTEMA,");
|
||||
sb.append(" CASE");
|
||||
sb.append(" WHEN b.DESCNUMDOC2 IS NOT NULL THEN b.DESCNUMDOC2");
|
||||
sb.append(" ELSE c.NUMIDENTIFICADOS");
|
||||
sb.append(" END,");
|
||||
sb.append(" b.NOMBPASAJERO,");
|
||||
sb.append(" b.NUMIDENTIFICACION,");
|
||||
sb.append(" T.PRECIO,");
|
||||
sb.append(" b.PRECIOPAGADO,");
|
||||
sb.append(" b.descorgaodoc,");
|
||||
sb.append(" r.PREFIXO,");
|
||||
sb.append(" cd.DESCCALLE || ', ' || cd.NUMEXTERIOR || '-' || cd.DESCIUDAD || '/' || cd.DESESTADO,");
|
||||
sb.append(" B.MOTIVOCANCELACION_ID,");
|
||||
sb.append(" T.IMPORTEOUTROS,");
|
||||
sb.append(" T.IMPORTEPEDAGIO,");
|
||||
sb.append(" T.IMPORTESEGURO,");
|
||||
sb.append(" T.IMPORTETAXAEMBARQUE,");
|
||||
sb.append(" T.IMPORTETPP,");
|
||||
sb.append(" b.descorgaodoc,");
|
||||
sb.append(" b.IMPORTECATEGORIA,");
|
||||
sb.append(" b.IMPORTEOUTROS,");
|
||||
sb.append(" b.IMPORTEPEDAGIO,");
|
||||
sb.append(" b.IMPORTESEGURO,");
|
||||
sb.append(" b.IMPORTETAXAEMBARQUE,");
|
||||
sb.append(" b.IMPORTETPP,R.INDSENTIDOIDA");
|
||||
sb.append(" ORDER BY ");
|
||||
sb.append(" descorigem,");
|
||||
sb.append(" descdestino,OC.DESCORGAO,");
|
||||
sb.append(" O.CODEMPRESAPORORGAO,");
|
||||
sb.append(" b.FECHORVIAJE");
|
||||
sb.append(" ");
|
||||
sb.append(" ) tabela");
|
||||
sb.append(" group by ");
|
||||
sb.append(" tabela.categoria, tabela.codOrigem,tabela.descOrigem, tabela.codDestino, tabela.descDestino ");
|
||||
sb.append(" ORDER BY tabela.descOrigem, tabela.descDestino, tabela.categoria ");
|
||||
|
||||
|
||||
|
||||
return sb.toString();
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue