diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioVendasInternetPTA.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioVendasInternetPTA.java index 7cc735a99..b62e739f8 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioVendasInternetPTA.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioVendasInternetPTA.java @@ -67,6 +67,7 @@ public class RelatorioVendasInternetPTA extends Relatorio { vendasPTABean.setNomeAgenciaVenda((String) rset.getObject("nomeAgenciaVenda")); vendasPTABean.setAgencia((String) rset.getObject("agencia")); vendasPTABean.setStatus((String) rset.getObject("status")); + vendasPTABean.setIndStatusBoleto((String) rset.getObject("indStatusBoleto")); vendasPTABean.setServico((BigDecimal) rset.getObject("servico")); vendasPTABean.setPoltrona((String) rset.getObject("poltrona")); vendasPTABean.setDescricaoLinha((String) rset.getObject("descricaoLinha")); @@ -78,7 +79,15 @@ public class RelatorioVendasInternetPTA extends Relatorio { vendasPTABean.setTipoVenta((String) rset.getObject("tipoVenta")); if (vendasPTABean.getStatus().equals("VENDIDO")) { - vendasPTABean.setSituacaoVendido("V"); + if (vendasPTABean.getIndStatusBoleto() != null) { + if (vendasPTABean.getIndStatusBoleto().equals("V")) { + vendasPTABean.setSituacaoVendido("V"); + } else if (vendasPTABean.getIndStatusBoleto().equals("E")) { + vendasPTABean.setSituacaoVendido("E"); + } + } else { + vendasPTABean.setSituacaoVendido("V"); + } saldo = saldo.add(vendasPTABean.getPreco() != null ? vendasPTABean.getPreco() : BigDecimal.ZERO); } else { BigDecimal situacao = (BigDecimal) rset.getObject("situacaoCancelado"); @@ -136,6 +145,7 @@ public class RelatorioVendasInternetPTA extends Relatorio { if (situacaoBoleto.getCodigo().equals(1)) { // Somente Vendidos sql.append("select * from ( SELECT ORIGINAL.BOLETO_ID, "); sql.append(" 'VENDIDO' AS status, "); + sql.append(" UTILIZADO.INDSTATUSBOLETO as indStatusBoleto, "); sql.append(" case when ORIGINAL.tipoventa_id = 12 then 'INTERNET' WHEN ORIGINAL.tipoventa_id in(5,18,41,49,81) then 'PTA' END tipoVenta, "); sql.append(" pv.NOMBPUNTOVENTA AS nomeAgenciaVenda, "); sql.append(" pe.NOMBPUNTOVENTA AS agencia, "); @@ -169,6 +179,7 @@ public class RelatorioVendasInternetPTA extends Relatorio { sql.append("select * from ( SELECT ORIGINAL.BOLETO_ID, "); sql.append(" 'VENDIDO' AS status, "); + sql.append(" UTILIZADO.INDSTATUSBOLETO as indStatusBoleto, "); sql.append(" case when ORIGINAL.tipoventa_id = 12 then 'INTERNET' WHEN ORIGINAL.tipoventa_id in(5,18,41,49,81) then 'PTA' END tipoVenta, "); sql.append(" pv.NOMBPUNTOVENTA AS nomeAgenciaVenda, "); sql.append(" pe.NOMBPUNTOVENTA AS agencia, "); @@ -200,6 +211,7 @@ public class RelatorioVendasInternetPTA extends Relatorio { sql.append("UNION ALL "); sql.append("SELECT ORIGINAL.BOLETO_ID, "); sql.append(" 'CANCELADO' AS status, "); + sql.append(" UTILIZADO.INDSTATUSBOLETO as indStatusBoleto, "); sql.append(" case when ORIGINAL.tipoventa_id = 12 then 'INTERNET' WHEN ORIGINAL.tipoventa_id in(5,18,41,49,81) then 'PTA' END tipoVenta, "); sql.append(" pc.NOMBPUNTOVENTA AS nomeAgenciaVenda, "); sql.append(" pv.NOMBPUNTOVENTA AS agencia, "); @@ -235,6 +247,7 @@ public class RelatorioVendasInternetPTA extends Relatorio { sql.append("select * from ( SELECT ORIGINAL.BOLETO_ID, "); sql.append(" 'VENDIDO' AS status, "); + sql.append(" UTILIZADO.INDSTATUSBOLETO as indStatusBoleto, "); sql.append(" case when ORIGINAL.tipoventa_id = 12 then 'INTERNET' WHEN ORIGINAL.tipoventa_id in(5,18,41,49,81) then 'PTA' END tipoVenta, "); sql.append(" pv.NOMBPUNTOVENTA AS nomeAgenciaVenda, "); sql.append(" pe.NOMBPUNTOVENTA AS agencia, "); @@ -269,6 +282,7 @@ public class RelatorioVendasInternetPTA extends Relatorio { sql.append("select * from ( SELECT ORIGINAL.BOLETO_ID, "); sql.append(" 'VENDIDO' AS status, "); + sql.append(" UTILIZADO.INDSTATUSBOLETO as indStatusBoleto, "); sql.append(" case when ORIGINAL.tipoventa_id = 12 then 'INTERNET' WHEN ORIGINAL.tipoventa_id in(5,18,41,49,81) then 'PTA' END tipoVenta, "); sql.append(" pv.NOMBPUNTOVENTA AS nomeAgenciaVenda, "); sql.append(" pe.NOMBPUNTOVENTA AS agencia, "); @@ -286,7 +300,7 @@ public class RelatorioVendasInternetPTA extends Relatorio { sql.append(" po.DESCPARADA AS descricaoOrigem, "); sql.append(" pd.DESCPARADA AS descricaoDestino "); sql.append("FROM BOLETO ORIGINAL "); - sql.append("LEFT JOIN BOLETO UTILIZADO ON (original.boleto_id = UTILIZADO.boletooriginal_id AND utilizado.INDSTATUSBOLETO <> 'E') "); + sql.append("LEFT JOIN BOLETO UTILIZADO ON (original.boleto_id = UTILIZADO.boletooriginal_id AND utilizado.INDSTATUSBOLETO = 'E') "); sql.append("LEFT JOIN PUNTO_VENTA pv on(ORIGINAL.PUNTOVENTA_ID = pv.PUNTOVENTA_ID) "); sql.append("LEFT JOIN PUNTO_VENTA pe on(UTILIZADO.PUNTOVENTA_ID = pe.PUNTOVENTA_ID) "); sql.append("INNER JOIN RUTA r on(original.ruta_id = r.ruta_id) "); @@ -296,13 +310,14 @@ public class RelatorioVendasInternetPTA extends Relatorio { sql.append(" AND ORIGINAL.INDSTATUSBOLETO IN('V','T') "); sql.append(" AND ORIGINAL.TIPOVENTA_ID IN (5,12,18,41,49,81) "); sql.append(agencia.equals("-1") || agencia.equals("TODAS") ? "" : " AND ORIGINAL.PUNTOVENTA_ID in (" + agencia + ") "); - sql.append("AND ORIGINAL.EMPRESACORRIDA_ID =" + empresa.getEmpresaId() + " "); + sql.append("AND ORIGINAL.EMPRESACORRIDA_ID =" + empresa.getEmpresaId() + " AND utilizado.INDSTATUSBOLETO IS NULL"); sql.append(") tab order by tab.tipoVenta, tab.status "); } else { // somente cancelados sql.append("select * from ( SELECT ORIGINAL.BOLETO_ID, "); sql.append(" 'CANCELADO' AS status, "); + sql.append(" UTILIZADO.INDSTATUSBOLETO as indStatusBoleto, "); sql.append(" case when ORIGINAL.tipoventa_id = 12 then 'INTERNET' WHEN ORIGINAL.tipoventa_id in(5,18,41,49,81) then 'PTA' END tipoVenta, "); sql.append(" pc.NOMBPUNTOVENTA AS nomeAgenciaVenda, "); sql.append(" pv.NOMBPUNTOVENTA AS agencia, "); diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/RelatorioVendasInternetPTABean.java b/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/RelatorioVendasInternetPTABean.java index 5ba01f41b..9437a6c99 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/RelatorioVendasInternetPTABean.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/RelatorioVendasInternetPTABean.java @@ -27,6 +27,7 @@ public class RelatorioVendasInternetPTABean { private Date dataVenda; private String situacaoCancelado; private String tipoVenta; + private String indStatusBoleto; public BigDecimal getPreco() { return preco; @@ -204,4 +205,12 @@ public class RelatorioVendasInternetPTABean { this.tipoVenta = tipoVenta; } + public String getIndStatusBoleto() { + return indStatusBoleto; + } + + public void setIndStatusBoleto(String indStatusBoleto) { + this.indStatusBoleto = indStatusBoleto; + } + }