From f792163105e6e5955738b119f02546f9108c93db Mon Sep 17 00:00:00 2001 From: leonardo Date: Thu, 5 Nov 2015 16:04:49 +0000 Subject: [PATCH] bug #6772 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@49804 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../dao/Totalbus.java | 160 +++++++++++++++++- ...{DepositoBean.java => DespesaReceita.java} | 6 +- .../view/FrmMain.java | 10 +- 3 files changed, 161 insertions(+), 15 deletions(-) rename src/com/rjconsultores/integracaoreceitadespesa/entidades/{DepositoBean.java => DespesaReceita.java} (94%) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 5fcb8ee4b..307239af9 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -13,7 +13,7 @@ import java.util.Properties; import org.apache.log4j.Logger; import com.rjconsultores.integracaoreceitadespesa.Application; -import com.rjconsultores.integracaoreceitadespesa.entidades.DepositoBean; +import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceita; import com.rjconsultores.integracaoreceitadespesa.entidades.Empresa; import com.rjconsultores.integracaoreceitadespesa.entidades.PuntoVenta; @@ -21,6 +21,7 @@ import com.rjconsultores.integracaoreceitadespesa.entidades.PuntoVenta; public class Totalbus { private static final Logger log = Logger.getLogger(Totalbus.class); + private static final int DAYS_AGO = -1; private static Totalbus instance = null; @@ -102,8 +103,146 @@ public class Totalbus { return this.conn; } - public List getDepositos(Integer puntoventaId, Integer empresaId){ - List depositos = new ArrayList(); + public List getReceitas(final Integer puntoVentaId, final Integer empresaId) { + List despesas = new ArrayList(); + StringBuffer sb = new StringBuffer(); + sb.append(" select "); + sb.append(" tmp.fechorvta, "); + sb.append(" tmp.empresa, "); + sb.append(" tmp.puntoventaId, "); + sb.append(" sum(tmp.valor), "); + sb.append(" tmp.contacontabil "); + sb.append(" from ( "); + sb.append(" select "); + sb.append(" cd.feccorte AS fechorvta, "); + sb.append(" e.empresa_id AS empresa, "); + sb.append(" pv.puntoventa_id AS puntoventaId, "); + sb.append(" sum(cdp.importe) AS valor, "); + sb.append(" tee.contacontabil AS contacontabil "); + sb.append(" from "); + sb.append(" caja_diversos cd "); + sb.append(" left join evento_extra ev on ev.eventoextra_id = cd.eventoextra_id "); + sb.append(" left join empresa e on e.empresa_id = ev.empresa_id "); + sb.append(" left join punto_venta pv on pv.puntoventa_id = cd.puntoventa_id "); + sb.append(" left join caja_diversos_pago cdp on cdp.cajadiversos_id = cd.cajadiversos_id "); + sb.append(" left join tipo_evento_extra tee on tee.tipoeventoextra_id = ev.tipoeventoextra_id "); + sb.append(" left join ptovta_integra pi on e.empresa_id = pi.empresa_id and pi.puntoventa_id = pv.puntoventa_id "); + sb.append(" where "); + sb.append(" cd.feccorte = ? "); + if (puntoVentaId != null){ + sb.append(" and cd.puntoventa_id = " + puntoVentaId); + } + if (empresaId != null){ + sb.append(" and e.empresa_id = " + empresaId); + } + sb.append(" and cd.activo = 1 "); + sb.append(" and tee.indtipo = 1 "); + sb.append(" and cdp.formapago_id in (1,10) "); + sb.append(" group by "); + sb.append(" cd.feccorte, "); + sb.append(" e.empresa_id, "); + sb.append(" pv.puntoventa_id, "); + sb.append(" tee.contacontabil "); + sb.append(" ) tmp "); + sb.append(" "); + sb.append(" group by "); + sb.append(" tmp.fechorventa, "); + sb.append(" tmp.empresa, "); + sb.append(" tmp.puntoventaId, "); + sb.append(" tmp.contacontabil "); + + + PreparedStatement stmt = null; + ResultSet rs = null; + + Date fecha = getData(); + + try{ + stmt = getConnection().prepareStatement(sb.toString()); + stmt.setDate(1, new java.sql.Date(fecha.getTime())); + rs = stmt.executeQuery(); + + while (rs.next()){ + DespesaReceita despesa = new DespesaReceita(); + despesa.setCodigoEmpresa(rs.getInt(2)); + despesa.setCodigoReceitaDespesa(rs.getInt(5)); + despesa.setDataLancamento(rs.getDate(1)); + despesa.setDataMovimento(rs.getDate(1)); + despesa.setLocalArrecadação(rs.getInt(3)); + despesa.setValorLançamento(rs.getBigDecimal(4).toString()); + despesas.add(despesa); + } + } catch (Exception e){ + log.error(e.toString(),e); + } finally { + try { rs.close(); } catch (Exception ignore) { log.error("", ignore); } + try { stmt.close(); } catch (Exception ignore) { log.error("", ignore); } + } + return despesas; + } + + public List getDespesas(Integer puntoventaId, Integer empresaId){ + List despesas = new ArrayList(); + StringBuilder sb = new StringBuilder(); + sb.append(" select "); + sb.append(" cd.feccorte as feccorte, "); + sb.append(" e.empresa_id as empresa_id, "); + sb.append(" pv.puntoventa_id as puntoventa_id, "); + sb.append(" cdp.importe as valor, "); + sb.append(" tee.contacontabil as contacontabil "); + sb.append(" from "); + sb.append(" caja_diversos cd "); + sb.append(" left join evento_extra ev on ev.eventoextra_id = cd.eventoextra_id "); + sb.append(" left join empresa e on e.empresa_id = ev.empresa_id "); + sb.append(" left join punto_venta pv on pv.puntoventa_id = cd.puntoventa_id "); + sb.append(" left join caja_diversos_pago cdp on cdp.cajadiversos_id = cd.cajadiversos_id "); + sb.append(" left join tipo_evento_extra tee on tee.tipoeventoextra_id = ev.tipoeventoextra_id "); + sb.append(" left join ptovta_integra pi on e.empresa_id = pi.empresa_id and pi.puntoventa_id = pv.puntoventa_id "); + sb.append(" where "); + sb.append(" cd.feccorte = ? "); + sb.append(" and tee.indtipo = 0 "); + if (puntoventaId != null){ + sb.append(" and cd.puntoventa_id = " + puntoventaId); + } + if (empresaId != null){ + sb.append(" and e.empresa_id = " + empresaId); + } + sb.append(" and cd.activo = 1 "); + sb.append(" and not exists (select ee.EVENTOEXTRA_ID from evento_extra ee where ev.EVENTOEXTRA_ID = ee.EVENTOEXTRACANC_ID) "); + sb.append(" and ev.EVENTOEXTRACANC_ID is null "); + + Date fecha = getData(); + + PreparedStatement pstmt = null; + ResultSet rs = null; + + try{ + pstmt = getConnection().prepareStatement(sb.toString()); + pstmt.setDate(1, new java.sql.Date(fecha.getTime())); + pstmt.setDate(2, new java.sql.Date(fecha.getTime())); + + rs = pstmt.executeQuery(); + while (rs.next()){ + DespesaReceita despesa = new DespesaReceita(); + despesa.setCodigoEmpresa(rs.getInt(2)); + despesa.setCodigoReceitaDespesa(rs.getInt(5)); + despesa.setDataLancamento(rs.getDate(1)); + despesa.setDataMovimento(rs.getDate(1)); + despesa.setLocalArrecadação(rs.getInt(3)); + despesa.setValorLançamento(rs.getBigDecimal(4).toString()); + despesas.add(despesa); + } + } catch (Exception e){ + log.error("", e); + } finally { + try { rs.close(); } catch (Exception ignore) { log.error("", ignore); } + try { pstmt.close(); } catch (Exception ignore) { log.error("", ignore); } + } + return despesas; + } + + public List getDepositos(Integer puntoventaId, Integer empresaId){ + List depositos = new ArrayList(); StringBuilder sb = new StringBuilder(); sb.append("Select fc.fecfechamento, fc.empresa_id, fc.puntoventa_id, fd.valor_pago, "); sb.append("(select valorconstante from constante where nombconstante = 'CODIGO_RECEITA_DESPESA_GLOBUS') as codigoReceitaDespesa "); @@ -117,10 +256,8 @@ public class Totalbus { sb.append("and fc.empresa_id = :empresaId "); } - Calendar cal = Calendar.getInstance(); - cal.setTime(new Date()); - cal.add(Calendar.DAY_OF_MONTH, -6); - Date fecha = cal.getTime(); + + Date fecha = getData(); PreparedStatement pstmt = null; ResultSet rs = null; @@ -137,7 +274,7 @@ public class Totalbus { rs = pstmt.executeQuery(); while (rs.next()){ - DepositoBean deposito = new DepositoBean(); + DespesaReceita deposito = new DespesaReceita(); deposito.setCodigoEmpresa(rs.getInt(2)); deposito.setCodigoReceitaDespesa(rs.getInt(5)); deposito.setDataLancamento(rs.getDate(1)); @@ -177,6 +314,13 @@ public class Totalbus { } + private Date getData(){ + Calendar cal = Calendar.getInstance(); + cal.setTime(new Date()); + cal.add(Calendar.DAY_OF_MONTH, DAYS_AGO); + return cal.getTime(); + } + public List getPontosVenda() { return pontosVenda; } diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DepositoBean.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java similarity index 94% rename from src/com/rjconsultores/integracaoreceitadespesa/entidades/DepositoBean.java rename to src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 68106057e..2e364a0c0 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DepositoBean.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -6,7 +6,7 @@ import java.util.List; import com.rjconsultores.integracaoreceitadespesa.dao.Totalbus; -public class DepositoBean { +public class DespesaReceita { private String dataLancamento; // DD/MM/YYYY private String codigoEmpresa; // 011 003 Numérico private final String codigoFilial = "001"; // 014 003 Numérico @@ -30,7 +30,7 @@ public class DepositoBean { private SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); - public DepositoBean(){ + public DespesaReceita(){ setCodigoReceitaDespesa(Totalbus.getInstance().getCodigoReceitaDespesaGlobus()); } @@ -43,7 +43,7 @@ public class DepositoBean { numeroContratoTurismo + numeroReciboTurismo + formaPagamentoTurismo + tipoPagamentoTurismo + descricaoDetalhada + documentoVenda + tipoDocumentoVenda + - numerodocumentoCPG + finalLinha); + numerodocumentoCPG + finalLinha + System.getProperty("line.separator")); } public void setDataLancamento(Date dataLancamento) { diff --git a/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java b/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java index ff08c1b44..bc88ed7a3 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java @@ -18,7 +18,7 @@ import javax.swing.event.MenuListener; import com.rjconsultores.integracaoreceitadespesa.Arquivo; import com.rjconsultores.integracaoreceitadespesa.dao.Totalbus; -import com.rjconsultores.integracaoreceitadespesa.entidades.DepositoBean; +import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceita; /** @@ -102,11 +102,13 @@ public class FrmMain extends javax.swing.JFrame implements MenuListener { int answer = JOptionPane.showConfirmDialog(null, pnl, "Executar Exportação", JOptionPane.OK_CANCEL_OPTION); if (answer == JOptionPane.OK_OPTION) { - List depositos = Totalbus.getInstance().getDepositos(pnl.getPuntoventa(), pnl.getEmpresa()); + List despesasReceitas = Totalbus.getInstance().getDepositos(pnl.getPuntoventa(), pnl.getEmpresa()); + despesasReceitas.addAll(Totalbus.getInstance().getDespesas(pnl.getPuntoventa(), pnl.getEmpresa())); + despesasReceitas.addAll(Totalbus.getInstance().getReceitas(pnl.getPuntoventa(), pnl.getEmpresa())); List rows = new ArrayList(); - for (DepositoBean deposito : depositos){ - deposito.preencheLinha(rows); + for (DespesaReceita item : despesasReceitas){ + item.preencheLinha(rows); } this.setCursor(new Cursor(Cursor.WAIT_CURSOR));