diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioCancelamentoVendaCartao.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioCancelamentoVendaCartao.java index 0f756e7f0..a73b934f3 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioCancelamentoVendaCartao.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioCancelamentoVendaCartao.java @@ -14,7 +14,7 @@ import com.rjconsultores.ventaboletos.utilerias.DateUtil; import com.rjconsultores.ventaboletos.web.utilerias.NamedParameterStatement; public class RelatorioCancelamentoVendaCartao extends Relatorio { - + private ConstanteService constanteService; public RelatorioCancelamentoVendaCartao(Map parametros, Connection conexao, ConstanteService constanteService) throws Exception { @@ -34,14 +34,18 @@ public class RelatorioCancelamentoVendaCartao extends Relatorio { stmt.setTimestamp("data_inicial", new Timestamp(DateUtil.inicioFecha((Date) parametros.get("DATA_INICIAL")).getTime())); stmt.setTimestamp("data_final", new Timestamp(DateUtil.fimFecha((Date) parametros.get("DATA_FINAL")).getTime())); stmt.setInt("formaPago1", CARTAO_CREDITO); - stmt.setInt("empresaId", Integer.valueOf(parametros.get("EMPRESA_ID")+"")); - + stmt.setInt("empresaId", Integer.valueOf(parametros.get("EMPRESA_ID") + "")); + ResultSet rset = stmt.executeQuery(); while (rset.next()) { Map dataResult = new HashMap(); dataResult.put("estabelecimento", rset.getString("nombpuntoventa")); - dataResult.put("cartao", rset.getString("numtarjeta").replace('*', ' ').trim()); + + if (rset.getString("numtarjeta") != null) { + dataResult.put("cartao", rset.getString("numtarjeta").replace('*', ' ').trim()); + } + dataResult.put("datavenda", rset.getDate("fechorventa")); dataResult.put("datadevolucao", rset.getDate("datadevolucao")); dataResult.put("valor_total_compra", rset.getBigDecimal("valor_cesta")); @@ -63,310 +67,170 @@ public class RelatorioCancelamentoVendaCartao extends Relatorio { @Override protected void processaParametros() throws Exception { } - + private String getSql() { StringBuilder sql = new StringBuilder(); - + /* Boletos apenas com venda e cancelamento direto com corrida */ sql.append("SELECT DISTINCT B.BOLETO_ID, P.NOMBPUNTOVENTA, O.NUMTARJETA, B.FECHORVENTA, PTOVTA.NUMSITEF, ") - .append("'OCD' AS DESCMOTIVO, O.NUMAUTORIZACION, O.NSU, B.NUMFOLIOSISTEMA, O.FECINC AS DATADEVOLUCAO, O.NUMOPERACION, ") - .append("(COALESCE(B.PRECIOPAGADO,0) + COALESCE(B.IMPORTEOUTROS,0)+ COALESCE(B.IMPORTEPEDAGIO,0)+ COALESCE(B.IMPORTESEGURO,0) + COALESCE(B.IMPORTETAXAEMBARQUE,0)) AS VALOR_VENDA, ") - - .append("CASE WHEN O.VALOR_TARJETA > 0 ") - .append("THEN TO_CHAR(COALESCE(O.VALOR_TARJETA,0),'FM9999999.90') ") - .append("ELSE TO_CHAR(COALESCE(O.VALOR_PAGAR,0),'FM9999999.90') ") - .append("END AS VALOR_CANCELAR, ") - - .append("(SELECT SUM(COALESCE(B1.PRECIOPAGADO,0) + COALESCE(B1.IMPORTEOUTROS,0) + COALESCE(B1.IMPORTEPEDAGIO,0) + COALESCE(B1.IMPORTESEGURO,0) + COALESCE(B1.IMPORTETAXAEMBARQUE,0)) ") - .append(" FROM BOLETO B1 ") - .append(" WHERE B1.NUMOPERACION = B.NUMOPERACION ") - .append(" AND B1.BOLETOORIGINAL_ID IS NULL ") - .append(") AS VALOR_CESTA ") - .append("FROM OCD O ") - .append("INNER JOIN BOLETO B ON O.BOLETO_ID = B.BOLETO_ID ") - .append(" AND B.BOLETOORIGINAL_ID IS NULL ") - .append(" AND B.CORRIDA_ID IS NOT NULL ") - .append(" AND B.FECCORRIDA IS NOT NULL ") - .append("INNER JOIN BOLETO_FORMAPAGO BFP ON BFP.BOLETO_ID = B.BOLETO_ID ") - .append("AND BFP.FORMAPAGO_ID = :formaPago1 ") - .append("INNER JOIN PUNTO_VENTA P ON P.PUNTOVENTA_ID = B.PUNTOVENTA_ID ") - .append("INNER JOIN PTOVTA_EMPRESA PTOVTA ON B.PUNTOVENTA_ID = PTOVTA.PUNTOVENTA_ID ") - .append("INNER JOIN MARCA M ON M.MARCA_ID = B.MARCA_ID AND M.EMPRESA_ID = PTOVTA.EMPRESA_ID ") - .append("WHERE O.FECINC BETWEEN :data_inicial AND :data_final ") - .append("AND B.MARCA_ID = :empresaId "); - - if(parametros.get("NUMPUNTOVENTA") != null) { + .append("'OCD' AS DESCMOTIVO, O.NUMAUTORIZACION, O.NSU, B.NUMFOLIOSISTEMA, O.FECINC AS DATADEVOLUCAO, O.NUMOPERACION, ") + .append("(COALESCE(B.PRECIOPAGADO,0) + COALESCE(B.IMPORTEOUTROS,0)+ COALESCE(B.IMPORTEPEDAGIO,0)+ COALESCE(B.IMPORTESEGURO,0) + COALESCE(B.IMPORTETAXAEMBARQUE,0)) AS VALOR_VENDA, ") + + .append("CASE WHEN O.VALOR_TARJETA > 0 ") + .append("THEN TO_CHAR(COALESCE(O.VALOR_TARJETA,0),'FM9999999.90') ") + .append("ELSE TO_CHAR(COALESCE(O.VALOR_PAGAR,0),'FM9999999.90') ") + .append("END AS VALOR_CANCELAR, ") + + .append("(SELECT SUM(COALESCE(B1.PRECIOPAGADO,0) + COALESCE(B1.IMPORTEOUTROS,0) + COALESCE(B1.IMPORTEPEDAGIO,0) + COALESCE(B1.IMPORTESEGURO,0) + COALESCE(B1.IMPORTETAXAEMBARQUE,0)) ") + .append(" FROM BOLETO B1 ") + .append(" WHERE B1.NUMOPERACION = B.NUMOPERACION ") + .append(" AND B1.BOLETOORIGINAL_ID IS NULL ") + .append(") AS VALOR_CESTA ") + .append("FROM OCD O ") + .append("INNER JOIN BOLETO B ON O.BOLETO_ID = B.BOLETO_ID ") + .append(" AND B.BOLETOORIGINAL_ID IS NULL ") + .append(" AND B.CORRIDA_ID IS NOT NULL ") + .append(" AND B.FECCORRIDA IS NOT NULL ") + .append("INNER JOIN BOLETO_FORMAPAGO BFP ON BFP.BOLETO_ID = B.BOLETO_ID ") + .append("AND BFP.FORMAPAGO_ID = :formaPago1 ") + .append("INNER JOIN PUNTO_VENTA P ON P.PUNTOVENTA_ID = B.PUNTOVENTA_ID ") + .append("INNER JOIN PTOVTA_EMPRESA PTOVTA ON B.PUNTOVENTA_ID = PTOVTA.PUNTOVENTA_ID ") + .append("INNER JOIN MARCA M ON M.MARCA_ID = B.MARCA_ID AND M.EMPRESA_ID = PTOVTA.EMPRESA_ID ") + .append("WHERE O.FECINC BETWEEN :data_inicial AND :data_final ") + .append("AND B.MARCA_ID = :empresaId "); + + if (parametros.get("NUMPUNTOVENTA") != null) { sql.append("AND P.PUNTOVENTA_ID IN (") - .append(parametros.get("NUMPUNTOVENTA")) - .append(") "); + .append(parametros.get("NUMPUNTOVENTA")) + .append(") "); } - + sql.append("UNION ALL "); - + /* Boletos com entrega/transferencia/troca antes do cancelamento com corrida */ sql.append("SELECT DISTINCT B.BOLETO_ID, P.NOMBPUNTOVENTA, O.NUMTARJETA, B.FECHORVENTA, PTOVTA.NUMSITEF, ") - .append("'OCD' AS DESCMOTIVO, O.NUMAUTORIZACION, O.NSU, B.NUMFOLIOSISTEMA, O.FECINC AS DATADEVOLUCAO, O.NUMOPERACION, ") - .append("(COALESCE(B.PRECIOPAGADO,0) + COALESCE(B.IMPORTEOUTROS,0)+ COALESCE(B.IMPORTEPEDAGIO,0)+ COALESCE(B.IMPORTESEGURO,0) + COALESCE(B.IMPORTETAXAEMBARQUE,0)) AS VALOR_VENDA, ") - - .append("CASE WHEN O.VALOR_TARJETA > 0 ") - .append("THEN TO_CHAR(COALESCE(O.VALOR_TARJETA,0),'FM9999999.90') ") - .append("ELSE TO_CHAR(COALESCE(O.VALOR_PAGAR,0),'FM9999999.90') ") - .append("END AS VALOR_CANCELAR, ") - - .append("(SELECT SUM(COALESCE(B1.PRECIOPAGADO,0) + COALESCE(B1.IMPORTEOUTROS,0) + COALESCE(B1.IMPORTEPEDAGIO,0) + COALESCE(B1.IMPORTESEGURO,0) + COALESCE(B1.IMPORTETAXAEMBARQUE,0)) ") - .append(" FROM BOLETO B1 ") - .append(" WHERE B1.NUMOPERACION = BR.NUMOPERACION ") - .append(" AND B1.BOLETOORIGINAL_ID IS NULL ") - .append(") AS VALOR_CESTA ") - .append("FROM OCD O ") - .append("INNER JOIN BOLETO B ON O.BOLETO_ID = B.BOLETO_ID ") - .append("INNER JOIN BOLETO BR ON BR.BOLETO_ID = B.BOLETOORIGINAL_ID ") - .append(" AND BR.CORRIDA_ID IS NOT NULL ") - .append(" AND BR.FECCORRIDA IS NOT NULL ") - .append("INNER JOIN BOLETO_FORMAPAGO BFP ON BFP.BOLETO_ID = B.BOLETO_ID ") - .append("AND BFP.FORMAPAGO_ID = :formaPago1 ") - .append("INNER JOIN PUNTO_VENTA P ON P.PUNTOVENTA_ID = BR.PUNTOVENTA_ID ") - .append("INNER JOIN PTOVTA_EMPRESA PTOVTA ON BR.PUNTOVENTA_ID = PTOVTA.PUNTOVENTA_ID ") - .append("INNER JOIN MARCA M ON M.MARCA_ID = BR.MARCA_ID AND M.EMPRESA_ID = PTOVTA.EMPRESA_ID ") - .append("WHERE O.FECINC BETWEEN :data_inicial AND :data_final ") - .append("AND BR.MARCA_ID = :empresaId "); - - if(parametros.get("NUMPUNTOVENTA") != null) { + .append("'OCD' AS DESCMOTIVO, O.NUMAUTORIZACION, O.NSU, B.NUMFOLIOSISTEMA, O.FECINC AS DATADEVOLUCAO, O.NUMOPERACION, ") + .append("(COALESCE(B.PRECIOPAGADO,0) + COALESCE(B.IMPORTEOUTROS,0)+ COALESCE(B.IMPORTEPEDAGIO,0)+ COALESCE(B.IMPORTESEGURO,0) + COALESCE(B.IMPORTETAXAEMBARQUE,0)) AS VALOR_VENDA, ") + + .append("CASE WHEN O.VALOR_TARJETA > 0 ") + .append("THEN TO_CHAR(COALESCE(O.VALOR_TARJETA,0),'FM9999999.90') ") + .append("ELSE TO_CHAR(COALESCE(O.VALOR_PAGAR,0),'FM9999999.90') ") + .append("END AS VALOR_CANCELAR, ") + + .append("(SELECT SUM(COALESCE(B1.PRECIOPAGADO,0) + COALESCE(B1.IMPORTEOUTROS,0) + COALESCE(B1.IMPORTEPEDAGIO,0) + COALESCE(B1.IMPORTESEGURO,0) + COALESCE(B1.IMPORTETAXAEMBARQUE,0)) ") + .append(" FROM BOLETO B1 ") + .append(" WHERE B1.NUMOPERACION = BR.NUMOPERACION ") + .append(" AND B1.BOLETOORIGINAL_ID IS NULL ") + .append(") AS VALOR_CESTA ") + .append("FROM OCD O ") + .append("INNER JOIN BOLETO B ON O.BOLETO_ID = B.BOLETO_ID ") + .append("INNER JOIN BOLETO BR ON BR.BOLETO_ID = B.BOLETOORIGINAL_ID ") + .append(" AND BR.CORRIDA_ID IS NOT NULL ") + .append(" AND BR.FECCORRIDA IS NOT NULL ") + .append("INNER JOIN BOLETO_FORMAPAGO BFP ON BFP.BOLETO_ID = B.BOLETO_ID ") + .append("AND BFP.FORMAPAGO_ID = :formaPago1 ") + .append("INNER JOIN PUNTO_VENTA P ON P.PUNTOVENTA_ID = BR.PUNTOVENTA_ID ") + .append("INNER JOIN PTOVTA_EMPRESA PTOVTA ON BR.PUNTOVENTA_ID = PTOVTA.PUNTOVENTA_ID ") + .append("INNER JOIN MARCA M ON M.MARCA_ID = BR.MARCA_ID AND M.EMPRESA_ID = PTOVTA.EMPRESA_ID ") + .append("WHERE O.FECINC BETWEEN :data_inicial AND :data_final ") + .append("AND BR.MARCA_ID = :empresaId "); + + if (parametros.get("NUMPUNTOVENTA") != null) { sql.append("AND P.PUNTOVENTA_ID IN (") - .append(parametros.get("NUMPUNTOVENTA")) - .append(") "); + .append(parametros.get("NUMPUNTOVENTA")) + .append(") "); } - + sql.append("UNION ALL "); - + /* Boletos apenas com venda e cancelamento direto sem corrida */ sql.append("SELECT DISTINCT B.BOLETO_ID, P.NOMBPUNTOVENTA, O.NUMTARJETA, B.FECHORVENTA, PTOVTA.NUMSITEF, ") - .append("'OCD' AS DESCMOTIVO, O.NUMAUTORIZACION, O.NSU, B.NUMFOLIOSISTEMA, O.FECINC AS DATADEVOLUCAO, O.NUMOPERACION, ") - .append("(COALESCE(B.PRECIOPAGADO,0) + COALESCE(B.IMPORTEOUTROS,0)+ COALESCE(B.IMPORTEPEDAGIO,0)+ COALESCE(B.IMPORTESEGURO,0) + COALESCE(B.IMPORTETAXAEMBARQUE,0)) AS VALOR_VENDA, ") - - .append("CASE WHEN O.VALOR_TARJETA > 0 ") - .append("THEN TO_CHAR(COALESCE(O.VALOR_TARJETA,0),'FM9999999.90') ") - .append("ELSE TO_CHAR(COALESCE(O.VALOR_PAGAR,0),'FM9999999.90') ") - .append("END AS VALOR_CANCELAR, ") - - .append("(SELECT SUM(COALESCE(B1.PRECIOPAGADO,0) + COALESCE(B1.IMPORTEOUTROS,0) + COALESCE(B1.IMPORTEPEDAGIO,0) + COALESCE(B1.IMPORTESEGURO,0) + COALESCE(B1.IMPORTETAXAEMBARQUE,0)) ") - .append(" FROM BOLETO B1 ") - .append(" WHERE B1.NUMOPERACION = B.NUMOPERACION ") - .append(" AND B1.BOLETOORIGINAL_ID IS NULL ") - .append(") AS VALOR_CESTA ") - .append("FROM OCD O ") - .append("INNER JOIN BOLETO B ON O.BOLETO_ID = B.BOLETO_ID ") - .append(" AND B.BOLETOORIGINAL_ID IS NULL ") - .append(" AND B.CORRIDA_ID IS NULL ") - .append(" AND B.FECCORRIDA IS NULL ") - .append("INNER JOIN BOLETO_FORMAPAGO BFP ON BFP.BOLETO_ID = B.BOLETO_ID ") - .append("AND BFP.FORMAPAGO_ID = :formaPago1 ") - .append("INNER JOIN PUNTO_VENTA P ON P.PUNTOVENTA_ID = B.PUNTOVENTA_ID ") - .append("INNER JOIN PTOVTA_EMPRESA PTOVTA ON B.PUNTOVENTA_ID = PTOVTA.PUNTOVENTA_ID ") - .append("INNER JOIN MARCA M ON M.MARCA_ID = B.MARCA_ID AND M.EMPRESA_ID = PTOVTA.EMPRESA_ID ") - .append("WHERE O.FECINC BETWEEN :data_inicial AND :data_final ") - .append("AND B.MARCA_ID = :empresaId "); - - if(parametros.get("NUMPUNTOVENTA") != null) { + .append("'OCD' AS DESCMOTIVO, O.NUMAUTORIZACION, O.NSU, B.NUMFOLIOSISTEMA, O.FECINC AS DATADEVOLUCAO, O.NUMOPERACION, ") + .append("(COALESCE(B.PRECIOPAGADO,0) + COALESCE(B.IMPORTEOUTROS,0)+ COALESCE(B.IMPORTEPEDAGIO,0)+ COALESCE(B.IMPORTESEGURO,0) + COALESCE(B.IMPORTETAXAEMBARQUE,0)) AS VALOR_VENDA, ") + + .append("CASE WHEN O.VALOR_TARJETA > 0 ") + .append("THEN TO_CHAR(COALESCE(O.VALOR_TARJETA,0),'FM9999999.90') ") + .append("ELSE TO_CHAR(COALESCE(O.VALOR_PAGAR,0),'FM9999999.90') ") + .append("END AS VALOR_CANCELAR, ") + + .append("(SELECT SUM(COALESCE(B1.PRECIOPAGADO,0) + COALESCE(B1.IMPORTEOUTROS,0) + COALESCE(B1.IMPORTEPEDAGIO,0) + COALESCE(B1.IMPORTESEGURO,0) + COALESCE(B1.IMPORTETAXAEMBARQUE,0)) ") + .append(" FROM BOLETO B1 ") + .append(" WHERE B1.NUMOPERACION = B.NUMOPERACION ") + .append(" AND B1.BOLETOORIGINAL_ID IS NULL ") + .append(") AS VALOR_CESTA ") + .append("FROM OCD O ") + .append("INNER JOIN BOLETO B ON O.BOLETO_ID = B.BOLETO_ID ") + .append(" AND B.BOLETOORIGINAL_ID IS NULL ") + .append(" AND B.CORRIDA_ID IS NULL ") + .append(" AND B.FECCORRIDA IS NULL ") + .append("INNER JOIN BOLETO_FORMAPAGO BFP ON BFP.BOLETO_ID = B.BOLETO_ID ") + .append("AND BFP.FORMAPAGO_ID = :formaPago1 ") + .append("INNER JOIN PUNTO_VENTA P ON P.PUNTOVENTA_ID = B.PUNTOVENTA_ID ") + .append("INNER JOIN PTOVTA_EMPRESA PTOVTA ON B.PUNTOVENTA_ID = PTOVTA.PUNTOVENTA_ID ") + .append("INNER JOIN MARCA M ON M.MARCA_ID = B.MARCA_ID AND M.EMPRESA_ID = PTOVTA.EMPRESA_ID ") + .append("WHERE O.FECINC BETWEEN :data_inicial AND :data_final ") + .append("AND B.MARCA_ID = :empresaId "); + + if (parametros.get("NUMPUNTOVENTA") != null) { sql.append("AND P.PUNTOVENTA_ID IN (") - .append(parametros.get("NUMPUNTOVENTA")) - .append(") "); + .append(parametros.get("NUMPUNTOVENTA")) + .append(") "); } - + sql.append("ORDER BY FECHORVENTA, DATADEVOLUCAO, NUMFOLIOSISTEMA "); - + return sql.toString(); } - /*private String getSql() { - StringBuilder sql = new StringBuilder(); - //Busca os boletos originais dos boletos que foram geradas OCDS - //Esses boletos sofreram transferência. - //O intuito dessa query é recuperar os dados originais de cartões de crédito - sql.append(" WITH boletos_originais AS "); - sql.append(" (SELECT distinct b.boleto_id as boleto_id_bo, ctj.numtarjeta as numtarjeta_bo, ptovta.numsitef as numsitef_bo, c.caja_id, c.fechorventa AS fechorventa_bo, "); - sql.append(" CASE WHEN ctj.numautorizacion IS NULL THEN '-' ELSE ctj.numautorizacion END AS numautorizacion_bo, "); - sql.append(" ctj.nsu as nsu_bo, c.numoperacion AS numoperacion "); - sql.append(" FROM boleto b, caja_det_pago cdt, caja c, caja_tarjeta ctj, ptovta_empresa ptovta "); - sql.append(" WHERE b.boleto_id IN "); - sql.append(" ( SELECT b.boletooriginal_id FROM OCD o "); - sql.append(" INNER JOIN boleto b ON o.BOLETO_ID = b.BOLETO_ID "); - sql.append(" INNER JOIN caja c ON c.numoperacion = b.numoperacion "); - sql.append(" AND b.numfoliosistema = c.numfoliosistema "); - sql.append(" AND o.fecinc between :data_inicial and :data_final "); - if (parametros.get("EMPRESA_ID") != null) { - sql.append(" INNER JOIN marca ma on ma.marca_id = b.marca_id"); - sql.append(" AND ma.empresa_id = " + parametros.get("EMPRESA_ID")); - } - if (parametros.get("NUMPUNTOVENTA") != null) { - sql.append(" AND o.puntoventa_id IN (" + parametros.get("NUMPUNTOVENTA").toString() + ")"); - } - sql.append(" AND b.boletooriginal_id IS NOT NULL "); - sql.append(")"); - - sql.append(" AND c.numoperacion = b.numoperacion "); - //Para venda pela internet aparecer é preciso descomentar a linha abaixo - sql.append(" AND b.numfoliosistema = c.numfoliosistema "); - sql.append(" AND cdt.caja_id = c.caja_id "); - sql.append(" AND cdt.cajadetpago_id = ctj.cajadetpago_id "); - sql.append(" AND cdt.formapago_id IN (2) "); - sql.append(" AND b.puntoventa_id = ptovta.puntoventa_id "); - if (parametros.get("EMPRESA_ID") != null) { - //Para venda pela internet aparecer é preciso descomentar a linha abaixo - sql.append(" AND ptovta.empresa_id = " + parametros.get("EMPRESA_ID")); - } - sql.append("), "); - //Busca os boletos que foram vendidos pela internet(boleto originais) - sql.append(" boletos_o_venda_internet AS( "); - sql.append(" SELECT DISTINCT b.boleto_id AS boleto_id_bo_vi, ctj.numtarjeta AS numtarjeta_bo_vi, "); - sql.append(" ptovta.numsitef AS numsitef_bo_vi, c.caja_id, c.fechorventa AS fechorventa_bo_vi, "); - sql.append(" CASE WHEN ctj.numautorizacion IS NULL THEN '-' ELSE ctj.numautorizacion END AS numautorizacion_bo_vi, "); - sql.append(" ctj.nsu AS nsu_bo_vi, c.numoperacion AS numoperacion FROM boleto b, caja_det_pago cdt, caja c, "); - sql.append(" caja_tarjeta ctj, ptovta_empresa ptovta WHERE b.boleto_id IN(SELECT b.boletooriginal_id "); - sql.append(" FROM OCD o INNER JOIN boleto b ON o.BOLETO_ID = b.BOLETO_ID "); - sql.append(" inner join caja c on c.numoperacion = b.numoperacion "); - sql.append(" and c.feccorrida = b.feccorrida "); - sql.append(" and c.corrida_id = b.corrida_id "); - sql.append(" and c.numasiento = b.numasiento "); - sql.append(" AND o.fecinc between :data_inicial and :data_final "); - if (parametros.get("EMPRESA_ID") != null) { - sql.append(" INNER JOIN marca ma on ma.marca_id = b.marca_id"); - sql.append(" AND ma.empresa_id = " + parametros.get("EMPRESA_ID")); - } - if (parametros.get("NUMPUNTOVENTA") != null) { - sql.append(" AND o.puntoventa_id IN (" + parametros.get("NUMPUNTOVENTA").toString() + ")"); - } - sql.append(" AND b.boletooriginal_id IS NOT NULL "); - sql.append(")"); - sql.append(" AND c.numoperacion = b.numoperacion "); - sql.append(" AND cdt.caja_id = c.caja_id "); - sql.append(" AND cdt.cajadetpago_id = ctj.cajadetpago_id "); - sql.append(" AND cdt.formapago_id IN (2) "); - sql.append(" AND b.puntoventa_id = ptovta.puntoventa_id "); - sql.append(" AND b.feccorrida = c.feccorrida "); - sql.append(" AND b.corrida_id = c.corrida_id "); - sql.append(" AND b.numasiento = c.numasiento "); - sql.append(" AND b.puntoventa_id = "); - - //Pega o ponto de venda - Constante constante = constanteService.buscarPorNomeConstante("PUNTO_VENTA_INTERNET"); - if(constante != null) { - sql.append(constante.getValorconstante()); - } else { - sql.append("99999"); - } - sql.append(" ),"); //É o código do puntoventa de compras pela internet - - //Busca os boletos novos após a transferência e geração de OCD - sql.append(" boletos_novos AS( "); - sql.append(" SELECT c.caja_id as caja_id_bn, b.boleto_id as boleto_id_bn, b.boletooriginal_id as boleto_id_original_bn, "); - sql.append(" b.puntoventa_id as puntoventa_id_bn, p.nombpuntoventa as nombpuntoventa_bn, c.fechorventa as fechorventa_bn, "); - sql.append(" (coalesce(c.preciopagado,0) + coalesce(c.importeoutros,0)+ coalesce(c.importepedagio,0)+ "); - sql.append(" coalesce(c.importeseguro,0) + coalesce(c.importetaxaembarque,0)) as valor_venda_bn, "); - sql.append(" CASE WHEN o.VALOR_TARJETA is null OR o.VALOR_TARJETA = 0 THEN TO_CHAR(COALESCE(o.VALOR_PAGAR,0),'FM9999999.90')ELSE TO_CHAR(COALESCE(o.VALOR_TARJETA,0),'FM9999999.90') END as valor_cancelar_bn, "); - sql.append(" c.numfoliosistema as numfoliosistema_bn, o.fecinc as datadevolucao_bn "); - sql.append(" FROM OCD o "); - sql.append(" INNER JOIN boleto b ON o.BOLETO_ID = b.BOLETO_ID "); - sql.append(" INNER JOIN caja c ON c.numoperacion = b.numoperacion "); - sql.append(" AND b.numfoliosistema = c.numfoliosistema "); - sql.append(" INNER JOIN punto_venta p "); - sql.append(" ON p.puntoventa_id = b.puntoventa_id "); - //sql.append(" AND o.VALOR_TARJETA <> 0 "); - sql.append(" AND o.fecinc between :data_inicial and :data_final "); - if (parametros.get("EMPRESA_ID") != null) { - sql.append(" INNER JOIN marca ma on ma.marca_id = b.marca_id"); - sql.append(" AND ma.empresa_id = " + parametros.get("EMPRESA_ID")); - } - if (parametros.get("NUMPUNTOVENTA") != null) { - sql.append(" and p.puntoventa_id IN (" + parametros.get("NUMPUNTOVENTA").toString() + ")"); - } - - sql.append("),"); - //Busca todas as OCD's exceto os boletos que foram transferidos antes da geração da OCD - sql.append(" ocds AS(select distinct c.caja_id, b.boleto_id, p.nombpuntoventa, ctj.numtarjeta, c.fechorventa, ptovta.numsitef,"); - sql.append(" (coalesce(c.preciopagado,0) + coalesce(c.importeoutros,0)+ coalesce(c.importepedagio,0)+ coalesce(c.importeseguro,0) + coalesce(c.importetaxaembarque,0)) as valor_venda,"); - sql.append(" TO_CHAR(coalesce(o.VALOR_TARJETA,0),'FM9999999.90') as valor_cancelar,"); - sql.append(" 'OCD' as descmotivo, ctj.numautorizacion, ctj.nsu, c.numfoliosistema, o.fecinc as datadevolucao, c.numoperacion "); - sql.append(" from OCD o"); - sql.append(" inner join boleto b on o.BOLETO_ID = b.BOLETO_ID"); - sql.append(" inner join caja c on c.numoperacion = b.numoperacion "); - //sql.append(" and c.numfoliosistema = b.numfoliosistema "); - sql.append(" inner join caja_det_pago cdt ON cdt.caja_id = c.caja_id and cdt.formapago_id in (:formaPago1)"); - sql.append(" inner join caja_tarjeta ctj on cdt.cajadetpago_id = ctj.cajadetpago_id"); - sql.append(" inner join punto_venta p on p.puntoventa_id = b.puntoventa_id"); - sql.append(" inner join ptovta_empresa ptovta on b.puntoventa_id = ptovta.puntoventa_id"); - sql.append(" inner join marca m on m.marca_id = b.marca_id "); - sql.append(" and m.EMPRESA_ID = ptovta.EMPRESA_ID "); - if (parametros.get("EMPRESA_ID") != null) { - sql.append(" inner join empresa e on e.empresa_id = m.empresa_id and m.empresa_id = " + parametros.get("EMPRESA_ID")); - } - sql.append(" AND o.fecinc between :data_inicial and :data_final "); - if (parametros.get("NUMPUNTOVENTA") != null) { - sql.append(" and p.puntoventa_id IN (" + parametros.get("NUMPUNTOVENTA").toString() + ")"); - } - //sql.append(" order by c.fechorventa, o.fecinc ),"); - sql.append(" ),"); - sql.append(" ocds_total_compra AS "); - //Busca com base no numoperacion da consulta "ocds" os valores totais da compra(Cesta de compras) - sql.append(" (SELECT c.numoperacion AS numoperacion_cc,"); - sql.append(" SUM((COALESCE(c.preciopagado,0) + COALESCE(c.importeoutros,0)+ COALESCE(c.importepedagio,0)+ COALESCE(c.importeseguro,0) + COALESCE(c.importetaxaembarque,0) + COALESCE(e.impingreso,0)))AS valor_cesta "); - sql.append(" FROM CAJA c INNER JOIN ocds o on c.caja_id = o.caja_id "); - sql.append(" LEFT JOIN evento_extra e on e.boleto_id = o.boleto_id "); - sql.append(" GROUP BY c.numoperacion),"); - sql.append(" total_compra_bo_originais AS"); - //Busca com base no numoperacion da consulta "boletos_originais" os valores totais da compra(Cesta de compras) - sql.append(" (SELECT c.numoperacion AS numoperacion_cc, "); - sql.append(" SUM((COALESCE(c.preciopagado,0) + COALESCE(c.importeoutros,0)+ COALESCE(c.importepedagio,0)+ COALESCE(c.importeseguro,0) + COALESCE(c.importetaxaembarque,0) + COALESCE(e.impingreso,0)))AS valor_cesta "); - sql.append(" FROM CAJA c"); - sql.append(" INNER JOIN boletos_originais bo on c.caja_id = bo.caja_id "); - sql.append(" LEFT JOIN evento_extra e on e.boleto_id = bo.boleto_id_bo "); - sql.append(" GROUP BY c.numoperacion), "); - //Busca com base no numoperacion da consulta "boletos_o_venda_internet" os valores totais da compra(Cesta de compras) - sql.append(" total_compra_bo_internet AS "); - sql.append(" (SELECT c.numoperacion AS numoperacion_cc, SUM((COALESCE(c.preciopagado,0) + COALESCE(c.importeoutros,0)+ COALESCE(c.importepedagio,0)+ "); - sql.append(" COALESCE(c.importeseguro,0) + COALESCE(c.importetaxaembarque,0) + COALESCE(e.impingreso,0)))AS valor_cesta "); - sql.append(" FROM CAJA c INNER JOIN boletos_o_venda_internet bo ON c.caja_id = bo.caja_id LEFT JOIN evento_extra e"); - sql.append(" ON e.boleto_id = bo.boleto_id_bo_vi GROUP BY c.numoperacion)"); - - sql.append(" SELECT nombpuntoventa, fechorventa, datadevolucao, numtarjeta, numsitef, valor_venda, valor_cancelar, "); - sql.append(" descmotivo, numautorizacion, nsu, numfoliosistema, valor_cesta "); - sql.append(" FROM ( "); - - //Realiza o join entre as Views 'ocds' e ocds_total_compra afim de obter o total da cesta de compras - sql.append(" SELECT caja_id, nombpuntoventa, numtarjeta, fechorventa, numsitef, valor_venda, valor_cancelar, "); - sql.append(" descmotivo, numautorizacion, nsu, numfoliosistema, datadevolucao, valor_cesta "); - sql.append(" FROM ocds "); - sql.append(" INNER JOIN ocds_total_compra ocdst "); - sql.append(" ON ocds.numoperacion = ocdst.numoperacion_cc "); - - sql.append(" UNION "); - //Realiza o join entre as Views 'boletos_originais' e total_compra_bo_originais afim de obter o total da cesta de compras - //Realiza também o join com as Views boletos_novos com o intuito de exibir os boletos transferidos os quais foram - //geradas OCD´s - sql.append(" SELECT bn.caja_id_bn, bn.nombpuntoventa_bn as nombpuntoventa, bo.numtarjeta_bo as numtarjeta, bo.fechorventa_bo as fechorventa, "); - sql.append(" bo.numsitef_bo as numsitef, bn.valor_venda_bn as valor_venda, bn.valor_cancelar_bn as valor_cancelar, 'OCD' AS descmotivo, "); - sql.append(" bo.numautorizacion_bo as numautorizacion, bo.nsu_bo as nsu, numfoliosistema_bn as numfoliosistema, datadevolucao_bn as datadevolucao, total_c_bo_originais.valor_cesta"); - sql.append(" FROM boletos_originais bo "); - sql.append(" INNER JOIN total_compra_bo_originais total_c_bo_originais "); - sql.append(" ON total_c_bo_originais.numoperacion_cc = bo.numoperacion "); - sql.append(" INNER JOIN boletos_novos bn "); - sql.append(" ON bo.boleto_id_bo = bn.boleto_id_original_bn "); - - sql.append(" UNION "); - - //Realiza o join entre as Views 'boletos_o_venda_internet' e total_compra_bo_internet afim de obter o total da cesta de compras - //Realiza também o join com as Views boletos_novos com o intuito de exibir os boletos novos os quais foram - //geradas OCD´s - sql.append(" SELECT bn.caja_id_bn, bn.nombpuntoventa_bn as nombpuntoventa, bo.numtarjeta_bo_vi as numtarjeta, bo.fechorventa_bo_vi as fechorventa, bo.numsitef_bo_vi as numsitef, "); - sql.append(" bn.valor_venda_bn as valor_venda, bn.valor_cancelar_bn as valor_cancelar, 'OCD' AS descmotivo, bo.numautorizacion_bo_vi as numautorizacion, bo.nsu_bo_vi as nsu, "); - sql.append(" numfoliosistema_bn as numfoliosistema, datadevolucao_bn as datadevolucao, total_c_bo_internet.valor_cesta FROM boletos_o_venda_internet bo "); - sql.append(" INNER JOIN total_compra_bo_internet total_c_bo_internet ON total_c_bo_internet.numoperacion_cc = bo.numoperacion "); - sql.append(" INNER JOIN boletos_novos bn ON bo.boleto_id_bo_vi = bn.boleto_id_original_bn "); - - sql.append(") ORDER BY datadevolucao "); - - return sql.toString(); - - }*/ + /* + * private String getSql() { StringBuilder sql = new StringBuilder(); //Busca os boletos originais dos boletos que foram geradas OCDS //Esses boletos sofreram transferência. //O intuito dessa query é recuperar os dados originais de cartões de crédito sql.append(" WITH boletos_originais AS "); sql.append(" (SELECT distinct b.boleto_id as boleto_id_bo, ctj.numtarjeta as numtarjeta_bo, ptovta.numsitef as numsitef_bo, c.caja_id, c.fechorventa AS fechorventa_bo, "); + * sql.append(" CASE WHEN ctj.numautorizacion IS NULL THEN '-' ELSE ctj.numautorizacion END AS numautorizacion_bo, "); sql.append(" ctj.nsu as nsu_bo, c.numoperacion AS numoperacion "); sql.append(" FROM boleto b, caja_det_pago cdt, caja c, caja_tarjeta ctj, ptovta_empresa ptovta "); sql.append(" WHERE b.boleto_id IN "); sql.append(" ( SELECT b.boletooriginal_id FROM OCD o "); sql.append(" INNER JOIN boleto b ON o.BOLETO_ID = b.BOLETO_ID "); sql.append( + * " INNER JOIN caja c ON c.numoperacion = b.numoperacion "); sql.append(" AND b.numfoliosistema = c.numfoliosistema "); sql.append(" AND o.fecinc between :data_inicial and :data_final "); if (parametros.get("EMPRESA_ID") != null) { sql.append(" INNER JOIN marca ma on ma.marca_id = b.marca_id"); sql.append(" AND ma.empresa_id = " + parametros.get("EMPRESA_ID")); } if (parametros.get("NUMPUNTOVENTA") != null) { sql.append(" AND o.puntoventa_id IN (" + + * parametros.get("NUMPUNTOVENTA").toString() + ")"); } sql.append(" AND b.boletooriginal_id IS NOT NULL "); sql.append(")"); + * + * sql.append(" AND c.numoperacion = b.numoperacion "); //Para venda pela internet aparecer é preciso descomentar a linha abaixo sql.append(" AND b.numfoliosistema = c.numfoliosistema "); sql.append(" AND cdt.caja_id = c.caja_id "); sql.append(" AND cdt.cajadetpago_id = ctj.cajadetpago_id "); sql.append(" AND cdt.formapago_id IN (2) "); sql.append(" AND b.puntoventa_id = ptovta.puntoventa_id "); if (parametros.get("EMPRESA_ID") != null) { //Para venda pela internet + * aparecer é preciso descomentar a linha abaixo sql.append(" AND ptovta.empresa_id = " + parametros.get("EMPRESA_ID")); } sql.append("), "); //Busca os boletos que foram vendidos pela internet(boleto originais) sql.append(" boletos_o_venda_internet AS( "); sql.append(" SELECT DISTINCT b.boleto_id AS boleto_id_bo_vi, ctj.numtarjeta AS numtarjeta_bo_vi, "); sql.append(" ptovta.numsitef AS numsitef_bo_vi, c.caja_id, c.fechorventa AS fechorventa_bo_vi, "); sql.append( + * " CASE WHEN ctj.numautorizacion IS NULL THEN '-' ELSE ctj.numautorizacion END AS numautorizacion_bo_vi, "); sql.append(" ctj.nsu AS nsu_bo_vi, c.numoperacion AS numoperacion FROM boleto b, caja_det_pago cdt, caja c, "); sql.append(" caja_tarjeta ctj, ptovta_empresa ptovta WHERE b.boleto_id IN(SELECT b.boletooriginal_id "); sql.append(" FROM OCD o INNER JOIN boleto b ON o.BOLETO_ID = b.BOLETO_ID "); sql.append(" inner join caja c on c.numoperacion = b.numoperacion "); + * sql.append(" and c.feccorrida = b.feccorrida "); sql.append(" and c.corrida_id = b.corrida_id "); sql.append(" and c.numasiento = b.numasiento "); sql.append(" AND o.fecinc between :data_inicial and :data_final "); if (parametros.get("EMPRESA_ID") != null) { sql.append(" INNER JOIN marca ma on ma.marca_id = b.marca_id"); sql.append(" AND ma.empresa_id = " + parametros.get("EMPRESA_ID")); } if + * (parametros.get("NUMPUNTOVENTA") != null) { sql.append(" AND o.puntoventa_id IN (" + parametros.get("NUMPUNTOVENTA").toString() + ")"); } sql.append(" AND b.boletooriginal_id IS NOT NULL "); sql.append(")"); sql.append(" AND c.numoperacion = b.numoperacion "); sql.append(" AND cdt.caja_id = c.caja_id "); sql.append(" AND cdt.cajadetpago_id = ctj.cajadetpago_id "); sql.append(" AND cdt.formapago_id IN (2) "); sql.append(" AND b.puntoventa_id = ptovta.puntoventa_id "); + * sql.append(" AND b.feccorrida = c.feccorrida "); sql.append(" AND b.corrida_id = c.corrida_id "); sql.append(" AND b.numasiento = c.numasiento "); sql.append(" AND b.puntoventa_id = "); + * + * //Pega o ponto de venda Constante constante = constanteService.buscarPorNomeConstante("PUNTO_VENTA_INTERNET"); if(constante != null) { sql.append(constante.getValorconstante()); } else { sql.append("99999"); } sql.append(" ),"); //É o código do puntoventa de compras pela internet + * + * //Busca os boletos novos após a transferência e geração de OCD sql.append(" boletos_novos AS( "); sql.append(" SELECT c.caja_id as caja_id_bn, b.boleto_id as boleto_id_bn, b.boletooriginal_id as boleto_id_original_bn, "); sql.append(" b.puntoventa_id as puntoventa_id_bn, p.nombpuntoventa as nombpuntoventa_bn, c.fechorventa as fechorventa_bn, "); sql.append(" (coalesce(c.preciopagado,0) + coalesce(c.importeoutros,0)+ coalesce(c.importepedagio,0)+ "); sql.append( + * " coalesce(c.importeseguro,0) + coalesce(c.importetaxaembarque,0)) as valor_venda_bn, "); sql.append(" CASE WHEN o.VALOR_TARJETA is null OR o.VALOR_TARJETA = 0 THEN TO_CHAR(COALESCE(o.VALOR_PAGAR,0),'FM9999999.90')ELSE TO_CHAR(COALESCE(o.VALOR_TARJETA,0),'FM9999999.90') END as valor_cancelar_bn, "); sql.append(" c.numfoliosistema as numfoliosistema_bn, o.fecinc as datadevolucao_bn "); sql.append(" FROM OCD o "); sql.append( + * " INNER JOIN boleto b ON o.BOLETO_ID = b.BOLETO_ID "); sql.append(" INNER JOIN caja c ON c.numoperacion = b.numoperacion "); sql.append(" AND b.numfoliosistema = c.numfoliosistema "); sql.append(" INNER JOIN punto_venta p "); sql.append(" ON p.puntoventa_id = b.puntoventa_id "); //sql.append(" AND o.VALOR_TARJETA <> 0 "); sql.append(" AND o.fecinc between :data_inicial and :data_final "); if (parametros.get("EMPRESA_ID") != null) { sql.append( + * " INNER JOIN marca ma on ma.marca_id = b.marca_id"); sql.append(" AND ma.empresa_id = " + parametros.get("EMPRESA_ID")); } if (parametros.get("NUMPUNTOVENTA") != null) { sql.append(" and p.puntoventa_id IN (" + parametros.get("NUMPUNTOVENTA").toString() + ")"); } + * + * sql.append("),"); //Busca todas as OCD's exceto os boletos que foram transferidos antes da geração da OCD sql.append(" ocds AS(select distinct c.caja_id, b.boleto_id, p.nombpuntoventa, ctj.numtarjeta, c.fechorventa, ptovta.numsitef,"); sql.append(" (coalesce(c.preciopagado,0) + coalesce(c.importeoutros,0)+ coalesce(c.importepedagio,0)+ coalesce(c.importeseguro,0) + coalesce(c.importetaxaembarque,0)) as valor_venda,"); sql.append( + * " TO_CHAR(coalesce(o.VALOR_TARJETA,0),'FM9999999.90') as valor_cancelar,"); sql.append(" 'OCD' as descmotivo, ctj.numautorizacion, ctj.nsu, c.numfoliosistema, o.fecinc as datadevolucao, c.numoperacion "); sql.append(" from OCD o"); sql.append(" inner join boleto b on o.BOLETO_ID = b.BOLETO_ID"); sql.append(" inner join caja c on c.numoperacion = b.numoperacion "); //sql.append(" and c.numfoliosistema = b.numfoliosistema "); sql.append( + * " inner join caja_det_pago cdt ON cdt.caja_id = c.caja_id and cdt.formapago_id in (:formaPago1)"); sql.append(" inner join caja_tarjeta ctj on cdt.cajadetpago_id = ctj.cajadetpago_id"); sql.append(" inner join punto_venta p on p.puntoventa_id = b.puntoventa_id"); sql.append(" inner join ptovta_empresa ptovta on b.puntoventa_id = ptovta.puntoventa_id"); sql.append(" inner join marca m on m.marca_id = b.marca_id "); sql.append(" and m.EMPRESA_ID = ptovta.EMPRESA_ID "); + * if (parametros.get("EMPRESA_ID") != null) { sql.append(" inner join empresa e on e.empresa_id = m.empresa_id and m.empresa_id = " + parametros.get("EMPRESA_ID")); } sql.append(" AND o.fecinc between :data_inicial and :data_final "); if (parametros.get("NUMPUNTOVENTA") != null) { sql.append(" and p.puntoventa_id IN (" + parametros.get("NUMPUNTOVENTA").toString() + ")"); } //sql.append(" order by c.fechorventa, o.fecinc ),"); sql.append(" ),"); sql.append( + * " ocds_total_compra AS "); //Busca com base no numoperacion da consulta "ocds" os valores totais da compra(Cesta de compras) sql.append(" (SELECT c.numoperacion AS numoperacion_cc,"); sql.append(" SUM((COALESCE(c.preciopagado,0) + COALESCE(c.importeoutros,0)+ COALESCE(c.importepedagio,0)+ COALESCE(c.importeseguro,0) + COALESCE(c.importetaxaembarque,0) + COALESCE(e.impingreso,0)))AS valor_cesta "); sql.append(" FROM CAJA c INNER JOIN ocds o on c.caja_id = o.caja_id "); + * sql.append(" LEFT JOIN evento_extra e on e.boleto_id = o.boleto_id "); sql.append(" GROUP BY c.numoperacion),"); sql.append(" total_compra_bo_originais AS"); //Busca com base no numoperacion da consulta "boletos_originais" os valores totais da compra(Cesta de compras) sql.append(" (SELECT c.numoperacion AS numoperacion_cc, "); sql.append( + * " SUM((COALESCE(c.preciopagado,0) + COALESCE(c.importeoutros,0)+ COALESCE(c.importepedagio,0)+ COALESCE(c.importeseguro,0) + COALESCE(c.importetaxaembarque,0) + COALESCE(e.impingreso,0)))AS valor_cesta "); sql.append(" FROM CAJA c"); sql.append(" INNER JOIN boletos_originais bo on c.caja_id = bo.caja_id "); sql.append(" LEFT JOIN evento_extra e on e.boleto_id = bo.boleto_id_bo "); sql.append(" GROUP BY c.numoperacion), "); //Busca com base no numoperacion da consulta + * "boletos_o_venda_internet" os valores totais da compra(Cesta de compras) sql.append(" total_compra_bo_internet AS "); sql.append(" (SELECT c.numoperacion AS numoperacion_cc, SUM((COALESCE(c.preciopagado,0) + COALESCE(c.importeoutros,0)+ COALESCE(c.importepedagio,0)+ "); sql.append(" COALESCE(c.importeseguro,0) + COALESCE(c.importetaxaembarque,0) + COALESCE(e.impingreso,0)))AS valor_cesta "); sql.append( + * " FROM CAJA c INNER JOIN boletos_o_venda_internet bo ON c.caja_id = bo.caja_id LEFT JOIN evento_extra e"); sql.append(" ON e.boleto_id = bo.boleto_id_bo_vi GROUP BY c.numoperacion)"); + * + * sql.append(" SELECT nombpuntoventa, fechorventa, datadevolucao, numtarjeta, numsitef, valor_venda, valor_cancelar, "); sql.append(" descmotivo, numautorizacion, nsu, numfoliosistema, valor_cesta "); sql.append(" FROM ( "); + * + * //Realiza o join entre as Views 'ocds' e ocds_total_compra afim de obter o total da cesta de compras sql.append(" SELECT caja_id, nombpuntoventa, numtarjeta, fechorventa, numsitef, valor_venda, valor_cancelar, "); sql.append(" descmotivo, numautorizacion, nsu, numfoliosistema, datadevolucao, valor_cesta "); sql.append(" FROM ocds "); sql.append(" INNER JOIN ocds_total_compra ocdst "); sql.append(" ON ocds.numoperacion = ocdst.numoperacion_cc "); + * + * sql.append(" UNION "); //Realiza o join entre as Views 'boletos_originais' e total_compra_bo_originais afim de obter o total da cesta de compras //Realiza também o join com as Views boletos_novos com o intuito de exibir os boletos transferidos os quais foram //geradas OCD´s sql.append(" SELECT bn.caja_id_bn, bn.nombpuntoventa_bn as nombpuntoventa, bo.numtarjeta_bo as numtarjeta, bo.fechorventa_bo as fechorventa, "); sql.append( + * " bo.numsitef_bo as numsitef, bn.valor_venda_bn as valor_venda, bn.valor_cancelar_bn as valor_cancelar, 'OCD' AS descmotivo, "); sql.append(" bo.numautorizacion_bo as numautorizacion, bo.nsu_bo as nsu, numfoliosistema_bn as numfoliosistema, datadevolucao_bn as datadevolucao, total_c_bo_originais.valor_cesta"); sql.append(" FROM boletos_originais bo "); sql.append(" INNER JOIN total_compra_bo_originais total_c_bo_originais "); sql.append( + * " ON total_c_bo_originais.numoperacion_cc = bo.numoperacion "); sql.append(" INNER JOIN boletos_novos bn "); sql.append(" ON bo.boleto_id_bo = bn.boleto_id_original_bn "); + * + * sql.append(" UNION "); + * + * //Realiza o join entre as Views 'boletos_o_venda_internet' e total_compra_bo_internet afim de obter o total da cesta de compras //Realiza também o join com as Views boletos_novos com o intuito de exibir os boletos novos os quais foram //geradas OCD´s sql.append(" SELECT bn.caja_id_bn, bn.nombpuntoventa_bn as nombpuntoventa, bo.numtarjeta_bo_vi as numtarjeta, bo.fechorventa_bo_vi as fechorventa, bo.numsitef_bo_vi as numsitef, "); sql.append( + * " bn.valor_venda_bn as valor_venda, bn.valor_cancelar_bn as valor_cancelar, 'OCD' AS descmotivo, bo.numautorizacion_bo_vi as numautorizacion, bo.nsu_bo_vi as nsu, "); sql.append(" numfoliosistema_bn as numfoliosistema, datadevolucao_bn as datadevolucao, total_c_bo_internet.valor_cesta FROM boletos_o_venda_internet bo "); sql.append(" INNER JOIN total_compra_bo_internet total_c_bo_internet ON total_c_bo_internet.numoperacion_cc = bo.numoperacion "); sql.append( + * " INNER JOIN boletos_novos bn ON bo.boleto_id_bo_vi = bn.boleto_id_original_bn "); + * + * sql.append(") ORDER BY datadevolucao "); + * + * return sql.toString(); + * + * } + */ }