From 2354bd4ad83701bc024f51c6aac6bc1ba7baddd8 Mon Sep 17 00:00:00 2001 From: leonardo Date: Mon, 26 Oct 2015 17:05:31 +0000 Subject: [PATCH 002/121] bug #6772 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@49444 d1611594-4594-4d17-8e1d-87c2c4800839 --- .classpath | 9 + .project | 17 ++ .settings/org.eclipse.jdt.core.prefs | 11 + db.properties | 4 + log4j.properties | 16 ++ .../integracaoreceitadespesa/Application.java | 34 +++ .../integracaoreceitadespesa/Arquivo.java | 23 ++ .../dao/Totalbus.java | 196 ++++++++++++++++++ .../entidades/DepositoBean.java | 91 ++++++++ .../entidades/Empresa.java | 11 + .../entidades/PuntoVenta.java | 11 + .../view/FrmMain.java | 127 ++++++++++++ .../view/PnlPeriodo.java | 113 ++++++++++ 13 files changed, 663 insertions(+) create mode 100644 .classpath create mode 100644 .project create mode 100644 .settings/org.eclipse.jdt.core.prefs create mode 100644 db.properties create mode 100644 log4j.properties create mode 100644 src/com/rjconsultores/integracaoreceitadespesa/Application.java create mode 100644 src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java create mode 100644 src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java create mode 100644 src/com/rjconsultores/integracaoreceitadespesa/entidades/DepositoBean.java create mode 100644 src/com/rjconsultores/integracaoreceitadespesa/entidades/Empresa.java create mode 100644 src/com/rjconsultores/integracaoreceitadespesa/entidades/PuntoVenta.java create mode 100644 src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java create mode 100644 src/com/rjconsultores/integracaoreceitadespesa/view/PnlPeriodo.java diff --git a/.classpath b/.classpath new file mode 100644 index 000000000..7ac68b057 --- /dev/null +++ b/.classpath @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/.project b/.project new file mode 100644 index 000000000..e52e8c096 --- /dev/null +++ b/.project @@ -0,0 +1,17 @@ + + + IntegracaoReceitaDespesa + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 000000000..54e493c07 --- /dev/null +++ b/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,11 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.6 diff --git a/db.properties b/db.properties new file mode 100644 index 000000000..1cf95984b --- /dev/null +++ b/db.properties @@ -0,0 +1,4 @@ +url=jdbc:oracle:thin:@192.168.0.164:1521:ORCL +username=vtabol +password=vtax05 + diff --git a/log4j.properties b/log4j.properties new file mode 100644 index 000000000..d4e7fed1d --- /dev/null +++ b/log4j.properties @@ -0,0 +1,16 @@ +# Root logger option +log4j.rootLogger=DEBUG, stdout, file + +# Redirect log messages to console +log4j.appender.stdout=org.apache.log4j.ConsoleAppender +log4j.appender.stdout.Target=System.out +log4j.appender.stdout.layout=org.apache.log4j.PatternLayout +log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n + +# Redirect log messages to a log file, support file rolling. +log4j.appender.file=org.apache.log4j.RollingFileAppender +log4j.appender.file.File=${user.home}/integracaoReceitaDespesa.log +log4j.appender.file.MaxFileSize=5MB +log4j.appender.file.MaxBackupIndex=10 +log4j.appender.file.layout=org.apache.log4j.PatternLayout +log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n \ No newline at end of file diff --git a/src/com/rjconsultores/integracaoreceitadespesa/Application.java b/src/com/rjconsultores/integracaoreceitadespesa/Application.java new file mode 100644 index 000000000..033f297ac --- /dev/null +++ b/src/com/rjconsultores/integracaoreceitadespesa/Application.java @@ -0,0 +1,34 @@ +package com.rjconsultores.integracaoreceitadespesa; + +import java.io.FileInputStream; +import java.io.IOException; +import java.util.Properties; + +import org.apache.log4j.Logger; + +public class Application { + private static Application instance = null; + + private static final Logger log = Logger.getLogger(Application.class); + + private Application(){ + + } + + public static Application getInstance(){ + if (instance == null){ + instance = new Application(); + } + return instance; + } + + public Properties getApplicationProperties(){ + Properties props = new Properties(); + try { + props.load(new FileInputStream("db.properties")); + } catch (IOException e) { + log.error("", e); + } + return props; + } +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java b/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java new file mode 100644 index 000000000..fa4ddd7f6 --- /dev/null +++ b/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java @@ -0,0 +1,23 @@ +package com.rjconsultores.integracaoreceitadespesa; + +import java.io.FileWriter; +import java.util.List; + +import org.apache.log4j.Logger; + +public class Arquivo { + private static final Logger log = Logger.getLogger(Arquivo.class); + + public static void GravaArquivo(String filename, List rows){ + try{ + + FileWriter writer = new FileWriter(filename); + for(String str: rows) { + writer.write(str); + } + writer.close(); + } catch (Exception e){ + log.error("", e); + } + } +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java new file mode 100644 index 000000000..01778b3b3 --- /dev/null +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -0,0 +1,196 @@ +package com.rjconsultores.integracaoreceitadespesa.dao; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.util.ArrayList; +import java.util.Calendar; +import java.util.Date; +import java.util.List; +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.Empresa; +import com.rjconsultores.integracaoreceitadespesa.entidades.PuntoVenta; + + +public class Totalbus { + + private static final Logger log = Logger.getLogger(Totalbus.class); + + private static Totalbus instance = null; + + private Connection conn; + + private List pontosVenda = new ArrayList(); + private List empresas = new ArrayList(); + + private Totalbus(){ + try { + Properties props = Application.getInstance().getApplicationProperties(); + + String DRIVER = "oracle.jdbc.driver.OracleDriver"; + + Class.forName(DRIVER); + this.conn = DriverManager.getConnection( + props.getProperty("url"), + props.getProperty("username").trim(), + props.getProperty("password").trim()); + + loadEmpresas(); + loadPuntosVenta(); + + } catch (Exception e){ + log.error("", e); + } + } + + private void loadPuntosVenta(){ + PreparedStatement pstmt = null; + ResultSet rs = null; + + try{ + pstmt = getConnection().prepareStatement("Select puntoventa_id, nombpuntoventa from punto_venta order by nombpuntoventa"); + rs = pstmt.executeQuery(); + while (rs.next()){ + PuntoVenta puntoVenta = new PuntoVenta(); + puntoVenta.codigo = rs.getInt(1); + puntoVenta.nombpuntoventa = rs.getString(2); + pontosVenda.add(puntoVenta); + } + } 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); } + } + } + + private void loadEmpresas(){ + PreparedStatement pstmt = null; + ResultSet rs = null; + + try{ + pstmt = getConnection().prepareStatement("Select empresa_id, nombempresa from empresa order by nombempresa"); + rs = pstmt.executeQuery(); + while (rs.next()){ + Empresa empresa = new Empresa(); + empresa.codigo = rs.getInt(1); + empresa.nombempresa = rs.getString(2); + empresas.add(empresa); + } + } 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); } + } + } + + public static Totalbus getInstance(){ + if (instance == null){ + instance = new Totalbus(); + } + return instance; + } + + public Connection getConnection(){ + return this.conn; + } + + public List getDepositos(Integer puntoventaId, Integer empresaId){ + List depositos = new ArrayList(); + StringBuilder sb = new StringBuilder(); + sb.append("Select d.fecha_deposito, fc.empresa_id, fc.puntoventa_id, fd.valor_pago, "); + sb.append("(select valorconstante from constante where nombconstante = 'CODIGO_RECEITA_DESPESA_GLOBUS') as codigoReceitaDespesa "); + sb.append("from fechamento_deposito d "); + sb.append("inner join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = d.fechamentocntcorrente_id "); + sb.append("inner join fechamento_cct_deposito fd on fd.fechamentodeposito_id = d.fechamentodeposito_id "); + sb.append("where d.fecha_deposito = :fecha "); + if (puntoventaId != null){ + sb.append("and fc.puntoventa_id = :puntoventaId "); + } + if (empresaId != null){ + sb.append("and fc.empresa_id = :empresaId "); + } + + Calendar cal = Calendar.getInstance(); + cal.setTime(new Date()); + cal.add(Calendar.DAY_OF_MONTH, -1); + Date fecha = cal.getTime(); + + PreparedStatement pstmt = null; + ResultSet rs = null; + + try{ + pstmt = getConnection().prepareStatement(sb.toString()); + pstmt.setDate(1, new java.sql.Date(fecha.getTime())); + if (puntoventaId != null){ + pstmt.setInt(2, puntoventaId); + } + if (empresaId != null){ + pstmt.setInt(3, empresaId); + } + + rs = pstmt.executeQuery(); + while (rs.next()){ + DepositoBean deposito = new DepositoBean(); + deposito.setCodigoEmpresa(rs.getInt(2)); + deposito.setCodigoReceitaDespesa(rs.getInt(5)); + deposito.setDataLancamento(rs.getDate(1)); + deposito.setDataMovimento(rs.getDate(1)); + deposito.setLocalArrecadação(rs.getInt(3)); + deposito.setValorLançamento(rs.getBigDecimal(4).toString()); + depositos.add(deposito); + } + } 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 depositos; + } + + public Integer getCodigoReceitaDespesaGlobus(){ + StringBuilder sb = new StringBuilder(); + sb.append("Select valorconstante from constante where nombconstante = 'CODIGO_RECEITA_DESPESA_GLOBUS' "); + PreparedStatement pstmt = null; + ResultSet rs = null; + Integer result = null; + try{ + pstmt = getConnection().prepareStatement(sb.toString()); + rs = pstmt.executeQuery(); + if (rs.next()){ + result = rs.getInt(1); + } + } 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 result; + + } + + public List getPontosVenda() { + return pontosVenda; + } + + public void setPontosVenda(List pontosVenda) { + this.pontosVenda = pontosVenda; + } + + public List getEmpresas() { + return empresas; + } + + public void setEmpresas(List empresas) { + this.empresas = empresas; + } +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DepositoBean.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DepositoBean.java new file mode 100644 index 000000000..de2695a17 --- /dev/null +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DepositoBean.java @@ -0,0 +1,91 @@ +package com.rjconsultores.integracaoreceitadespesa.entidades; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.List; + +import com.rjconsultores.integracaoreceitadespesa.dao.Totalbus; + +public class DepositoBean { + private String dataLancamento; // DD/MM/YYYY + private String codigoEmpresa; // 011 003 Numérico + private final String codigoFilial = "001"; // 014 003 Numérico + private String localArrecadação; // 017 005 Alfanumérico + private final String numeroDaGuia = " "; // 022 025 Alfanumérico + private String dataMovimento; // 047 010 Alfanumérico + private final String usuarioGlobus = "TOTALBUS ";// 057 015 Alfanumérico + private final String turno = "01";// 072 002 Numérico + private String codigoReceitaDespesa;// 074 010 Numérico CONSTANTE CODIGO_RECEITA_DESPESA_GLOBUS + private final String identificadorReceitaDespesa = "R";// 084 001 Alfanumérico + private String valorLançamento;// 085 013 Numérico + private final String numeroContratoTurismo = "0000000000";// 098 010 Numérico + private final String numeroReciboTurismo = " ";// 108 010 Alfanumérico + private final String formaPagamentoTurismo = "00";// 118 002 Numérico + private final String tipoPagamentoTurismo = "00";// 120 002 Numérico + private final String descricaoDetalhada = " ";// 122 100 Alfanumérico + private final String documentoVenda = "000000";// 222 6 Numérico + private final String tipoDocumentoVenda = " ";// 228 1 Alfanumérico + private final String numerodocumentoCPG = "0000000000";// 229 10 Numérico + private final String finalLinha = "*";// 239 1 Alfanumérico + + private SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); + + public DepositoBean(){ + setCodigoReceitaDespesa(Totalbus.getInstance().getCodigoReceitaDespesaGlobus()); + } + + public void preencheLinha(List rows){ + rows.add(dataLancamento + codigoEmpresa + codigoFilial + + localArrecadação.toUpperCase() + + numeroDaGuia + dataMovimento + usuarioGlobus + + turno + codigoReceitaDespesa + + identificadorReceitaDespesa.toUpperCase() + valorLançamento + + numeroContratoTurismo + numeroReciboTurismo + + formaPagamentoTurismo + tipoPagamentoTurismo + + descricaoDetalhada + documentoVenda + tipoDocumentoVenda + + numerodocumentoCPG + finalLinha); + } + + public void setDataLancamento(Date dataLancamento) { + this.dataLancamento = sdf.format(dataLancamento); + } + + public void setCodigoEmpresa(Integer codigoEmpresa) { + this.codigoEmpresa = lpad(codigoEmpresa.toString(), "0", 3); + } + + public void setLocalArrecadação(Integer localArrecadação) { + this.localArrecadação = lpad(localArrecadação.toString(), "0", 5).substring(0,4); + } + + public void setDataMovimento(Date dataMovimento) { + this.dataMovimento = sdf.format(dataMovimento); + } + + public void setCodigoReceitaDespesa(Integer codigoReceitaDespesa) { + if (codigoReceitaDespesa != null){ + this.codigoReceitaDespesa = lpad(codigoReceitaDespesa.toString(), "0", 10); + } else { + this.codigoReceitaDespesa = lpad("0", "0", 10); + } + } + + public void setValorLançamento(String valorLançamento) { + this.valorLançamento = lpad(valorLançamento.toString().replace(",", "").replace(".", ""), "0", 13); + } + + private static String lpad(String valueToPad, String filler, int size) { + while (valueToPad.length() < size) { + valueToPad = filler + valueToPad; + } + return valueToPad; + } + + private static String rpad(String valueToPad, String filler, int size) { + while (valueToPad.length() < size) { + valueToPad = valueToPad+filler; + } + return valueToPad; + } + +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/Empresa.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/Empresa.java new file mode 100644 index 000000000..e5af44183 --- /dev/null +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/Empresa.java @@ -0,0 +1,11 @@ +package com.rjconsultores.integracaoreceitadespesa.entidades; + +public class Empresa { + public Integer codigo; + public String nombempresa; + + @Override + public String toString(){ + return nombempresa; + } +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/PuntoVenta.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/PuntoVenta.java new file mode 100644 index 000000000..1973ab7e5 --- /dev/null +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/PuntoVenta.java @@ -0,0 +1,11 @@ +package com.rjconsultores.integracaoreceitadespesa.entidades; + +public class PuntoVenta { + public Integer codigo; + public String nombpuntoventa; + + @Override + public String toString(){ + return nombpuntoventa; + } +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java b/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java new file mode 100644 index 000000000..2faa45d26 --- /dev/null +++ b/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java @@ -0,0 +1,127 @@ +package com.rjconsultores.integracaoreceitadespesa.view; +import java.awt.BorderLayout; +import java.awt.Cursor; +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +import javax.swing.JDesktopPane; +import javax.swing.JFileChooser; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.SwingUtilities; +import javax.swing.WindowConstants; +import javax.swing.event.MenuEvent; +import javax.swing.event.MenuListener; + +import com.rjconsultores.integracaoreceitadespesa.Arquivo; +import com.rjconsultores.integracaoreceitadespesa.dao.Totalbus; +import com.rjconsultores.integracaoreceitadespesa.entidades.DepositoBean; + + +/** +* This code was edited or generated using CloudGarden's Jigloo +* SWT/Swing GUI Builder, which is free for non-commercial +* use. If Jigloo is being used commercially (ie, by a corporation, +* company or business for any purpose whatever) then you +* should purchase a license for each developer using Jigloo. +* Please visit www.cloudgarden.com for details. +* Use of Jigloo implies acceptance of these licensing terms. +* A COMMERCIAL LICENSE HAS NOT BEEN PURCHASED FOR +* THIS MACHINE, SO JIGLOO OR THIS CODE CANNOT BE USED +* LEGALLY FOR ANY CORPORATE OR COMMERCIAL PURPOSE. +*/ +public class FrmMain extends javax.swing.JFrame implements MenuListener { + private JDesktopPane jDesktopPane1; + private JMenuBar jMenuBar1; + private JMenuItem mnuGerarArquivo; + private JMenu jMenu1; + + /** + * Auto-generated main method to display this JFrame + */ + public static void main(String[] args) { + SwingUtilities.invokeLater(new Runnable() { + public void run() { + FrmMain inst = new FrmMain(); + inst.setLocationRelativeTo(null); + inst.setVisible(true); + } + }); + } + + public FrmMain() { + super(); + initGUI(); + setExtendedState(java.awt.Frame.MAXIMIZED_BOTH); + } + + private void initGUI() { + try { + setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); + { + jMenuBar1 = new JMenuBar(); + setJMenuBar(jMenuBar1); + { + jMenu1 = new JMenu(); + jMenuBar1.add(jMenu1); + jMenu1.setText("Gerar Arquivo"); + jMenu1.addMenuListener(this); + } + } + { + jDesktopPane1 = new JDesktopPane(); + getContentPane().add(jDesktopPane1, BorderLayout.CENTER); + } + pack(); + setSize(400, 300); + } catch (Exception e) { + //add your error handling code here + e.printStackTrace(); + } + } + + @Override + public void menuCanceled(MenuEvent e) { + // TODO Auto-generated method stub + + } + + @Override + public void menuDeselected(MenuEvent e) { + // TODO Auto-generated method stub + + } + + @Override + public void menuSelected(MenuEvent e) { + if (e.getSource() == jMenu1){ + PnlPeriodo pnl = new PnlPeriodo(); + + 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 rows = new ArrayList(); + + for (DepositoBean deposito : depositos){ + deposito.preencheLinha(rows); + } + + this.setCursor(new Cursor(Cursor.WAIT_CURSOR)); + final JFileChooser fc = new JFileChooser(); + int returnVal = fc.showOpenDialog(this); + + if (returnVal == JFileChooser.APPROVE_OPTION) { + File file = fc.getSelectedFile(); + Arquivo arquivo = new Arquivo(); + arquivo.GravaArquivo(file.getAbsolutePath(), rows); + } + } else { + JOptionPane.showMessageDialog(null, "Operação cancelada pelo usuário"); + } + this.setCursor(new Cursor(Cursor.DEFAULT_CURSOR)); + } + } +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/view/PnlPeriodo.java b/src/com/rjconsultores/integracaoreceitadespesa/view/PnlPeriodo.java new file mode 100644 index 000000000..89d4a53cf --- /dev/null +++ b/src/com/rjconsultores/integracaoreceitadespesa/view/PnlPeriodo.java @@ -0,0 +1,113 @@ +package com.rjconsultores.integracaoreceitadespesa.view; + +import javax.swing.DefaultComboBoxModel; +import javax.swing.JComboBox; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JTextField; +import javax.swing.WindowConstants; + +import org.apache.log4j.Logger; + +import com.rjconsultores.integracaoreceitadespesa.dao.Totalbus; +import com.rjconsultores.integracaoreceitadespesa.entidades.Empresa; +import com.rjconsultores.integracaoreceitadespesa.entidades.PuntoVenta; + +/** +* This code was edited or generated using CloudGarden's Jigloo +* SWT/Swing GUI Builder, which is free for non-commercial +* use. If Jigloo is being used commercially (ie, by a corporation, +* company or business for any purpose whatever) then you +* should purchase a license for each developer using Jigloo. +* Please visit www.cloudgarden.com for details. +* Use of Jigloo implies acceptance of these licensing terms. +* A COMMERCIAL LICENSE HAS NOT BEEN PURCHASED FOR +* THIS MACHINE, SO JIGLOO OR THIS CODE CANNOT BE USED +* LEGALLY FOR ANY CORPORATE OR COMMERCIAL PURPOSE. +*/ +public class PnlPeriodo extends javax.swing.JPanel { + + private static final long serialVersionUID = 1L; + + private static final Logger log = Logger.getLogger(PnlPeriodo.class); + + private JLabel lblPuntoventa; + private JComboBox txtPuntoventa; + private JLabel lblEmpresa; + private JComboBox txtEmpresa; + + /** + * Auto-generated main method to display this + * JPanel inside a new JFrame. + */ + public static void main(String[] args) { + JFrame frame = new JFrame(); + frame.getContentPane().add(new PnlPeriodo()); + frame.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); + frame.pack(); + frame.setVisible(true); + } + + public PnlPeriodo() { + super(); + initGUI(); + } + + private void initGUI() { + try { + this.setPreferredSize(new java.awt.Dimension(425, 72)); + this.setLayout(null); + + + this.add(getLblPuntoventa()); + this.add(getTxtPuntoventa()); + this.add(getLblEmpresa()); + this.add(getTxtEmpresa()); + + } catch (Exception e) { + e.printStackTrace(); + } + } + + public JLabel getLblPuntoventa() { + if (lblPuntoventa == null){ + lblPuntoventa = new JLabel(); + lblPuntoventa.setText("Ponto de Venda"); + lblPuntoventa.setBounds(12, 12, 93, 16); + } + return lblPuntoventa; + } + + public JComboBox getTxtPuntoventa() { + if (txtPuntoventa == null){ + txtPuntoventa = new JComboBox(new DefaultComboBoxModel(Totalbus.getInstance().getPontosVenda().toArray())); + txtPuntoventa.setBounds(105, 9, 308, 23); + } + return txtPuntoventa; + } + + public JLabel getLblEmpresa() { + if (lblEmpresa == null){ + lblEmpresa = new JLabel(); + lblEmpresa.setText("Empresa"); + lblEmpresa.setBounds(12, 40, 81, 16); + } + return lblEmpresa; + } + + public JComboBox getTxtEmpresa() { + if (txtEmpresa == null){ + txtEmpresa = new JComboBox(new DefaultComboBoxModel(Totalbus.getInstance().getEmpresas().toArray())); + txtEmpresa.setBounds(105, 37, 308, 23); + } + return txtEmpresa; + } + + public Integer getPuntoventa(){ + return ((PuntoVenta)txtPuntoventa.getSelectedItem()).codigo; + } + + public Integer getEmpresa(){ + return ((Empresa)txtEmpresa.getSelectedItem()).codigo; + } +} From 1ec0d40d4544fadb4b2e43b0a392bc25cf13f670 Mon Sep 17 00:00:00 2001 From: leonardo Date: Mon, 26 Oct 2015 17:19:43 +0000 Subject: [PATCH 003/121] bug #6772 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@49446 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../rjconsultores/integracaoreceitadespesa/view/FrmMain.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java b/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java index 2faa45d26..668380130 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java @@ -113,7 +113,7 @@ public class FrmMain extends javax.swing.JFrame implements MenuListener { final JFileChooser fc = new JFileChooser(); int returnVal = fc.showOpenDialog(this); - if (returnVal == JFileChooser.APPROVE_OPTION) { + if (returnVal == JFileChooser.SAVE_DIALOG) { File file = fc.getSelectedFile(); Arquivo arquivo = new Arquivo(); arquivo.GravaArquivo(file.getAbsolutePath(), rows); From a15a666f9024914edeec651db9b399ab6d408bae Mon Sep 17 00:00:00 2001 From: leonardo Date: Mon, 26 Oct 2015 19:28:26 +0000 Subject: [PATCH 004/121] bug #6772 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@49458 d1611594-4594-4d17-8e1d-87c2c4800839 --- db.properties | 2 +- .../integracaoreceitadespesa/dao/Totalbus.java | 11 +++++------ .../integracaoreceitadespesa/view/FrmMain.java | 4 ++-- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/db.properties b/db.properties index 1cf95984b..3f065e35f 100644 --- a/db.properties +++ b/db.properties @@ -1,4 +1,4 @@ -url=jdbc:oracle:thin:@192.168.0.164:1521:ORCL +url=jdbc:oracle:thin:@db-proj.cg09ytaizn5g.us-east-1.rds.amazonaws.com:1521:ORCL username=vtabol password=vtax05 diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 01778b3b3..62d3c4280 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -105,12 +105,11 @@ public class Totalbus { public List getDepositos(Integer puntoventaId, Integer empresaId){ List depositos = new ArrayList(); StringBuilder sb = new StringBuilder(); - sb.append("Select d.fecha_deposito, fc.empresa_id, fc.puntoventa_id, fd.valor_pago, "); + 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 "); - sb.append("from fechamento_deposito d "); - sb.append("inner join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = d.fechamentocntcorrente_id "); - sb.append("inner join fechamento_cct_deposito fd on fd.fechamentodeposito_id = d.fechamentodeposito_id "); - sb.append("where d.fecha_deposito = :fecha "); + sb.append("from fechamento_cntcorrente fc "); + sb.append("inner join fechamento_cct_deposito fd on fd.fechamentocntcorrente_id = fc.fechamentocntcorrente_id "); + sb.append("where fc.fecfechamento = :fecha and fd.activo <> 0 and fc.activo <> 0 "); if (puntoventaId != null){ sb.append("and fc.puntoventa_id = :puntoventaId "); } @@ -120,7 +119,7 @@ public class Totalbus { Calendar cal = Calendar.getInstance(); cal.setTime(new Date()); - cal.add(Calendar.DAY_OF_MONTH, -1); + cal.add(Calendar.DAY_OF_MONTH, -3); Date fecha = cal.getTime(); PreparedStatement pstmt = null; diff --git a/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java b/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java index 668380130..ff08c1b44 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java @@ -111,9 +111,9 @@ public class FrmMain extends javax.swing.JFrame implements MenuListener { this.setCursor(new Cursor(Cursor.WAIT_CURSOR)); final JFileChooser fc = new JFileChooser(); - int returnVal = fc.showOpenDialog(this); + int returnVal = fc.showSaveDialog(this); - if (returnVal == JFileChooser.SAVE_DIALOG) { + if (returnVal == JFileChooser.APPROVE_OPTION) { File file = fc.getSelectedFile(); Arquivo arquivo = new Arquivo(); arquivo.GravaArquivo(file.getAbsolutePath(), rows); From 8e0d85de6473e2589127b43a5c08b26d0e2a86dc Mon Sep 17 00:00:00 2001 From: leonardo Date: Thu, 29 Oct 2015 18:25:57 +0000 Subject: [PATCH 005/121] bug #6772 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@49598 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../rjconsultores/integracaoreceitadespesa/dao/Totalbus.java | 2 +- .../integracaoreceitadespesa/entidades/DepositoBean.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 62d3c4280..5fcb8ee4b 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -119,7 +119,7 @@ public class Totalbus { Calendar cal = Calendar.getInstance(); cal.setTime(new Date()); - cal.add(Calendar.DAY_OF_MONTH, -3); + cal.add(Calendar.DAY_OF_MONTH, -6); Date fecha = cal.getTime(); PreparedStatement pstmt = null; diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DepositoBean.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DepositoBean.java index de2695a17..68106057e 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DepositoBean.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DepositoBean.java @@ -55,7 +55,7 @@ public class DepositoBean { } public void setLocalArrecadação(Integer localArrecadação) { - this.localArrecadação = lpad(localArrecadação.toString(), "0", 5).substring(0,4); + this.localArrecadação = lpad(localArrecadação.toString(), "0", 5); } public void setDataMovimento(Date dataMovimento) { From f792163105e6e5955738b119f02546f9108c93db Mon Sep 17 00:00:00 2001 From: leonardo Date: Thu, 5 Nov 2015 16:04:49 +0000 Subject: [PATCH 006/121] 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)); From 5d99a8d52a88d3e0d474770288568702d3029490 Mon Sep 17 00:00:00 2001 From: leonardo Date: Thu, 5 Nov 2015 16:35:58 +0000 Subject: [PATCH 007/121] bug #6772 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@49812 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../rjconsultores/integracaoreceitadespesa/dao/Totalbus.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 307239af9..0177946a2 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -146,7 +146,7 @@ public class Totalbus { sb.append(" ) tmp "); sb.append(" "); sb.append(" group by "); - sb.append(" tmp.fechorventa, "); + sb.append(" tmp.fechorvta, "); sb.append(" tmp.empresa, "); sb.append(" tmp.puntoventaId, "); sb.append(" tmp.contacontabil "); From 571f4bbbfc7266978f1059ff7c6fdf7b7853fd80 Mon Sep 17 00:00:00 2001 From: leonardo Date: Thu, 5 Nov 2015 19:13:13 +0000 Subject: [PATCH 008/121] bug #6772 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@49823 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../dao/Totalbus.java | 24 ++++++++++--------- .../entidades/DespesaReceita.java | 7 +++++- 2 files changed, 19 insertions(+), 12 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 0177946a2..5d8298d1d 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -163,14 +163,15 @@ public class Totalbus { 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); + DespesaReceita receita = new DespesaReceita(); + receita.setCodigoEmpresa(rs.getInt(2)); + receita.setCodigoReceitaDespesa(rs.getInt(5)); + receita.setDataLancamento(rs.getDate(1)); + receita.setDataMovimento(rs.getDate(1)); + receita.setLocalArrecadação(rs.getInt(3)); + receita.setValorLançamento(rs.getBigDecimal(4).toString()); + receita.setIdentificadorReceitaDespesa("R"); + despesas.add(receita); } } catch (Exception e){ log.error(e.toString(),e); @@ -218,8 +219,7 @@ public class Totalbus { try{ pstmt = getConnection().prepareStatement(sb.toString()); - pstmt.setDate(1, new java.sql.Date(fecha.getTime())); - pstmt.setDate(2, new java.sql.Date(fecha.getTime())); + pstmt.setDate(1, new java.sql.Date(fecha.getTime())); rs = pstmt.executeQuery(); while (rs.next()){ @@ -229,7 +229,8 @@ public class Totalbus { despesa.setDataLancamento(rs.getDate(1)); despesa.setDataMovimento(rs.getDate(1)); despesa.setLocalArrecadação(rs.getInt(3)); - despesa.setValorLançamento(rs.getBigDecimal(4).toString()); + despesa.setValorLançamento(Double.toString(rs.getBigDecimal(4).doubleValue() * -1)); + despesa.setIdentificadorReceitaDespesa("D"); despesas.add(despesa); } } catch (Exception e){ @@ -281,6 +282,7 @@ public class Totalbus { deposito.setDataMovimento(rs.getDate(1)); deposito.setLocalArrecadação(rs.getInt(3)); deposito.setValorLançamento(rs.getBigDecimal(4).toString()); + deposito.setIdentificadorReceitaDespesa("R"); depositos.add(deposito); } } catch (Exception e){ diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 2e364a0c0..45594ec78 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -16,7 +16,7 @@ public class DespesaReceita { private final String usuarioGlobus = "TOTALBUS ";// 057 015 Alfanumérico private final String turno = "01";// 072 002 Numérico private String codigoReceitaDespesa;// 074 010 Numérico CONSTANTE CODIGO_RECEITA_DESPESA_GLOBUS - private final String identificadorReceitaDespesa = "R";// 084 001 Alfanumérico + private String identificadorReceitaDespesa;// 084 001 Alfanumérico private String valorLançamento;// 085 013 Numérico private final String numeroContratoTurismo = "0000000000";// 098 010 Numérico private final String numeroReciboTurismo = " ";// 108 010 Alfanumérico @@ -69,6 +69,11 @@ public class DespesaReceita { this.codigoReceitaDespesa = lpad("0", "0", 10); } } + + + public void setIdentificadorReceitaDespesa(String identificadorReceitaDespesa) { + this.identificadorReceitaDespesa = identificadorReceitaDespesa.toUpperCase(); + } public void setValorLançamento(String valorLançamento) { this.valorLançamento = lpad(valorLançamento.toString().replace(",", "").replace(".", ""), "0", 13); From a579c8554399423510b2b4b6c0f282f2c1325f87 Mon Sep 17 00:00:00 2001 From: leonardo Date: Fri, 6 Nov 2015 19:16:14 +0000 Subject: [PATCH 009/121] bug #6772 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@49861 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/Application.java | 21 ++++++ .../dao/Totalbus.java | 65 +++++++------------ .../entidades/DespesaReceita.java | 2 +- .../view/FrmMain.java | 13 +--- .../view/PnlPeriodo.java | 7 +- 5 files changed, 52 insertions(+), 56 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/Application.java b/src/com/rjconsultores/integracaoreceitadespesa/Application.java index 033f297ac..f01a27891 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/Application.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/Application.java @@ -2,6 +2,8 @@ package com.rjconsultores.integracaoreceitadespesa; import java.io.FileInputStream; import java.io.IOException; +import java.sql.Connection; +import java.sql.DriverManager; import java.util.Properties; import org.apache.log4j.Logger; @@ -15,6 +17,25 @@ public class Application { } + public Connection getConnection(){ + try { + Properties props = Application.getInstance().getApplicationProperties(); + + String DRIVER = "oracle.jdbc.driver.OracleDriver"; + + Class.forName(DRIVER); + Connection conn = DriverManager.getConnection( + props.getProperty("url"), + props.getProperty("username").trim(), + props.getProperty("password").trim()); + + return conn; + + } catch (Exception e){ + log.error("", e); + return null; + } + } public static Application getInstance(){ if (instance == null){ instance = new Application(); diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 5d8298d1d..b0d2807e2 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -23,31 +23,27 @@ public class Totalbus { private static final Logger log = Logger.getLogger(Totalbus.class); private static final int DAYS_AGO = -1; - private static Totalbus instance = null; - private Connection conn; private List pontosVenda = new ArrayList(); private List empresas = new ArrayList(); - private Totalbus(){ - try { - Properties props = Application.getInstance().getApplicationProperties(); - - String DRIVER = "oracle.jdbc.driver.OracleDriver"; - - Class.forName(DRIVER); - this.conn = DriverManager.getConnection( - props.getProperty("url"), - props.getProperty("username").trim(), - props.getProperty("password").trim()); - - loadEmpresas(); - loadPuntosVenta(); - - } catch (Exception e){ - log.error("", e); - } + public Totalbus(Connection con){ + this.conn = con; + loadEmpresas(); + loadPuntosVenta(); + } + + public List getDespesasReceitas(Integer puntoventaId, Integer empresaId){ + List despesasReceitas = getDepositos(puntoventaId, empresaId); + despesasReceitas.addAll(getDespesas(puntoventaId, empresaId)); + despesasReceitas.addAll(getReceitas(puntoventaId, empresaId)); + List rows = new ArrayList(); + + for (DespesaReceita item : despesasReceitas){ + item.preencheLinha(rows); + } + return rows; } private void loadPuntosVenta(){ @@ -91,14 +87,7 @@ public class Totalbus { try { pstmt.close(); } catch (Exception ignore) { log.error("", ignore); } } } - - public static Totalbus getInstance(){ - if (instance == null){ - instance = new Totalbus(); - } - return instance; - } - + public Connection getConnection(){ return this.conn; } @@ -106,13 +95,6 @@ public class Totalbus { 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, "); @@ -137,19 +119,12 @@ public class Totalbus { } sb.append(" and cd.activo = 1 "); sb.append(" and tee.indtipo = 1 "); - sb.append(" and cdp.formapago_id in (1,10) "); + //sb.append(" and cd.usuario_id=7061 "); 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.fechorvta, "); - sb.append(" tmp.empresa, "); - sb.append(" tmp.puntoventaId, "); - sb.append(" tmp.contacontabil "); PreparedStatement stmt = null; @@ -209,6 +184,7 @@ public class Totalbus { sb.append(" and e.empresa_id = " + empresaId); } sb.append(" and cd.activo = 1 "); + //sb.append(" and cd.usuario_id=7061 "); 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 "); @@ -250,6 +226,7 @@ public class Totalbus { sb.append("from fechamento_cntcorrente fc "); sb.append("inner join fechamento_cct_deposito fd on fd.fechamentocntcorrente_id = fc.fechamentocntcorrente_id "); sb.append("where fc.fecfechamento = :fecha and fd.activo <> 0 and fc.activo <> 0 "); + if (puntoventaId != null){ sb.append("and fc.puntoventa_id = :puntoventaId "); } @@ -274,6 +251,7 @@ public class Totalbus { } rs = pstmt.executeQuery(); + Integer codigoReceitaDespesaGlobus = getCodigoReceitaDespesaGlobus(); while (rs.next()){ DespesaReceita deposito = new DespesaReceita(); deposito.setCodigoEmpresa(rs.getInt(2)); @@ -283,6 +261,7 @@ public class Totalbus { deposito.setLocalArrecadação(rs.getInt(3)); deposito.setValorLançamento(rs.getBigDecimal(4).toString()); deposito.setIdentificadorReceitaDespesa("R"); + deposito.setCodigoReceitaDespesa(codigoReceitaDespesaGlobus); depositos.add(deposito); } } catch (Exception e){ diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 45594ec78..b6a153579 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -31,7 +31,7 @@ public class DespesaReceita { private SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); public DespesaReceita(){ - setCodigoReceitaDespesa(Totalbus.getInstance().getCodigoReceitaDespesaGlobus()); + } public void preencheLinha(List rows){ diff --git a/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java b/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java index bc88ed7a3..82f2d2b7a 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java @@ -16,6 +16,7 @@ import javax.swing.WindowConstants; import javax.swing.event.MenuEvent; import javax.swing.event.MenuListener; +import com.rjconsultores.integracaoreceitadespesa.Application; import com.rjconsultores.integracaoreceitadespesa.Arquivo; import com.rjconsultores.integracaoreceitadespesa.dao.Totalbus; import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceita; @@ -102,14 +103,6 @@ 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 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 (DespesaReceita item : despesasReceitas){ - item.preencheLinha(rows); - } this.setCursor(new Cursor(Cursor.WAIT_CURSOR)); final JFileChooser fc = new JFileChooser(); @@ -117,8 +110,8 @@ public class FrmMain extends javax.swing.JFrame implements MenuListener { if (returnVal == JFileChooser.APPROVE_OPTION) { File file = fc.getSelectedFile(); - Arquivo arquivo = new Arquivo(); - arquivo.GravaArquivo(file.getAbsolutePath(), rows); + Totalbus totalbus = new Totalbus(Application.getInstance().getConnection()); + Arquivo.GravaArquivo(file.getAbsolutePath(), totalbus.getDespesasReceitas(pnl.getPuntoventa(), pnl.getEmpresa())); } } else { JOptionPane.showMessageDialog(null, "Operação cancelada pelo usuário"); diff --git a/src/com/rjconsultores/integracaoreceitadespesa/view/PnlPeriodo.java b/src/com/rjconsultores/integracaoreceitadespesa/view/PnlPeriodo.java index 89d4a53cf..2a7fd5ba2 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/view/PnlPeriodo.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/view/PnlPeriodo.java @@ -9,6 +9,7 @@ import javax.swing.WindowConstants; import org.apache.log4j.Logger; +import com.rjconsultores.integracaoreceitadespesa.Application; import com.rjconsultores.integracaoreceitadespesa.dao.Totalbus; import com.rjconsultores.integracaoreceitadespesa.entidades.Empresa; import com.rjconsultores.integracaoreceitadespesa.entidades.PuntoVenta; @@ -35,6 +36,8 @@ public class PnlPeriodo extends javax.swing.JPanel { private JComboBox txtPuntoventa; private JLabel lblEmpresa; private JComboBox txtEmpresa; + + private Totalbus totalbus = new Totalbus(Application.getInstance().getConnection()); /** * Auto-generated main method to display this @@ -80,7 +83,7 @@ public class PnlPeriodo extends javax.swing.JPanel { public JComboBox getTxtPuntoventa() { if (txtPuntoventa == null){ - txtPuntoventa = new JComboBox(new DefaultComboBoxModel(Totalbus.getInstance().getPontosVenda().toArray())); + txtPuntoventa = new JComboBox(new DefaultComboBoxModel(totalbus.getPontosVenda().toArray())); txtPuntoventa.setBounds(105, 9, 308, 23); } return txtPuntoventa; @@ -97,7 +100,7 @@ public class PnlPeriodo extends javax.swing.JPanel { public JComboBox getTxtEmpresa() { if (txtEmpresa == null){ - txtEmpresa = new JComboBox(new DefaultComboBoxModel(Totalbus.getInstance().getEmpresas().toArray())); + txtEmpresa = new JComboBox(new DefaultComboBoxModel(totalbus.getEmpresas().toArray())); txtEmpresa.setBounds(105, 37, 308, 23); } return txtEmpresa; From 1cb9d6ae1c5748b9cf48100ae6a3414b200ff9e8 Mon Sep 17 00:00:00 2001 From: leonardo Date: Tue, 10 Nov 2015 12:22:23 +0000 Subject: [PATCH 010/121] bug #6772 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@49941 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../dao/Totalbus.java | 87 +++++++++++++------ .../entidades/DespesaReceita.java | 16 +++- 2 files changed, 73 insertions(+), 30 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index b0d2807e2..af0f53370 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -1,18 +1,17 @@ package com.rjconsultores.integracaoreceitadespesa.dao; import java.sql.Connection; -import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; +import java.text.DecimalFormat; +import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; import java.util.List; -import java.util.Properties; import org.apache.log4j.Logger; -import com.rjconsultores.integracaoreceitadespesa.Application; import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceita; import com.rjconsultores.integracaoreceitadespesa.entidades.Empresa; import com.rjconsultores.integracaoreceitadespesa.entidades.PuntoVenta; @@ -221,17 +220,24 @@ public class Totalbus { 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 "); - sb.append("from fechamento_cntcorrente fc "); - sb.append("inner join fechamento_cct_deposito fd on fd.fechamentocntcorrente_id = fc.fechamentocntcorrente_id "); - sb.append("where fc.fecfechamento = :fecha and fd.activo <> 0 and fc.activo <> 0 "); + sb.append("select i.instifinanceira_id, i.codigo, fdep.fechamentodeposito_id, fdep.valor, fdep.numdeposito, fdep.fecha_deposito "); + sb.append("from fechamento_deposito fdep "); + sb.append("inner join insti_financeira i on i.instifinanceira_id = fdep.instifinanceira_id "); + sb.append("where fecha_deposito = :fecha and fdep.activo = 1 "); + + StringBuilder strFechamentos = new StringBuilder(); + strFechamentos.append("Select fc.fecfechamento, fc.empresa_id, fc.puntoventa_id, fd.valor_pago, ec.numagencia, ec.numconta "); + strFechamentos.append("from fechamento_cct_deposito fd "); + strFechamentos.append("inner join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); + strFechamentos.append("left join empresa_contabancaria ec on ec.empresa_id = fc.empresa_id and ec.instifinanceira_id = :instifinanceiraId and ec.activo = 1 "); + strFechamentos.append("where fd.fechamentodeposito_id = :fechamentodepositoId and fd.activo <> 0 and fc.activo <> 0 "); + if (puntoventaId != null){ - sb.append("and fc.puntoventa_id = :puntoventaId "); + strFechamentos.append(" and fc.puntoventa_id = " + puntoventaId); } if (empresaId != null){ - sb.append("and fc.empresa_id = :empresaId "); + strFechamentos.append(" and fc.empresa_id = " + empresaId); } @@ -242,27 +248,54 @@ public class Totalbus { try{ pstmt = getConnection().prepareStatement(sb.toString()); - pstmt.setDate(1, new java.sql.Date(fecha.getTime())); - if (puntoventaId != null){ - pstmt.setInt(2, puntoventaId); - } - if (empresaId != null){ - pstmt.setInt(3, empresaId); - } + pstmt.setDate(1, new java.sql.Date(fecha.getTime())); rs = pstmt.executeQuery(); Integer codigoReceitaDespesaGlobus = getCodigoReceitaDespesaGlobus(); + DecimalFormat df = new DecimalFormat("#0.00"); + SimpleDateFormat sdf = new SimpleDateFormat("MM/yy"); + + PreparedStatement pstmtFechamentos = getConnection().prepareStatement(strFechamentos.toString()); + while (rs.next()){ - DespesaReceita deposito = new DespesaReceita(); - deposito.setCodigoEmpresa(rs.getInt(2)); - deposito.setCodigoReceitaDespesa(rs.getInt(5)); - deposito.setDataLancamento(rs.getDate(1)); - deposito.setDataMovimento(rs.getDate(1)); - deposito.setLocalArrecadação(rs.getInt(3)); - deposito.setValorLançamento(rs.getBigDecimal(4).toString()); - deposito.setIdentificadorReceitaDespesa("R"); - deposito.setCodigoReceitaDespesa(codigoReceitaDespesaGlobus); - depositos.add(deposito); + pstmtFechamentos.setInt(1, rs.getInt(1)); + pstmtFechamentos.setInt(2, rs.getInt(3)); + + ResultSet rsFechamentos = pstmtFechamentos.executeQuery(); + + Integer empId = null; + Integer pvId = null; + String banco = "Bco: " + DespesaReceita.lpad(rs.getString(2), "0", 3) ; + String agencia = ""; + String contaCorrente = ""; + String numDep = " Dep: " + rs.getString(5); + String valor = " R$ " + df.format(rs.getBigDecimal(4)); + String ref = " Ref: "; + + Boolean podeAdicionar = false; + + while (rsFechamentos.next()){ + podeAdicionar = true; + if (empId == null ){ empId = rsFechamentos.getInt(2); } + if (pvId == null){ pvId = rsFechamentos.getInt(3); } + if (agencia.isEmpty()){ agencia = " Ag: " + rsFechamentos.getString(5); } + if (contaCorrente.isEmpty()){ contaCorrente = " C/C: " + rsFechamentos.getString(6); } + ref += ref.length() <= 6 ? sdf.format(rsFechamentos.getDate(1)) : ", " + sdf.format(rsFechamentos.getDate(1)); + + } + + if (podeAdicionar){ // se não tiver dados da subquery não é um depósito válido. + DespesaReceita deposito = new DespesaReceita(); + deposito.setCodigoEmpresa(empId); + deposito.setDataLancamento(rs.getDate(6)); + deposito.setDataMovimento(rs.getDate(6)); + deposito.setLocalArrecadação(pvId); + deposito.setValorLançamento(rs.getBigDecimal(4).toString()); + deposito.setIdentificadorReceitaDespesa("R"); + deposito.setCodigoReceitaDespesa(codigoReceitaDespesaGlobus); + deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep + valor + ref); + depositos.add(deposito); + } } } catch (Exception e){ log.error("", e); diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index b6a153579..3b498b3b0 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -22,7 +22,7 @@ public class DespesaReceita { private final String numeroReciboTurismo = " ";// 108 010 Alfanumérico private final String formaPagamentoTurismo = "00";// 118 002 Numérico private final String tipoPagamentoTurismo = "00";// 120 002 Numérico - private final String descricaoDetalhada = " ";// 122 100 Alfanumérico + private String descricaoDetalhada = " ";// 122 100 Alfanumérico private final String documentoVenda = "000000";// 222 6 Numérico private final String tipoDocumentoVenda = " ";// 228 1 Alfanumérico private final String numerodocumentoCPG = "0000000000";// 229 10 Numérico @@ -79,14 +79,24 @@ public class DespesaReceita { this.valorLançamento = lpad(valorLançamento.toString().replace(",", "").replace(".", ""), "0", 13); } - private static String lpad(String valueToPad, String filler, int size) { + public void setDescricaoDetalhada(String desc){ + this.descricaoDetalhada = rpad(truncStr(desc, 100), " ", 100); + } + + private String truncStr(String str, int size){ + if (str.length() > size){ + return str.substring(0, size +1); + } + return str; + } + public static String lpad(String valueToPad, String filler, int size) { while (valueToPad.length() < size) { valueToPad = filler + valueToPad; } return valueToPad; } - private static String rpad(String valueToPad, String filler, int size) { + public static String rpad(String valueToPad, String filler, int size) { while (valueToPad.length() < size) { valueToPad = valueToPad+filler; } From 1a473b016a1b7fa34a65621a940ff7cb8cd9d058 Mon Sep 17 00:00:00 2001 From: leonardo Date: Wed, 11 Nov 2015 12:16:54 +0000 Subject: [PATCH 011/121] bug #6772 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@49987 d1611594-4594-4d17-8e1d-87c2c4800839 --- db.properties | 4 - log4j.properties | 16 --- .../view/FrmMain.java | 122 ------------------ .../view/PnlPeriodo.java | 116 ----------------- 4 files changed, 258 deletions(-) delete mode 100644 db.properties delete mode 100644 log4j.properties delete mode 100644 src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java delete mode 100644 src/com/rjconsultores/integracaoreceitadespesa/view/PnlPeriodo.java diff --git a/db.properties b/db.properties deleted file mode 100644 index 3f065e35f..000000000 --- a/db.properties +++ /dev/null @@ -1,4 +0,0 @@ -url=jdbc:oracle:thin:@db-proj.cg09ytaizn5g.us-east-1.rds.amazonaws.com:1521:ORCL -username=vtabol -password=vtax05 - diff --git a/log4j.properties b/log4j.properties deleted file mode 100644 index d4e7fed1d..000000000 --- a/log4j.properties +++ /dev/null @@ -1,16 +0,0 @@ -# Root logger option -log4j.rootLogger=DEBUG, stdout, file - -# Redirect log messages to console -log4j.appender.stdout=org.apache.log4j.ConsoleAppender -log4j.appender.stdout.Target=System.out -log4j.appender.stdout.layout=org.apache.log4j.PatternLayout -log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n - -# Redirect log messages to a log file, support file rolling. -log4j.appender.file=org.apache.log4j.RollingFileAppender -log4j.appender.file.File=${user.home}/integracaoReceitaDespesa.log -log4j.appender.file.MaxFileSize=5MB -log4j.appender.file.MaxBackupIndex=10 -log4j.appender.file.layout=org.apache.log4j.PatternLayout -log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n \ No newline at end of file diff --git a/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java b/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java deleted file mode 100644 index 82f2d2b7a..000000000 --- a/src/com/rjconsultores/integracaoreceitadespesa/view/FrmMain.java +++ /dev/null @@ -1,122 +0,0 @@ -package com.rjconsultores.integracaoreceitadespesa.view; -import java.awt.BorderLayout; -import java.awt.Cursor; -import java.io.File; -import java.util.ArrayList; -import java.util.List; - -import javax.swing.JDesktopPane; -import javax.swing.JFileChooser; -import javax.swing.JMenu; -import javax.swing.JMenuBar; -import javax.swing.JMenuItem; -import javax.swing.JOptionPane; -import javax.swing.SwingUtilities; -import javax.swing.WindowConstants; -import javax.swing.event.MenuEvent; -import javax.swing.event.MenuListener; - -import com.rjconsultores.integracaoreceitadespesa.Application; -import com.rjconsultores.integracaoreceitadespesa.Arquivo; -import com.rjconsultores.integracaoreceitadespesa.dao.Totalbus; -import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceita; - - -/** -* This code was edited or generated using CloudGarden's Jigloo -* SWT/Swing GUI Builder, which is free for non-commercial -* use. If Jigloo is being used commercially (ie, by a corporation, -* company or business for any purpose whatever) then you -* should purchase a license for each developer using Jigloo. -* Please visit www.cloudgarden.com for details. -* Use of Jigloo implies acceptance of these licensing terms. -* A COMMERCIAL LICENSE HAS NOT BEEN PURCHASED FOR -* THIS MACHINE, SO JIGLOO OR THIS CODE CANNOT BE USED -* LEGALLY FOR ANY CORPORATE OR COMMERCIAL PURPOSE. -*/ -public class FrmMain extends javax.swing.JFrame implements MenuListener { - private JDesktopPane jDesktopPane1; - private JMenuBar jMenuBar1; - private JMenuItem mnuGerarArquivo; - private JMenu jMenu1; - - /** - * Auto-generated main method to display this JFrame - */ - public static void main(String[] args) { - SwingUtilities.invokeLater(new Runnable() { - public void run() { - FrmMain inst = new FrmMain(); - inst.setLocationRelativeTo(null); - inst.setVisible(true); - } - }); - } - - public FrmMain() { - super(); - initGUI(); - setExtendedState(java.awt.Frame.MAXIMIZED_BOTH); - } - - private void initGUI() { - try { - setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); - { - jMenuBar1 = new JMenuBar(); - setJMenuBar(jMenuBar1); - { - jMenu1 = new JMenu(); - jMenuBar1.add(jMenu1); - jMenu1.setText("Gerar Arquivo"); - jMenu1.addMenuListener(this); - } - } - { - jDesktopPane1 = new JDesktopPane(); - getContentPane().add(jDesktopPane1, BorderLayout.CENTER); - } - pack(); - setSize(400, 300); - } catch (Exception e) { - //add your error handling code here - e.printStackTrace(); - } - } - - @Override - public void menuCanceled(MenuEvent e) { - // TODO Auto-generated method stub - - } - - @Override - public void menuDeselected(MenuEvent e) { - // TODO Auto-generated method stub - - } - - @Override - public void menuSelected(MenuEvent e) { - if (e.getSource() == jMenu1){ - PnlPeriodo pnl = new PnlPeriodo(); - - int answer = JOptionPane.showConfirmDialog(null, pnl, "Executar Exportação", JOptionPane.OK_CANCEL_OPTION); - if (answer == JOptionPane.OK_OPTION) { - - this.setCursor(new Cursor(Cursor.WAIT_CURSOR)); - final JFileChooser fc = new JFileChooser(); - int returnVal = fc.showSaveDialog(this); - - if (returnVal == JFileChooser.APPROVE_OPTION) { - File file = fc.getSelectedFile(); - Totalbus totalbus = new Totalbus(Application.getInstance().getConnection()); - Arquivo.GravaArquivo(file.getAbsolutePath(), totalbus.getDespesasReceitas(pnl.getPuntoventa(), pnl.getEmpresa())); - } - } else { - JOptionPane.showMessageDialog(null, "Operação cancelada pelo usuário"); - } - this.setCursor(new Cursor(Cursor.DEFAULT_CURSOR)); - } - } -} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/view/PnlPeriodo.java b/src/com/rjconsultores/integracaoreceitadespesa/view/PnlPeriodo.java deleted file mode 100644 index 2a7fd5ba2..000000000 --- a/src/com/rjconsultores/integracaoreceitadespesa/view/PnlPeriodo.java +++ /dev/null @@ -1,116 +0,0 @@ -package com.rjconsultores.integracaoreceitadespesa.view; - -import javax.swing.DefaultComboBoxModel; -import javax.swing.JComboBox; -import javax.swing.JFrame; -import javax.swing.JLabel; -import javax.swing.JTextField; -import javax.swing.WindowConstants; - -import org.apache.log4j.Logger; - -import com.rjconsultores.integracaoreceitadespesa.Application; -import com.rjconsultores.integracaoreceitadespesa.dao.Totalbus; -import com.rjconsultores.integracaoreceitadespesa.entidades.Empresa; -import com.rjconsultores.integracaoreceitadespesa.entidades.PuntoVenta; - -/** -* This code was edited or generated using CloudGarden's Jigloo -* SWT/Swing GUI Builder, which is free for non-commercial -* use. If Jigloo is being used commercially (ie, by a corporation, -* company or business for any purpose whatever) then you -* should purchase a license for each developer using Jigloo. -* Please visit www.cloudgarden.com for details. -* Use of Jigloo implies acceptance of these licensing terms. -* A COMMERCIAL LICENSE HAS NOT BEEN PURCHASED FOR -* THIS MACHINE, SO JIGLOO OR THIS CODE CANNOT BE USED -* LEGALLY FOR ANY CORPORATE OR COMMERCIAL PURPOSE. -*/ -public class PnlPeriodo extends javax.swing.JPanel { - - private static final long serialVersionUID = 1L; - - private static final Logger log = Logger.getLogger(PnlPeriodo.class); - - private JLabel lblPuntoventa; - private JComboBox txtPuntoventa; - private JLabel lblEmpresa; - private JComboBox txtEmpresa; - - private Totalbus totalbus = new Totalbus(Application.getInstance().getConnection()); - - /** - * Auto-generated main method to display this - * JPanel inside a new JFrame. - */ - public static void main(String[] args) { - JFrame frame = new JFrame(); - frame.getContentPane().add(new PnlPeriodo()); - frame.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); - frame.pack(); - frame.setVisible(true); - } - - public PnlPeriodo() { - super(); - initGUI(); - } - - private void initGUI() { - try { - this.setPreferredSize(new java.awt.Dimension(425, 72)); - this.setLayout(null); - - - this.add(getLblPuntoventa()); - this.add(getTxtPuntoventa()); - this.add(getLblEmpresa()); - this.add(getTxtEmpresa()); - - } catch (Exception e) { - e.printStackTrace(); - } - } - - public JLabel getLblPuntoventa() { - if (lblPuntoventa == null){ - lblPuntoventa = new JLabel(); - lblPuntoventa.setText("Ponto de Venda"); - lblPuntoventa.setBounds(12, 12, 93, 16); - } - return lblPuntoventa; - } - - public JComboBox getTxtPuntoventa() { - if (txtPuntoventa == null){ - txtPuntoventa = new JComboBox(new DefaultComboBoxModel(totalbus.getPontosVenda().toArray())); - txtPuntoventa.setBounds(105, 9, 308, 23); - } - return txtPuntoventa; - } - - public JLabel getLblEmpresa() { - if (lblEmpresa == null){ - lblEmpresa = new JLabel(); - lblEmpresa.setText("Empresa"); - lblEmpresa.setBounds(12, 40, 81, 16); - } - return lblEmpresa; - } - - public JComboBox getTxtEmpresa() { - if (txtEmpresa == null){ - txtEmpresa = new JComboBox(new DefaultComboBoxModel(totalbus.getEmpresas().toArray())); - txtEmpresa.setBounds(105, 37, 308, 23); - } - return txtEmpresa; - } - - public Integer getPuntoventa(){ - return ((PuntoVenta)txtPuntoventa.getSelectedItem()).codigo; - } - - public Integer getEmpresa(){ - return ((Empresa)txtEmpresa.getSelectedItem()).codigo; - } -} From b2b9eca369c68abd4f82d8bbe207571e7b1a893f Mon Sep 17 00:00:00 2001 From: thiago Date: Mon, 7 Dec 2015 13:11:31 +0000 Subject: [PATCH 012/121] =?UTF-8?q?Altera=C3=A7=C3=A3o=20para=20permitir?= =?UTF-8?q?=20itera=C3=A7=C3=A3o=20di=C3=A1ria?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@50941 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../dao/Totalbus.java | 38 +++++++++++-------- 1 file changed, 23 insertions(+), 15 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index af0f53370..93acf939e 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -33,10 +33,10 @@ public class Totalbus { loadPuntosVenta(); } - public List getDespesasReceitas(Integer puntoventaId, Integer empresaId){ - List despesasReceitas = getDepositos(puntoventaId, empresaId); - despesasReceitas.addAll(getDespesas(puntoventaId, empresaId)); - despesasReceitas.addAll(getReceitas(puntoventaId, empresaId)); + public List getDespesasReceitas(Integer puntoventaId, Integer empresaId,Date fechaParam){ + List despesasReceitas = getDepositos(puntoventaId, empresaId, fechaParam); + despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam)); + despesasReceitas.addAll(getReceitas(puntoventaId, empresaId, fechaParam)); List rows = new ArrayList(); for (DespesaReceita item : despesasReceitas){ @@ -91,7 +91,7 @@ public class Totalbus { return this.conn; } - public List getReceitas(final Integer puntoVentaId, final Integer empresaId) { + public List getReceitas(final Integer puntoVentaId, final Integer empresaId, Date fechaParam) { List despesas = new ArrayList(); StringBuffer sb = new StringBuffer(); sb.append(" select "); @@ -110,7 +110,7 @@ public class Totalbus { 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){ + if (puntoVentaId != null && !puntoVentaId.equals(-1)){ sb.append(" and cd.puntoventa_id = " + puntoVentaId); } if (empresaId != null){ @@ -129,7 +129,10 @@ public class Totalbus { PreparedStatement stmt = null; ResultSet rs = null; - Date fecha = getData(); + Date fecha = fechaParam; + if(fechaParam== null){ + fecha = getData(); + } try{ stmt = getConnection().prepareStatement(sb.toString()); @@ -156,7 +159,7 @@ public class Totalbus { return despesas; } - public List getDespesas(Integer puntoventaId, Integer empresaId){ + public List getDespesas(Integer puntoventaId, Integer empresaId, Date fechaParam){ List despesas = new ArrayList(); StringBuilder sb = new StringBuilder(); sb.append(" select "); @@ -176,7 +179,7 @@ public class Totalbus { sb.append(" where "); sb.append(" cd.feccorte = ? "); sb.append(" and tee.indtipo = 0 "); - if (puntoventaId != null){ + if (puntoventaId != null && !puntoventaId.equals(-1)){ sb.append(" and cd.puntoventa_id = " + puntoventaId); } if (empresaId != null){ @@ -187,7 +190,10 @@ public class Totalbus { 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(); + Date fecha = fechaParam; + if(fechaParam== null){ + fecha = getData(); + } PreparedStatement pstmt = null; ResultSet rs = null; @@ -217,7 +223,7 @@ public class Totalbus { return despesas; } - public List getDepositos(Integer puntoventaId, Integer empresaId){ + public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam){ List depositos = new ArrayList(); StringBuilder sb = new StringBuilder(); sb.append("select i.instifinanceira_id, i.codigo, fdep.fechamentodeposito_id, fdep.valor, fdep.numdeposito, fdep.fecha_deposito "); @@ -233,15 +239,16 @@ public class Totalbus { strFechamentos.append("left join empresa_contabancaria ec on ec.empresa_id = fc.empresa_id and ec.instifinanceira_id = :instifinanceiraId and ec.activo = 1 "); strFechamentos.append("where fd.fechamentodeposito_id = :fechamentodepositoId and fd.activo <> 0 and fc.activo <> 0 "); - if (puntoventaId != null){ + if (puntoventaId != null && !puntoventaId.equals(-1)){ strFechamentos.append(" and fc.puntoventa_id = " + puntoventaId); } if (empresaId != null){ strFechamentos.append(" and fc.empresa_id = " + empresaId); } - - - Date fecha = getData(); + Date fecha = fechaParam; + if(fechaParam == null){ + fecha = getData(); + } PreparedStatement pstmt = null; ResultSet rs = null; @@ -330,6 +337,7 @@ public class Totalbus { private Date getData(){ Calendar cal = Calendar.getInstance(); + cal.set(2015, 10, 13); cal.setTime(new Date()); cal.add(Calendar.DAY_OF_MONTH, DAYS_AGO); return cal.getTime(); From c21852234fc9ad979399d1825931f941c2506757 Mon Sep 17 00:00:00 2001 From: thiago Date: Mon, 7 Dec 2015 13:29:14 +0000 Subject: [PATCH 013/121] =?UTF-8?q?Altera=C3=A7=C3=A3o=20de=20caminho=20pa?= =?UTF-8?q?ra=20dependencias?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@50944 d1611594-4594-4d17-8e1d-87c2c4800839 --- .classpath | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.classpath b/.classpath index 7ac68b057..1f554e2c6 100644 --- a/.classpath +++ b/.classpath @@ -2,8 +2,8 @@ - - - + + + From 95612e0dbb5c8feefc4d3208c9a221d2c274cce6 Mon Sep 17 00:00:00 2001 From: thiago Date: Mon, 14 Dec 2015 19:04:31 +0000 Subject: [PATCH 014/121] =?UTF-8?q?Corre=C3=A7=C3=A3o=20de=20informa=C3=A7?= =?UTF-8?q?=C3=B5es=20em=20relat=C3=B3rio=20BGM?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@51184 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../dao/Totalbus.java | 34 +++++++++++-------- .../entidades/DespesaReceita.java | 2 -- 2 files changed, 19 insertions(+), 17 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 93acf939e..d0389faf8 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -99,7 +99,8 @@ public class Totalbus { 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(" tee.contacontabil AS contacontabil, "); + sb.append(" pv.numpuntoventa AS numpuntoventa "); sb.append(" from "); sb.append(" caja_diversos cd "); sb.append(" left join evento_extra ev on ev.eventoextra_id = cd.eventoextra_id "); @@ -123,7 +124,8 @@ public class Totalbus { sb.append(" cd.feccorte, "); sb.append(" e.empresa_id, "); sb.append(" pv.puntoventa_id, "); - sb.append(" tee.contacontabil "); + sb.append(" tee.contacontabil, "); + sb.append(" pv.numpuntoventa "); PreparedStatement stmt = null; @@ -145,7 +147,7 @@ public class Totalbus { receita.setCodigoReceitaDespesa(rs.getInt(5)); receita.setDataLancamento(rs.getDate(1)); receita.setDataMovimento(rs.getDate(1)); - receita.setLocalArrecadação(rs.getInt(3)); + receita.setLocalArrecadação(rs.getInt(6)); receita.setValorLançamento(rs.getBigDecimal(4).toString()); receita.setIdentificadorReceitaDespesa("R"); despesas.add(receita); @@ -165,7 +167,7 @@ public class Totalbus { 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(" pv.numpuntoventa as numpuntoventa, "); sb.append(" cdp.importe as valor, "); sb.append(" tee.contacontabil as contacontabil "); sb.append(" from "); @@ -226,17 +228,19 @@ public class Totalbus { public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam){ List depositos = new ArrayList(); StringBuilder sb = new StringBuilder(); - sb.append("select i.instifinanceira_id, i.codigo, fdep.fechamentodeposito_id, fdep.valor, fdep.numdeposito, fdep.fecha_deposito "); + sb.append("select fdep.fechamentodeposito_id, fdep.valor, fdep.numdeposito, fdep.fecha_deposito "); sb.append("from fechamento_deposito fdep "); - sb.append("inner join insti_financeira i on i.instifinanceira_id = fdep.instifinanceira_id "); + //sb.append("inner join insti_financeira i on i.instifinanceira_id = fdep.instifinanceira_id "); sb.append("where fecha_deposito = :fecha and fdep.activo = 1 "); StringBuilder strFechamentos = new StringBuilder(); - strFechamentos.append("Select fc.fecfechamento, fc.empresa_id, fc.puntoventa_id, fd.valor_pago, ec.numagencia, ec.numconta "); + strFechamentos.append("Select fc.fecfechamento, fc.empresa_id, pv.numpuntoventa, fd.valor_pago, ec.numagencia, ec.numconta, if.CODIGO "); strFechamentos.append("from fechamento_cct_deposito fd "); strFechamentos.append("inner join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); - strFechamentos.append("left join empresa_contabancaria ec on ec.empresa_id = fc.empresa_id and ec.instifinanceira_id = :instifinanceiraId and ec.activo = 1 "); + strFechamentos.append("inner join PUNTO_VENTA pv on FC.PUNTOVENTA_ID = PV.PUNTOVENTA_ID "); + strFechamentos.append("left join empresa_contabancaria ec on ec.empresa_id = fc.empresa_id and ec.activo = 1 "); + strFechamentos.append("left join INSTI_FINANCEIRA if on EC.INSTIFINANCEIRA_ID = if.INSTIFINANCEIRA_ID and if.ACTIVO = 1 "); strFechamentos.append("where fd.fechamentodeposito_id = :fechamentodepositoId and fd.activo <> 0 and fc.activo <> 0 "); if (puntoventaId != null && !puntoventaId.equals(-1)){ @@ -266,17 +270,16 @@ public class Totalbus { while (rs.next()){ pstmtFechamentos.setInt(1, rs.getInt(1)); - pstmtFechamentos.setInt(2, rs.getInt(3)); ResultSet rsFechamentos = pstmtFechamentos.executeQuery(); Integer empId = null; Integer pvId = null; - String banco = "Bco: " + DespesaReceita.lpad(rs.getString(2), "0", 3) ; + String banco = "" ; String agencia = ""; String contaCorrente = ""; - String numDep = " Dep: " + rs.getString(5); - String valor = " R$ " + df.format(rs.getBigDecimal(4)); + String numDep = " Dep: " + rs.getString(3); + String valor = " R$ " + df.format(rs.getBigDecimal(2)); String ref = " Ref: "; Boolean podeAdicionar = false; @@ -284,6 +287,7 @@ public class Totalbus { while (rsFechamentos.next()){ podeAdicionar = true; if (empId == null ){ empId = rsFechamentos.getInt(2); } + if (banco.isEmpty()){banco = "Bco: " + DespesaReceita.lpad(rsFechamentos.getString(7), "0", 3);} if (pvId == null){ pvId = rsFechamentos.getInt(3); } if (agencia.isEmpty()){ agencia = " Ag: " + rsFechamentos.getString(5); } if (contaCorrente.isEmpty()){ contaCorrente = " C/C: " + rsFechamentos.getString(6); } @@ -294,10 +298,10 @@ public class Totalbus { if (podeAdicionar){ // se não tiver dados da subquery não é um depósito válido. DespesaReceita deposito = new DespesaReceita(); deposito.setCodigoEmpresa(empId); - deposito.setDataLancamento(rs.getDate(6)); - deposito.setDataMovimento(rs.getDate(6)); + deposito.setDataLancamento(rs.getDate(4)); + deposito.setDataMovimento(rs.getDate(4)); deposito.setLocalArrecadação(pvId); - deposito.setValorLançamento(rs.getBigDecimal(4).toString()); + deposito.setValorLançamento(rs.getBigDecimal(2).toString()); deposito.setIdentificadorReceitaDespesa("R"); deposito.setCodigoReceitaDespesa(codigoReceitaDespesaGlobus); deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep + valor + ref); diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 3b498b3b0..7320e97c3 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -4,8 +4,6 @@ import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; -import com.rjconsultores.integracaoreceitadespesa.dao.Totalbus; - public class DespesaReceita { private String dataLancamento; // DD/MM/YYYY private String codigoEmpresa; // 011 003 Numérico From 96547ab6725cc046fe9323b700569381d73e7b47 Mon Sep 17 00:00:00 2001 From: leonardo Date: Wed, 16 Dec 2015 13:55:59 +0000 Subject: [PATCH 015/121] fixes bug #6938 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@51264 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/entidades/DespesaReceita.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 7320e97c3..1e3afdcad 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -53,7 +53,7 @@ public class DespesaReceita { } public void setLocalArrecadação(Integer localArrecadação) { - this.localArrecadação = lpad(localArrecadação.toString(), "0", 5); + this.localArrecadação = rpad(localArrecadação.toString(), " ", 5); } public void setDataMovimento(Date dataMovimento) { From d29b93495a599fc2d614128265c283e613575679 Mon Sep 17 00:00:00 2001 From: leonardo Date: Thu, 17 Dec 2015 16:43:10 +0000 Subject: [PATCH 016/121] fixes bug #6938 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@51339 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/dao/Totalbus.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index d0389faf8..77e09818b 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -235,7 +235,7 @@ public class Totalbus { StringBuilder strFechamentos = new StringBuilder(); - strFechamentos.append("Select fc.fecfechamento, fc.empresa_id, pv.numpuntoventa, fd.valor_pago, ec.numagencia, ec.numconta, if.CODIGO "); + strFechamentos.append("Select fc.fecfechamento, fc.empresa_id, pv.numpuntoventa, fd.valor_pago, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion "); strFechamentos.append("from fechamento_cct_deposito fd "); strFechamentos.append("inner join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); strFechamentos.append("inner join PUNTO_VENTA pv on FC.PUNTOVENTA_ID = PV.PUNTOVENTA_ID "); @@ -302,8 +302,8 @@ public class Totalbus { deposito.setDataMovimento(rs.getDate(4)); deposito.setLocalArrecadação(pvId); deposito.setValorLançamento(rs.getBigDecimal(2).toString()); - deposito.setIdentificadorReceitaDespesa("R"); - deposito.setCodigoReceitaDespesa(codigoReceitaDespesaGlobus); + deposito.setIdentificadorReceitaDespesa("D"); + deposito.setCodigoReceitaDespesa(Integer.parseInt(rs.getString(8))); deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep + valor + ref); depositos.add(deposito); } From 21fc38ddf5f7e6a69f7d3ae29309be7702e65cb5 Mon Sep 17 00:00:00 2001 From: leonardo Date: Tue, 22 Dec 2015 12:24:41 +0000 Subject: [PATCH 017/121] fixes bug #6938 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@51468 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/dao/Totalbus.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 77e09818b..2015b6721 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -281,7 +281,7 @@ public class Totalbus { String numDep = " Dep: " + rs.getString(3); String valor = " R$ " + df.format(rs.getBigDecimal(2)); String ref = " Ref: "; - + Integer codRecDesp = null; Boolean podeAdicionar = false; while (rsFechamentos.next()){ @@ -292,7 +292,7 @@ public class Totalbus { if (agencia.isEmpty()){ agencia = " Ag: " + rsFechamentos.getString(5); } if (contaCorrente.isEmpty()){ contaCorrente = " C/C: " + rsFechamentos.getString(6); } ref += ref.length() <= 6 ? sdf.format(rsFechamentos.getDate(1)) : ", " + sdf.format(rsFechamentos.getDate(1)); - + if (codRecDesp == null){ codRecDesp = rsFechamentos.getInt(8); } } if (podeAdicionar){ // se não tiver dados da subquery não é um depósito válido. @@ -303,7 +303,7 @@ public class Totalbus { deposito.setLocalArrecadação(pvId); deposito.setValorLançamento(rs.getBigDecimal(2).toString()); deposito.setIdentificadorReceitaDespesa("D"); - deposito.setCodigoReceitaDespesa(Integer.parseInt(rs.getString(8))); + deposito.setCodigoReceitaDespesa(codRecDesp); deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep + valor + ref); depositos.add(deposito); } From 95f66770a26c80abccc5ec0927aff3216c234543 Mon Sep 17 00:00:00 2001 From: leonardo Date: Wed, 23 Dec 2015 18:17:01 +0000 Subject: [PATCH 018/121] fixes bug #6938 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@51519 d1611594-4594-4d17-8e1d-87c2c4800839 --- .classpath | 7 ++++++- .project | 13 +++++++++++++ .settings/org.eclipse.wst.common.component | 6 ++++++ .../org.eclipse.wst.common.project.facet.core.xml | 8 ++++++++ src/META-INF/MANIFEST.MF | 3 +++ 5 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 .settings/org.eclipse.wst.common.component create mode 100644 .settings/org.eclipse.wst.common.project.facet.core.xml create mode 100644 src/META-INF/MANIFEST.MF diff --git a/.classpath b/.classpath index 1f554e2c6..21f3e9111 100644 --- a/.classpath +++ b/.classpath @@ -1,9 +1,14 @@ - + + + + + + diff --git a/.project b/.project index e52e8c096..256b4c128 100644 --- a/.project +++ b/.project @@ -5,13 +5,26 @@ + + org.eclipse.wst.common.project.facet.core.builder + + + org.eclipse.jdt.core.javabuilder + + org.eclipse.wst.validation.validationbuilder + + + + org.eclipse.jem.workbench.JavaEMFNature + org.eclipse.wst.common.modulecore.ModuleCoreNature org.eclipse.jdt.core.javanature + org.eclipse.wst.common.project.facet.core.nature diff --git a/.settings/org.eclipse.wst.common.component b/.settings/org.eclipse.wst.common.component new file mode 100644 index 000000000..aa731865e --- /dev/null +++ b/.settings/org.eclipse.wst.common.component @@ -0,0 +1,6 @@ + + + + + + diff --git a/.settings/org.eclipse.wst.common.project.facet.core.xml b/.settings/org.eclipse.wst.common.project.facet.core.xml new file mode 100644 index 000000000..b069b576d --- /dev/null +++ b/.settings/org.eclipse.wst.common.project.facet.core.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/META-INF/MANIFEST.MF b/src/META-INF/MANIFEST.MF new file mode 100644 index 000000000..5e9495128 --- /dev/null +++ b/src/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Class-Path: + From 1cf9955b54007b3a700bbfb2fff4c4d845e458de Mon Sep 17 00:00:00 2001 From: leonardo Date: Thu, 11 Feb 2016 13:32:08 +0000 Subject: [PATCH 019/121] fixes bug #7102 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@52745 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/dao/Totalbus.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 2015b6721..796024add 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -228,7 +228,7 @@ public class Totalbus { public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam){ List depositos = new ArrayList(); StringBuilder sb = new StringBuilder(); - sb.append("select fdep.fechamentodeposito_id, fdep.valor, fdep.numdeposito, fdep.fecha_deposito "); + sb.append("select fdep.fechamentodeposito_id, fdep.valor, fdep.numdeposito, fdep.fecmodif "); sb.append("from fechamento_deposito fdep "); //sb.append("inner join insti_financeira i on i.instifinanceira_id = fdep.instifinanceira_id "); sb.append("where fecha_deposito = :fecha and fdep.activo = 1 "); @@ -239,7 +239,9 @@ public class Totalbus { strFechamentos.append("from fechamento_cct_deposito fd "); strFechamentos.append("inner join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); strFechamentos.append("inner join PUNTO_VENTA pv on FC.PUNTOVENTA_ID = PV.PUNTOVENTA_ID "); - strFechamentos.append("left join empresa_contabancaria ec on ec.empresa_id = fc.empresa_id and ec.activo = 1 "); + strFechamentos.append("JOIN EMPRESA e ON e.EMPRESA_ID = FC.EMPRESA_ID "); + strFechamentos.append("LEFT JOIN PTOVTA_EMPRESA pve ON PVE.EMPRESA_ID = e.empresa_id AND PVE.PUNTOVENTA_ID = PV.PUNTOVENTA_ID AND PVE.activo = 1 "); + strFechamentos.append("left join empresa_contabancaria ec on EC.EMPRESA_ID = PVE.EMPRESA_ID AND EC.EMPRESACONTABANCARIA_ID = PVE.EMPRESACONTABANCARIA_ID AND EC.ACTIVO = 1 "); strFechamentos.append("left join INSTI_FINANCEIRA if on EC.INSTIFINANCEIRA_ID = if.INSTIFINANCEIRA_ID and if.ACTIVO = 1 "); strFechamentos.append("where fd.fechamentodeposito_id = :fechamentodepositoId and fd.activo <> 0 and fc.activo <> 0 "); @@ -301,7 +303,7 @@ public class Totalbus { deposito.setDataLancamento(rs.getDate(4)); deposito.setDataMovimento(rs.getDate(4)); deposito.setLocalArrecadação(pvId); - deposito.setValorLançamento(rs.getBigDecimal(2).toString()); + deposito.setValorLançamento(df.format(rs.getBigDecimal(2))); deposito.setIdentificadorReceitaDespesa("D"); deposito.setCodigoReceitaDespesa(codRecDesp); deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep + valor + ref); From d0182870a212cdd371cd0b4fad1356e7cccf60f3 Mon Sep 17 00:00:00 2001 From: leonardo Date: Thu, 11 Feb 2016 18:42:54 +0000 Subject: [PATCH 020/121] fixes bug #7102 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@52771 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/dao/Totalbus.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 796024add..863972a2c 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -1,5 +1,6 @@ package com.rjconsultores.integracaoreceitadespesa.dao; +import java.math.BigDecimal; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; @@ -231,7 +232,7 @@ public class Totalbus { sb.append("select fdep.fechamentodeposito_id, fdep.valor, fdep.numdeposito, fdep.fecmodif "); sb.append("from fechamento_deposito fdep "); //sb.append("inner join insti_financeira i on i.instifinanceira_id = fdep.instifinanceira_id "); - sb.append("where fecha_deposito = :fecha and fdep.activo = 1 "); + sb.append("where trunc(fecmodif) = :fecha and fdep.activo = 1 "); StringBuilder strFechamentos = new StringBuilder(); @@ -269,6 +270,7 @@ public class Totalbus { SimpleDateFormat sdf = new SimpleDateFormat("MM/yy"); PreparedStatement pstmtFechamentos = getConnection().prepareStatement(strFechamentos.toString()); + BigDecimal soma = BigDecimal.ZERO; while (rs.next()){ pstmtFechamentos.setInt(1, rs.getInt(1)); @@ -308,8 +310,10 @@ public class Totalbus { deposito.setCodigoReceitaDespesa(codRecDesp); deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep + valor + ref); depositos.add(deposito); + soma = soma.add(rs.getBigDecimal(2)); } } + log.debug("Total depósitos: " + soma); } catch (Exception e){ log.error("", e); } finally { From 4e6a225ccc11e2800921978cba7623cad6a4de22 Mon Sep 17 00:00:00 2001 From: thiago Date: Wed, 17 Feb 2016 12:47:44 +0000 Subject: [PATCH 021/121] =?UTF-8?q?fixed=20bug=20#7102=20-=20Corre=C3=A7?= =?UTF-8?q?=C3=A3o=20de=20valores=20na=20gera=C3=A7=C3=A3o=20de=20arquivo?= =?UTF-8?q?=20BGM?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@52987 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/dao/Totalbus.java | 8 +++++--- .../entidades/DespesaReceita.java | 8 ++++---- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 863972a2c..59af10078 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -94,6 +94,7 @@ public class Totalbus { public List getReceitas(final Integer puntoVentaId, final Integer empresaId, Date fechaParam) { List despesas = new ArrayList(); + DecimalFormat df = new DecimalFormat("#0.00"); StringBuffer sb = new StringBuffer(); sb.append(" select "); sb.append(" cd.feccorte AS fechorvta, "); @@ -149,7 +150,7 @@ public class Totalbus { receita.setDataLancamento(rs.getDate(1)); receita.setDataMovimento(rs.getDate(1)); receita.setLocalArrecadação(rs.getInt(6)); - receita.setValorLançamento(rs.getBigDecimal(4).toString()); + receita.setValorLancamento(df.format(rs.getBigDecimal(4))); receita.setIdentificadorReceitaDespesa("R"); despesas.add(receita); } @@ -164,6 +165,7 @@ public class Totalbus { public List getDespesas(Integer puntoventaId, Integer empresaId, Date fechaParam){ List despesas = new ArrayList(); + DecimalFormat df = new DecimalFormat("#0.00"); StringBuilder sb = new StringBuilder(); sb.append(" select "); sb.append(" cd.feccorte as feccorte, "); @@ -213,7 +215,7 @@ public class Totalbus { despesa.setDataLancamento(rs.getDate(1)); despesa.setDataMovimento(rs.getDate(1)); despesa.setLocalArrecadação(rs.getInt(3)); - despesa.setValorLançamento(Double.toString(rs.getBigDecimal(4).doubleValue() * -1)); + despesa.setValorLancamento(df.format(BigDecimal.valueOf(rs.getBigDecimal(4).doubleValue() * -1))); despesa.setIdentificadorReceitaDespesa("D"); despesas.add(despesa); } @@ -305,7 +307,7 @@ public class Totalbus { deposito.setDataLancamento(rs.getDate(4)); deposito.setDataMovimento(rs.getDate(4)); deposito.setLocalArrecadação(pvId); - deposito.setValorLançamento(df.format(rs.getBigDecimal(2))); + deposito.setValorLancamento(df.format(rs.getBigDecimal(2))); deposito.setIdentificadorReceitaDespesa("D"); deposito.setCodigoReceitaDespesa(codRecDesp); deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep + valor + ref); diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 1e3afdcad..fd3c7f241 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -15,7 +15,7 @@ public class DespesaReceita { private final String turno = "01";// 072 002 Numérico private String codigoReceitaDespesa;// 074 010 Numérico CONSTANTE CODIGO_RECEITA_DESPESA_GLOBUS private String identificadorReceitaDespesa;// 084 001 Alfanumérico - private String valorLançamento;// 085 013 Numérico + private String valorLancamento;// 085 013 Numérico private final String numeroContratoTurismo = "0000000000";// 098 010 Numérico private final String numeroReciboTurismo = " ";// 108 010 Alfanumérico private final String formaPagamentoTurismo = "00";// 118 002 Numérico @@ -37,7 +37,7 @@ public class DespesaReceita { localArrecadação.toUpperCase() + numeroDaGuia + dataMovimento + usuarioGlobus + turno + codigoReceitaDespesa + - identificadorReceitaDespesa.toUpperCase() + valorLançamento + + identificadorReceitaDespesa.toUpperCase() + valorLancamento + numeroContratoTurismo + numeroReciboTurismo + formaPagamentoTurismo + tipoPagamentoTurismo + descricaoDetalhada + documentoVenda + tipoDocumentoVenda + @@ -73,8 +73,8 @@ public class DespesaReceita { this.identificadorReceitaDespesa = identificadorReceitaDespesa.toUpperCase(); } - public void setValorLançamento(String valorLançamento) { - this.valorLançamento = lpad(valorLançamento.toString().replace(",", "").replace(".", ""), "0", 13); + public void setValorLancamento(String valorLançamento) { + this.valorLancamento = lpad(valorLançamento.toString().replace(",", "").replace(".", ""), "0", 13); } public void setDescricaoDetalhada(String desc){ From 89e1c4fa7e7070529f027e277eac07e1b20d8b75 Mon Sep 17 00:00:00 2001 From: thiago Date: Fri, 19 Feb 2016 16:11:00 +0000 Subject: [PATCH 022/121] =?UTF-8?q?fixed=20bug=20#7107=20-=20Cria=C3=A7?= =?UTF-8?q?=C3=A3o=20de=20relat=C3=B3rio=20de=20dep=C3=B3sitos=20detalhado?= =?UTF-8?q?s.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@53077 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/dao/Totalbus.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 59af10078..12667b097 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -240,12 +240,13 @@ public class Totalbus { StringBuilder strFechamentos = new StringBuilder(); strFechamentos.append("Select fc.fecfechamento, fc.empresa_id, pv.numpuntoventa, fd.valor_pago, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion "); strFechamentos.append("from fechamento_cct_deposito fd "); + strFechamentos.append("inner join FECHAMENTO_DEPOSITO fdep on FDEP.FECHAMENTODEPOSITO_ID = FD.FECHAMENTODEPOSITO_ID "); strFechamentos.append("inner join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); strFechamentos.append("inner join PUNTO_VENTA pv on FC.PUNTOVENTA_ID = PV.PUNTOVENTA_ID "); strFechamentos.append("JOIN EMPRESA e ON e.EMPRESA_ID = FC.EMPRESA_ID "); - strFechamentos.append("LEFT JOIN PTOVTA_EMPRESA pve ON PVE.EMPRESA_ID = e.empresa_id AND PVE.PUNTOVENTA_ID = PV.PUNTOVENTA_ID AND PVE.activo = 1 "); - strFechamentos.append("left join empresa_contabancaria ec on EC.EMPRESA_ID = PVE.EMPRESA_ID AND EC.EMPRESACONTABANCARIA_ID = PVE.EMPRESACONTABANCARIA_ID AND EC.ACTIVO = 1 "); - strFechamentos.append("left join INSTI_FINANCEIRA if on EC.INSTIFINANCEIRA_ID = if.INSTIFINANCEIRA_ID and if.ACTIVO = 1 "); + strFechamentos.append("inner join INSTI_FINANCEIRA if on fdep.INSTIFINANCEIRA_ID = if.INSTIFINANCEIRA_ID "); + strFechamentos.append("inner join empresa_contabancaria ec on EC.EMPRESA_ID = fc.EMPRESA_ID AND EC.INSTIFINANCEIRA_ID = if.INSTIFINANCEIRA_ID AND EC.ACTIVO = 1 "); + strFechamentos.append("inner JOIN PTOVTA_EMPRESA pve ON PVE.EMPRESA_ID = e.empresa_id AND PVE.PUNTOVENTA_ID = PV.PUNTOVENTA_ID and EC.EMPRESACONTABANCARIA_ID = pve.EMPRESACONTABANCARIA_ID AND PVE.activo = 1 "); strFechamentos.append("where fd.fechamentodeposito_id = :fechamentodepositoId and fd.activo <> 0 and fc.activo <> 0 "); if (puntoventaId != null && !puntoventaId.equals(-1)){ From 957e7b074ae0f4088eace5408174b831ca466253 Mon Sep 17 00:00:00 2001 From: thiago Date: Mon, 22 Feb 2016 13:19:05 +0000 Subject: [PATCH 023/121] =?UTF-8?q?fixed=20bug=20#7107=20-=20Corre=C3=A7?= =?UTF-8?q?=C3=A3o=20de=20erros=20ao=20executar=20relat=C3=B3rio,=20n?= =?UTF-8?q?=C3=A3o=20estava=20trazendo=20alguns=20registros.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@53112 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../rjconsultores/integracaoreceitadespesa/dao/Totalbus.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 12667b097..6920167d2 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -245,8 +245,8 @@ public class Totalbus { strFechamentos.append("inner join PUNTO_VENTA pv on FC.PUNTOVENTA_ID = PV.PUNTOVENTA_ID "); strFechamentos.append("JOIN EMPRESA e ON e.EMPRESA_ID = FC.EMPRESA_ID "); strFechamentos.append("inner join INSTI_FINANCEIRA if on fdep.INSTIFINANCEIRA_ID = if.INSTIFINANCEIRA_ID "); - strFechamentos.append("inner join empresa_contabancaria ec on EC.EMPRESA_ID = fc.EMPRESA_ID AND EC.INSTIFINANCEIRA_ID = if.INSTIFINANCEIRA_ID AND EC.ACTIVO = 1 "); - strFechamentos.append("inner JOIN PTOVTA_EMPRESA pve ON PVE.EMPRESA_ID = e.empresa_id AND PVE.PUNTOVENTA_ID = PV.PUNTOVENTA_ID and EC.EMPRESACONTABANCARIA_ID = pve.EMPRESACONTABANCARIA_ID AND PVE.activo = 1 "); + strFechamentos.append("left join empresa_contabancaria ec on EC.EMPRESA_ID = fc.EMPRESA_ID AND EC.INSTIFINANCEIRA_ID = if.INSTIFINANCEIRA_ID AND EC.ACTIVO = 1 "); + strFechamentos.append("left JOIN PTOVTA_EMPRESA pve ON PVE.EMPRESA_ID = e.empresa_id AND PVE.PUNTOVENTA_ID = PV.PUNTOVENTA_ID and EC.EMPRESACONTABANCARIA_ID = pve.EMPRESACONTABANCARIA_ID AND PVE.activo = 1 "); strFechamentos.append("where fd.fechamentodeposito_id = :fechamentodepositoId and fd.activo <> 0 and fc.activo <> 0 "); if (puntoventaId != null && !puntoventaId.equals(-1)){ From 11ec14af31b822b38f75ea5dbcf44ec49397b288 Mon Sep 17 00:00:00 2001 From: thiago Date: Mon, 22 Feb 2016 14:01:16 +0000 Subject: [PATCH 024/121] =?UTF-8?q?Dele=C3=A7=C3=A3o=20de=20coment=C3=A1ri?= =?UTF-8?q?o=20a=20mais.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@53117 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../rjconsultores/integracaoreceitadespesa/dao/Totalbus.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 6920167d2..867627008 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -231,10 +231,9 @@ public class Totalbus { public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam){ List depositos = new ArrayList(); StringBuilder sb = new StringBuilder(); - sb.append("select fdep.fechamentodeposito_id, fdep.valor, fdep.numdeposito, fdep.fecmodif "); + sb.append("select fdep.fechamentodeposito_id, fdep.valor, fdep.numdeposito, fdep.FECCREACION "); sb.append("from fechamento_deposito fdep "); - //sb.append("inner join insti_financeira i on i.instifinanceira_id = fdep.instifinanceira_id "); - sb.append("where trunc(fecmodif) = :fecha and fdep.activo = 1 "); + sb.append("where trunc(FECCREACION) = :fecha and fdep.activo = 1 "); StringBuilder strFechamentos = new StringBuilder(); From 1f17afadd46460ad40a7d59d315a734ace620a94 Mon Sep 17 00:00:00 2001 From: leonardo Date: Mon, 22 Feb 2016 18:57:10 +0000 Subject: [PATCH 025/121] =?UTF-8?q?Corre=C3=A7=C3=A3o=20no=20sql=20de=20de?= =?UTF-8?q?p=C3=B3sitos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@53134 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../dao/Totalbus.java | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 867627008..5a5780f04 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -28,6 +28,8 @@ public class Totalbus { private List pontosVenda = new ArrayList(); private List empresas = new ArrayList(); + private DecimalFormat df = new DecimalFormat("#0.00"); + public Totalbus(Connection con){ this.conn = con; loadEmpresas(); @@ -94,7 +96,6 @@ public class Totalbus { public List getReceitas(final Integer puntoVentaId, final Integer empresaId, Date fechaParam) { List despesas = new ArrayList(); - DecimalFormat df = new DecimalFormat("#0.00"); StringBuffer sb = new StringBuffer(); sb.append(" select "); sb.append(" cd.feccorte AS fechorvta, "); @@ -150,7 +151,7 @@ public class Totalbus { receita.setDataLancamento(rs.getDate(1)); receita.setDataMovimento(rs.getDate(1)); receita.setLocalArrecadação(rs.getInt(6)); - receita.setValorLancamento(df.format(rs.getBigDecimal(4))); + receita.setValorLancamento(df.format(rs.getBigDecimal(4).toString())); receita.setIdentificadorReceitaDespesa("R"); despesas.add(receita); } @@ -165,7 +166,6 @@ public class Totalbus { public List getDespesas(Integer puntoventaId, Integer empresaId, Date fechaParam){ List despesas = new ArrayList(); - DecimalFormat df = new DecimalFormat("#0.00"); StringBuilder sb = new StringBuilder(); sb.append(" select "); sb.append(" cd.feccorte as feccorte, "); @@ -215,7 +215,7 @@ public class Totalbus { despesa.setDataLancamento(rs.getDate(1)); despesa.setDataMovimento(rs.getDate(1)); despesa.setLocalArrecadação(rs.getInt(3)); - despesa.setValorLancamento(df.format(BigDecimal.valueOf(rs.getBigDecimal(4).doubleValue() * -1))); + despesa.setValorLancamento(df.format(Double.toString(rs.getBigDecimal(4).doubleValue() * -1))); despesa.setIdentificadorReceitaDespesa("D"); despesas.add(despesa); } @@ -231,21 +231,21 @@ public class Totalbus { public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam){ List depositos = new ArrayList(); StringBuilder sb = new StringBuilder(); - sb.append("select fdep.fechamentodeposito_id, fdep.valor, fdep.numdeposito, fdep.FECCREACION "); + sb.append("select fdep.fechamentodeposito_id, fdep.valor, fdep.numdeposito, fdep.FECMODIF "); sb.append("from fechamento_deposito fdep "); - sb.append("where trunc(FECCREACION) = :fecha and fdep.activo = 1 "); + sb.append("where trunc(FECMODIF) = :fecha and fdep.activo = 1 "); StringBuilder strFechamentos = new StringBuilder(); strFechamentos.append("Select fc.fecfechamento, fc.empresa_id, pv.numpuntoventa, fd.valor_pago, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion "); - strFechamentos.append("from fechamento_cct_deposito fd "); - strFechamentos.append("inner join FECHAMENTO_DEPOSITO fdep on FDEP.FECHAMENTODEPOSITO_ID = FD.FECHAMENTODEPOSITO_ID "); - strFechamentos.append("inner join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); - strFechamentos.append("inner join PUNTO_VENTA pv on FC.PUNTOVENTA_ID = PV.PUNTOVENTA_ID "); - strFechamentos.append("JOIN EMPRESA e ON e.EMPRESA_ID = FC.EMPRESA_ID "); - strFechamentos.append("inner join INSTI_FINANCEIRA if on fdep.INSTIFINANCEIRA_ID = if.INSTIFINANCEIRA_ID "); - strFechamentos.append("left join empresa_contabancaria ec on EC.EMPRESA_ID = fc.EMPRESA_ID AND EC.INSTIFINANCEIRA_ID = if.INSTIFINANCEIRA_ID AND EC.ACTIVO = 1 "); - strFechamentos.append("left JOIN PTOVTA_EMPRESA pve ON PVE.EMPRESA_ID = e.empresa_id AND PVE.PUNTOVENTA_ID = PV.PUNTOVENTA_ID and EC.EMPRESACONTABANCARIA_ID = pve.EMPRESACONTABANCARIA_ID AND PVE.activo = 1 "); + strFechamentos.append("from fechamento_deposito fdep "); + strFechamentos.append("join fechamento_cct_deposito fd on fd.fechamentodeposito_id = fdep.fechamentodeposito_id "); + strFechamentos.append("join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); + strFechamentos.append("inner join PUNTO_VENTA pv on PV.PUNTOVENTA_ID = FC.PUNTOVENTA_ID "); + strFechamentos.append("left join PTOVTA_EMPRESA pe on pe.puntoventa_id = pv.puntoventa_id and pe.empresa_id = fc.empresa_id "); + strFechamentos.append("left join empresa_contabancaria ec on ec.EMPRESACONTABANCARIA_ID = pe.EMPRESACONTABANCARIA_ID "); + strFechamentos.append("left join INSTI_FINANCEIRA if on if.INSTIFINANCEIRA_ID = EC.INSTIFINANCEIRA_ID "); + strFechamentos.append("join EMPRESA e on e.empresa_id = fc.empresa_id "); strFechamentos.append("where fd.fechamentodeposito_id = :fechamentodepositoId and fd.activo <> 0 and fc.activo <> 0 "); if (puntoventaId != null && !puntoventaId.equals(-1)){ @@ -268,7 +268,7 @@ public class Totalbus { rs = pstmt.executeQuery(); Integer codigoReceitaDespesaGlobus = getCodigoReceitaDespesaGlobus(); - DecimalFormat df = new DecimalFormat("#0.00"); + SimpleDateFormat sdf = new SimpleDateFormat("MM/yy"); PreparedStatement pstmtFechamentos = getConnection().prepareStatement(strFechamentos.toString()); From f323f8f2a986207e9275cbadbdb365efb2d54c40 Mon Sep 17 00:00:00 2001 From: leonardo Date: Mon, 22 Feb 2016 20:22:54 +0000 Subject: [PATCH 026/121] =?UTF-8?q?Formata=C3=A7=C3=A3o=20do=20valor?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@53146 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../rjconsultores/integracaoreceitadespesa/dao/Totalbus.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 5a5780f04..421cbb74a 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -151,7 +151,7 @@ public class Totalbus { receita.setDataLancamento(rs.getDate(1)); receita.setDataMovimento(rs.getDate(1)); receita.setLocalArrecadação(rs.getInt(6)); - receita.setValorLancamento(df.format(rs.getBigDecimal(4).toString())); + receita.setValorLancamento(df.format(rs.getBigDecimal(4))); receita.setIdentificadorReceitaDespesa("R"); despesas.add(receita); } @@ -215,7 +215,7 @@ public class Totalbus { despesa.setDataLancamento(rs.getDate(1)); despesa.setDataMovimento(rs.getDate(1)); despesa.setLocalArrecadação(rs.getInt(3)); - despesa.setValorLancamento(df.format(Double.toString(rs.getBigDecimal(4).doubleValue() * -1))); + despesa.setValorLancamento(df.format(rs.getBigDecimal(4).doubleValue() * -1)); despesa.setIdentificadorReceitaDespesa("D"); despesas.add(despesa); } From c639609b082bc7515d183cc422b3be9bbcd4e211 Mon Sep 17 00:00:00 2001 From: leonardo Date: Tue, 23 Feb 2016 19:05:34 +0000 Subject: [PATCH 027/121] fixes bug #7154 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@53183 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/entidades/DespesaReceita.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index fd3c7f241..e4ec972ba 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -83,7 +83,7 @@ public class DespesaReceita { private String truncStr(String str, int size){ if (str.length() > size){ - return str.substring(0, size +1); + return str.substring(0, size -1); } return str; } From c847611ca6eff11cedfa40ffd0e1527f004e87e9 Mon Sep 17 00:00:00 2001 From: thiago Date: Wed, 24 Feb 2016 14:19:14 +0000 Subject: [PATCH 028/121] =?UTF-8?q?fixed=20bug=20#7107=20-Altera=C3=A7?= =?UTF-8?q?=C3=A3o=20de=20arquivo=20BGM=20para=20buscar=20dep=C3=B3sitos?= =?UTF-8?q?=20por=20data=20de=20lan=C3=A7amento(feccreacion).?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@53228 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../dao/Totalbus.java | 21 +++++++++---------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 421cbb74a..265b0d16b 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -231,22 +231,21 @@ public class Totalbus { public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam){ List depositos = new ArrayList(); StringBuilder sb = new StringBuilder(); - sb.append("select fdep.fechamentodeposito_id, fdep.valor, fdep.numdeposito, fdep.FECMODIF "); + sb.append("select fdep.fechamentodeposito_id, fdep.valor, fdep.numdeposito, fdep.FECCREACION "); sb.append("from fechamento_deposito fdep "); - sb.append("where trunc(FECMODIF) = :fecha and fdep.activo = 1 "); + sb.append("where trunc(FECCREACION) = :fecha and fdep.activo = 1 "); StringBuilder strFechamentos = new StringBuilder(); strFechamentos.append("Select fc.fecfechamento, fc.empresa_id, pv.numpuntoventa, fd.valor_pago, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion "); - strFechamentos.append("from fechamento_deposito fdep "); - strFechamentos.append("join fechamento_cct_deposito fd on fd.fechamentodeposito_id = fdep.fechamentodeposito_id "); - strFechamentos.append("join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); - strFechamentos.append("inner join PUNTO_VENTA pv on PV.PUNTOVENTA_ID = FC.PUNTOVENTA_ID "); - strFechamentos.append("left join PTOVTA_EMPRESA pe on pe.puntoventa_id = pv.puntoventa_id and pe.empresa_id = fc.empresa_id "); - strFechamentos.append("left join empresa_contabancaria ec on ec.EMPRESACONTABANCARIA_ID = pe.EMPRESACONTABANCARIA_ID "); - strFechamentos.append("left join INSTI_FINANCEIRA if on if.INSTIFINANCEIRA_ID = EC.INSTIFINANCEIRA_ID "); - strFechamentos.append("join EMPRESA e on e.empresa_id = fc.empresa_id "); - strFechamentos.append("where fd.fechamentodeposito_id = :fechamentodepositoId and fd.activo <> 0 and fc.activo <> 0 "); + strFechamentos.append(" from fechamento_deposito fdep "); + strFechamentos.append(" join fechamento_cct_deposito fd on fd.fechamentodeposito_id = fdep.fechamentodeposito_id "); + strFechamentos.append(" join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); + strFechamentos.append(" inner join PUNTO_VENTA pv on PV.PUNTOVENTA_ID = FC.PUNTOVENTA_ID "); + strFechamentos.append(" join empresa_contabancaria ec on ec.EMPRESACONTABANCARIA_ID = fdep.EMPRESACONTABANCARIA_ID "); + strFechamentos.append(" join INSTI_FINANCEIRA if on if.INSTIFINANCEIRA_ID = EC.INSTIFINANCEIRA_ID "); + strFechamentos.append(" join EMPRESA e on e.empresa_id = fc.empresa_id "); + strFechamentos.append(" where fd.fechamentodeposito_id = :fechamentodepositoId and fd.activo <> 0 and fc.activo <> 0 "); if (puntoventaId != null && !puntoventaId.equals(-1)){ strFechamentos.append(" and fc.puntoventa_id = " + puntoventaId); From 886eacb5e6d98176ca5301d861b84d2d171eb866 Mon Sep 17 00:00:00 2001 From: thiago Date: Mon, 29 Feb 2016 21:13:29 +0000 Subject: [PATCH 029/121] =?UTF-8?q?Altera=C3=A7=C3=A3o=20para=20verificar?= =?UTF-8?q?=20log=20de=20erro=20.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@53386 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../dao/Totalbus.java | 36 +++++++++---------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 265b0d16b..eb582e84d 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -62,10 +62,10 @@ public class Totalbus { pontosVenda.add(puntoVenta); } } catch (Exception e){ - log.error("", e); + log.error(e.getMessage(), e); } finally { - try { rs.close(); } catch (Exception ignore) { log.error("", ignore); } - try { pstmt.close(); } catch (Exception ignore) { log.error("", ignore); } + try { rs.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } + try { pstmt.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } } } @@ -83,10 +83,10 @@ public class Totalbus { empresas.add(empresa); } } catch (Exception e){ - log.error("", e); + log.error(e.getMessage(), e); } finally { - try { rs.close(); } catch (Exception ignore) { log.error("", ignore); } - try { pstmt.close(); } catch (Exception ignore) { log.error("", ignore); } + try { rs.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } + try { pstmt.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } } } @@ -156,10 +156,10 @@ public class Totalbus { despesas.add(receita); } } catch (Exception e){ - log.error(e.toString(),e); + log.error(e.getMessage(),e); } finally { - try { rs.close(); } catch (Exception ignore) { log.error("", ignore); } - try { stmt.close(); } catch (Exception ignore) { log.error("", ignore); } + try { rs.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } + try { stmt.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } } return despesas; } @@ -220,10 +220,10 @@ public class Totalbus { despesas.add(despesa); } } catch (Exception e){ - log.error("", e); + log.error(e.getMessage(), e); } finally { - try { rs.close(); } catch (Exception ignore) { log.error("", ignore); } - try { pstmt.close(); } catch (Exception ignore) { log.error("", ignore); } + try { rs.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } + try { pstmt.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } } return despesas; } @@ -316,10 +316,10 @@ public class Totalbus { } log.debug("Total depósitos: " + soma); } catch (Exception e){ - log.error("", e); + log.error(e.getMessage(), e); } finally { - try { rs.close(); } catch (Exception ignore) { log.error("", ignore); } - try { pstmt.close(); } catch (Exception ignore) { log.error("", ignore); } + try { rs.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } + try { pstmt.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } } return depositos; } @@ -337,10 +337,10 @@ public class Totalbus { result = rs.getInt(1); } } catch (Exception e){ - log.error("", e); + log.error(e.getMessage(), e); } finally { - try { rs.close(); } catch (Exception ignore) { log.error("", ignore); } - try { pstmt.close(); } catch (Exception ignore) { log.error("", ignore); } + try { rs.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } + try { pstmt.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } } return result; From 2dcf24751c744a4b15a1da762254dd93132d287f Mon Sep 17 00:00:00 2001 From: leonardo Date: Tue, 1 Mar 2016 20:22:52 +0000 Subject: [PATCH 030/121] bug #7102 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@53433 d1611594-4594-4d17-8e1d-87c2c4800839 --- src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java | 2 +- .../rjconsultores/integracaoreceitadespesa/dao/Totalbus.java | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java b/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java index fa4ddd7f6..0fb8a4c57 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java @@ -10,7 +10,7 @@ public class Arquivo { public static void GravaArquivo(String filename, List rows){ try{ - + log.debug("gravando arquivo" + filename + "..."); FileWriter writer = new FileWriter(filename); for(String str: rows) { writer.write(str); diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index eb582e84d..0c15baa4b 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -37,8 +37,11 @@ public class Totalbus { } public List getDespesasReceitas(Integer puntoventaId, Integer empresaId,Date fechaParam){ + log.debug("gerando depósitos..."); List despesasReceitas = getDepositos(puntoventaId, empresaId, fechaParam); + log.debug("gerando despesas..."); despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam)); + log.debug("gerando receitas..."); despesasReceitas.addAll(getReceitas(puntoventaId, empresaId, fechaParam)); List rows = new ArrayList(); From 202bea1cd33dd37e87846c5dee40b68a181028aa Mon Sep 17 00:00:00 2001 From: leonardo Date: Fri, 18 Mar 2016 20:36:00 +0000 Subject: [PATCH 031/121] fixes bug #7247 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@54027 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../dao/Totalbus.java | 73 +++++++++++++++++++ 1 file changed, 73 insertions(+) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 0c15baa4b..0ce84f2e8 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -41,8 +41,11 @@ public class Totalbus { List despesasReceitas = getDepositos(puntoventaId, empresaId, fechaParam); log.debug("gerando despesas..."); despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam)); + log.debug("gerando despesas cartão..."); + despesasReceitas.addAll(getDespesaCartaoDebCred(puntoventaId, empresaId, fechaParam)); log.debug("gerando receitas..."); despesasReceitas.addAll(getReceitas(puntoventaId, empresaId, fechaParam)); + List rows = new ArrayList(); for (DespesaReceita item : despesasReceitas){ @@ -97,6 +100,76 @@ public class Totalbus { return this.conn; } + public List getDespesaCartaoDebCred(final Integer puntoVentaId, final Integer empresaId, Date fechaParam) { + List despesas = new ArrayList(); + StringBuffer sb = new StringBuffer(); + 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(" case when cdp.formapago_id = 2 then 802 else 803 end as contacontabil, "); + sb.append(" pv.numpuntoventa AS numpuntoventa "); + 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 && !puntoVentaId.equals(-1)){ + 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 (2,3) "); + sb.append(" group by "); + sb.append(" cd.feccorte, "); + sb.append(" e.empresa_id, "); + sb.append(" pv.puntoventa_id, "); + sb.append(" case when cdp.formapago_id = 2 then 802 else 803 end, "); + sb.append(" pv.numpuntoventa "); + + + PreparedStatement stmt = null; + ResultSet rs = null; + + Date fecha = fechaParam; + if(fechaParam== null){ + 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(6)); + despesa.setValorLancamento(df.format(rs.getBigDecimal(4))); + despesa.setIdentificadorReceitaDespesa("D"); + 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 getReceitas(final Integer puntoVentaId, final Integer empresaId, Date fechaParam) { List despesas = new ArrayList(); StringBuffer sb = new StringBuffer(); From 132ec5bef7e7a4a5f6742b7b44b2ad42b6e1a8d3 Mon Sep 17 00:00:00 2001 From: leonardo Date: Wed, 23 Mar 2016 18:56:21 +0000 Subject: [PATCH 032/121] fixes bug #7258 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@54182 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../dao/Totalbus.java | 95 ++++++++++--------- 1 file changed, 48 insertions(+), 47 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 0ce84f2e8..5a176d69b 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -306,14 +306,14 @@ public class Totalbus { public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam){ List depositos = new ArrayList(); - StringBuilder sb = new StringBuilder(); - sb.append("select fdep.fechamentodeposito_id, fdep.valor, fdep.numdeposito, fdep.FECCREACION "); - sb.append("from fechamento_deposito fdep "); - sb.append("where trunc(FECCREACION) = :fecha and fdep.activo = 1 "); +// StringBuilder sb = new StringBuilder(); +// sb.append("select fdep.fechamentodeposito_id, fdep.valor, fdep.numdeposito, fdep.FECCREACION, fdep.fecha_deposito "); +// sb.append("from fechamento_deposito fdep "); +// sb.append("where trunc(FECCREACION) = :fecha and fdep.activo = 1 "); StringBuilder strFechamentos = new StringBuilder(); - strFechamentos.append("Select fc.fecfechamento, fc.empresa_id, pv.numpuntoventa, fd.valor_pago, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion "); + strFechamentos.append("Select sum(fdep.valor), fdep.numdeposito, fdep.fecha_deposito, fc.empresa_id, pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion "); strFechamentos.append(" from fechamento_deposito fdep "); strFechamentos.append(" join fechamento_cct_deposito fd on fd.fechamentodeposito_id = fdep.fechamentodeposito_id "); strFechamentos.append(" join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); @@ -321,7 +321,7 @@ public class Totalbus { strFechamentos.append(" join empresa_contabancaria ec on ec.EMPRESACONTABANCARIA_ID = fdep.EMPRESACONTABANCARIA_ID "); strFechamentos.append(" join INSTI_FINANCEIRA if on if.INSTIFINANCEIRA_ID = EC.INSTIFINANCEIRA_ID "); strFechamentos.append(" join EMPRESA e on e.empresa_id = fc.empresa_id "); - strFechamentos.append(" where fd.fechamentodeposito_id = :fechamentodepositoId and fd.activo <> 0 and fc.activo <> 0 "); + strFechamentos.append(" where trunc(fdep.feccreacion) = :fecha and fd.activo = 1 and fc.activo = 1 "); if (puntoventaId != null && !puntoventaId.equals(-1)){ strFechamentos.append(" and fc.puntoventa_id = " + puntoventaId); @@ -329,73 +329,74 @@ public class Totalbus { if (empresaId != null){ strFechamentos.append(" and fc.empresa_id = " + empresaId); } + + strFechamentos.append(" group by fdep.numdeposito, fdep.fecha_deposito, fc.empresa_id, pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion "); + + Date fecha = fechaParam; if(fechaParam == null){ fecha = getData(); } - PreparedStatement pstmt = null; - ResultSet rs = null; + //PreparedStatement pstmt = null; + //ResultSet rs = null; - try{ - pstmt = getConnection().prepareStatement(sb.toString()); - pstmt.setDate(1, new java.sql.Date(fecha.getTime())); - - rs = pstmt.executeQuery(); + +// pstmt = getConnection().prepareStatement(sb.toString()); +// pstmt.setDate(1, new java.sql.Date(fecha.getTime())); +// +// rs = pstmt.executeQuery(); Integer codigoReceitaDespesaGlobus = getCodigoReceitaDespesaGlobus(); SimpleDateFormat sdf = new SimpleDateFormat("MM/yy"); - PreparedStatement pstmtFechamentos = getConnection().prepareStatement(strFechamentos.toString()); + PreparedStatement pstmtFechamentos = null; + ResultSet rsFechamentos = null; BigDecimal soma = BigDecimal.ZERO; - - while (rs.next()){ - pstmtFechamentos.setInt(1, rs.getInt(1)); + try{ +// while (rs.next()){ + pstmtFechamentos = getConnection().prepareStatement(strFechamentos.toString()); + pstmtFechamentos.setDate(1, new java.sql.Date(fecha.getTime())); - ResultSet rsFechamentos = pstmtFechamentos.executeQuery(); - - Integer empId = null; - Integer pvId = null; - String banco = "" ; - String agencia = ""; - String contaCorrente = ""; - String numDep = " Dep: " + rs.getString(3); - String valor = " R$ " + df.format(rs.getBigDecimal(2)); - String ref = " Ref: "; - Integer codRecDesp = null; - Boolean podeAdicionar = false; + rsFechamentos = pstmtFechamentos.executeQuery(); while (rsFechamentos.next()){ - podeAdicionar = true; - if (empId == null ){ empId = rsFechamentos.getInt(2); } - if (banco.isEmpty()){banco = "Bco: " + DespesaReceita.lpad(rsFechamentos.getString(7), "0", 3);} - if (pvId == null){ pvId = rsFechamentos.getInt(3); } - if (agencia.isEmpty()){ agencia = " Ag: " + rsFechamentos.getString(5); } - if (contaCorrente.isEmpty()){ contaCorrente = " C/C: " + rsFechamentos.getString(6); } - ref += ref.length() <= 6 ? sdf.format(rsFechamentos.getDate(1)) : ", " + sdf.format(rsFechamentos.getDate(1)); - if (codRecDesp == null){ codRecDesp = rsFechamentos.getInt(8); } - } + Integer empId = null; + Integer pvId = null; + String banco = "" ; + String agencia = ""; + String contaCorrente = ""; + String numDep = " Dep: " + rsFechamentos.getString(2); + String valor = " R$ " + df.format(rsFechamentos.getBigDecimal(1)); + String ref = " Ref: "; + Integer codRecDesp = null; + + if (empId == null ){ empId = rsFechamentos.getInt(4); } + if (banco.isEmpty()){banco = "Bco: " + DespesaReceita.lpad(rsFechamentos.getString(8), "0", 3);} + if (pvId == null){ pvId = rsFechamentos.getInt(5); } + if (agencia.isEmpty()){ agencia = " Ag: " + rsFechamentos.getString(6); } + if (contaCorrente.isEmpty()){ contaCorrente = " C/C: " + rsFechamentos.getString(7); } + //ref += ref.length() <= 6 ? sdf.format(rsFechamentos.getDate(3)) : ", " + sdf.format(rsFechamentos.getDate(3)); + if (codRecDesp == null){ codRecDesp = rsFechamentos.getInt(9); } - if (podeAdicionar){ // se não tiver dados da subquery não é um depósito válido. DespesaReceita deposito = new DespesaReceita(); deposito.setCodigoEmpresa(empId); - deposito.setDataLancamento(rs.getDate(4)); - deposito.setDataMovimento(rs.getDate(4)); + deposito.setDataLancamento(rsFechamentos.getDate(3)); + deposito.setDataMovimento(rsFechamentos.getDate(3)); deposito.setLocalArrecadação(pvId); - deposito.setValorLancamento(df.format(rs.getBigDecimal(2))); + deposito.setValorLancamento(df.format(rsFechamentos.getBigDecimal(1))); deposito.setIdentificadorReceitaDespesa("D"); deposito.setCodigoReceitaDespesa(codRecDesp); - deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep + valor + ref); + deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep + valor); depositos.add(deposito); - soma = soma.add(rs.getBigDecimal(2)); + soma = soma.add(rsFechamentos.getBigDecimal(1)); } - } log.debug("Total depósitos: " + soma); } catch (Exception e){ log.error(e.getMessage(), e); } finally { - try { rs.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } - try { pstmt.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } + try { pstmtFechamentos.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } + try { rsFechamentos.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } } return depositos; } From cab417b99371e43d7aab7409ee66bb655aa2fa53 Mon Sep 17 00:00:00 2001 From: leonardo Date: Thu, 24 Mar 2016 21:27:22 +0000 Subject: [PATCH 033/121] fixes bug #7287 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@54258 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/dao/Totalbus.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 5a176d69b..f31fae93f 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -313,7 +313,7 @@ public class Totalbus { StringBuilder strFechamentos = new StringBuilder(); - strFechamentos.append("Select sum(fdep.valor), fdep.numdeposito, fdep.fecha_deposito, fc.empresa_id, pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion "); + strFechamentos.append("Select sum(fdep.valor), fdep.numdeposito, fdep.fecha_deposito, fc.empresa_id, pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion, fdep.feccreacion "); strFechamentos.append(" from fechamento_deposito fdep "); strFechamentos.append(" join fechamento_cct_deposito fd on fd.fechamentodeposito_id = fdep.fechamentodeposito_id "); strFechamentos.append(" join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); @@ -381,13 +381,13 @@ public class Totalbus { DespesaReceita deposito = new DespesaReceita(); deposito.setCodigoEmpresa(empId); - deposito.setDataLancamento(rsFechamentos.getDate(3)); + deposito.setDataLancamento(rsFechamentos.getDate(10)); deposito.setDataMovimento(rsFechamentos.getDate(3)); deposito.setLocalArrecadação(pvId); deposito.setValorLancamento(df.format(rsFechamentos.getBigDecimal(1))); deposito.setIdentificadorReceitaDespesa("D"); deposito.setCodigoReceitaDespesa(codRecDesp); - deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep + valor); + deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep); depositos.add(deposito); soma = soma.add(rsFechamentos.getBigDecimal(1)); } From 106596f4bf59ea6b4c9949f013f93fe94254fb50 Mon Sep 17 00:00:00 2001 From: leonardo Date: Sun, 27 Mar 2016 23:05:53 +0000 Subject: [PATCH 034/121] fixes bug #7288 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@54270 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../rjconsultores/integracaoreceitadespesa/dao/Totalbus.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index f31fae93f..4de2b176b 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -330,7 +330,7 @@ public class Totalbus { strFechamentos.append(" and fc.empresa_id = " + empresaId); } - strFechamentos.append(" group by fdep.numdeposito, fdep.fecha_deposito, fc.empresa_id, pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion "); + strFechamentos.append(" group by fdep.numdeposito, fdep.feccreacion, fdep.fecha_deposito, fc.empresa_id, pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion "); Date fecha = fechaParam; From 370b1e3f1038355bd3d20dc27689c18ef69f6911 Mon Sep 17 00:00:00 2001 From: leonardo Date: Mon, 28 Mar 2016 13:47:47 +0000 Subject: [PATCH 035/121] fixes bug #7288 fixes bug #7287 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@54283 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../dao/Totalbus.java | 90 ++++++++----------- 1 file changed, 35 insertions(+), 55 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 4de2b176b..4669b0f87 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -306,11 +306,6 @@ public class Totalbus { public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam){ List depositos = new ArrayList(); -// StringBuilder sb = new StringBuilder(); -// sb.append("select fdep.fechamentodeposito_id, fdep.valor, fdep.numdeposito, fdep.FECCREACION, fdep.fecha_deposito "); -// sb.append("from fechamento_deposito fdep "); -// sb.append("where trunc(FECCREACION) = :fecha and fdep.activo = 1 "); - StringBuilder strFechamentos = new StringBuilder(); strFechamentos.append("Select sum(fdep.valor), fdep.numdeposito, fdep.fecha_deposito, fc.empresa_id, pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion, fdep.feccreacion "); @@ -337,60 +332,45 @@ public class Totalbus { if(fechaParam == null){ fecha = getData(); } - - //PreparedStatement pstmt = null; - //ResultSet rs = null; - -// pstmt = getConnection().prepareStatement(sb.toString()); -// pstmt.setDate(1, new java.sql.Date(fecha.getTime())); -// -// rs = pstmt.executeQuery(); - Integer codigoReceitaDespesaGlobus = getCodigoReceitaDespesaGlobus(); + PreparedStatement pstmtFechamentos = null; + ResultSet rsFechamentos = null; + BigDecimal soma = BigDecimal.ZERO; + try{ + pstmtFechamentos = getConnection().prepareStatement(strFechamentos.toString()); + pstmtFechamentos.setDate(1, new java.sql.Date(fecha.getTime())); - SimpleDateFormat sdf = new SimpleDateFormat("MM/yy"); + rsFechamentos = pstmtFechamentos.executeQuery(); - PreparedStatement pstmtFechamentos = null; - ResultSet rsFechamentos = null; - BigDecimal soma = BigDecimal.ZERO; - try{ -// while (rs.next()){ - pstmtFechamentos = getConnection().prepareStatement(strFechamentos.toString()); - pstmtFechamentos.setDate(1, new java.sql.Date(fecha.getTime())); - - rsFechamentos = pstmtFechamentos.executeQuery(); - - while (rsFechamentos.next()){ - Integer empId = null; - Integer pvId = null; - String banco = "" ; - String agencia = ""; - String contaCorrente = ""; - String numDep = " Dep: " + rsFechamentos.getString(2); - String valor = " R$ " + df.format(rsFechamentos.getBigDecimal(1)); - String ref = " Ref: "; - Integer codRecDesp = null; + while (rsFechamentos.next()){ + Integer empId = null; + Integer pvId = null; + String banco = "" ; + String agencia = ""; + String contaCorrente = ""; + String numDep = " Dep: " + rsFechamentos.getString(2); + Integer codRecDesp = null; - if (empId == null ){ empId = rsFechamentos.getInt(4); } - if (banco.isEmpty()){banco = "Bco: " + DespesaReceita.lpad(rsFechamentos.getString(8), "0", 3);} - if (pvId == null){ pvId = rsFechamentos.getInt(5); } - if (agencia.isEmpty()){ agencia = " Ag: " + rsFechamentos.getString(6); } - if (contaCorrente.isEmpty()){ contaCorrente = " C/C: " + rsFechamentos.getString(7); } - //ref += ref.length() <= 6 ? sdf.format(rsFechamentos.getDate(3)) : ", " + sdf.format(rsFechamentos.getDate(3)); - if (codRecDesp == null){ codRecDesp = rsFechamentos.getInt(9); } - - DespesaReceita deposito = new DespesaReceita(); - deposito.setCodigoEmpresa(empId); - deposito.setDataLancamento(rsFechamentos.getDate(10)); - deposito.setDataMovimento(rsFechamentos.getDate(3)); - deposito.setLocalArrecadação(pvId); - deposito.setValorLancamento(df.format(rsFechamentos.getBigDecimal(1))); - deposito.setIdentificadorReceitaDespesa("D"); - deposito.setCodigoReceitaDespesa(codRecDesp); - deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep); - depositos.add(deposito); - soma = soma.add(rsFechamentos.getBigDecimal(1)); - } + if (empId == null ){ empId = rsFechamentos.getInt(4); } + if (banco.isEmpty()){banco = "Bco: " + DespesaReceita.lpad(rsFechamentos.getString(8), "0", 3);} + if (pvId == null){ pvId = rsFechamentos.getInt(5); } + if (agencia.isEmpty()){ agencia = " Ag: " + rsFechamentos.getString(6); } + if (contaCorrente.isEmpty()){ contaCorrente = " C/C: " + rsFechamentos.getString(7); } + //ref += ref.length() <= 6 ? sdf.format(rsFechamentos.getDate(3)) : ", " + sdf.format(rsFechamentos.getDate(3)); + if (codRecDesp == null){ codRecDesp = rsFechamentos.getInt(9); } + + DespesaReceita deposito = new DespesaReceita(); + deposito.setCodigoEmpresa(empId); + deposito.setDataLancamento(rsFechamentos.getDate(10)); + deposito.setDataMovimento(rsFechamentos.getDate(3)); + deposito.setLocalArrecadação(pvId); + deposito.setValorLancamento(df.format(rsFechamentos.getBigDecimal(1))); + deposito.setIdentificadorReceitaDespesa("D"); + deposito.setCodigoReceitaDespesa(codRecDesp); + deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep); + depositos.add(deposito); + soma = soma.add(rsFechamentos.getBigDecimal(1)); + } log.debug("Total depósitos: " + soma); } catch (Exception e){ log.error(e.getMessage(), e); From 38ca8d53a958d1973adbe201fc408c88ffb6d41d Mon Sep 17 00:00:00 2001 From: leonardo Date: Wed, 30 Mar 2016 22:33:11 +0000 Subject: [PATCH 036/121] =?UTF-8?q?soma=20errada=20dos=20valores=20dos=20d?= =?UTF-8?q?ep=C3=B3sitos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@54389 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../rjconsultores/integracaoreceitadespesa/dao/Totalbus.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 4669b0f87..c68bc4bb7 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -308,7 +308,7 @@ public class Totalbus { List depositos = new ArrayList(); StringBuilder strFechamentos = new StringBuilder(); - strFechamentos.append("Select sum(fdep.valor), fdep.numdeposito, fdep.fecha_deposito, fc.empresa_id, pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion, fdep.feccreacion "); + strFechamentos.append("Select distinct sum(fd.valor_pago), fdep.numdeposito, fdep.fecha_deposito, fc.empresa_id, pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion, fdep.feccreacion "); strFechamentos.append(" from fechamento_deposito fdep "); strFechamentos.append(" join fechamento_cct_deposito fd on fd.fechamentodeposito_id = fdep.fechamentodeposito_id "); strFechamentos.append(" join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); From 867790bc0af1624dbadc3858667febb5393d5a80 Mon Sep 17 00:00:00 2001 From: leonardo Date: Fri, 1 Apr 2016 17:02:39 +0000 Subject: [PATCH 037/121] =?UTF-8?q?Envio=20de=20cancelamento=20de=20cart?= =?UTF-8?q?=C3=A3o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@54492 d1611594-4594-4d17-8e1d-87c2c4800839 --- src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index c68bc4bb7..6751ef9e2 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -127,7 +127,6 @@ public class Totalbus { 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 (2,3) "); sb.append(" group by "); sb.append(" cd.feccorte, "); From bdb79405800a96dfb83bbdd629a206f11db66944 Mon Sep 17 00:00:00 2001 From: leonardo Date: Wed, 6 Apr 2016 18:58:02 +0000 Subject: [PATCH 038/121] =?UTF-8?q?cancelamento=20de=20cart=C3=A3o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@54693 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/dao/Totalbus.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 6751ef9e2..9bfec7641 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -155,9 +155,14 @@ public class Totalbus { despesa.setCodigoReceitaDespesa(rs.getInt(5)); despesa.setDataLancamento(rs.getDate(1)); despesa.setDataMovimento(rs.getDate(1)); - despesa.setLocalArrecadação(rs.getInt(6)); - despesa.setValorLancamento(df.format(rs.getBigDecimal(4))); - despesa.setIdentificadorReceitaDespesa("D"); + despesa.setLocalArrecadação(rs.getInt(6)); + if (rs.getBigDecimal(4).signum() == -1){ + despesa.setIdentificadorReceitaDespesa("R"); + despesa.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); + } else { + despesa.setIdentificadorReceitaDespesa("D"); + despesa.setValorLancamento(df.format(rs.getBigDecimal(4))); + } despesas.add(despesa); } } catch (Exception e){ From 6b4c9fdf431bed66ba9876635601d0e8c3d481a4 Mon Sep 17 00:00:00 2001 From: julio Date: Fri, 8 Apr 2016 12:29:13 +0000 Subject: [PATCH 039/121] bug #6817 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@54787 d1611594-4594-4d17-8e1d-87c2c4800839 --- .classpath | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.classpath b/.classpath index 21f3e9111..440f387e4 100644 --- a/.classpath +++ b/.classpath @@ -5,7 +5,7 @@ - + From 8f9b14c2deab8dc80f9a8b7bae7001b8cbdf0f16 Mon Sep 17 00:00:00 2001 From: leonardo Date: Fri, 6 May 2016 14:05:26 +0000 Subject: [PATCH 040/121] fixes bug #7384 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@55698 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../BGMApplication.java | 193 ++++++++++++++++++ .../dao/Totalbus.java | 51 +++++ 2 files changed, 244 insertions(+) create mode 100644 src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java diff --git a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java new file mode 100644 index 000000000..613a8a5bb --- /dev/null +++ b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java @@ -0,0 +1,193 @@ +package com.rjconsultores.integracaoreceitadespesa; + +import java.io.BufferedInputStream; +import java.io.BufferedOutputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.IOException; +import java.sql.Connection; +import java.sql.DriverManager; +import java.util.ArrayList; +import java.util.Calendar; +import java.util.Date; +import java.util.List; +import java.util.Properties; +import java.util.zip.ZipEntry; +import java.util.zip.ZipOutputStream; + +import org.apache.log4j.Logger; + +import com.rjconsultores.integracaoreceitadespesa.dao.Totalbus; +import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceita; + +public class BGMApplication { + private static BGMApplication instance = null; + + private static final Logger log = Logger.getLogger(BGMApplication.class); + + private static final int TAMANHO_BUFFER = 4096; // 4kb + + + private BGMApplication(){ + + } + + public Connection getConnection(){ + try { + Properties props = BGMApplication.getInstance().getApplicationProperties(); + + String DRIVER = "oracle.jdbc.driver.OracleDriver"; + + Class.forName(DRIVER); + Connection conn = DriverManager.getConnection( + props.getProperty("url"), + props.getProperty("username").trim(), + props.getProperty("password").trim()); + + return conn; + + } catch (Exception e){ + log.error("", e); + return null; + } + } + public static BGMApplication getInstance(){ + if (instance == null){ + instance = new BGMApplication(); + } + return instance; + } + + public Properties getApplicationProperties(){ + Properties props = new Properties(); + try { + props.load(new FileInputStream("db.properties")); + } catch (IOException e) { + log.error("", e); + } + return props; + } + + public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con) throws IllegalArgumentException{ + if (empresaId == null){ + throw new IllegalArgumentException("o parâmetro empesaId é obrigatório!"); + } + if (puntoVentaId == null){ + throw new IllegalArgumentException("o parâmetro puntoVentaId é obrigatório!"); + } + excluirArquivosZip(diretorio); + Totalbus totalbus = new Totalbus(con); + if (totalbus.isConstanteBloqueioMenorQueData(empresaId, dataFinal)){ + totalbus.updateDataBloqueio(empresaId, dataFinal); + } + List files = new ArrayList(); + Calendar cal = Calendar.getInstance(); + // Seta primeiro dia da iteração + cal.setTime(dataInicio); + Calendar calFinal = Calendar.getInstance(); + calFinal.setTime(dataFinal); + + Calendar cf = Calendar.getInstance(); + cf.setTime(dataFinal); + cf.add(Calendar.DATE, 1); + try{ + + while (cal.before(cf)) { + String fileName = diretorio + File.separator + "BGM_" + empresaId + "-" + cal.get(Calendar.YEAR) + "" + DespesaReceita.lpad(Integer.toString(cal.get(Calendar.MONTH) + 1), "0", 2) + "" + DespesaReceita.lpad(Integer.toString(cal.get(Calendar.DAY_OF_MONTH)), "0", 2) + ".txt"; + File file = new File(fileName); + + log.debug("gerando arquivo..."); + Arquivo.GravaArquivo(file.getAbsolutePath(), totalbus.getDespesasReceitas(puntoVentaId, empresaId, cal.getTime())); + // adiciona um dia para iteração + cal.add(Calendar.DAY_OF_MONTH, 1); + files.add(file); + } + + String fileZip = diretorio + File.separator + "ArquivosBGM.zip"; + log.debug("nome arquivo: " + fileZip); + + compactarArquivos(files, fileZip); + return fileZip; + } catch (Exception e) { + log.error("", e); + return ""; + } + } + + private void excluirArquivosZip(String diretorio){ + File pasta = new File(diretorio); + File[] arquivos = pasta.listFiles(); + + for(File arquivo : arquivos) { + if(arquivo.getName().endsWith("zip")) { + arquivo.delete(); + } + } + } + + public static void compactarArquivo(String arqSaida,String arqEntrada) throws IOException{ + int cont; + byte[] dados = new byte[TAMANHO_BUFFER]; + BufferedInputStream origem = null; + FileInputStream streamDeEntrada = null; + FileOutputStream destino = null; + ZipOutputStream saida = null; + ZipEntry entry = null; + try { + destino = new FileOutputStream(new File(arqSaida)); + saida = new ZipOutputStream(new BufferedOutputStream(destino)); + File file = new File(arqEntrada); + streamDeEntrada = new FileInputStream(file); + origem = new BufferedInputStream(streamDeEntrada, TAMANHO_BUFFER); + entry = new ZipEntry(file.getName()); + saida.putNextEntry(entry); + while((cont = origem.read(dados, 0, TAMANHO_BUFFER)) != -1) { + saida.write(dados, 0, cont); + } + origem.close(); + saida.close(); + } catch(IOException e) { + log.error(e.getMessage()); + throw new IOException(e.getMessage()); + } + } + + private void compactarArquivos(List arquivosEOuPastas, String arquivoDeSaida){ + System.out.println(arquivoDeSaida); + log.debug(arquivoDeSaida); + + // Create a buffer for reading the files + byte[] buf = new byte[1024]; + + try { + // Create the ZIP file + ZipOutputStream out = new ZipOutputStream(new FileOutputStream(arquivoDeSaida)); + + // Compress the files + for (File f : arquivosEOuPastas) { + FileInputStream in = new FileInputStream(f.getPath()); + + // Add ZIP entry to output stream. + out.putNextEntry(new ZipEntry(f.getName())); + System.out.println(f.getPath()); + // Transfer bytes from the file to the ZIP file + int len; + while ((len = in.read(buf)) > 0) { + out.write(buf, 0, len); + } + + // Complete the entry + out.closeEntry(); + in.close(); + f.delete(); + } + + // Complete the ZIP file + out.close(); + } catch (IOException e) { + log.error(e.getMessage(),e); + e.printStackTrace(); + } + } +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 9bfec7641..531c3d3dc 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -407,6 +407,57 @@ public class Totalbus { } + public Boolean isConstanteBloqueioMenorQueData(Integer empresaId, Date data){ + StringBuilder sb = new StringBuilder(); + sb.append("Select valorconstante from constante where nombconstante = 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "'"); + PreparedStatement pstmt = null; + ResultSet rs = null; + Boolean result = null; + try{ + pstmt = getConnection().prepareStatement(sb.toString()); + rs = pstmt.executeQuery(); + if (rs.next()){ + Date rsDate = new SimpleDateFormat("dd/MM/yyyy").parse(rs.getString(1)); + result = !rsDate.after(data); + } else { // se não existir a constante, retorno true para que ela seja criada na função updateDataBloqueio + result = true; + } + } catch (Exception e){ + log.error(e.getMessage(), e); + } finally { + try { rs.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } + try { pstmt.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } + } + return result; + + } + + public void updateDataBloqueio(Integer empresaId, Date data){ + StringBuilder sb = new StringBuilder(); + PreparedStatement pstmt = null; + SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); + SimpleDateFormat sdfConstante = new SimpleDateFormat("yyyy/MM/dd"); + try{ + if (!getConnection(). + prepareStatement("Select valorconstante from constante where nombconstante = 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "'"). + executeQuery().next()){ + sb.append("insert into constante values (constante_seq.nextval, 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "', 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "',1,"+ + "'" + sdf.format(data) + "', 1, 1, " + sdfConstante.format(new Date()) +", 1)"); + pstmt = getConnection().prepareStatement(sb.toString()); + } else { + sb.append("update constante set valorconstante = :valor where nombconstante = 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "'"); + pstmt = getConnection().prepareStatement(sb.toString()); + pstmt.setString(1, sdf.format(data)); + } + + pstmt.executeUpdate(); + } catch (Exception e){ + log.error(e.getMessage(), e); + } finally { + try { pstmt.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } + } + } + private Date getData(){ Calendar cal = Calendar.getInstance(); cal.set(2015, 10, 13); From 4d159a3066db761fd322caa24a5843aafddaafb3 Mon Sep 17 00:00:00 2001 From: leonardo Date: Tue, 10 May 2016 22:18:54 +0000 Subject: [PATCH 041/121] fixes bug #7384 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@55826 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../rjconsultores/integracaoreceitadespesa/dao/Totalbus.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 531c3d3dc..47f048d1d 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -442,8 +442,9 @@ public class Totalbus { prepareStatement("Select valorconstante from constante where nombconstante = 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "'"). executeQuery().next()){ sb.append("insert into constante values (constante_seq.nextval, 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "', 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "',1,"+ - "'" + sdf.format(data) + "', 1, 1, " + sdfConstante.format(new Date()) +", 1)"); - pstmt = getConnection().prepareStatement(sb.toString()); + "'" + sdf.format(data) + "', 1, 1, :datamodif, 1)"); + pstmt = getConnection().prepareStatement(sb.toString()); + pstmt.setDate(1, new java.sql.Date(new Date().getTime())); } else { sb.append("update constante set valorconstante = :valor where nombconstante = 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "'"); pstmt = getConnection().prepareStatement(sb.toString()); From 494a1ca4e8d3e6c26c970f48a9142cd473f1501b Mon Sep 17 00:00:00 2001 From: leonardo Date: Wed, 18 May 2016 18:44:45 +0000 Subject: [PATCH 042/121] fixes bug #7493 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@56128 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/dao/Totalbus.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 47f048d1d..e2c82b697 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -201,7 +201,7 @@ public class Totalbus { sb.append(" and e.empresa_id = " + empresaId); } sb.append(" and cd.activo = 1 "); - sb.append(" and tee.indtipo = 1 "); + sb.append(" and tee.indtipo = 1 "); //sb.append(" and cd.usuario_id=7061 "); sb.append(" group by "); sb.append(" cd.feccorte, "); @@ -231,8 +231,13 @@ public class Totalbus { receita.setDataLancamento(rs.getDate(1)); receita.setDataMovimento(rs.getDate(1)); receita.setLocalArrecadação(rs.getInt(6)); - receita.setValorLancamento(df.format(rs.getBigDecimal(4))); - receita.setIdentificadorReceitaDespesa("R"); + if (rs.getBigDecimal(4).signum() == -1){ + receita.setIdentificadorReceitaDespesa("D"); + receita.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); + } else { + receita.setIdentificadorReceitaDespesa("R"); + receita.setValorLancamento(df.format(rs.getBigDecimal(4))); + } despesas.add(receita); } } catch (Exception e){ @@ -263,7 +268,7 @@ public class Totalbus { 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 "); + sb.append(" and tee.indtipo = 0 "); if (puntoventaId != null && !puntoventaId.equals(-1)){ sb.append(" and cd.puntoventa_id = " + puntoventaId); } From 219507fbfcb1691730e099656bfcc46fd9246b06 Mon Sep 17 00:00:00 2001 From: frederico Date: Wed, 19 Oct 2016 19:12:45 +0000 Subject: [PATCH 046/121] fixed bug #8134 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@61787 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/BGMApplication.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java index 613a8a5bb..ee9bcd800 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java @@ -8,6 +8,7 @@ import java.io.FileOutputStream; import java.io.IOException; import java.sql.Connection; import java.sql.DriverManager; +import java.sql.SQLException; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; @@ -112,6 +113,12 @@ public class BGMApplication { } catch (Exception e) { log.error("", e); return ""; + } finally{ + try { + con.close(); + } catch (SQLException e) { + e.printStackTrace(); + } } } From b783f73bd70ae2517a7d370c7c0f51d16ae6a9d9 Mon Sep 17 00:00:00 2001 From: gleimar Date: Thu, 1 Dec 2016 18:51:39 +0000 Subject: [PATCH 047/121] fixes bug#8326 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@63084 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../rjconsultores/integracaoreceitadespesa/dao/Totalbus.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index e2c82b697..e56fbef7f 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -325,7 +325,7 @@ public class Totalbus { strFechamentos.append(" join empresa_contabancaria ec on ec.EMPRESACONTABANCARIA_ID = fdep.EMPRESACONTABANCARIA_ID "); strFechamentos.append(" join INSTI_FINANCEIRA if on if.INSTIFINANCEIRA_ID = EC.INSTIFINANCEIRA_ID "); strFechamentos.append(" join EMPRESA e on e.empresa_id = fc.empresa_id "); - strFechamentos.append(" where trunc(fdep.feccreacion) = :fecha and fd.activo = 1 and fc.activo = 1 "); + strFechamentos.append(" where trunc(fdep.feccreacion) = :fecha and fd.activo = 1 and fc.activo = 1 and fdep.activo = 1 "); if (puntoventaId != null && !puntoventaId.equals(-1)){ strFechamentos.append(" and fc.puntoventa_id = " + puntoventaId); From 5068007806170aafea2ba1338f38f05786c76fa8 Mon Sep 17 00:00:00 2001 From: leonardo Date: Fri, 27 Jan 2017 16:16:48 +0000 Subject: [PATCH 048/121] fixes bug #8492 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@65376 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../rjconsultores/integracaoreceitadespesa/dao/Totalbus.java | 5 +++-- .../integracaoreceitadespesa/entidades/DespesaReceita.java | 4 ++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index e56fbef7f..93959751f 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -359,10 +359,11 @@ public class Totalbus { String contaCorrente = ""; String numDep = " Dep: " + rsFechamentos.getString(2); Integer codRecDesp = null; + String numpuntoventa = rsFechamentos.getString(5); if (empId == null ){ empId = rsFechamentos.getInt(4); } if (banco.isEmpty()){banco = "Bco: " + DespesaReceita.lpad(rsFechamentos.getString(8), "0", 3);} - if (pvId == null){ pvId = rsFechamentos.getInt(5); } + if (agencia.isEmpty()){ agencia = " Ag: " + rsFechamentos.getString(6); } if (contaCorrente.isEmpty()){ contaCorrente = " C/C: " + rsFechamentos.getString(7); } //ref += ref.length() <= 6 ? sdf.format(rsFechamentos.getDate(3)) : ", " + sdf.format(rsFechamentos.getDate(3)); @@ -372,7 +373,7 @@ public class Totalbus { deposito.setCodigoEmpresa(empId); deposito.setDataLancamento(rsFechamentos.getDate(10)); deposito.setDataMovimento(rsFechamentos.getDate(3)); - deposito.setLocalArrecadação(pvId); + deposito.setLocalArrecadação(numpuntoventa); deposito.setValorLancamento(df.format(rsFechamentos.getBigDecimal(1))); deposito.setIdentificadorReceitaDespesa("D"); deposito.setCodigoReceitaDespesa(codRecDesp); diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index e4ec972ba..2ca5342dd 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -55,6 +55,10 @@ public class DespesaReceita { public void setLocalArrecadação(Integer localArrecadação) { this.localArrecadação = rpad(localArrecadação.toString(), " ", 5); } + + public void setLocalArrecadação(String localArrecadação) { + this.localArrecadação = rpad(localArrecadação.toString(), " ", 5); + } public void setDataMovimento(Date dataMovimento) { this.dataMovimento = sdf.format(dataMovimento); From bb88f3dc8da82814adf4c5670a1a852ff1ea99ff Mon Sep 17 00:00:00 2001 From: leonardo Date: Wed, 1 Feb 2017 12:56:05 +0000 Subject: [PATCH 049/121] fixes bug #8492 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@65526 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/dao/Totalbus.java | 16 ++++++++-------- .../entidades/DespesaReceita.java | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 93959751f..31dc4a768 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -152,10 +152,10 @@ public class Totalbus { while (rs.next()){ DespesaReceita despesa = new DespesaReceita(); despesa.setCodigoEmpresa(rs.getInt(2)); - despesa.setCodigoReceitaDespesa(rs.getInt(5)); + despesa.setCodigoReceitaDespesa(rs.getString(5)); despesa.setDataLancamento(rs.getDate(1)); despesa.setDataMovimento(rs.getDate(1)); - despesa.setLocalArrecadação(rs.getInt(6)); + despesa.setLocalArrecadação(rs.getString(6)); if (rs.getBigDecimal(4).signum() == -1){ despesa.setIdentificadorReceitaDespesa("R"); despesa.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); @@ -227,10 +227,10 @@ public class Totalbus { while (rs.next()){ DespesaReceita receita = new DespesaReceita(); receita.setCodigoEmpresa(rs.getInt(2)); - receita.setCodigoReceitaDespesa(rs.getInt(5)); + receita.setCodigoReceitaDespesa(rs.getString(5)); receita.setDataLancamento(rs.getDate(1)); receita.setDataMovimento(rs.getDate(1)); - receita.setLocalArrecadação(rs.getInt(6)); + receita.setLocalArrecadação(rs.getString(6)); if (rs.getBigDecimal(4).signum() == -1){ receita.setIdentificadorReceitaDespesa("D"); receita.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); @@ -296,10 +296,10 @@ public class Totalbus { while (rs.next()){ DespesaReceita despesa = new DespesaReceita(); despesa.setCodigoEmpresa(rs.getInt(2)); - despesa.setCodigoReceitaDespesa(rs.getInt(5)); + despesa.setCodigoReceitaDespesa(rs.getString(5)); despesa.setDataLancamento(rs.getDate(1)); despesa.setDataMovimento(rs.getDate(1)); - despesa.setLocalArrecadação(rs.getInt(3)); + despesa.setLocalArrecadação(rs.getString(3)); despesa.setValorLancamento(df.format(rs.getBigDecimal(4).doubleValue() * -1)); despesa.setIdentificadorReceitaDespesa("D"); despesas.add(despesa); @@ -358,7 +358,7 @@ public class Totalbus { String agencia = ""; String contaCorrente = ""; String numDep = " Dep: " + rsFechamentos.getString(2); - Integer codRecDesp = null; + String codRecDesp = null; String numpuntoventa = rsFechamentos.getString(5); if (empId == null ){ empId = rsFechamentos.getInt(4); } @@ -367,7 +367,7 @@ public class Totalbus { if (agencia.isEmpty()){ agencia = " Ag: " + rsFechamentos.getString(6); } if (contaCorrente.isEmpty()){ contaCorrente = " C/C: " + rsFechamentos.getString(7); } //ref += ref.length() <= 6 ? sdf.format(rsFechamentos.getDate(3)) : ", " + sdf.format(rsFechamentos.getDate(3)); - if (codRecDesp == null){ codRecDesp = rsFechamentos.getInt(9); } + if (codRecDesp == null){ codRecDesp = rsFechamentos.getString(9); } DespesaReceita deposito = new DespesaReceita(); deposito.setCodigoEmpresa(empId); diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 2ca5342dd..935859f5c 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -64,7 +64,7 @@ public class DespesaReceita { this.dataMovimento = sdf.format(dataMovimento); } - public void setCodigoReceitaDespesa(Integer codigoReceitaDespesa) { + public void setCodigoReceitaDespesa(String codigoReceitaDespesa) { if (codigoReceitaDespesa != null){ this.codigoReceitaDespesa = lpad(codigoReceitaDespesa.toString(), "0", 10); } else { From 9d08163be61c5a825ca6d1845d47150ab8ab87e4 Mon Sep 17 00:00:00 2001 From: gleimar Date: Fri, 2 Jun 2017 18:37:49 +0000 Subject: [PATCH 050/121] fixes bug#9119 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@69593 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../BGMApplication.java | 39 ++++++++++++++++++- 1 file changed, 37 insertions(+), 2 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java index ee9bcd800..f700550f7 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java @@ -6,6 +6,7 @@ import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; +import java.nio.channels.FileChannel; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; @@ -70,7 +71,7 @@ public class BGMApplication { return props; } - public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con) throws IllegalArgumentException{ + public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos) throws IllegalArgumentException{ if (empresaId == null){ throw new IllegalArgumentException("o parâmetro empesaId é obrigatório!"); } @@ -100,6 +101,9 @@ public class BGMApplication { log.debug("gerando arquivo..."); Arquivo.GravaArquivo(file.getAbsolutePath(), totalbus.getDespesasReceitas(puntoVentaId, empresaId, cal.getTime())); + + this.copiarArquivoExternamente(file, pathGravacaoExternaArquivos); + // adiciona um dia para iteração cal.add(Calendar.DAY_OF_MONTH, 1); files.add(file); @@ -121,7 +125,38 @@ public class BGMApplication { } } } - + private void copiarArquivoExternamente(File arquivoBGM,String pathGravacaoExternaArquivos){ + if (pathGravacaoExternaArquivos == null){ + log.info("Path externo para gravação de arquivos não configurado"); + + return; + } + + if (!pathGravacaoExternaArquivos.endsWith("/")){ + pathGravacaoExternaArquivos = pathGravacaoExternaArquivos +"/"; + } + + File destino = new File(pathGravacaoExternaArquivos + arquivoBGM.getName()); + + try { + this.copyFileUsingChannel(arquivoBGM, destino); + } catch (IOException e) { + log.error(String.format("Erro ao gravar o arquivo %s no diretorio %s", arquivoBGM.getName(),pathGravacaoExternaArquivos) ,e); + } + } + private void copyFileUsingChannel(File source, File dest) throws IOException { + + FileChannel sourceChannel = null; + FileChannel destChannel = null; + try { + sourceChannel = new FileInputStream(source).getChannel(); + destChannel = new FileOutputStream(dest).getChannel(); + destChannel.transferFrom(sourceChannel, 0, sourceChannel.size()); + }finally{ + sourceChannel.close(); + destChannel.close(); + } + } private void excluirArquivosZip(String diretorio){ File pasta = new File(diretorio); File[] arquivos = pasta.listFiles(); From bdb24a7a47fb5486ddac495f880a6727d135d489 Mon Sep 17 00:00:00 2001 From: leonardo Date: Mon, 29 Jan 2018 16:26:35 +0000 Subject: [PATCH 051/121] fixes bug #10376 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@78411 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/dao/Totalbus.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 31dc4a768..cdc12f02f 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -183,7 +183,8 @@ public class Totalbus { sb.append(" pv.puntoventa_id AS puntoventaId, "); sb.append(" sum(cdp.importe) AS valor, "); sb.append(" tee.contacontabil AS contacontabil, "); - sb.append(" pv.numpuntoventa AS numpuntoventa "); + sb.append(" pv.numpuntoventa AS numpuntoventa, "); + sb.append(" ev.descinfo as descinfo "); sb.append(" from "); sb.append(" caja_diversos cd "); sb.append(" left join evento_extra ev on ev.eventoextra_id = cd.eventoextra_id "); @@ -208,7 +209,7 @@ public class Totalbus { sb.append(" e.empresa_id, "); sb.append(" pv.puntoventa_id, "); sb.append(" tee.contacontabil, "); - sb.append(" pv.numpuntoventa "); + sb.append(" pv.numpuntoventa, ev.descinfo "); PreparedStatement stmt = null; @@ -238,6 +239,7 @@ public class Totalbus { receita.setIdentificadorReceitaDespesa("R"); receita.setValorLancamento(df.format(rs.getBigDecimal(4))); } + receita.setDescricaoDetalhada(rs.getString(7)); despesas.add(receita); } } catch (Exception e){ @@ -257,7 +259,8 @@ public class Totalbus { sb.append(" e.empresa_id as empresa_id, "); sb.append(" pv.numpuntoventa as numpuntoventa, "); sb.append(" cdp.importe as valor, "); - sb.append(" tee.contacontabil as contacontabil "); + sb.append(" tee.contacontabil as contacontabil, "); + sb.append(" ev.descinfo as descinfo "); sb.append(" from "); sb.append(" caja_diversos cd "); sb.append(" left join evento_extra ev on ev.eventoextra_id = cd.eventoextra_id "); @@ -302,6 +305,7 @@ public class Totalbus { despesa.setLocalArrecadação(rs.getString(3)); despesa.setValorLancamento(df.format(rs.getBigDecimal(4).doubleValue() * -1)); despesa.setIdentificadorReceitaDespesa("D"); + despesa.setDescricaoDetalhada(rs.getString(6)); despesas.add(despesa); } } catch (Exception e){ From 814a6ea75815af88566379818bd37c50ff0c94d9 Mon Sep 17 00:00:00 2001 From: leonardo Date: Tue, 27 Feb 2018 18:25:43 +0000 Subject: [PATCH 052/121] =?UTF-8?q?Descri=C3=A7=C3=A3o=20lan=C3=A7amento?= =?UTF-8?q?=20Receita=20/=20Despesa=20(=20Arquivo=20BGM)=20fixes=20bug#106?= =?UTF-8?q?65=20dev:Fred=20qua:wallysson?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@79230 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/entidades/DespesaReceita.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 935859f5c..6db7dc692 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -82,7 +82,11 @@ public class DespesaReceita { } public void setDescricaoDetalhada(String desc){ - this.descricaoDetalhada = rpad(truncStr(desc, 100), " ", 100); + if (desc != null){ + this.descricaoDetalhada = rpad(truncStr(desc, 100), " ", 100); + } else { + this.descricaoDetalhada = ""; + } } private String truncStr(String str, int size){ From d673c3bd4de71ba88c948f8461f1632af048178e Mon Sep 17 00:00:00 2001 From: leonardo Date: Mon, 2 Apr 2018 14:00:56 +0000 Subject: [PATCH 053/121] =?UTF-8?q?10717:=20Descri=C3=A7=C3=A3o=20Lan?= =?UTF-8?q?=C3=A7amento=20Receita/=20Despesas=20bug#10717=20dev:Veloso=20q?= =?UTF-8?q?ua:wallysson?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@80446 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/entidades/DespesaReceita.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 6db7dc692..f8f912c73 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -85,7 +85,7 @@ public class DespesaReceita { if (desc != null){ this.descricaoDetalhada = rpad(truncStr(desc, 100), " ", 100); } else { - this.descricaoDetalhada = ""; + this.descricaoDetalhada = rpad("", " ", 100); } } From 9568568e098c995af37365b5db35041b15f14949 Mon Sep 17 00:00:00 2001 From: emerson Date: Fri, 16 Nov 2018 18:55:51 +0000 Subject: [PATCH 054/121] fixes bug#0012351 dev: walace qua: bruno MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Implementação efetuada. Foi utilizado o campo tipo de pagamento turismo, e essa implementação foi feita no custom da Eucatur para não impactar outros clientes. git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@87106 d1611594-4594-4d17-8e1d-87c2c4800839 --- .classpath | 1 + .../BGMApplication.java | 10 +- .../dao/Totalbus.java | 195 +++++++++--------- .../entidades/DespesaReceita.java | 58 +++--- 4 files changed, 126 insertions(+), 138 deletions(-) diff --git a/.classpath b/.classpath index 440f387e4..35667b972 100644 --- a/.classpath +++ b/.classpath @@ -10,5 +10,6 @@ + diff --git a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java index f700550f7..9d208da46 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java @@ -18,10 +18,10 @@ import java.util.Properties; import java.util.zip.ZipEntry; import java.util.zip.ZipOutputStream; +import org.apache.commons.lang.StringUtils; import org.apache.log4j.Logger; import com.rjconsultores.integracaoreceitadespesa.dao.Totalbus; -import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceita; public class BGMApplication { private static BGMApplication instance = null; @@ -71,7 +71,7 @@ public class BGMApplication { return props; } - public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos) throws IllegalArgumentException{ + public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM) throws IllegalArgumentException{ if (empresaId == null){ throw new IllegalArgumentException("o parâmetro empesaId é obrigatório!"); } @@ -96,11 +96,13 @@ public class BGMApplication { try{ while (cal.before(cf)) { - String fileName = diretorio + File.separator + "BGM_" + empresaId + "-" + cal.get(Calendar.YEAR) + "" + DespesaReceita.lpad(Integer.toString(cal.get(Calendar.MONTH) + 1), "0", 2) + "" + DespesaReceita.lpad(Integer.toString(cal.get(Calendar.DAY_OF_MONTH)), "0", 2) + ".txt"; + String fileName = diretorio + File.separator + "BGM_" + empresaId + "-" + cal.get(Calendar.YEAR) + + "" + StringUtils.leftPad(Integer.toString(cal.get(Calendar.MONTH) + 1), 2, "0") + "" + + StringUtils.leftPad(Integer.toString(cal.get(Calendar.DAY_OF_MONTH)), 2, "0") + ".txt"; File file = new File(fileName); log.debug("gerando arquivo..."); - Arquivo.GravaArquivo(file.getAbsolutePath(), totalbus.getDespesasReceitas(puntoVentaId, empresaId, cal.getTime())); + Arquivo.GravaArquivo(file.getAbsolutePath(), totalbus.getDespesasReceitas(puntoVentaId, empresaId, cal.getTime(), incluiTipoPagamentoTurismoBGM)); this.copiarArquivoExternamente(file, pathGravacaoExternaArquivos); diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index cdc12f02f..6edd60857 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -11,6 +11,7 @@ import java.util.Calendar; import java.util.Date; import java.util.List; +import org.apache.commons.lang.StringUtils; import org.apache.log4j.Logger; import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceita; @@ -36,15 +37,15 @@ public class Totalbus { loadPuntosVenta(); } - public List getDespesasReceitas(Integer puntoventaId, Integer empresaId,Date fechaParam){ + public List getDespesasReceitas(Integer puntoventaId, Integer empresaId,Date fechaParam, boolean incluiTipoPagamentoTurismoBGM){ log.debug("gerando depósitos..."); - List despesasReceitas = getDepositos(puntoventaId, empresaId, fechaParam); + List despesasReceitas = getDepositos(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM); log.debug("gerando despesas..."); - despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam)); + despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); log.debug("gerando despesas cartão..."); - despesasReceitas.addAll(getDespesaCartaoDebCred(puntoventaId, empresaId, fechaParam)); + despesasReceitas.addAll(getDespesaCartaoDebCred(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); log.debug("gerando receitas..."); - despesasReceitas.addAll(getReceitas(puntoventaId, empresaId, fechaParam)); + despesasReceitas.addAll(getReceitas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); List rows = new ArrayList(); @@ -100,40 +101,36 @@ public class Totalbus { return this.conn; } - public List getDespesaCartaoDebCred(final Integer puntoVentaId, final Integer empresaId, Date fechaParam) { + public List getDespesaCartaoDebCred(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) { List despesas = new ArrayList(); - StringBuffer sb = new StringBuffer(); - 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(" case when cdp.formapago_id = 2 then 802 else 803 end as contacontabil, "); - sb.append(" pv.numpuntoventa AS numpuntoventa "); - 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 && !puntoVentaId.equals(-1)){ - sb.append(" and cd.puntoventa_id = " + puntoVentaId); - } - if (empresaId != null){ - sb.append(" and e.empresa_id = " + empresaId); - } - sb.append(" and cd.activo = 1 "); + StringBuilder sb = new StringBuilder(); + 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(" case when cdp.formapago_id = 2 then 802 else 803 end as contacontabil, "); + sb.append(" pv.numpuntoventa AS numpuntoventa, ev.tipoeventoextra_id "); + 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 = ? "); + adicionaFiltroQuery(puntoVentaId, sb, " and cd.puntoventa_id = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); + sb.append(" and cd.activo = 1 "); sb.append(" and cdp.formapago_id in (2,3) "); - sb.append(" group by "); - sb.append(" cd.feccorte, "); - sb.append(" e.empresa_id, "); - sb.append(" pv.puntoventa_id, "); - sb.append(" case when cdp.formapago_id = 2 then 802 else 803 end, "); - sb.append(" pv.numpuntoventa "); + sb.append(" group by "); + sb.append(" cd.feccorte, "); + sb.append(" e.empresa_id, "); + sb.append(" pv.puntoventa_id, "); + sb.append(" case when cdp.formapago_id = 2 then 802 else 803 end, "); + sb.append(" pv.numpuntoventa, ev.tipoeventoextra_id "); PreparedStatement stmt = null; @@ -155,7 +152,7 @@ public class Totalbus { despesa.setCodigoReceitaDespesa(rs.getString(5)); despesa.setDataLancamento(rs.getDate(1)); despesa.setDataMovimento(rs.getDate(1)); - despesa.setLocalArrecadação(rs.getString(6)); + despesa.setLocalArrecadacao(rs.getString(6)); if (rs.getBigDecimal(4).signum() == -1){ despesa.setIdentificadorReceitaDespesa("R"); despesa.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); @@ -163,6 +160,9 @@ public class Totalbus { despesa.setIdentificadorReceitaDespesa("D"); despesa.setValorLancamento(df.format(rs.getBigDecimal(4))); } + if (incluiTipoPagamentoTurismoBGM) { + despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); + } despesas.add(despesa); } } catch (Exception e){ @@ -173,44 +173,42 @@ public class Totalbus { } return despesas; } + + private void adicionaFiltroQuery(final Integer valor, StringBuilder sb, String filtroSQL, Boolean adicionar) { + if (adicionar) { + sb.append(filtroSQL + valor); + } + } - public List getReceitas(final Integer puntoVentaId, final Integer empresaId, Date fechaParam) { + public List getReceitas(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) { List despesas = new ArrayList(); - StringBuffer sb = new StringBuffer(); - 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(" pv.numpuntoventa AS numpuntoventa, "); - sb.append(" ev.descinfo as descinfo "); - 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 "); + StringBuilder sb = new StringBuilder(); + 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(" pv.numpuntoventa AS numpuntoventa, "); + sb.append(" ev.descinfo as descinfo, ev.tipoeventoextra_id "); + 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 && !puntoVentaId.equals(-1)){ - 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 cd.usuario_id=7061 "); - sb.append(" group by "); - sb.append(" cd.feccorte, "); - sb.append(" e.empresa_id, "); - sb.append(" pv.puntoventa_id, "); - sb.append(" tee.contacontabil, "); - sb.append(" pv.numpuntoventa, ev.descinfo "); - + adicionaFiltroQuery(puntoVentaId, sb, " and cd.puntoventa_id = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); + sb.append(" and cd.activo = 1 "); + sb.append(" and tee.indtipo = 1 "); + sb.append(" group by cd.feccorte, "); + sb.append(" e.empresa_id, pv.puntoventa_id, "); + sb.append(" tee.contacontabil, pv.numpuntoventa, "); + sb.append(" ev.descinfo, ev.tipoeventoextra_id "); PreparedStatement stmt = null; ResultSet rs = null; @@ -231,7 +229,7 @@ public class Totalbus { receita.setCodigoReceitaDespesa(rs.getString(5)); receita.setDataLancamento(rs.getDate(1)); receita.setDataMovimento(rs.getDate(1)); - receita.setLocalArrecadação(rs.getString(6)); + receita.setLocalArrecadacao(rs.getString(6)); if (rs.getBigDecimal(4).signum() == -1){ receita.setIdentificadorReceitaDespesa("D"); receita.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); @@ -240,6 +238,9 @@ public class Totalbus { receita.setValorLancamento(df.format(rs.getBigDecimal(4))); } receita.setDescricaoDetalhada(rs.getString(7)); + if (incluiTipoPagamentoTurismoBGM) { + receita.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); + } despesas.add(receita); } } catch (Exception e){ @@ -251,7 +252,7 @@ public class Totalbus { return despesas; } - public List getDespesas(Integer puntoventaId, Integer empresaId, Date fechaParam){ + public List getDespesas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM){ List despesas = new ArrayList(); StringBuilder sb = new StringBuilder(); sb.append(" select "); @@ -260,7 +261,7 @@ public class Totalbus { sb.append(" pv.numpuntoventa as numpuntoventa, "); sb.append(" cdp.importe as valor, "); sb.append(" tee.contacontabil as contacontabil, "); - sb.append(" ev.descinfo as descinfo "); + sb.append(" ev.descinfo as descinfo, ev.tipoeventoextra_id "); sb.append(" from "); sb.append(" caja_diversos cd "); sb.append(" left join evento_extra ev on ev.eventoextra_id = cd.eventoextra_id "); @@ -272,14 +273,9 @@ public class Totalbus { sb.append(" where "); sb.append(" cd.feccorte = ? "); sb.append(" and tee.indtipo = 0 "); - if (puntoventaId != null && !puntoventaId.equals(-1)){ - sb.append(" and cd.puntoventa_id = " + puntoventaId); - } - if (empresaId != null){ - sb.append(" and e.empresa_id = " + empresaId); - } + adicionaFiltroQuery(puntoventaId, sb, " and cd.puntoventa_id = ", puntoventaId != null && !puntoventaId.equals(-1)); + adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); sb.append(" and cd.activo = 1 "); - //sb.append(" and cd.usuario_id=7061 "); 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 "); @@ -302,10 +298,13 @@ public class Totalbus { despesa.setCodigoReceitaDespesa(rs.getString(5)); despesa.setDataLancamento(rs.getDate(1)); despesa.setDataMovimento(rs.getDate(1)); - despesa.setLocalArrecadação(rs.getString(3)); + despesa.setLocalArrecadacao(rs.getString(3)); despesa.setValorLancamento(df.format(rs.getBigDecimal(4).doubleValue() * -1)); despesa.setIdentificadorReceitaDespesa("D"); despesa.setDescricaoDetalhada(rs.getString(6)); + if (incluiTipoPagamentoTurismoBGM) { + despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); + } despesas.add(despesa); } } catch (Exception e){ @@ -317,11 +316,12 @@ public class Totalbus { return despesas; } - public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam){ + public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM){ List depositos = new ArrayList(); StringBuilder strFechamentos = new StringBuilder(); - strFechamentos.append("Select distinct sum(fd.valor_pago), fdep.numdeposito, fdep.fecha_deposito, fc.empresa_id, pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion, fdep.feccreacion "); + strFechamentos.append("Select distinct sum(fd.valor_pago), fdep.numdeposito, fdep.fecha_deposito, fc.empresa_id, "); + strFechamentos.append(" pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion, fdep.feccreacion, ev.tipoeventoextra_id "); strFechamentos.append(" from fechamento_deposito fdep "); strFechamentos.append(" join fechamento_cct_deposito fd on fd.fechamentodeposito_id = fdep.fechamentodeposito_id "); strFechamentos.append(" join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); @@ -330,17 +330,10 @@ public class Totalbus { strFechamentos.append(" join INSTI_FINANCEIRA if on if.INSTIFINANCEIRA_ID = EC.INSTIFINANCEIRA_ID "); strFechamentos.append(" join EMPRESA e on e.empresa_id = fc.empresa_id "); strFechamentos.append(" where trunc(fdep.feccreacion) = :fecha and fd.activo = 1 and fc.activo = 1 and fdep.activo = 1 "); - - if (puntoventaId != null && !puntoventaId.equals(-1)){ - strFechamentos.append(" and fc.puntoventa_id = " + puntoventaId); - } - if (empresaId != null){ - strFechamentos.append(" and fc.empresa_id = " + empresaId); - } - + adicionaFiltroQuery(puntoventaId, strFechamentos, " and fc.puntoventa_id = ", puntoventaId != null && !puntoventaId.equals(-1)); + adicionaFiltroQuery(empresaId, strFechamentos, " and fc.empresa_id = ", empresaId != null); strFechamentos.append(" group by fdep.numdeposito, fdep.feccreacion, fdep.fecha_deposito, fc.empresa_id, pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion "); - Date fecha = fechaParam; if(fechaParam == null){ fecha = getData(); @@ -350,14 +343,13 @@ public class Totalbus { ResultSet rsFechamentos = null; BigDecimal soma = BigDecimal.ZERO; try{ - pstmtFechamentos = getConnection().prepareStatement(strFechamentos.toString()); + pstmtFechamentos = getConnection().prepareStatement(strFechamentos.toString()); pstmtFechamentos.setDate(1, new java.sql.Date(fecha.getTime())); rsFechamentos = pstmtFechamentos.executeQuery(); while (rsFechamentos.next()){ Integer empId = null; - Integer pvId = null; String banco = "" ; String agencia = ""; String contaCorrente = ""; @@ -366,22 +358,24 @@ public class Totalbus { String numpuntoventa = rsFechamentos.getString(5); if (empId == null ){ empId = rsFechamentos.getInt(4); } - if (banco.isEmpty()){banco = "Bco: " + DespesaReceita.lpad(rsFechamentos.getString(8), "0", 3);} + if (banco.isEmpty()){banco = "Bco: " + StringUtils.leftPad(rsFechamentos.getString(8), 3, "0");} if (agencia.isEmpty()){ agencia = " Ag: " + rsFechamentos.getString(6); } if (contaCorrente.isEmpty()){ contaCorrente = " C/C: " + rsFechamentos.getString(7); } - //ref += ref.length() <= 6 ? sdf.format(rsFechamentos.getDate(3)) : ", " + sdf.format(rsFechamentos.getDate(3)); if (codRecDesp == null){ codRecDesp = rsFechamentos.getString(9); } DespesaReceita deposito = new DespesaReceita(); deposito.setCodigoEmpresa(empId); deposito.setDataLancamento(rsFechamentos.getDate(10)); deposito.setDataMovimento(rsFechamentos.getDate(3)); - deposito.setLocalArrecadação(numpuntoventa); + deposito.setLocalArrecadacao(numpuntoventa); deposito.setValorLancamento(df.format(rsFechamentos.getBigDecimal(1))); deposito.setIdentificadorReceitaDespesa("D"); deposito.setCodigoReceitaDespesa(codRecDesp); deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep); + if (incluiTipoPagamentoTurismoBGM) { + deposito.setTipoPagamentoTurismo(rsFechamentos.getString("tipoeventoextra_id")); + } depositos.add(deposito); soma = soma.add(rsFechamentos.getBigDecimal(1)); } @@ -446,7 +440,6 @@ public class Totalbus { StringBuilder sb = new StringBuilder(); PreparedStatement pstmt = null; SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); - SimpleDateFormat sdfConstante = new SimpleDateFormat("yyyy/MM/dd"); try{ if (!getConnection(). prepareStatement("Select valorconstante from constante where nombconstante = 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "'"). diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index f8f912c73..39615d5f9 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -4,6 +4,8 @@ import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; +import org.apache.commons.lang.StringUtils; + public class DespesaReceita { private String dataLancamento; // DD/MM/YYYY private String codigoEmpresa; // 011 003 Numérico @@ -19,7 +21,7 @@ public class DespesaReceita { private final String numeroContratoTurismo = "0000000000";// 098 010 Numérico private final String numeroReciboTurismo = " ";// 108 010 Alfanumérico private final String formaPagamentoTurismo = "00";// 118 002 Numérico - private final String tipoPagamentoTurismo = "00";// 120 002 Numérico + private String tipoPagamentoTurismo = "00";// 120 002 Numérico private String descricaoDetalhada = " ";// 122 100 Alfanumérico private final String documentoVenda = "000000";// 222 6 Numérico private final String tipoDocumentoVenda = " ";// 228 1 Alfanumérico @@ -39,7 +41,7 @@ public class DespesaReceita { turno + codigoReceitaDespesa + identificadorReceitaDespesa.toUpperCase() + valorLancamento + numeroContratoTurismo + numeroReciboTurismo + - formaPagamentoTurismo + tipoPagamentoTurismo + + getFormaPagamentoTurismo() + getTipoPagamentoTurismo() + descricaoDetalhada + documentoVenda + tipoDocumentoVenda + numerodocumentoCPG + finalLinha + System.getProperty("line.separator")); } @@ -49,15 +51,15 @@ public class DespesaReceita { } public void setCodigoEmpresa(Integer codigoEmpresa) { - this.codigoEmpresa = lpad(codigoEmpresa.toString(), "0", 3); + this.codigoEmpresa = StringUtils.leftPad(codigoEmpresa.toString(), 3, "0"); } - public void setLocalArrecadação(Integer localArrecadação) { - this.localArrecadação = rpad(localArrecadação.toString(), " ", 5); + public void setLocalArrecadacao(Integer localArrecadacao) { + this.localArrecadação = StringUtils.rightPad(localArrecadacao.toString(), 5, " "); } - public void setLocalArrecadação(String localArrecadação) { - this.localArrecadação = rpad(localArrecadação.toString(), " ", 5); + public void setLocalArrecadacao(String localArrecadacao) { + this.localArrecadação = StringUtils.rightPad(localArrecadacao, 5, " "); } public void setDataMovimento(Date dataMovimento) { @@ -65,48 +67,38 @@ public class DespesaReceita { } public void setCodigoReceitaDespesa(String codigoReceitaDespesa) { - if (codigoReceitaDespesa != null){ - this.codigoReceitaDespesa = lpad(codigoReceitaDespesa.toString(), "0", 10); - } else { - this.codigoReceitaDespesa = lpad("0", "0", 10); - } + this.codigoReceitaDespesa = StringUtils.leftPad(codigoReceitaDespesa != null ? codigoReceitaDespesa : "0", 10, "0"); } - public void setIdentificadorReceitaDespesa(String identificadorReceitaDespesa) { this.identificadorReceitaDespesa = identificadorReceitaDespesa.toUpperCase(); } - public void setValorLancamento(String valorLançamento) { - this.valorLancamento = lpad(valorLançamento.toString().replace(",", "").replace(".", ""), "0", 13); + public void setValorLancamento(String valorLancamento) { + this.valorLancamento = StringUtils.leftPad(valorLancamento.replace(",", "").replace(".", ""), 13, "0"); } public void setDescricaoDetalhada(String desc){ - if (desc != null){ - this.descricaoDetalhada = rpad(truncStr(desc, 100), " ", 100); - } else { - this.descricaoDetalhada = rpad("", " ", 100); - } + this.descricaoDetalhada = StringUtils.rightPad(desc != null ? truncStr(desc, 100) : "", 100, " "); } + public String getFormaPagamentoTurismo() { + return formaPagamentoTurismo; + } + + public String getTipoPagamentoTurismo() { + return tipoPagamentoTurismo; + } + + public void setTipoPagamentoTurismo(String tipoPagamentoTurismo) { + this.tipoPagamentoTurismo = StringUtils.leftPad(tipoPagamentoTurismo, 2, "0"); + } + private String truncStr(String str, int size){ if (str.length() > size){ return str.substring(0, size -1); } return str; } - public static String lpad(String valueToPad, String filler, int size) { - while (valueToPad.length() < size) { - valueToPad = filler + valueToPad; - } - return valueToPad; - } - - public static String rpad(String valueToPad, String filler, int size) { - while (valueToPad.length() < size) { - valueToPad = valueToPad+filler; - } - return valueToPad; - } } From 2898b19acac815915aedaf22a03728d8bae84745 Mon Sep 17 00:00:00 2001 From: gleimar Date: Mon, 17 Dec 2018 17:49:54 +0000 Subject: [PATCH 055/121] fixes bug#13028 dev:alberto qua:wallysson git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@88028 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/dao/Totalbus.java | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 6edd60857..37f81c195 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -321,7 +321,7 @@ public class Totalbus { StringBuilder strFechamentos = new StringBuilder(); strFechamentos.append("Select distinct sum(fd.valor_pago), fdep.numdeposito, fdep.fecha_deposito, fc.empresa_id, "); - strFechamentos.append(" pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion, fdep.feccreacion, ev.tipoeventoextra_id "); + strFechamentos.append(" pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion, fdep.feccreacion "); strFechamentos.append(" from fechamento_deposito fdep "); strFechamentos.append(" join fechamento_cct_deposito fd on fd.fechamentodeposito_id = fdep.fechamentodeposito_id "); strFechamentos.append(" join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); @@ -373,9 +373,7 @@ public class Totalbus { deposito.setIdentificadorReceitaDespesa("D"); deposito.setCodigoReceitaDespesa(codRecDesp); deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep); - if (incluiTipoPagamentoTurismoBGM) { - deposito.setTipoPagamentoTurismo(rsFechamentos.getString("tipoeventoextra_id")); - } + depositos.add(deposito); soma = soma.add(rsFechamentos.getBigDecimal(1)); } From 8508f782efb2857ac4a374610edca025292d0d08 Mon Sep 17 00:00:00 2001 From: valdevir Date: Wed, 13 Feb 2019 20:14:55 +0000 Subject: [PATCH 056/121] fixes bug#13571 dev:Valdir qua:Junia git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@89817 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../dao/Totalbus.java | 401 +++++++++++------- .../entidades/DespesaReceita.java | 114 +++-- 2 files changed, 312 insertions(+), 203 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 37f81c195..5a97fb9ef 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -18,99 +18,116 @@ import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceita; import com.rjconsultores.integracaoreceitadespesa.entidades.Empresa; 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 Connection conn; - + private List pontosVenda = new ArrayList(); private List empresas = new ArrayList(); - + private DecimalFormat df = new DecimalFormat("#0.00"); - - public Totalbus(Connection con){ + + public Totalbus(Connection con) { this.conn = con; loadEmpresas(); loadPuntosVenta(); } - - public List getDespesasReceitas(Integer puntoventaId, Integer empresaId,Date fechaParam, boolean incluiTipoPagamentoTurismoBGM){ + + public List getDespesasReceitas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) { log.debug("gerando depósitos..."); List despesasReceitas = getDepositos(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM); log.debug("gerando despesas..."); - despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); - log.debug("gerando despesas cartão..."); - despesasReceitas.addAll(getDespesaCartaoDebCred(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); - log.debug("gerando receitas..."); - despesasReceitas.addAll(getReceitas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); - - List rows = new ArrayList(); - - for (DespesaReceita item : despesasReceitas){ - item.preencheLinha(rows); - } - return rows; + despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + log.debug("gerando despesas cartão..."); + despesasReceitas.addAll(getDespesaCartaoDebCred(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + log.debug("gerando receitas..."); + despesasReceitas.addAll(getReceitas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + + List rows = new ArrayList(); + + for (DespesaReceita item : despesasReceitas) { + item.preencheLinha(rows); + } + return rows; } - - private void loadPuntosVenta(){ + + private void loadPuntosVenta() { PreparedStatement pstmt = null; ResultSet rs = null; - - try{ - pstmt = getConnection().prepareStatement("Select puntoventa_id, nombpuntoventa from punto_venta order by nombpuntoventa"); + + try { + pstmt = getConnection().prepareStatement("Select puntoventa_id, nombpuntoventa from punto_venta order by nombpuntoventa"); rs = pstmt.executeQuery(); - while (rs.next()){ + while (rs.next()) { PuntoVenta puntoVenta = new PuntoVenta(); puntoVenta.codigo = rs.getInt(1); puntoVenta.nombpuntoventa = rs.getString(2); pontosVenda.add(puntoVenta); } - } catch (Exception e){ + } catch (Exception e) { log.error(e.getMessage(), e); } finally { - try { rs.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } - try { pstmt.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } } } - - private void loadEmpresas(){ + + private void loadEmpresas() { PreparedStatement pstmt = null; ResultSet rs = null; - - try{ - pstmt = getConnection().prepareStatement("Select empresa_id, nombempresa from empresa order by nombempresa"); + + try { + pstmt = getConnection().prepareStatement("Select empresa_id, nombempresa from empresa order by nombempresa"); rs = pstmt.executeQuery(); - while (rs.next()){ + while (rs.next()) { Empresa empresa = new Empresa(); empresa.codigo = rs.getInt(1); empresa.nombempresa = rs.getString(2); empresas.add(empresa); } - } catch (Exception e){ + } catch (Exception e) { log.error(e.getMessage(), e); } finally { - try { rs.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } - try { pstmt.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } } } - - public Connection getConnection(){ + + public Connection getConnection() { return this.conn; } - + public List getDespesaCartaoDebCred(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) { List despesas = new ArrayList(); StringBuilder sb = new StringBuilder(); - sb.append(" select "); + 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(" case when cdp.formapago_id = 2 then 802 else 803 end as contacontabil, "); - sb.append(" pv.numpuntoventa AS numpuntoventa, ev.tipoeventoextra_id "); + sb.append(" pv.numpuntoventa AS numpuntoventa, "); + sb.append(" ev.tipoeventoextra_id, "); + sb.append(" cdp.formapago_id as formapagoId "); sb.append(" from "); sb.append(" caja_diversos cd "); sb.append(" left join evento_extra ev on ev.eventoextra_id = cd.eventoextra_id "); @@ -130,30 +147,30 @@ public class Totalbus { sb.append(" e.empresa_id, "); sb.append(" pv.puntoventa_id, "); sb.append(" case when cdp.formapago_id = 2 then 802 else 803 end, "); - sb.append(" pv.numpuntoventa, ev.tipoeventoextra_id "); - - + sb.append(" pv.numpuntoventa, ev.tipoeventoextra_id, "); + sb.append(" cdp.formapago_id "); + PreparedStatement stmt = null; ResultSet rs = null; - + Date fecha = fechaParam; - if(fechaParam== null){ + if (fechaParam == null) { fecha = getData(); } - - try{ + + try { stmt = getConnection().prepareStatement(sb.toString()); - stmt.setDate(1, new java.sql.Date(fecha.getTime())); + stmt.setDate(1, new java.sql.Date(fecha.getTime())); rs = stmt.executeQuery(); - - while (rs.next()){ + + while (rs.next()) { DespesaReceita despesa = new DespesaReceita(); despesa.setCodigoEmpresa(rs.getInt(2)); despesa.setCodigoReceitaDespesa(rs.getString(5)); despesa.setDataLancamento(rs.getDate(1)); despesa.setDataMovimento(rs.getDate(1)); - despesa.setLocalArrecadacao(rs.getString(6)); - if (rs.getBigDecimal(4).signum() == -1){ + despesa.setLocalArrecadacao(rs.getString(6)); + if (rs.getBigDecimal(4).signum() == -1) { despesa.setIdentificadorReceitaDespesa("R"); despesa.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); } else { @@ -163,13 +180,22 @@ public class Totalbus { if (incluiTipoPagamentoTurismoBGM) { despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); } + despesa.setFormaPagamentoId(rs.getString("formapagoId")); despesas.add(despesa); } - } catch (Exception e){ - log.error(e.toString(),e); + } 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); } + try { + rs.close(); + } catch (Exception ignore) { + log.error("", ignore); + } + try { + stmt.close(); + } catch (Exception ignore) { + log.error("", ignore); + } } return despesas; } @@ -179,7 +205,7 @@ public class Totalbus { sb.append(filtroSQL + valor); } } - + public List getReceitas(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) { List despesas = new ArrayList(); StringBuilder sb = new StringBuilder(); @@ -190,7 +216,9 @@ public class Totalbus { sb.append(" sum(cdp.importe) AS valor, "); sb.append(" tee.contacontabil AS contacontabil, "); sb.append(" pv.numpuntoventa AS numpuntoventa, "); - sb.append(" ev.descinfo as descinfo, ev.tipoeventoextra_id "); + sb.append(" ev.descinfo as descinfo, "); + sb.append(" ev.tipoeventoextra_id, "); + sb.append(" cdp.formapago_id as formapagoId "); sb.append(" from "); sb.append(" caja_diversos cd "); sb.append(" left join evento_extra ev on ev.eventoextra_id = cd.eventoextra_id "); @@ -208,62 +236,74 @@ public class Totalbus { sb.append(" group by cd.feccorte, "); sb.append(" e.empresa_id, pv.puntoventa_id, "); sb.append(" tee.contacontabil, pv.numpuntoventa, "); - sb.append(" ev.descinfo, ev.tipoeventoextra_id "); - + sb.append(" ev.descinfo, ev.tipoeventoextra_id, "); + sb.append(" cdp.formapago_id "); + PreparedStatement stmt = null; ResultSet rs = null; - + Date fecha = fechaParam; - if(fechaParam== null){ + if (fechaParam == null) { fecha = getData(); } - - try{ + + try { stmt = getConnection().prepareStatement(sb.toString()); - stmt.setDate(1, new java.sql.Date(fecha.getTime())); + stmt.setDate(1, new java.sql.Date(fecha.getTime())); rs = stmt.executeQuery(); - - while (rs.next()){ + + while (rs.next()) { DespesaReceita receita = new DespesaReceita(); receita.setCodigoEmpresa(rs.getInt(2)); receita.setCodigoReceitaDespesa(rs.getString(5)); receita.setDataLancamento(rs.getDate(1)); receita.setDataMovimento(rs.getDate(1)); receita.setLocalArrecadacao(rs.getString(6)); - if (rs.getBigDecimal(4).signum() == -1){ + if (rs.getBigDecimal(4).signum() == -1) { receita.setIdentificadorReceitaDespesa("D"); receita.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); } else { receita.setIdentificadorReceitaDespesa("R"); receita.setValorLancamento(df.format(rs.getBigDecimal(4))); - } + } receita.setDescricaoDetalhada(rs.getString(7)); if (incluiTipoPagamentoTurismoBGM) { receita.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); } + receita.setFormaPagamentoId(rs.getString("formapagoId")); despesas.add(receita); } - } catch (Exception e){ - log.error(e.getMessage(),e); + } catch (Exception e) { + log.error(e.getMessage(), e); } finally { - try { rs.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } - try { stmt.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + stmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } } return despesas; } - - public List getDespesas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM){ + + public List getDespesas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) { 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.numpuntoventa as numpuntoventa, "); - sb.append(" cdp.importe as valor, "); - sb.append(" tee.contacontabil as contacontabil, "); - sb.append(" ev.descinfo as descinfo, ev.tipoeventoextra_id "); - sb.append(" from "); - sb.append(" caja_diversos cd "); + sb.append(" cd.feccorte as feccorte, "); + sb.append(" e.empresa_id as empresa_id, "); + sb.append(" pv.numpuntoventa as numpuntoventa, "); + sb.append(" cdp.importe as valor, "); + sb.append(" tee.contacontabil as contacontabil, "); + sb.append(" ev.descinfo as descinfo, "); + sb.append(" ev.tipoeventoextra_id, "); + sb.append(" cdp.formapago_id as formapagoId "); + 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 "); @@ -278,21 +318,21 @@ public class Totalbus { 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 = fechaParam; - if(fechaParam== null){ + if (fechaParam == null) { fecha = getData(); } - + PreparedStatement pstmt = null; ResultSet rs = null; - - try{ + + try { pstmt = getConnection().prepareStatement(sb.toString()); - pstmt.setDate(1, new java.sql.Date(fecha.getTime())); - + pstmt.setDate(1, new java.sql.Date(fecha.getTime())); + rs = pstmt.executeQuery(); - while (rs.next()){ + while (rs.next()) { DespesaReceita despesa = new DespesaReceita(); despesa.setCodigoEmpresa(rs.getInt(2)); despesa.setCodigoReceitaDespesa(rs.getString(5)); @@ -305,65 +345,84 @@ public class Totalbus { if (incluiTipoPagamentoTurismoBGM) { despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); } + despesa.setFormaPagamentoId(rs.getString("formapagoId")); despesas.add(despesa); } - } catch (Exception e){ + } catch (Exception e) { log.error(e.getMessage(), e); } finally { - try { rs.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } - try { pstmt.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } } return despesas; } - - public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM){ + + public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) { List depositos = new ArrayList(); StringBuilder strFechamentos = new StringBuilder(); strFechamentos.append("Select distinct sum(fd.valor_pago), fdep.numdeposito, fdep.fecha_deposito, fc.empresa_id, "); strFechamentos.append(" pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion, fdep.feccreacion "); strFechamentos.append(" from fechamento_deposito fdep "); - strFechamentos.append(" join fechamento_cct_deposito fd on fd.fechamentodeposito_id = fdep.fechamentodeposito_id "); - strFechamentos.append(" join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); - strFechamentos.append(" inner join PUNTO_VENTA pv on PV.PUNTOVENTA_ID = FC.PUNTOVENTA_ID "); - strFechamentos.append(" join empresa_contabancaria ec on ec.EMPRESACONTABANCARIA_ID = fdep.EMPRESACONTABANCARIA_ID "); - strFechamentos.append(" join INSTI_FINANCEIRA if on if.INSTIFINANCEIRA_ID = EC.INSTIFINANCEIRA_ID "); - strFechamentos.append(" join EMPRESA e on e.empresa_id = fc.empresa_id "); + strFechamentos.append(" join fechamento_cct_deposito fd on fd.fechamentodeposito_id = fdep.fechamentodeposito_id "); + strFechamentos.append(" join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); + strFechamentos.append(" inner join PUNTO_VENTA pv on PV.PUNTOVENTA_ID = FC.PUNTOVENTA_ID "); + strFechamentos.append(" join empresa_contabancaria ec on ec.EMPRESACONTABANCARIA_ID = fdep.EMPRESACONTABANCARIA_ID "); + strFechamentos.append(" join INSTI_FINANCEIRA if on if.INSTIFINANCEIRA_ID = EC.INSTIFINANCEIRA_ID "); + strFechamentos.append(" join EMPRESA e on e.empresa_id = fc.empresa_id "); strFechamentos.append(" where trunc(fdep.feccreacion) = :fecha and fd.activo = 1 and fc.activo = 1 and fdep.activo = 1 "); adicionaFiltroQuery(puntoventaId, strFechamentos, " and fc.puntoventa_id = ", puntoventaId != null && !puntoventaId.equals(-1)); adicionaFiltroQuery(empresaId, strFechamentos, " and fc.empresa_id = ", empresaId != null); strFechamentos.append(" group by fdep.numdeposito, fdep.feccreacion, fdep.fecha_deposito, fc.empresa_id, pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion "); - + Date fecha = fechaParam; - if(fechaParam == null){ + if (fechaParam == null) { fecha = getData(); } - + PreparedStatement pstmtFechamentos = null; ResultSet rsFechamentos = null; BigDecimal soma = BigDecimal.ZERO; - try{ + try { pstmtFechamentos = getConnection().prepareStatement(strFechamentos.toString()); pstmtFechamentos.setDate(1, new java.sql.Date(fecha.getTime())); - + rsFechamentos = pstmtFechamentos.executeQuery(); - - while (rsFechamentos.next()){ + + while (rsFechamentos.next()) { Integer empId = null; - String banco = "" ; + String banco = ""; String agencia = ""; String contaCorrente = ""; String numDep = " Dep: " + rsFechamentos.getString(2); String codRecDesp = null; String numpuntoventa = rsFechamentos.getString(5); - if (empId == null ){ empId = rsFechamentos.getInt(4); } - if (banco.isEmpty()){banco = "Bco: " + StringUtils.leftPad(rsFechamentos.getString(8), 3, "0");} - - if (agencia.isEmpty()){ agencia = " Ag: " + rsFechamentos.getString(6); } - if (contaCorrente.isEmpty()){ contaCorrente = " C/C: " + rsFechamentos.getString(7); } - if (codRecDesp == null){ codRecDesp = rsFechamentos.getString(9); } - + if (empId == null) { + empId = rsFechamentos.getInt(4); + } + if (banco.isEmpty()) { + banco = "Bco: " + StringUtils.leftPad(rsFechamentos.getString(8), 3, "0"); + } + + if (agencia.isEmpty()) { + agencia = " Ag: " + rsFechamentos.getString(6); + } + if (contaCorrente.isEmpty()) { + contaCorrente = " C/C: " + rsFechamentos.getString(7); + } + if (codRecDesp == null) { + codRecDesp = rsFechamentos.getString(9); + } + DespesaReceita deposito = new DespesaReceita(); deposito.setCodigoEmpresa(empId); deposito.setDataLancamento(rsFechamentos.getDate(10)); @@ -373,101 +432,127 @@ public class Totalbus { deposito.setIdentificadorReceitaDespesa("D"); deposito.setCodigoReceitaDespesa(codRecDesp); deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep); - + depositos.add(deposito); soma = soma.add(rsFechamentos.getBigDecimal(1)); } log.debug("Total depósitos: " + soma); - } catch (Exception e){ + } catch (Exception e) { log.error(e.getMessage(), e); } finally { - try { pstmtFechamentos.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } - try { rsFechamentos.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } + try { + pstmtFechamentos.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + rsFechamentos.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } } return depositos; } - - public Integer getCodigoReceitaDespesaGlobus(){ + + public Integer getCodigoReceitaDespesaGlobus() { StringBuilder sb = new StringBuilder(); sb.append("Select valorconstante from constante where nombconstante = 'CODIGO_RECEITA_DESPESA_GLOBUS' "); PreparedStatement pstmt = null; ResultSet rs = null; Integer result = null; - try{ + try { pstmt = getConnection().prepareStatement(sb.toString()); rs = pstmt.executeQuery(); - if (rs.next()){ + if (rs.next()) { result = rs.getInt(1); } - } catch (Exception e){ + } catch (Exception e) { log.error(e.getMessage(), e); } finally { - try { rs.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } - try { pstmt.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } } return result; - + } - public Boolean isConstanteBloqueioMenorQueData(Integer empresaId, Date data){ + public Boolean isConstanteBloqueioMenorQueData(Integer empresaId, Date data) { StringBuilder sb = new StringBuilder(); sb.append("Select valorconstante from constante where nombconstante = 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "'"); PreparedStatement pstmt = null; ResultSet rs = null; Boolean result = null; - try{ + try { pstmt = getConnection().prepareStatement(sb.toString()); rs = pstmt.executeQuery(); - if (rs.next()){ + if (rs.next()) { Date rsDate = new SimpleDateFormat("dd/MM/yyyy").parse(rs.getString(1)); result = !rsDate.after(data); } else { // se não existir a constante, retorno true para que ela seja criada na função updateDataBloqueio result = true; } - } catch (Exception e){ + } catch (Exception e) { log.error(e.getMessage(), e); } finally { - try { rs.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } - try { pstmt.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } } return result; - + } - - public void updateDataBloqueio(Integer empresaId, Date data){ + + public void updateDataBloqueio(Integer empresaId, Date data) { StringBuilder sb = new StringBuilder(); PreparedStatement pstmt = null; SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); - try{ - if (!getConnection(). - prepareStatement("Select valorconstante from constante where nombconstante = 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "'"). - executeQuery().next()){ - sb.append("insert into constante values (constante_seq.nextval, 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "', 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "',1,"+ + try { + if (!getConnection().prepareStatement("Select valorconstante from constante where nombconstante = 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "'").executeQuery().next()) { + sb.append("insert into constante values (constante_seq.nextval, 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "', 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "',1," + "'" + sdf.format(data) + "', 1, 1, :datamodif, 1)"); - pstmt = getConnection().prepareStatement(sb.toString()); + pstmt = getConnection().prepareStatement(sb.toString()); pstmt.setDate(1, new java.sql.Date(new Date().getTime())); } else { sb.append("update constante set valorconstante = :valor where nombconstante = 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "'"); pstmt = getConnection().prepareStatement(sb.toString()); pstmt.setString(1, sdf.format(data)); - } - + } + pstmt.executeUpdate(); - } catch (Exception e){ + } catch (Exception e) { log.error(e.getMessage(), e); } finally { - try { pstmt.close(); } catch (Exception ignore) { log.error(ignore.getMessage(), ignore); } + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } } } - - private Date getData(){ + + private Date getData() { Calendar cal = Calendar.getInstance(); cal.set(2015, 10, 13); - cal.setTime(new Date()); - cal.add(Calendar.DAY_OF_MONTH, DAYS_AGO); - return cal.getTime(); + cal.setTime(new Date()); + cal.add(Calendar.DAY_OF_MONTH, DAYS_AGO); + return cal.getTime(); } - + public List getPontosVenda() { return pontosVenda; } @@ -482,5 +567,5 @@ public class Totalbus { public void setEmpresas(List empresas) { this.empresas = empresas; - } + } } diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 39615d5f9..2d5e80ac3 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -8,44 +8,60 @@ import org.apache.commons.lang.StringUtils; 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 - private String localArrecadação; // 017 005 Alfanumérico - private final String numeroDaGuia = " "; // 022 025 Alfanumérico - private String dataMovimento; // 047 010 Alfanumérico - private final String usuarioGlobus = "TOTALBUS ";// 057 015 Alfanumérico - private final String turno = "01";// 072 002 Numérico - private String codigoReceitaDespesa;// 074 010 Numérico CONSTANTE CODIGO_RECEITA_DESPESA_GLOBUS - private String identificadorReceitaDespesa;// 084 001 Alfanumérico - private String valorLancamento;// 085 013 Numérico - private final String numeroContratoTurismo = "0000000000";// 098 010 Numérico - private final String numeroReciboTurismo = " ";// 108 010 Alfanumérico - private final String formaPagamentoTurismo = "00";// 118 002 Numérico - private String tipoPagamentoTurismo = "00";// 120 002 Numérico - private String descricaoDetalhada = " ";// 122 100 Alfanumérico - private final String documentoVenda = "000000";// 222 6 Numérico - private final String tipoDocumentoVenda = " ";// 228 1 Alfanumérico - private final String numerodocumentoCPG = "0000000000";// 229 10 Numérico - private final String finalLinha = "*";// 239 1 Alfanumérico - + private String codigoEmpresa; // 011 003 Numérico + private final String codigoFilial = "001"; // 014 003 Numérico + private String localArrecadação; // 017 005 Alfanumérico + private final String numeroDaGuia = " "; // 022 025 Alfanumérico + private String dataMovimento; // 047 010 Alfanumérico + private final String usuarioGlobus = "TOTALBUS ";// 057 015 Alfanumérico + private final String turno = "01";// 072 002 Numérico + private String codigoReceitaDespesa;// 074 010 Numérico CONSTANTE CODIGO_RECEITA_DESPESA_GLOBUS + private String identificadorReceitaDespesa;// 084 001 Alfanumérico + private String valorLancamento;// 085 013 Numérico + private final String numeroContratoTurismo = "0000000000";// 098 010 Numérico + private final String numeroReciboTurismo = " ";// 108 010 Alfanumérico + private final String formaPagamentoTurismo = "00";// 118 002 Numérico + private String tipoPagamentoTurismo = "00";// 120 002 Numérico + private String descricaoDetalhada = " ";// 122 100 Alfanumérico + private final String documentoVenda = "000000";// 222 6 Numérico + private final String tipoDocumentoVenda = " ";// 228 1 Alfanumérico + private final String numerodocumentoCPG = "0000000000";// 229 10 Numérico + private final String finalLinha = "*";// 239 1 Alfanumérico + private String formaPagamentoId = "";// 240 Numérico + private SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); - - public DespesaReceita(){ - + + public DespesaReceita() { + } - - public void preencheLinha(List rows){ - rows.add(dataLancamento + codigoEmpresa + codigoFilial + - localArrecadação.toUpperCase() + - numeroDaGuia + dataMovimento + usuarioGlobus + - turno + codigoReceitaDespesa + - identificadorReceitaDespesa.toUpperCase() + valorLancamento + - numeroContratoTurismo + numeroReciboTurismo + - getFormaPagamentoTurismo() + getTipoPagamentoTurismo() + - descricaoDetalhada + documentoVenda + tipoDocumentoVenda + - numerodocumentoCPG + finalLinha + System.getProperty("line.separator")); + + public void preencheLinha(List rows) { + StringBuilder sb = new StringBuilder(); + sb.append(dataLancamento); + sb.append(codigoEmpresa); + sb.append(codigoFilial); + sb.append(localArrecadação.toUpperCase()); + sb.append(numeroDaGuia); + sb.append(dataMovimento); + sb.append(usuarioGlobus); + sb.append(turno); + sb.append(codigoReceitaDespesa); + sb.append(identificadorReceitaDespesa.toUpperCase()); + sb.append(valorLancamento); + sb.append(numeroContratoTurismo); + sb.append(numeroReciboTurismo); + sb.append(getFormaPagamentoTurismo()); + sb.append(getTipoPagamentoTurismo()); + sb.append(descricaoDetalhada); + sb.append(documentoVenda); + sb.append(tipoDocumentoVenda); + sb.append(numerodocumentoCPG); + sb.append(formaPagamentoId); + sb.append(finalLinha); + sb.append(System.getProperty("line.separator")); + rows.add(sb.toString()); } - + public void setDataLancamento(Date dataLancamento) { this.dataLancamento = sdf.format(dataLancamento); } @@ -57,19 +73,19 @@ public class DespesaReceita { public void setLocalArrecadacao(Integer localArrecadacao) { this.localArrecadação = StringUtils.rightPad(localArrecadacao.toString(), 5, " "); } - + public void setLocalArrecadacao(String localArrecadacao) { this.localArrecadação = StringUtils.rightPad(localArrecadacao, 5, " "); } - public void setDataMovimento(Date dataMovimento) { + public void setDataMovimento(Date dataMovimento) { this.dataMovimento = sdf.format(dataMovimento); } public void setCodigoReceitaDespesa(String codigoReceitaDespesa) { this.codigoReceitaDespesa = StringUtils.leftPad(codigoReceitaDespesa != null ? codigoReceitaDespesa : "0", 10, "0"); } - + public void setIdentificadorReceitaDespesa(String identificadorReceitaDespesa) { this.identificadorReceitaDespesa = identificadorReceitaDespesa.toUpperCase(); } @@ -78,10 +94,10 @@ public class DespesaReceita { this.valorLancamento = StringUtils.leftPad(valorLancamento.replace(",", "").replace(".", ""), 13, "0"); } - public void setDescricaoDetalhada(String desc){ + public void setDescricaoDetalhada(String desc) { this.descricaoDetalhada = StringUtils.rightPad(desc != null ? truncStr(desc, 100) : "", 100, " "); } - + public String getFormaPagamentoTurismo() { return formaPagamentoTurismo; } @@ -94,11 +110,19 @@ public class DespesaReceita { this.tipoPagamentoTurismo = StringUtils.leftPad(tipoPagamentoTurismo, 2, "0"); } - private String truncStr(String str, int size){ - if (str.length() > size){ - return str.substring(0, size -1); - } + public String getFormaPagamentoId() { + return formaPagamentoId; + } + + public void setFormaPagamentoId(String formaPagamentoId) { + this.formaPagamentoId = formaPagamentoId; + } + + private String truncStr(String str, int size) { + if (str.length() > size) { + return str.substring(0, size - 1); + } return str; } - + } From 7168eee9843f6c135c84b39c0ec2b14af4b6b721 Mon Sep 17 00:00:00 2001 From: fabio Date: Mon, 11 Mar 2019 17:56:30 +0000 Subject: [PATCH 057/121] fixes bug#13623 dev: Valdevir qua: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@90617 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../rjconsultores/integracaoreceitadespesa/dao/Totalbus.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 5a97fb9ef..d121a48e8 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -124,7 +124,7 @@ public class Totalbus { sb.append(" e.empresa_id AS empresa, "); sb.append(" pv.puntoventa_id AS puntoventaId, "); sb.append(" sum(cdp.importe) AS valor, "); - sb.append(" case when cdp.formapago_id = 2 then 802 else 803 end as contacontabil, "); + sb.append(" tee.contacontabil AS contacontabil, "); sb.append(" pv.numpuntoventa AS numpuntoventa, "); sb.append(" ev.tipoeventoextra_id, "); sb.append(" cdp.formapago_id as formapagoId "); @@ -146,7 +146,7 @@ public class Totalbus { sb.append(" cd.feccorte, "); sb.append(" e.empresa_id, "); sb.append(" pv.puntoventa_id, "); - sb.append(" case when cdp.formapago_id = 2 then 802 else 803 end, "); + sb.append(" tee.contacontabil, "); sb.append(" pv.numpuntoventa, ev.tipoeventoextra_id, "); sb.append(" cdp.formapago_id "); From 8303cdd25c1189a733ffb806b5c09182418c7aa7 Mon Sep 17 00:00:00 2001 From: leonardo Date: Wed, 20 Mar 2019 14:27:34 +0000 Subject: [PATCH 058/121] =?UTF-8?q?13559:=20ADM=20=E2=80=93=20Gera=C3=A7?= =?UTF-8?q?=C3=A3o=20de=20informa=C3=A7=C3=B5es=20RecDespDiv=20e=20DepBco?= =?UTF-8?q?=20(parte=202)=20fixes=20bug#13559=20dev:valdevir=20qua:Juliane?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@90970 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../BGMApplication.java | 12 +- .../IntegracaoReceitaDespesaException.java | 13 ++ .../dao/Totalbus.java | 126 +++++++++++++++++- .../entidades/DespesaReceita.java | 46 +++---- .../entidades/DespesaReceitaComporte.java | 54 ++++++++ 5 files changed, 219 insertions(+), 32 deletions(-) create mode 100644 src/com/rjconsultores/integracaoreceitadespesa/IntegracaoReceitaDespesaException.java create mode 100644 src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java diff --git a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java index 9d208da46..7b8c373df 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java @@ -30,6 +30,7 @@ public class BGMApplication { private static final int TAMANHO_BUFFER = 4096; // 4kb + private boolean isReceitasDespesasComporte; private BGMApplication(){ @@ -71,7 +72,12 @@ public class BGMApplication { return props; } - public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM) throws IllegalArgumentException{ + public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean isReceitasDespesasComporte) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ + this.isReceitasDespesasComporte = isReceitasDespesasComporte; + return executaExportacao(dataInicio, dataFinal, diretorio, empresaId, puntoVentaId, con, pathGravacaoExternaArquivos, incluiTipoPagamentoTurismoBGM); + } + + public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ if (empresaId == null){ throw new IllegalArgumentException("o parâmetro empesaId é obrigatório!"); } @@ -79,7 +85,7 @@ public class BGMApplication { throw new IllegalArgumentException("o parâmetro puntoVentaId é obrigatório!"); } excluirArquivosZip(diretorio); - Totalbus totalbus = new Totalbus(con); + Totalbus totalbus = new Totalbus(con, isReceitasDespesasComporte); if (totalbus.isConstanteBloqueioMenorQueData(empresaId, dataFinal)){ totalbus.updateDataBloqueio(empresaId, dataFinal); } @@ -116,6 +122,8 @@ public class BGMApplication { compactarArquivos(files, fileZip); return fileZip; + } catch (IntegracaoReceitaDespesaException e){ + throw e; } catch (Exception e) { log.error("", e); return ""; diff --git a/src/com/rjconsultores/integracaoreceitadespesa/IntegracaoReceitaDespesaException.java b/src/com/rjconsultores/integracaoreceitadespesa/IntegracaoReceitaDespesaException.java new file mode 100644 index 000000000..7c1e71722 --- /dev/null +++ b/src/com/rjconsultores/integracaoreceitadespesa/IntegracaoReceitaDespesaException.java @@ -0,0 +1,13 @@ +package com.rjconsultores.integracaoreceitadespesa; + +public class IntegracaoReceitaDespesaException extends Exception{ + + /** + * + */ + private static final long serialVersionUID = -5422391379643449955L; + + public IntegracaoReceitaDespesaException(String message) { + super(message); + } +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index d121a48e8..5eaab8e76 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -14,7 +14,9 @@ import java.util.List; import org.apache.commons.lang.StringUtils; import org.apache.log4j.Logger; +import com.rjconsultores.integracaoreceitadespesa.IntegracaoReceitaDespesaException; import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceita; +import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceitaComporte; import com.rjconsultores.integracaoreceitadespesa.entidades.Empresa; import com.rjconsultores.integracaoreceitadespesa.entidades.PuntoVenta; @@ -28,21 +30,28 @@ public class Totalbus { private List pontosVenda = new ArrayList(); private List empresas = new ArrayList(); + private Boolean isReceitasDespesasComporte = false; + private DecimalFormat df = new DecimalFormat("#0.00"); - public Totalbus(Connection con) { + public Totalbus(Connection con, Boolean isReceitasDespesasComporte) { this.conn = con; + this.isReceitasDespesasComporte = isReceitasDespesasComporte; loadEmpresas(); loadPuntosVenta(); } - public List getDespesasReceitas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) { + public List getDespesasReceitas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException{ log.debug("gerando depósitos..."); List despesasReceitas = getDepositos(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM); log.debug("gerando despesas..."); despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); log.debug("gerando despesas cartão..."); - despesasReceitas.addAll(getDespesaCartaoDebCred(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + if (!isReceitasDespesasComporte){ + despesasReceitas.addAll(getDespesaCartaoDebCred(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + } else { + despesasReceitas.addAll(getDespesaCartaoDebCredComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + } log.debug("gerando receitas..."); despesasReceitas.addAll(getReceitas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); @@ -116,7 +125,7 @@ public class Totalbus { return this.conn; } - public List getDespesaCartaoDebCred(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) { + public List getDespesaCartaoDebCred(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException{ List despesas = new ArrayList(); StringBuilder sb = new StringBuilder(); sb.append(" select "); @@ -185,6 +194,7 @@ public class Totalbus { } } catch (Exception e) { log.error(e.toString(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas Cartão Crédito/Débito"); } finally { try { rs.close(); @@ -200,13 +210,106 @@ public class Totalbus { return despesas; } + public List getDespesaCartaoDebCredComporte(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException{ + List despesas = new ArrayList(); + StringBuilder sb = new StringBuilder(); + 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(" pv.numpuntoventa AS numpuntoventa, "); + sb.append(" ev.tipoeventoextra_id, "); + sb.append(" cdp.formapago_id as formapagoId, "); + sb.append(" ct.numautorizacion as numautorizacion, "); + sb.append(" pte.numsitef as numeroEstabelecimento "); + 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(" left join caja_tarjeta ct on ct.cajatarjeta_id = cdp.cajatarjeta_id "); + sb.append(" left join ptovta_empresa pte on pte.puntoventa_id = pv.puntoventa_id and pte.empresa_id = e.empresa_id "); + sb.append(" where "); + sb.append(" cd.feccorte = ? "); + adicionaFiltroQuery(puntoVentaId, sb, " and cd.puntoventa_id = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); + sb.append(" and cd.activo = 1 "); + sb.append(" and cdp.formapago_id in (2,3) "); + sb.append(" group by "); + sb.append(" cd.feccorte, "); + sb.append(" e.empresa_id, "); + sb.append(" pv.puntoventa_id, "); + sb.append(" tee.contacontabil, "); + sb.append(" pv.numpuntoventa, ev.tipoeventoextra_id, "); + sb.append(" cdp.formapago_id, "); + sb.append(" ct.numautorizacion, "); + sb.append(" pte.numsitef "); + + PreparedStatement stmt = null; + ResultSet rs = null; + + Date fecha = fechaParam; + if (fechaParam == null) { + fecha = getData(); + } + + try { + stmt = getConnection().prepareStatement(sb.toString()); + stmt.setDate(1, new java.sql.Date(fecha.getTime())); + rs = stmt.executeQuery(); + + while (rs.next()) { + DespesaReceitaComporte despesa = new DespesaReceitaComporte(); + despesa.setCodigoEmpresa(rs.getInt(2)); + despesa.setCodigoReceitaDespesa(rs.getString(5)); + despesa.setDataLancamento(rs.getDate(1)); + despesa.setDataMovimento(rs.getDate(1)); + despesa.setLocalArrecadacao(rs.getString(6)); + if (rs.getBigDecimal(4).signum() == -1) { + despesa.setIdentificadorReceitaDespesa("R"); + despesa.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); + } else { + despesa.setIdentificadorReceitaDespesa("D"); + despesa.setValorLancamento(df.format(rs.getBigDecimal(4))); + } + if (incluiTipoPagamentoTurismoBGM) { + despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); + } + despesa.setFormaPagamentoId(rs.getString("formapagoId")); + despesa.setCodigoAutorizacao(rs.getString("numautorizacion")); + despesa.setNumeroEstabelecimento(rs.getString("numeroEstabelecimento")); + despesas.add(despesa); + } + } catch (Exception e) { + log.error(e.toString(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas Cartão Crédito/Débito"); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error("", ignore); + } + try { + stmt.close(); + } catch (Exception ignore) { + log.error("", ignore); + } + } + return despesas; + } + private void adicionaFiltroQuery(final Integer valor, StringBuilder sb, String filtroSQL, Boolean adicionar) { if (adicionar) { sb.append(filtroSQL + valor); } } - public List getReceitas(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) { + public List getReceitas(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { List despesas = new ArrayList(); StringBuilder sb = new StringBuilder(); sb.append(" select "); @@ -275,6 +378,7 @@ public class Totalbus { } } catch (Exception e) { log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Receitas"); } finally { try { rs.close(); @@ -290,7 +394,7 @@ public class Totalbus { return despesas; } - public List getDespesas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) { + public List getDespesas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { List despesas = new ArrayList(); StringBuilder sb = new StringBuilder(); sb.append(" select "); @@ -350,6 +454,7 @@ public class Totalbus { } } catch (Exception e) { log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas"); } finally { try { rs.close(); @@ -365,7 +470,7 @@ public class Totalbus { return despesas; } - public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) { + public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { List depositos = new ArrayList(); StringBuilder strFechamentos = new StringBuilder(); @@ -439,6 +544,7 @@ public class Totalbus { log.debug("Total depósitos: " + soma); } catch (Exception e) { log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Depósitos"); } finally { try { pstmtFechamentos.close(); @@ -568,4 +674,10 @@ public class Totalbus { public void setEmpresas(List empresas) { this.empresas = empresas; } + + public void setIsReceitasDespesasComporte(Boolean isReceitasDespesasComporte) { + this.isReceitasDespesasComporte = isReceitasDespesasComporte; + } + + } diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 2d5e80ac3..3fdd2c8b4 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -7,29 +7,29 @@ import java.util.List; import org.apache.commons.lang.StringUtils; 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 - private String localArrecadação; // 017 005 Alfanumérico - private final String numeroDaGuia = " "; // 022 025 Alfanumérico - private String dataMovimento; // 047 010 Alfanumérico - private final String usuarioGlobus = "TOTALBUS ";// 057 015 Alfanumérico - private final String turno = "01";// 072 002 Numérico - private String codigoReceitaDespesa;// 074 010 Numérico CONSTANTE CODIGO_RECEITA_DESPESA_GLOBUS - private String identificadorReceitaDespesa;// 084 001 Alfanumérico - private String valorLancamento;// 085 013 Numérico - private final String numeroContratoTurismo = "0000000000";// 098 010 Numérico - private final String numeroReciboTurismo = " ";// 108 010 Alfanumérico - private final String formaPagamentoTurismo = "00";// 118 002 Numérico - private String tipoPagamentoTurismo = "00";// 120 002 Numérico - private String descricaoDetalhada = " ";// 122 100 Alfanumérico - private final String documentoVenda = "000000";// 222 6 Numérico - private final String tipoDocumentoVenda = " ";// 228 1 Alfanumérico - private final String numerodocumentoCPG = "0000000000";// 229 10 Numérico - private final String finalLinha = "*";// 239 1 Alfanumérico - private String formaPagamentoId = "";// 240 Numérico + protected String dataLancamento; // DD/MM/YYYY + protected String codigoEmpresa; // 011 003 Numérico + protected final String codigoFilial = "001"; // 014 003 Numérico + protected String localArrecadação; // 017 005 Alfanumérico + protected final String numeroDaGuia = " "; // 022 025 Alfanumérico + protected String dataMovimento; // 047 010 Alfanumérico + protected final String usuarioGlobus = "TOTALBUS ";// 057 015 Alfanumérico + protected final String turno = "01";// 072 002 Numérico + protected String codigoReceitaDespesa;// 074 010 Numérico CONSTANTE CODIGO_RECEITA_DESPESA_GLOBUS + protected String identificadorReceitaDespesa;// 084 001 Alfanumérico + protected String valorLancamento;// 085 013 Numérico + protected final String numeroContratoTurismo = "0000000000";// 098 010 Numérico + protected final String numeroReciboTurismo = " ";// 108 010 Alfanumérico + protected final String formaPagamentoTurismo = "00";// 118 002 Numérico + protected String tipoPagamentoTurismo = "00";// 120 002 Numérico + protected String descricaoDetalhada = " ";// 122 100 Alfanumérico + protected final String documentoVenda = "000000";// 222 6 Numérico + protected final String tipoDocumentoVenda = " ";// 228 1 Alfanumérico + protected final String numerodocumentoCPG = "0000000000";// 229 10 Numérico + protected final String finalLinha = "*";// 239 1 Alfanumérico + protected String formaPagamentoId = "";// 240 Numérico - private SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); + protected SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); public DespesaReceita() { @@ -118,7 +118,7 @@ public class DespesaReceita { this.formaPagamentoId = formaPagamentoId; } - private String truncStr(String str, int size) { + protected String truncStr(String str, int size) { if (str.length() > size) { return str.substring(0, size - 1); } diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java new file mode 100644 index 000000000..c33303789 --- /dev/null +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java @@ -0,0 +1,54 @@ +package com.rjconsultores.integracaoreceitadespesa.entidades; + +import java.util.List; + +import org.apache.commons.lang.StringUtils; + +public class DespesaReceitaComporte extends DespesaReceita { + + protected String numeroEstabelecimento; + protected String codigoAutorizacao; + + @Override + public void preencheLinha(List rows) { + StringBuilder sb = new StringBuilder(); + sb.append(dataLancamento); + sb.append(codigoEmpresa); + sb.append(codigoFilial); + sb.append(localArrecadação.toUpperCase()); + sb.append(numeroDaGuia); + sb.append(dataMovimento); + sb.append(usuarioGlobus); + sb.append(turno); + sb.append(codigoReceitaDespesa); + sb.append(identificadorReceitaDespesa.toUpperCase()); + sb.append(valorLancamento); + sb.append(numeroContratoTurismo); + sb.append(numeroReciboTurismo); + sb.append(getFormaPagamentoTurismo()); + sb.append(getTipoPagamentoTurismo()); + sb.append(descricaoDetalhada); + sb.append(numeroEstabelecimento); + sb.append(codigoAutorizacao); + sb.append(formaPagamentoId); + sb.append(finalLinha); + sb.append(System.getProperty("line.separator")); + rows.add(sb.toString()); + } + + public String getNumeroEstabelecimento() { + return numeroEstabelecimento; + } + + public void setNumeroEstabelecimento(String numeroEstabelecimento) { + this.numeroEstabelecimento = StringUtils.leftPad(numeroEstabelecimento != null ? numeroEstabelecimento : "", 10, "0"); + } + + public String getCodigoAutorizacao() { + return codigoAutorizacao; + } + + public void setCodigoAutorizacao(String codigoAutorizacao) { + this.codigoAutorizacao = StringUtils.rightPad(codigoAutorizacao != null ? truncStr(codigoAutorizacao, 22) : "", 22, " "); + } +} From e442669f40dbef4bbbc57bd4a105c4215ef91c1f Mon Sep 17 00:00:00 2001 From: lucassilverio Date: Mon, 13 May 2019 20:31:50 +0000 Subject: [PATCH 059/121] fixes bug#14319 dev:Wallace qua:Renato git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@93190 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../rjconsultores/integracaoreceitadespesa/dao/Totalbus.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 5eaab8e76..5fd553254 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -316,12 +316,12 @@ public class Totalbus { 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(" COALESCE(sum(cdp.importe),0) AS valor, "); sb.append(" tee.contacontabil AS contacontabil, "); sb.append(" pv.numpuntoventa AS numpuntoventa, "); sb.append(" ev.descinfo as descinfo, "); sb.append(" ev.tipoeventoextra_id, "); - sb.append(" cdp.formapago_id as formapagoId "); + sb.append(" COALESCE(cdp.formapago_id,0) as formapagoId "); sb.append(" from "); sb.append(" caja_diversos cd "); sb.append(" left join evento_extra ev on ev.eventoextra_id = cd.eventoextra_id "); From 2d9f68cda671a3e2f0c196b3949635aa47a1bd9e Mon Sep 17 00:00:00 2001 From: walace Date: Fri, 17 May 2019 12:17:49 +0000 Subject: [PATCH 060/121] fixes bug#14300 qua:renato dev: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@93399 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/entidades/DespesaReceita.java | 5 +++-- .../entidades/DespesaReceitaComporte.java | 7 ++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 3fdd2c8b4..1a6b704ae 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -25,9 +25,10 @@ public class DespesaReceita { protected String descricaoDetalhada = " ";// 122 100 Alfanumérico protected final String documentoVenda = "000000";// 222 6 Numérico protected final String tipoDocumentoVenda = " ";// 228 1 Alfanumérico - protected final String numerodocumentoCPG = "0000000000";// 229 10 Numérico + protected final String numerodocumentoCPG = "000000000";// 229 10 Numérico + protected String formaPagamentoId = "";// 238 Numérico protected final String finalLinha = "*";// 239 1 Alfanumérico - protected String formaPagamentoId = "";// 240 Numérico + protected SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java index c33303789..d4e521931 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java @@ -27,9 +27,10 @@ public class DespesaReceitaComporte extends DespesaReceita { sb.append(numeroReciboTurismo); sb.append(getFormaPagamentoTurismo()); sb.append(getTipoPagamentoTurismo()); - sb.append(descricaoDetalhada); + sb.append(StringUtils.rightPad("", 80, " ")); sb.append(numeroEstabelecimento); sb.append(codigoAutorizacao); + sb.append(StringUtils.rightPad("", 4, "0")); sb.append(formaPagamentoId); sb.append(finalLinha); sb.append(System.getProperty("line.separator")); @@ -41,7 +42,7 @@ public class DespesaReceitaComporte extends DespesaReceita { } public void setNumeroEstabelecimento(String numeroEstabelecimento) { - this.numeroEstabelecimento = StringUtils.leftPad(numeroEstabelecimento != null ? numeroEstabelecimento : "", 10, "0"); + this.numeroEstabelecimento = StringUtils.rightPad(numeroEstabelecimento != null ? numeroEstabelecimento : "", 10, " "); } public String getCodigoAutorizacao() { @@ -49,6 +50,6 @@ public class DespesaReceitaComporte extends DespesaReceita { } public void setCodigoAutorizacao(String codigoAutorizacao) { - this.codigoAutorizacao = StringUtils.rightPad(codigoAutorizacao != null ? truncStr(codigoAutorizacao, 22) : "", 22, " "); + this.codigoAutorizacao = StringUtils.rightPad(codigoAutorizacao != null ? truncStr(codigoAutorizacao, 22) : "", 22, "0"); } } From e05630d1c05342b16835cf5133a10a276a1e8b34 Mon Sep 17 00:00:00 2001 From: walace Date: Mon, 20 May 2019 22:02:00 +0000 Subject: [PATCH 061/121] fixes bug#14300 qua: dev: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@93484 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/dao/Totalbus.java | 4 ++-- .../entidades/DespesaReceita.java | 16 ++++++++-------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 5fd553254..cd8db5c6f 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -210,8 +210,8 @@ public class Totalbus { return despesas; } - public List getDespesaCartaoDebCredComporte(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException{ - List despesas = new ArrayList(); + public List getDespesaCartaoDebCredComporte(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException{ + List despesas = new ArrayList(); StringBuilder sb = new StringBuilder(); sb.append(" select "); sb.append(" cd.feccorte AS fechorvta, "); diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 1a6b704ae..5be49beab 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -22,11 +22,11 @@ public class DespesaReceita { protected final String numeroReciboTurismo = " ";// 108 010 Alfanumérico protected final String formaPagamentoTurismo = "00";// 118 002 Numérico protected String tipoPagamentoTurismo = "00";// 120 002 Numérico - protected String descricaoDetalhada = " ";// 122 100 Alfanumérico - protected final String documentoVenda = "000000";// 222 6 Numérico - protected final String tipoDocumentoVenda = " ";// 228 1 Alfanumérico - protected final String numerodocumentoCPG = "000000000";// 229 10 Numérico - protected String formaPagamentoId = "";// 238 Numérico + protected String descricaoDetalhada = "";// 122 80 Alfanumérico + protected final String documentoVenda = "000000";// 202 6 Numérico + protected final String tipoDocumentoVenda = " ";// 208 1 Alfanumérico + protected final String numerodocumentoCPG = "000000000";// 209 10 Numérico + protected String formaPagamentoId = "";// 218 Numérico protected final String finalLinha = "*";// 239 1 Alfanumérico @@ -72,11 +72,11 @@ public class DespesaReceita { } public void setLocalArrecadacao(Integer localArrecadacao) { - this.localArrecadação = StringUtils.rightPad(localArrecadacao.toString(), 5, " "); + this.localArrecadação = StringUtils.rightPad(localArrecadacao != null ? truncStr(localArrecadacao.toString(), 5) : "", 5, " "); } public void setLocalArrecadacao(String localArrecadacao) { - this.localArrecadação = StringUtils.rightPad(localArrecadacao, 5, " "); + this.localArrecadação = StringUtils.rightPad(localArrecadacao != null ? truncStr(localArrecadacao, 6) : "", 5, ""); } public void setDataMovimento(Date dataMovimento) { @@ -96,7 +96,7 @@ public class DespesaReceita { } public void setDescricaoDetalhada(String desc) { - this.descricaoDetalhada = StringUtils.rightPad(desc != null ? truncStr(desc, 100) : "", 100, " "); + this.descricaoDetalhada = StringUtils.rightPad(desc != null ? truncStr(desc, 80) : "", 80, " "); } public String getFormaPagamentoTurismo() { From 09c1ae23821283882f3e36facbdb88d0bbf6a658 Mon Sep 17 00:00:00 2001 From: walace Date: Mon, 27 May 2019 19:47:05 +0000 Subject: [PATCH 062/121] fixes bug#14248 qua:renato dev:julio git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@93849 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../entidades/DespesaReceita.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 5be49beab..df46bb453 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -20,12 +20,12 @@ public class DespesaReceita { protected String valorLancamento;// 085 013 Numérico protected final String numeroContratoTurismo = "0000000000";// 098 010 Numérico protected final String numeroReciboTurismo = " ";// 108 010 Alfanumérico - protected final String formaPagamentoTurismo = "00";// 118 002 Numérico - protected String tipoPagamentoTurismo = "00";// 120 002 Numérico + protected final String formaPagamentoTurismo = " ";// 118 002 Numérico + protected String tipoPagamentoTurismo = " ";// 120 002 Numérico protected String descricaoDetalhada = "";// 122 80 Alfanumérico protected final String documentoVenda = "000000";// 202 6 Numérico protected final String tipoDocumentoVenda = " ";// 208 1 Alfanumérico - protected final String numerodocumentoCPG = "000000000";// 209 10 Numérico + protected final String numerodocumentoCPG = "0000000000";// 209 10 Numérico protected String formaPagamentoId = "";// 218 Numérico protected final String finalLinha = "*";// 239 1 Alfanumérico @@ -49,14 +49,14 @@ public class DespesaReceita { sb.append(codigoReceitaDespesa); sb.append(identificadorReceitaDespesa.toUpperCase()); sb.append(valorLancamento); - sb.append(numeroContratoTurismo); + sb.append(StringUtils.rightPad("", 10, " ")); sb.append(numeroReciboTurismo); sb.append(getFormaPagamentoTurismo()); sb.append(getTipoPagamentoTurismo()); sb.append(descricaoDetalhada); sb.append(documentoVenda); sb.append(tipoDocumentoVenda); - sb.append(numerodocumentoCPG); + sb.append(StringUtils.rightPad("", 10, "0")); sb.append(formaPagamentoId); sb.append(finalLinha); sb.append(System.getProperty("line.separator")); @@ -96,7 +96,7 @@ public class DespesaReceita { } public void setDescricaoDetalhada(String desc) { - this.descricaoDetalhada = StringUtils.rightPad(desc != null ? truncStr(desc, 80) : "", 80, " "); + this.descricaoDetalhada = StringUtils.rightPad(desc != null ? truncStr(desc, 100) : "", 100, " "); } public String getFormaPagamentoTurismo() { @@ -108,7 +108,7 @@ public class DespesaReceita { } public void setTipoPagamentoTurismo(String tipoPagamentoTurismo) { - this.tipoPagamentoTurismo = StringUtils.leftPad(tipoPagamentoTurismo, 2, "0"); + this.tipoPagamentoTurismo = StringUtils.leftPad(tipoPagamentoTurismo, 2, " "); } public String getFormaPagamentoId() { From 9dd6cfc80eac53aa89e6ddc778fce5172a3d1293 Mon Sep 17 00:00:00 2001 From: aristides Date: Fri, 7 Jun 2019 14:08:53 +0000 Subject: [PATCH 063/121] fixes bug#14565 dev:Wallace qua:Renato git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@94262 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../entidades/DespesaReceita.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index df46bb453..2cd938bb5 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -26,7 +26,7 @@ public class DespesaReceita { protected final String documentoVenda = "000000";// 202 6 Numérico protected final String tipoDocumentoVenda = " ";// 208 1 Alfanumérico protected final String numerodocumentoCPG = "0000000000";// 209 10 Numérico - protected String formaPagamentoId = "";// 218 Numérico + protected String formaPagamentoId = "0";// 218 Numérico protected final String finalLinha = "*";// 239 1 Alfanumérico @@ -53,10 +53,10 @@ public class DespesaReceita { sb.append(numeroReciboTurismo); sb.append(getFormaPagamentoTurismo()); sb.append(getTipoPagamentoTurismo()); - sb.append(descricaoDetalhada); + sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(descricaoDetalhada) ? truncStr(descricaoDetalhada, 100) : "", 100, " ")); sb.append(documentoVenda); sb.append(tipoDocumentoVenda); - sb.append(StringUtils.rightPad("", 10, "0")); + sb.append(StringUtils.rightPad("", 9, "0")); sb.append(formaPagamentoId); sb.append(finalLinha); sb.append(System.getProperty("line.separator")); @@ -92,11 +92,11 @@ public class DespesaReceita { } public void setValorLancamento(String valorLancamento) { - this.valorLancamento = StringUtils.leftPad(valorLancamento.replace(",", "").replace(".", ""), 13, "0"); + this.valorLancamento = StringUtils.leftPad(valorLancamento!=null?truncStr(valorLancamento.replace(",", ""), 100):valorLancamento.replace(",", "").replace(".", ""), 13, "0"); } public void setDescricaoDetalhada(String desc) { - this.descricaoDetalhada = StringUtils.rightPad(desc != null ? truncStr(desc, 100) : "", 100, " "); + this.descricaoDetalhada = StringUtils.rightPad(StringUtils.isNotEmpty(desc) ? truncStr(desc, 100) : "", 100, " "); } public String getFormaPagamentoTurismo() { @@ -116,7 +116,7 @@ public class DespesaReceita { } public void setFormaPagamentoId(String formaPagamentoId) { - this.formaPagamentoId = formaPagamentoId; + this.formaPagamentoId = StringUtils.leftPad(StringUtils.isNotEmpty(formaPagamentoId) ? truncStr(formaPagamentoId.toString(), 1) : "", 1, "0"); } protected String truncStr(String str, int size) { From a510c2ef2700d115161c01fdde68db6e14bef72e Mon Sep 17 00:00:00 2001 From: walace Date: Mon, 10 Jun 2019 19:19:00 +0000 Subject: [PATCH 064/121] fixes bug#14248 qua:renato dev:julio git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@94347 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/dao/Totalbus.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index cd8db5c6f..ea177a283 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -47,11 +47,13 @@ public class Totalbus { log.debug("gerando despesas..."); despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); log.debug("gerando despesas cartão..."); - if (!isReceitasDespesasComporte){ - despesasReceitas.addAll(getDespesaCartaoDebCred(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); - } else { + + if (isReceitasDespesasComporte){ despesasReceitas.addAll(getDespesaCartaoDebCredComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + } else { + despesasReceitas.addAll(getDespesaCartaoDebCred(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); } + log.debug("gerando receitas..."); despesasReceitas.addAll(getReceitas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); From 644549529c8f6c60afee68c8c564568557a11a0e Mon Sep 17 00:00:00 2001 From: aristides Date: Thu, 13 Jun 2019 14:34:51 +0000 Subject: [PATCH 065/121] fixes bug#14565 dev:JULIO qua: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@94557 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../BGMApplication.java | 11 +++++-- .../dao/Totalbus.java | 33 +++++++++++++++++-- .../entidades/DespesaReceita.java | 2 +- 3 files changed, 40 insertions(+), 6 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java index 7b8c373df..a7f0fcff9 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java @@ -32,6 +32,8 @@ public class BGMApplication { private boolean isReceitasDespesasComporte; + private boolean isCodReceitaFixoBgm; + private BGMApplication(){ } @@ -70,7 +72,12 @@ public class BGMApplication { log.error("", e); } return props; - } + } + + public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean isReceitasDespesasComporte,boolean isCodReceitaFixoBgm) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ + this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; + return executaExportacao(dataInicio, dataFinal, diretorio, empresaId, puntoVentaId, con, pathGravacaoExternaArquivos, incluiTipoPagamentoTurismoBGM); + } public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean isReceitasDespesasComporte) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ this.isReceitasDespesasComporte = isReceitasDespesasComporte; @@ -85,7 +92,7 @@ public class BGMApplication { throw new IllegalArgumentException("o parâmetro puntoVentaId é obrigatório!"); } excluirArquivosZip(diretorio); - Totalbus totalbus = new Totalbus(con, isReceitasDespesasComporte); + Totalbus totalbus = new Totalbus(con, isReceitasDespesasComporte,isCodReceitaFixoBgm); if (totalbus.isConstanteBloqueioMenorQueData(empresaId, dataFinal)){ totalbus.updateDataBloqueio(empresaId, dataFinal); } diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index ea177a283..eee86110e 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -30,6 +30,8 @@ public class Totalbus { private List pontosVenda = new ArrayList(); private List empresas = new ArrayList(); + private Boolean isCodReceitaFixoBgm = false; + private Boolean isReceitasDespesasComporte = false; private DecimalFormat df = new DecimalFormat("#0.00"); @@ -40,6 +42,14 @@ public class Totalbus { loadEmpresas(); loadPuntosVenta(); } + + public Totalbus(Connection con, Boolean isReceitasDespesasComporte,Boolean isCodReceitaFixoBgm) { + this.conn = con; + this.isReceitasDespesasComporte = isReceitasDespesasComporte; + this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; + loadEmpresas(); + loadPuntosVenta(); + } public List getDespesasReceitas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException{ log.debug("gerando depósitos..."); @@ -135,7 +145,11 @@ public class Totalbus { sb.append(" e.empresa_id AS empresa, "); sb.append(" pv.puntoventa_id AS puntoventaId, "); sb.append(" sum(cdp.importe) AS valor, "); + if(isCodReceitaFixoBgm){ + sb.append(" case when cdp.formapago_id = 2 then 802 else 803 end, "); + }else{ sb.append(" tee.contacontabil AS contacontabil, "); + } sb.append(" pv.numpuntoventa AS numpuntoventa, "); sb.append(" ev.tipoeventoextra_id, "); sb.append(" cdp.formapago_id as formapagoId "); @@ -157,7 +171,11 @@ public class Totalbus { sb.append(" cd.feccorte, "); sb.append(" e.empresa_id, "); sb.append(" pv.puntoventa_id, "); - sb.append(" tee.contacontabil, "); + if(isCodReceitaFixoBgm){ + sb.append(" case when cdp.formapago_id = 2 then 802 else 803 end, "); + }else{ + sb.append(" tee.contacontabil, "); + } sb.append(" pv.numpuntoventa, ev.tipoeventoextra_id, "); sb.append(" cdp.formapago_id "); @@ -371,7 +389,12 @@ public class Totalbus { receita.setIdentificadorReceitaDespesa("R"); receita.setValorLancamento(df.format(rs.getBigDecimal(4))); } - receita.setDescricaoDetalhada(rs.getString(7)); + + String desc =rs.getString(7); + if(StringUtils.isNotBlank(desc) && desc.contains("\t")){ + desc = desc.replaceAll("\t", ""); + } + receita.setDescricaoDetalhada(desc); if (incluiTipoPagamentoTurismoBGM) { receita.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); } @@ -447,7 +470,11 @@ public class Totalbus { despesa.setLocalArrecadacao(rs.getString(3)); despesa.setValorLancamento(df.format(rs.getBigDecimal(4).doubleValue() * -1)); despesa.setIdentificadorReceitaDespesa("D"); - despesa.setDescricaoDetalhada(rs.getString(6)); + String desc =rs.getString(6); + if(StringUtils.isNotBlank(desc) && desc.contains("\t")){ + desc = desc.replaceAll("\t", ""); + } + despesa.setDescricaoDetalhada(desc); if (incluiTipoPagamentoTurismoBGM) { despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); } diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 2cd938bb5..c8aac1f41 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -108,7 +108,7 @@ public class DespesaReceita { } public void setTipoPagamentoTurismo(String tipoPagamentoTurismo) { - this.tipoPagamentoTurismo = StringUtils.leftPad(tipoPagamentoTurismo, 2, " "); + this.tipoPagamentoTurismo = StringUtils.leftPad(StringUtils.isNotEmpty(tipoPagamentoTurismo) ? truncStr(tipoPagamentoTurismo, 2):tipoPagamentoTurismo, 2, " "); } public String getFormaPagamentoId() { From dfde6ecafc6613e11be57f296373fd98b5e491d6 Mon Sep 17 00:00:00 2001 From: fabio Date: Fri, 28 Jun 2019 19:24:01 +0000 Subject: [PATCH 066/121] fixes bug#14766 dev: qua: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@95208 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/entidades/DespesaReceita.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index c8aac1f41..153b3e204 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -92,7 +92,7 @@ public class DespesaReceita { } public void setValorLancamento(String valorLancamento) { - this.valorLancamento = StringUtils.leftPad(valorLancamento!=null?truncStr(valorLancamento.replace(",", ""), 100):valorLancamento.replace(",", "").replace(".", ""), 13, "0"); + this.valorLancamento = StringUtils.leftPad(valorLancamento!=null?truncStr(valorLancamento.replace(",", "").replace(".", ""), 100):valorLancamento.replace(",", "").replace(".", ""), 13, "0"); } public void setDescricaoDetalhada(String desc) { From d42ab72b68831d96194453baafa760637025b31e Mon Sep 17 00:00:00 2001 From: fabio Date: Fri, 5 Jul 2019 20:19:46 +0000 Subject: [PATCH 067/121] =?UTF-8?q?fixes=20bug#14768=20dev:=20Lucas=20Silv?= =?UTF-8?q?=C3=A9rio=20qua:?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@95481 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../BGMApplication.java | 5 +++++ .../integracaoreceitadespesa/dao/Totalbus.java | 18 ++++++++++++------ .../entidades/DespesaReceita.java | 2 +- 3 files changed, 18 insertions(+), 7 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java index a7f0fcff9..53c529f40 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java @@ -57,6 +57,7 @@ public class BGMApplication { return null; } } + public static BGMApplication getInstance(){ if (instance == null){ instance = new BGMApplication(); @@ -142,6 +143,7 @@ public class BGMApplication { } } } + private void copiarArquivoExternamente(File arquivoBGM,String pathGravacaoExternaArquivos){ if (pathGravacaoExternaArquivos == null){ log.info("Path externo para gravação de arquivos não configurado"); @@ -161,6 +163,7 @@ public class BGMApplication { log.error(String.format("Erro ao gravar o arquivo %s no diretorio %s", arquivoBGM.getName(),pathGravacaoExternaArquivos) ,e); } } + private void copyFileUsingChannel(File source, File dest) throws IOException { FileChannel sourceChannel = null; @@ -174,6 +177,7 @@ public class BGMApplication { destChannel.close(); } } + private void excluirArquivosZip(String diretorio){ File pasta = new File(diretorio); File[] arquivos = pasta.listFiles(); @@ -249,4 +253,5 @@ public class BGMApplication { e.printStackTrace(); } } + } diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index eee86110e..1383ca7bb 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -145,11 +145,13 @@ public class Totalbus { sb.append(" e.empresa_id AS empresa, "); sb.append(" pv.puntoventa_id AS puntoventaId, "); sb.append(" sum(cdp.importe) AS valor, "); + if(isCodReceitaFixoBgm){ - sb.append(" case when cdp.formapago_id = 2 then 802 else 803 end, "); + sb.append(" case when cdp.formapago_id = 2 then 802 else 803 end, "); }else{ - sb.append(" tee.contacontabil AS contacontabil, "); + sb.append(" tee.contacontabil AS contacontabil, "); } + sb.append(" pv.numpuntoventa AS numpuntoventa, "); sb.append(" ev.tipoeventoextra_id, "); sb.append(" cdp.formapago_id as formapagoId "); @@ -167,15 +169,18 @@ public class Totalbus { adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); sb.append(" and cd.activo = 1 "); sb.append(" and cdp.formapago_id in (2,3) "); + sb.append(" and tee.indtipo = 0 "); sb.append(" group by "); sb.append(" cd.feccorte, "); sb.append(" e.empresa_id, "); sb.append(" pv.puntoventa_id, "); + if(isCodReceitaFixoBgm){ sb.append(" case when cdp.formapago_id = 2 then 802 else 803 end, "); }else{ sb.append(" tee.contacontabil, "); } + sb.append(" pv.numpuntoventa, ev.tipoeventoextra_id, "); sb.append(" cdp.formapago_id "); @@ -200,10 +205,10 @@ public class Totalbus { despesa.setDataMovimento(rs.getDate(1)); despesa.setLocalArrecadacao(rs.getString(6)); if (rs.getBigDecimal(4).signum() == -1) { - despesa.setIdentificadorReceitaDespesa("R"); + despesa.setIdentificadorReceitaDespesa("D"); despesa.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); } else { - despesa.setIdentificadorReceitaDespesa("D"); + despesa.setIdentificadorReceitaDespesa("R"); despesa.setValorLancamento(df.format(rs.getBigDecimal(4))); } if (incluiTipoPagamentoTurismoBGM) { @@ -260,6 +265,7 @@ public class Totalbus { adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); sb.append(" and cd.activo = 1 "); sb.append(" and cdp.formapago_id in (2,3) "); + sb.append(" and tee.indtipo = 0 "); sb.append(" group by "); sb.append(" cd.feccorte, "); sb.append(" e.empresa_id, "); @@ -291,10 +297,10 @@ public class Totalbus { despesa.setDataMovimento(rs.getDate(1)); despesa.setLocalArrecadacao(rs.getString(6)); if (rs.getBigDecimal(4).signum() == -1) { - despesa.setIdentificadorReceitaDespesa("R"); + despesa.setIdentificadorReceitaDespesa("D"); despesa.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); } else { - despesa.setIdentificadorReceitaDespesa("D"); + despesa.setIdentificadorReceitaDespesa("R"); despesa.setValorLancamento(df.format(rs.getBigDecimal(4))); } if (incluiTipoPagamentoTurismoBGM) { diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 153b3e204..ae494f950 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -92,7 +92,7 @@ public class DespesaReceita { } public void setValorLancamento(String valorLancamento) { - this.valorLancamento = StringUtils.leftPad(valorLancamento!=null?truncStr(valorLancamento.replace(",", "").replace(".", ""), 100):valorLancamento.replace(",", "").replace(".", ""), 13, "0"); + this.valorLancamento = StringUtils.leftPad(valorLancamento!=null?truncStr(valorLancamento.replace(",", "").replace(".", ""), 100):"", 13, "0"); } public void setDescricaoDetalhada(String desc) { From 32ad10e1dfc4b87ca76601b17ce82374f19ac72f Mon Sep 17 00:00:00 2001 From: "daniel.zauli" Date: Mon, 16 Sep 2019 12:13:09 +0000 Subject: [PATCH 068/121] 0015494: Progresso Recife ( GLPI 15370) -Erro - Receita / Despesa bug#0015494 dev:Silverio qua:Ju git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@97590 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../entidades/DespesaReceitaComporte.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java index d4e521931..52ffc9a9c 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java @@ -28,10 +28,11 @@ public class DespesaReceitaComporte extends DespesaReceita { sb.append(getFormaPagamentoTurismo()); sb.append(getTipoPagamentoTurismo()); sb.append(StringUtils.rightPad("", 80, " ")); - sb.append(numeroEstabelecimento); - sb.append(codigoAutorizacao); - sb.append(StringUtils.rightPad("", 4, "0")); - sb.append(formaPagamentoId); + sb.append(StringUtils.rightPad(numeroEstabelecimento, 10, "0").substring(0,10)); + sb.append(StringUtils.rightPad(codigoAutorizacao, 6, "0").substring(0,6)); + sb.append(StringUtils.rightPad("", 16, " ")); + sb.append(StringUtils.rightPad("", 3, "0")); + sb.append(StringUtils.leftPad(formaPagamentoId, 2, "0")); sb.append(finalLinha); sb.append(System.getProperty("line.separator")); rows.add(sb.toString()); From 15171c76bbcb059c956b71363d0da63f06f236e3 Mon Sep 17 00:00:00 2001 From: "daniel.zauli" Date: Mon, 16 Sep 2019 12:35:15 +0000 Subject: [PATCH 069/121] =?UTF-8?q?0014830:=20Altera=C3=A7=C3=A3o=20Campos?= =?UTF-8?q?=20Relat=C3=B3rio=20RECEITA/DESPESAS=20DIVERSAS=20e=20DEP=C3=93?= =?UTF-8?q?SITOS=20BANC=C3=81RIOS=20fixes=20bug#0014830=20dev:Silverio=20q?= =?UTF-8?q?ua:Ju?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@97592 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/entidades/DespesaReceita.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index ae494f950..5f95a414a 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -56,7 +56,7 @@ public class DespesaReceita { sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(descricaoDetalhada) ? truncStr(descricaoDetalhada, 100) : "", 100, " ")); sb.append(documentoVenda); sb.append(tipoDocumentoVenda); - sb.append(StringUtils.rightPad("", 9, "0")); + sb.append(StringUtils.rightPad("", 9, "0")); sb.append(formaPagamentoId); sb.append(finalLinha); sb.append(System.getProperty("line.separator")); From e63bbc012f09304347745363d7bdd6c58cb37bf6 Mon Sep 17 00:00:00 2001 From: alberto Date: Wed, 25 Sep 2019 18:47:01 +0000 Subject: [PATCH 070/121] =?UTF-8?q?Convers=C3=A3o=20ADM=20para=20maven=20b?= =?UTF-8?q?ug#15923=20dev:trevezani=20qua:?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@97830 d1611594-4594-4d17-8e1d-87c2c4800839 --- pom.xml | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 pom.xml diff --git a/pom.xml b/pom.xml new file mode 100644 index 000000000..93053f89d --- /dev/null +++ b/pom.xml @@ -0,0 +1,47 @@ + + 4.0.0 + br.com.rjconsultores + IntegracaoReceitaDespesa + 0.0.1-SNAPSHOT + + + + commons-logging + commons-logging + 1.1.1 + + + log4j + log4j + 1.2.16 + + + commons-lang + commons-lang + 2.0 + + + + + src + + + src + + **/*.java + + + + + + maven-compiler-plugin + 3.5.1 + + 1.6 + 1.6 + + + + + \ No newline at end of file From f5ee1c701afd09df1b179e17a6b3ca6528f65fe0 Mon Sep 17 00:00:00 2001 From: alberto Date: Thu, 26 Sep 2019 18:00:10 +0000 Subject: [PATCH 071/121] =?UTF-8?q?Convers=C3=A3o=20ADM=20para=20maven=20b?= =?UTF-8?q?ug#15923=20dev:trevezani=20qua:?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@97874 d1611594-4594-4d17-8e1d-87c2c4800839 --- pom.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 93053f89d..648c754b9 100644 --- a/pom.xml +++ b/pom.xml @@ -36,10 +36,11 @@ maven-compiler-plugin - 3.5.1 + 3.3 1.6 1.6 + Cp1252 From 19b19c6e5a891e697db3b9bb80ecc3af09b768ca Mon Sep 17 00:00:00 2001 From: thiago Date: Fri, 27 Sep 2019 20:03:11 +0000 Subject: [PATCH 072/121] =?UTF-8?q?bug#15923=20dev:Alberto=20qua:=20Melhor?= =?UTF-8?q?ias=20em=20configura=C3=A7=C3=A3o=20de=20projetos=20adm?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@97922 d1611594-4594-4d17-8e1d-87c2c4800839 --- .classpath | 24 +++++++++++++++--------- pom.xml | 6 +----- 2 files changed, 16 insertions(+), 14 deletions(-) diff --git a/.classpath b/.classpath index 35667b972..4e149f946 100644 --- a/.classpath +++ b/.classpath @@ -1,15 +1,21 @@ - - - - - - + - + + - - + + + + + + + + + + + + diff --git a/pom.xml b/pom.xml index 648c754b9..f419be3a6 100644 --- a/pom.xml +++ b/pom.xml @@ -6,11 +6,6 @@ 0.0.1-SNAPSHOT - - commons-logging - commons-logging - 1.1.1 - log4j log4j @@ -21,6 +16,7 @@ commons-lang 2.0 + From 66f2ca444404931b0c3ef59286d389e53d543a87 Mon Sep 17 00:00:00 2001 From: "daniel.zauli" Date: Thu, 27 Feb 2020 21:09:02 +0000 Subject: [PATCH 073/121] =?UTF-8?q?0018274:=20Rode=20Rotas=20-=20(GLPI=20-?= =?UTF-8?q?=2022461)=20Importa=C3=A7=C3=A3o=20Receitas/Despesas=20fixes=20?= =?UTF-8?q?bug#0018274=20dev:Fabio=20qua:evidencia=20anexa?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@100370 d1611594-4594-4d17-8e1d-87c2c4800839 --- src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 1383ca7bb..fb41c7e9f 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -451,6 +451,7 @@ public class Totalbus { adicionaFiltroQuery(puntoventaId, sb, " and cd.puntoventa_id = ", puntoventaId != null && !puntoventaId.equals(-1)); adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); sb.append(" and cd.activo = 1 "); + sb.append(" AND cdp.formapago_id not IN (2,3) "); 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 "); From 0350a867872cc3cb88a42149aad9b1c9829de5b1 Mon Sep 17 00:00:00 2001 From: fabio Date: Fri, 18 Dec 2020 21:17:33 +0000 Subject: [PATCH 075/121] fixes bug#20974 dev: Valvevir qua: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@104794 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../dao/Totalbus.java | 96 ++++++++++++++++++- 1 file changed, 93 insertions(+), 3 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index fb41c7e9f..957fd879f 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -60,12 +60,14 @@ public class Totalbus { if (isReceitasDespesasComporte){ despesasReceitas.addAll(getDespesaCartaoDebCredComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + log.debug("gerando receitas..."); + despesasReceitas.addAll(getReceitasComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + } else { despesasReceitas.addAll(getDespesaCartaoDebCred(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + log.debug("gerando receitas..."); + despesasReceitas.addAll(getReceitas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); } - - log.debug("gerando receitas..."); - despesasReceitas.addAll(getReceitas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); List rows = new ArrayList(); @@ -424,6 +426,94 @@ public class Totalbus { } return despesas; } + + public List getReceitasComporte(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { + List despesas = new ArrayList(); + StringBuilder sb = new StringBuilder(); + 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(" COALESCE(cdp.importe,0) AS valor, "); + sb.append(" tee.contacontabil AS contacontabil, "); + sb.append(" pv.numpuntoventa AS numpuntoventa, "); + sb.append(" ev.descinfo as descinfo, "); + sb.append(" ev.tipoeventoextra_id, "); + sb.append(" COALESCE(cdp.formapago_id,0) as formapagoId, "); + sb.append(" ct.numautorizacion AS numautorizacion "); + 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(" LEFT JOIN caja_tarjeta ct ON ct.cajatarjeta_id = cdp.cajatarjeta_id "); + sb.append(" where "); + sb.append(" cd.feccorte = ? "); + adicionaFiltroQuery(puntoVentaId, sb, " and cd.puntoventa_id = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); + sb.append(" and cd.activo = 1 "); + sb.append(" and tee.indtipo = 1 "); + + + PreparedStatement stmt = null; + ResultSet rs = null; + + Date fecha = fechaParam; + if (fechaParam == null) { + fecha = getData(); + } + + try { + stmt = getConnection().prepareStatement(sb.toString()); + stmt.setDate(1, new java.sql.Date(fecha.getTime())); + rs = stmt.executeQuery(); + + while (rs.next()) { + DespesaReceita receita = new DespesaReceita(); + receita.setCodigoEmpresa(rs.getInt(2)); + receita.setCodigoReceitaDespesa(rs.getString(5)); + receita.setDataLancamento(rs.getDate(1)); + receita.setDataMovimento(rs.getDate(1)); + receita.setLocalArrecadacao(rs.getString(6)); + if (rs.getBigDecimal(4).signum() == -1) { + receita.setIdentificadorReceitaDespesa("D"); + receita.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); + } else { + receita.setIdentificadorReceitaDespesa("R"); + receita.setValorLancamento(df.format(rs.getBigDecimal(4))); + } + + String desc =rs.getString(7); + if(StringUtils.isNotBlank(desc) && desc.contains("\t")){ + desc = desc.replaceAll("\t", ""); + } + receita.setDescricaoDetalhada(desc); + if (incluiTipoPagamentoTurismoBGM) { + receita.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); + } + receita.setFormaPagamentoId(rs.getString("formapagoId")); + despesas.add(receita); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Receitas"); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + stmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return despesas; + } public List getDespesas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { List despesas = new ArrayList(); From 725b37fd949bc76183e2465d4a94abb146971a01 Mon Sep 17 00:00:00 2001 From: walace Date: Wed, 3 Feb 2021 00:14:10 +0000 Subject: [PATCH 076/121] fixes bug#21109 qua: dev: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@105273 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../BGMApplication.java | 9 +- .../dao/Totalbus.java | 290 +++++++++++++++++- 2 files changed, 292 insertions(+), 7 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java index 53c529f40..5b13f61e6 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java @@ -34,6 +34,8 @@ public class BGMApplication { private boolean isCodReceitaFixoBgm; + private boolean isReceitasDespesasOuroPrata; + private BGMApplication(){ } @@ -75,12 +77,13 @@ public class BGMApplication { return props; } - public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean isReceitasDespesasComporte,boolean isCodReceitaFixoBgm) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ + public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean isReceitasDespesasComporte,boolean isCodReceitaFixoBgm, boolean isReceitasDespesasOuroPrata) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; + this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; return executaExportacao(dataInicio, dataFinal, diretorio, empresaId, puntoVentaId, con, pathGravacaoExternaArquivos, incluiTipoPagamentoTurismoBGM); } - public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean isReceitasDespesasComporte) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ + public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean isReceitasDespesasComporte, boolean isReceitasDespesasOuroPrata) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ this.isReceitasDespesasComporte = isReceitasDespesasComporte; return executaExportacao(dataInicio, dataFinal, diretorio, empresaId, puntoVentaId, con, pathGravacaoExternaArquivos, incluiTipoPagamentoTurismoBGM); } @@ -93,7 +96,7 @@ public class BGMApplication { throw new IllegalArgumentException("o parâmetro puntoVentaId é obrigatório!"); } excluirArquivosZip(diretorio); - Totalbus totalbus = new Totalbus(con, isReceitasDespesasComporte,isCodReceitaFixoBgm); + Totalbus totalbus = new Totalbus(con, isReceitasDespesasComporte,isCodReceitaFixoBgm, isReceitasDespesasOuroPrata ); if (totalbus.isConstanteBloqueioMenorQueData(empresaId, dataFinal)){ totalbus.updateDataBloqueio(empresaId, dataFinal); } diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 957fd879f..30bd99340 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -4,10 +4,12 @@ import java.math.BigDecimal; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; +import java.sql.SQLException; import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; +import java.util.Collection; import java.util.Date; import java.util.List; @@ -34,18 +36,22 @@ public class Totalbus { private Boolean isReceitasDespesasComporte = false; + private Boolean isReceitasDespesasOuroPrata= false; + private DecimalFormat df = new DecimalFormat("#0.00"); - public Totalbus(Connection con, Boolean isReceitasDespesasComporte) { + public Totalbus(Connection con, Boolean isReceitasDespesasComporte, Boolean isReceitasDespesasOuroPrata) { this.conn = con; this.isReceitasDespesasComporte = isReceitasDespesasComporte; + this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; loadEmpresas(); loadPuntosVenta(); } - public Totalbus(Connection con, Boolean isReceitasDespesasComporte,Boolean isCodReceitaFixoBgm) { + public Totalbus(Connection con, Boolean isReceitasDespesasComporte,Boolean isCodReceitaFixoBgm, Boolean isReceitasDespesasOuroPrata) { this.conn = con; this.isReceitasDespesasComporte = isReceitasDespesasComporte; + this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; loadEmpresas(); loadPuntosVenta(); @@ -63,10 +69,13 @@ public class Totalbus { log.debug("gerando receitas..."); despesasReceitas.addAll(getReceitasComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); - } else { + }else { despesasReceitas.addAll(getDespesaCartaoDebCred(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); log.debug("gerando receitas..."); despesasReceitas.addAll(getReceitas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + if(isReceitasDespesasOuroPrata) { + getContaCorrenteAgencia(despesasReceitas, puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM); + } } List rows = new ArrayList(); @@ -77,6 +86,175 @@ public class Totalbus { return rows; } + private void getContaCorrenteAgencia(List despesasReceitas, Integer puntoVentaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { + despesasReceitas.addAll(buscarFormasPagamentoContaCorrenteAgencia(puntoVentaId, empresaId, fechaParam,incluiTipoPagamentoTurismoBGM)); + despesasReceitas.addAll(buscarComissoesContaCorrenteAgencia(puntoVentaId, empresaId, fechaParam,incluiTipoPagamentoTurismoBGM)); + } + + private Collection buscarFormasPagamentoContaCorrenteAgencia(Integer puntoVentaId, + Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) + throws IntegracaoReceitaDespesaException { + + List despesas = new ArrayList(); + + StringBuilder sb = new StringBuilder(); + + SimpleDateFormat sf = new SimpleDateFormat("dd/MM/yyyy"); + String fechaStr = sf.format(fechaParam); + if (fechaParam == null) { + fechaStr = sf.format(getData()); + } + + + sb.append("SELECT SUM(precioboleto) AS precioBoleto, "); + sb.append("formaPagoId, "); + sb.append("descripcionFormaPago, "); + sb.append("empresa, "); + sb.append("puntoventaId, "); + sb.append("contacontabil, "); + sb.append("numpuntoventa, "); + sb.append("descinfo, "); + sb.append("tipoEventoExtra, "); + sb.append("feccorte AS feccorte "); + sb.append("FROM ("); + sb.append("(SELECT SUM(CASE "); + sb.append(" WHEN c.MOTIVOCANCELACION_ID IS NULL THEN 1 ELSE -1 END * cfp.importe) AS precioBoleto, "); + sb.append("cfp.formapago_id AS formaPagoId, "); + sb.append("fp.DESCPAGO AS descripcionFormaPago, "); + sb.append("e.empresa_id AS empresa, "); + sb.append("ccp.PUNTOVENTA_ID AS puntoventaId, "); + sb.append("tee.contacontabil AS contacontabil, "); + sb.append("pv.numpuntoventa AS numpuntoventa, "); + sb.append("ee.descinfo AS descinfo, "); + sb.append("ee.tipoeventoextra_id AS tipoEventoExtra, "); + sb.append("ccp.feccorte AS feccorte "); + sb.append(" FROM forma_pago fp, caja c "); + sb.append(" left OUTER JOIN motivo_cancelacion mc ON c.motivocancelacion_id = mc.motivocancelacion_id"); + sb.append(" left OUTER JOIN marca m ON c.marca_id = m.marca_id"); + sb.append(" left OUTER JOIN empresa e ON m.empresa_id = e.empresa_id"); + sb.append(" INNER JOIN caja_formapago cfp ON c.caja_id = cfp.caja_id"); + sb.append(" left OUTER JOIN boleto b ON b.boleto_id = c.transacao_id"); + sb.append(" left OUTER JOIN evento_extra ee ON b.boleto_id = ee.boleto_id"); + sb.append(" left JOIN tipo_evento_extra tee ON tee.tipoeventoextra_id = ee.tipoeventoextra_id"); + sb.append(" left JOIN punto_venta pv ON pv.puntoventa_id = c.puntoventa_id and (cfp.activo = 1) "); + sb.append(" INNER JOIN CONTA_CORRENTE_PTOVTA ccp ON e.EMPRESA_ID = ccp.EMPRESA_ID"); + sb.append(" and ccp.PUNTOVENTA_ID = c.PUNTOVENTA_ID"); + sb.append(" and ccp.FECCORTE = c.FECCORTE"); + sb.append(" and ccp.TURNO_ID = c.turno_id"); + sb.append(" and ccp.ACTIVO = 1"); + sb.append(" and c.USUARIO_ID = ccp.USUARIO_ID"); + sb.append(" WHERE cfp.formapago_id = fp.formapago_id"); + sb.append(" and C.INDSTATUSOPERACION = 'F'"); + sb.append(" and c.INDREIMPRESION = 0"); + sb.append(" and c.tipoventa_id <> 6"); + sb.append(" and c.ACTIVO = 1"); + adicionaFiltroQuery(empresaId, sb, " and ccp.EMPRESA_ID = ", empresaId != null); + adicionaFiltroQuery(puntoVentaId, sb, " and ccp.PUNTOVENTA_ID = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + sb.append(" and trunc(ccp.feccorte) = TO_DATE('"+fechaStr+"') "); + sb.append(" GROUP BY cfp.formapago_id,"); + sb.append(" fp.DESCPAGO,"); + sb.append(" e.empresa_id,"); + sb.append(" ccp.PUNTOVENTA_ID,"); + sb.append(" tee.contacontabil,"); + sb.append(" pv.numpuntoventa,"); + sb.append(" ee.descinfo, ee.tipoeventoextra_id, ccp.FECCORTE )"); + sb.append(" UNION"); + sb.append(" (SELECT SUM(cdp.IMPORTE) AS precioBoleto,"); + sb.append(" cdp.formapago_id AS formaPagoId,"); + sb.append(" fp.DESCPAGO AS descripcionFormaPago,"); + sb.append(" e.empresa_id AS empresa,"); + sb.append(" cd.PUNTOVENTA_ID AS puntoventaId,"); + sb.append(" tee.contacontabil AS contacontabil,"); + sb.append(" pv.numpuntoventa AS numpuntoventa,"); + sb.append(" ee.descinfo AS descinfo,"); + sb.append(" ee.tipoeventoextra_id AS tipoEventoExtra, ccp.feccorte AS feccorte "); + sb.append(" FROM CAJA_DIVERSOS cd"); + sb.append(" JOIN CAJA_DIVERSOS_PAGO cdp ON cdp.CAJADIVERSOS_ID = cd.CAJADIVERSOS_ID"); + sb.append(" INNER JOIN forma_pago fp ON fp.formapago_id = cdp.formapago_id"); + sb.append(" INNER JOIN EVENTO_EXTRA EE ON EE.EVENTOEXTRA_ID = cd.EVENTOEXTRA_ID"); + sb.append(" LEFT OUTER JOIN empresa e ON ee.empresa_id = e.empresa_id"); + sb.append(" LEFT JOIN boleto b ON b.boleto_id = ee.boleto_id"); + sb.append(" LEFT OUTER JOIN evento_extra ee ON b.boleto_id = ee.boleto_id"); + sb.append(" LEFT JOIN tipo_evento_extra tee ON tee.tipoeventoextra_id = ee.tipoeventoextra_id"); + sb.append(" LEFT JOIN punto_venta pv ON pv.puntoventa_id = cd.puntoventa_id "); + sb.append(" INNER JOIN CONTA_CORRENTE_PTOVTA ccp ON e.EMPRESA_ID = ccp.EMPRESA_ID "); + sb.append(" AND ccp.PUNTOVENTA_ID = cd.PUNTOVENTA_ID "); + sb.append("AND ccp.FECCORTE = cd.FECCORTE "); + sb.append(" AND ccp.TURNO_ID = cd.turno_id "); + sb.append(" AND cd.USUARIO_ID = ccp.USUARIO_ID "); + sb.append(" WHERE 1 = 1"); + sb.append(" AND cd.ACTIVO = 1"); + sb.append(" AND ccp.ACTIVO = 1"); + sb.append(" AND (ee.boleto_id IS NULL"); + sb.append(" OR ee.boleto_id = b.boleto_id)"); + adicionaFiltroQuery(empresaId, sb, " and ccp.EMPRESA_ID = ", empresaId != null); + adicionaFiltroQuery(puntoVentaId, sb, " and ccp.PUNTOVENTA_ID = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + sb.append(" AND trunc(ccp.feccorte) = TO_DATE('"+fechaStr+"') "); + sb.append(" GROUP BY cdp.formapago_id, fp.DESCPAGO,"); + sb.append(" e.empresa_id, cd.PUNTOVENTA_ID, "); + sb.append(" tee.contacontabil,"); + sb.append(" pv.numpuntoventa, ee.descinfo,"); + sb.append(" ee.tipoeventoextra_id, ccp.FECCORTE )) x "); + sb.append("GROUP BY formaPagoId, descripcionFormaPago, empresa, "); + sb.append(" puntoventaId,"); + sb.append(" contacontabil,"); + sb.append(" numpuntoventa,"); + sb.append(" descinfo,"); + sb.append(" tipoEventoExtra,feccorte "); + sb.append("ORDER BY formaPagoId, descripcionFormaPago"); + + + PreparedStatement stmt = null; + ResultSet rs = null; + + try { + stmt = getConnection().prepareStatement(sb.toString()); + rs = stmt.executeQuery(); + + while (rs.next()) { + DespesaReceita receita = new DespesaReceita(); + receita.setCodigoEmpresa(rs.getInt(4)); + receita.setCodigoReceitaDespesa(rs.getString(6)); + receita.setDataLancamento(rs.getDate(10)); + receita.setDataMovimento(rs.getDate(10)); + receita.setLocalArrecadacao(rs.getString(7)); + if (rs.getBigDecimal(1).signum() == -1) { + receita.setIdentificadorReceitaDespesa("D"); + receita.setValorLancamento(df.format(rs.getBigDecimal(1).multiply(new BigDecimal(-1)))); + } else { + receita.setIdentificadorReceitaDespesa("R"); + receita.setValorLancamento(df.format(rs.getBigDecimal(1))); + } + + String desc =rs.getString(8); + if(StringUtils.isNotBlank(desc) && desc.contains("\t")){ + desc = desc.replaceAll("\t", ""); + } + receita.setDescricaoDetalhada(desc); + if (incluiTipoPagamentoTurismoBGM) { + receita.setTipoPagamentoTurismo(rs.getString("tipoEventoExtra")); + } + receita.setFormaPagamentoId(rs.getString("formaPagoId")); + despesas.add(receita); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Receitas"); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + stmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return despesas; + } + private void loadPuntosVenta() { PreparedStatement pstmt = null; ResultSet rs = null; @@ -105,6 +283,108 @@ public class Totalbus { } } } + + private Collection buscarComissoesContaCorrenteAgencia(Integer puntoVentaId,Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) + throws IntegracaoReceitaDespesaException { + List despesas = new ArrayList(); + + StringBuilder sb = new StringBuilder(); + + SimpleDateFormat sf = new SimpleDateFormat("dd/MM/yyy"); + String fechaStr = sf.format(fechaParam); + if (fechaParam == null) { + fechaStr = sf.format(getData()); + } + + sb.append("SELECT CASE"); + sb.append(" WHEN E.INDRATEIOCOMISSAOGRUPOLINHA = 1"); + sb.append(" AND OP.TIPOOPERACIONCC_ID = 5"); + sb.append(" AND CCGL.CONTACORRENTEPTOVTAGRLIN_ID IS NOT NULL THEN CCGL.IMPORTE"); + sb.append(" ELSE CC.IMPORTETOTALEFECTIVO"); + sb.append(" END AS precioBoleto ,"); + sb.append(" CASE"); + sb.append(" WHEN OP.INDCREDITO = 1 THEN 'CREDITO'"); + sb.append(" ELSE 'DEBITO'"); + sb.append(" END AS descripcionFormaPago ,"); + sb.append(" CASE"); + sb.append(" WHEN OP.CVETIPO = 'CM' THEN 'COMISSAO' "); + sb.append(" WHEN OP.CVETIPO = 'LQ' THEN 'LQ' "); + sb.append(" END AS descripcionFormaPago,"); + sb.append(" cc.empresa_id, "); + sb.append(" cc.puntoventa_id, "); + sb.append(" pv.numpuntoventa, "); + sb.append(" cc.fechoroperacion "); + sb.append("FROM CONTA_CORRENTE_PTOVTA CC "); + sb.append("LEFT JOIN CONTA_CORRENTE_PTOVTA_GR_LIN CCGL ON CCGL.CONTACORRENTEPTOVTA_ID = CC.CONTACORRENTEPTOVTA_ID "); + sb.append("JOIN TIPO_OPERACION_CC OP ON CC.TIPOOPERACIONCC_ID = OP.TIPOOPERACIONCC_ID "); + sb.append("JOIN PUNTO_VENTA PV ON CC.PUNTOVENTA_ID = PV.PUNTOVENTA_ID "); + sb.append("JOIN EMPRESA E ON CC.EMPRESA_ID = E.EMPRESA_ID "); + sb.append("LEFT JOIN LOG_CONFERENCIA LG ON CC.CONTACORRENTEPTOVTA_ID = LG.CONTACORRENTEPTOVTA_ID "); + sb.append("LEFT JOIN CONFERENCIA_PENDENCIA CP ON CP.CONFERENCIAPENDENCIA_ID = LG.CONFERENCIAPENDENCIA_ID "); + sb.append("WHERE CC.ACTIVO = 1 "); + sb.append(" AND cc.feccorte = TO_DATE('"+fechaStr+" 00:00:00', 'dd/MM/yyyy HH24:mi:ss') "); + adicionaFiltroQuery(empresaId, sb, " and CC.EMPRESA_ID = ", empresaId != null); + adicionaFiltroQuery(puntoVentaId, sb, " and CC.PUNTOVENTA_ID = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + sb.append(" ORDER BY PV.NOMBPUNTOVENTA,"); + sb.append(" E.NOMBEMPRESA,"); + sb.append(" OP.DESCTIPO,"); + sb.append(" OP.CVETIPO "); + + + PreparedStatement stmt = null; + ResultSet rs = null; + + + try { + stmt = getConnection().prepareStatement(sb.toString()); + + rs = stmt.executeQuery(); + + BigDecimal valorAcumulado = BigDecimal.ZERO; + + while (rs.next()) { + DespesaReceita receita = new DespesaReceita(); + receita.setCodigoEmpresa(rs.getInt(4)); + receita.setCodigoReceitaDespesa(""); + receita.setDataLancamento(rs.getDate(7)); + receita.setDataMovimento(rs.getDate(7)); + receita.setLocalArrecadacao(rs.getString(6)); + if (rs.getBigDecimal(1).signum() == -1) { + receita.setIdentificadorReceitaDespesa("R"); + valorAcumulado = valorAcumulado.add((rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); + receita.setValorLancamento(df.format(valorAcumulado)); + } else { + receita.setIdentificadorReceitaDespesa("D"); + receita.setValorLancamento(df.format(rs.getBigDecimal(1))); + } + + + receita.setDescricaoDetalhada(""); + if (incluiTipoPagamentoTurismoBGM) { + receita.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); + } + receita.setFormaPagamentoId(rs.getString(2).equals("CREDITO") ? "2" : "3"); + despesas.add(receita); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Receitas"); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + stmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return despesas; + } + + private void loadEmpresas() { PreparedStatement pstmt = null; @@ -804,6 +1084,8 @@ public class Totalbus { public void setIsReceitasDespesasComporte(Boolean isReceitasDespesasComporte) { this.isReceitasDespesasComporte = isReceitasDespesasComporte; } - + public static void main(String[] args) { + System.out.println(new BigDecimal("0").signum()); + } } From eec6e2e97b2bed66ac00f11ebc30cbb7c172ad5a Mon Sep 17 00:00:00 2001 From: fabio Date: Mon, 22 Feb 2021 22:03:15 +0000 Subject: [PATCH 077/121] fixes bug#21474 dev: Wallace qua: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@105430 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../dao/Totalbus.java | 30 ++++++++++++------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 30bd99340..247b7154c 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -4,7 +4,6 @@ import java.math.BigDecimal; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; -import java.sql.SQLException; import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; @@ -589,8 +588,12 @@ public class Totalbus { despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); } despesa.setFormaPagamentoId(rs.getString("formapagoId")); - despesa.setCodigoAutorizacao(rs.getString("numautorizacion")); - despesa.setNumeroEstabelecimento(rs.getString("numeroEstabelecimento")); + + if( despesa.getFormaPagamentoId().equals("2") || despesa.getFormaPagamentoId().equals("3")) { + despesa.setCodigoAutorizacao(rs.getString("numautorizacion")); + despesa.setNumeroEstabelecimento(rs.getString("numeroEstabelecimento")); + } + despesas.add(despesa); } } catch (Exception e) { @@ -711,16 +714,17 @@ public class Totalbus { List despesas = new ArrayList(); StringBuilder sb = new StringBuilder(); sb.append(" select "); - sb.append(" cd.feccorte AS fechorvta, "); - sb.append(" e.empresa_id AS empresa, "); + sb.append(" cd.feccorte AS fechorvta, "); + sb.append(" e.empresa_id AS empresa, "); sb.append(" pv.puntoventa_id AS puntoventaId, "); sb.append(" COALESCE(cdp.importe,0) AS valor, "); - sb.append(" tee.contacontabil AS contacontabil, "); + sb.append(" tee.contacontabil AS contacontabil, "); sb.append(" pv.numpuntoventa AS numpuntoventa, "); - sb.append(" ev.descinfo as descinfo, "); + sb.append(" ev.descinfo AS descinfo, "); sb.append(" ev.tipoeventoextra_id, "); sb.append(" COALESCE(cdp.formapago_id,0) as formapagoId, "); - sb.append(" ct.numautorizacion AS numautorizacion "); + sb.append(" ct.numautorizacion AS numautorizacion, "); + sb.append(" pte.numsitef AS numeroestabelecimento "); sb.append(" from "); sb.append(" caja_diversos cd "); sb.append(" left join evento_extra ev on ev.eventoextra_id = cd.eventoextra_id "); @@ -730,6 +734,7 @@ public class Totalbus { 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(" LEFT JOIN caja_tarjeta ct ON ct.cajatarjeta_id = cdp.cajatarjeta_id "); + sb.append(" LEFT JOIN ptovta_empresa pte ON pte.puntoventa_id = pv.puntoventa_id AND pte.empresa_id = e.empresa_id "); sb.append(" where "); sb.append(" cd.feccorte = ? "); adicionaFiltroQuery(puntoVentaId, sb, " and cd.puntoventa_id = ", puntoVentaId != null && !puntoVentaId.equals(-1)); @@ -737,7 +742,6 @@ public class Totalbus { sb.append(" and cd.activo = 1 "); sb.append(" and tee.indtipo = 1 "); - PreparedStatement stmt = null; ResultSet rs = null; @@ -752,7 +756,7 @@ public class Totalbus { rs = stmt.executeQuery(); while (rs.next()) { - DespesaReceita receita = new DespesaReceita(); + DespesaReceitaComporte receita = new DespesaReceitaComporte(); receita.setCodigoEmpresa(rs.getInt(2)); receita.setCodigoReceitaDespesa(rs.getString(5)); receita.setDataLancamento(rs.getDate(1)); @@ -775,6 +779,12 @@ public class Totalbus { receita.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); } receita.setFormaPagamentoId(rs.getString("formapagoId")); + + if( receita.getFormaPagamentoId().equals("2") || receita.getFormaPagamentoId().equals("3")) { + receita.setCodigoAutorizacao(rs.getString("numautorizacion")); + receita.setNumeroEstabelecimento(rs.getString("numeroEstabelecimento")); + } + despesas.add(receita); } } catch (Exception e) { From 84ad19c69557a9117094a75c97e0d06fdd4a124e Mon Sep 17 00:00:00 2001 From: walace Date: Tue, 23 Feb 2021 13:25:27 +0000 Subject: [PATCH 078/121] fixes bug#21109 qua: dev: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Observações. 1 - Ativar o custom no cliente isReceitasDespesasOuroPrata = 1 2 - Explicar ao cliente: Em relação aos eventos COMISSAO e TOTAL A DEPOSITAR, o arquivo BGM importa os valores diariamente, não trabalha com histórico de valores para realização de abatimento. Exemplo: Se no dia 01 houver uma comissao negativa, mas o cliente importar o arquivo BGM apenas do dia 02, o sistema não consegue realizar essa lógica, pois como foi dito, o arquivo é do caixa do dia. O Globus trabalha apenas com o Tipo Receita x Despesa. Entendo que esse controle deve ser feito no sistema fiscal do cliente. 3 - Em relação aos eventos extras já existentes. Peço que solicite o cliente alguns exemplos para podermos verificar e ajustar, como as informaçoes são agrupadas(totalizadas), essa distinção se torna bem criteriosa. git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@105436 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../dao/Totalbus.java | 34 +++++++++++-------- 1 file changed, 19 insertions(+), 15 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 247b7154c..dd77bd2b4 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -217,9 +217,9 @@ public class Totalbus { receita.setDataLancamento(rs.getDate(10)); receita.setDataMovimento(rs.getDate(10)); receita.setLocalArrecadacao(rs.getString(7)); - if (rs.getBigDecimal(1).signum() == -1) { + if (rs.getBigDecimal(1).signum() == 1) { receita.setIdentificadorReceitaDespesa("D"); - receita.setValorLancamento(df.format(rs.getBigDecimal(1).multiply(new BigDecimal(-1)))); + receita.setValorLancamento(df.format(rs.getBigDecimal(1))); } else { receita.setIdentificadorReceitaDespesa("R"); receita.setValorLancamento(df.format(rs.getBigDecimal(1))); @@ -289,7 +289,7 @@ public class Totalbus { StringBuilder sb = new StringBuilder(); - SimpleDateFormat sf = new SimpleDateFormat("dd/MM/yyy"); + SimpleDateFormat sf = new SimpleDateFormat("dd/MM/yyyy"); String fechaStr = sf.format(fechaParam); if (fechaParam == null) { fechaStr = sf.format(getData()); @@ -339,8 +339,6 @@ public class Totalbus { rs = stmt.executeQuery(); - BigDecimal valorAcumulado = BigDecimal.ZERO; - while (rs.next()) { DespesaReceita receita = new DespesaReceita(); receita.setCodigoEmpresa(rs.getInt(4)); @@ -348,21 +346,27 @@ public class Totalbus { receita.setDataLancamento(rs.getDate(7)); receita.setDataMovimento(rs.getDate(7)); receita.setLocalArrecadacao(rs.getString(6)); - if (rs.getBigDecimal(1).signum() == -1) { - receita.setIdentificadorReceitaDespesa("R"); - valorAcumulado = valorAcumulado.add((rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); - receita.setValorLancamento(df.format(valorAcumulado)); - } else { - receita.setIdentificadorReceitaDespesa("D"); - receita.setValorLancamento(df.format(rs.getBigDecimal(1))); + if(rs.getString(3) != null) { + if(rs.getString(3).equalsIgnoreCase("COMISSAO")) { + if (rs.getBigDecimal(1).signum() == 1) { + receita.setIdentificadorReceitaDespesa("D"); + } else { + receita.setIdentificadorReceitaDespesa("R"); + } + }else if(rs.getString(3).equalsIgnoreCase("LQ")) { + if (rs.getBigDecimal(1).signum() == 1) { + receita.setIdentificadorReceitaDespesa("D"); + } else { + receita.setIdentificadorReceitaDespesa("R"); + } + } } - - + receita.setValorLancamento(df.format(rs.getBigDecimal(1))); receita.setDescricaoDetalhada(""); if (incluiTipoPagamentoTurismoBGM) { receita.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); } - receita.setFormaPagamentoId(rs.getString(2).equals("CREDITO") ? "2" : "3"); + receita.setFormaPagamentoId("1"); despesas.add(receita); } } catch (Exception e) { From 5ada14f0b33fae88380de7c3c907f9987cd264da Mon Sep 17 00:00:00 2001 From: fabio Date: Tue, 23 Feb 2021 19:31:27 +0000 Subject: [PATCH 079/121] fixes bug#21474 dev: Wallace qua: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@105444 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/dao/Totalbus.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index dd77bd2b4..c2ad2f1c5 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -596,6 +596,9 @@ public class Totalbus { if( despesa.getFormaPagamentoId().equals("2") || despesa.getFormaPagamentoId().equals("3")) { despesa.setCodigoAutorizacao(rs.getString("numautorizacion")); despesa.setNumeroEstabelecimento(rs.getString("numeroEstabelecimento")); + }else { + despesa.setCodigoAutorizacao(""); + despesa.setNumeroEstabelecimento(""); } despesas.add(despesa); @@ -787,6 +790,9 @@ public class Totalbus { if( receita.getFormaPagamentoId().equals("2") || receita.getFormaPagamentoId().equals("3")) { receita.setCodigoAutorizacao(rs.getString("numautorizacion")); receita.setNumeroEstabelecimento(rs.getString("numeroEstabelecimento")); + }else { + receita.setCodigoAutorizacao(""); + receita.setNumeroEstabelecimento(""); } despesas.add(receita); From e29c82dd483268dc47d32543604603022223524e Mon Sep 17 00:00:00 2001 From: walace Date: Wed, 24 Feb 2021 19:52:18 +0000 Subject: [PATCH 080/121] fixes bug#21109 qua: dev: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@105449 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/dao/Totalbus.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index c2ad2f1c5..4e30734f6 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -133,7 +133,7 @@ public class Totalbus { sb.append(" left OUTER JOIN empresa e ON m.empresa_id = e.empresa_id"); sb.append(" INNER JOIN caja_formapago cfp ON c.caja_id = cfp.caja_id"); sb.append(" left OUTER JOIN boleto b ON b.boleto_id = c.transacao_id"); - sb.append(" left OUTER JOIN evento_extra ee ON b.boleto_id = ee.boleto_id"); + sb.append(" left JOIN evento_extra ee ON b.boleto_id = ee.boleto_id and ee.boleto_id is null "); sb.append(" left JOIN tipo_evento_extra tee ON tee.tipoeventoextra_id = ee.tipoeventoextra_id"); sb.append(" left JOIN punto_venta pv ON pv.puntoventa_id = c.puntoventa_id and (cfp.activo = 1) "); sb.append(" INNER JOIN CONTA_CORRENTE_PTOVTA ccp ON e.EMPRESA_ID = ccp.EMPRESA_ID"); @@ -149,7 +149,7 @@ public class Totalbus { sb.append(" and c.ACTIVO = 1"); adicionaFiltroQuery(empresaId, sb, " and ccp.EMPRESA_ID = ", empresaId != null); adicionaFiltroQuery(puntoVentaId, sb, " and ccp.PUNTOVENTA_ID = ", puntoVentaId != null && !puntoVentaId.equals(-1)); - sb.append(" and trunc(ccp.feccorte) = TO_DATE('"+fechaStr+"') "); + sb.append(" and trunc(ccp.feccorte) = TO_DATE('"+fechaStr+"') and cfp.formapago_id in (2,3) "); sb.append(" GROUP BY cfp.formapago_id,"); sb.append(" fp.DESCPAGO,"); sb.append(" e.empresa_id,"); @@ -188,7 +188,7 @@ public class Totalbus { sb.append(" OR ee.boleto_id = b.boleto_id)"); adicionaFiltroQuery(empresaId, sb, " and ccp.EMPRESA_ID = ", empresaId != null); adicionaFiltroQuery(puntoVentaId, sb, " and ccp.PUNTOVENTA_ID = ", puntoVentaId != null && !puntoVentaId.equals(-1)); - sb.append(" AND trunc(ccp.feccorte) = TO_DATE('"+fechaStr+"') "); + sb.append(" AND trunc(ccp.feccorte) = TO_DATE('"+fechaStr+"') and ee.tipoeventoextra_id <> 25 and cdp.formapago_id in (2,3) "); sb.append(" GROUP BY cdp.formapago_id, fp.DESCPAGO,"); sb.append(" e.empresa_id, cd.PUNTOVENTA_ID, "); sb.append(" tee.contacontabil,"); From 87f5b48d9d591786fc284b87d3e7a5e1b62317e9 Mon Sep 17 00:00:00 2001 From: walace Date: Thu, 25 Feb 2021 18:30:33 +0000 Subject: [PATCH 081/121] No meu ambiente estava funcionando, mas no ambiente local apresentava um erro de data. Alterado a consulta. fixes bug#21109 qua: dev: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@105523 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../rjconsultores/integracaoreceitadespesa/dao/Totalbus.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 4e30734f6..69bb005f9 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -149,7 +149,7 @@ public class Totalbus { sb.append(" and c.ACTIVO = 1"); adicionaFiltroQuery(empresaId, sb, " and ccp.EMPRESA_ID = ", empresaId != null); adicionaFiltroQuery(puntoVentaId, sb, " and ccp.PUNTOVENTA_ID = ", puntoVentaId != null && !puntoVentaId.equals(-1)); - sb.append(" and trunc(ccp.feccorte) = TO_DATE('"+fechaStr+"') and cfp.formapago_id in (2,3) "); + sb.append(" and ccp.feccorte = TO_DATE('"+fechaStr+" 00:00:00', 'dd/MM/yyyy HH24:mi:ss')and cfp.formapago_id in (2,3) "); sb.append(" GROUP BY cfp.formapago_id,"); sb.append(" fp.DESCPAGO,"); sb.append(" e.empresa_id,"); @@ -188,7 +188,7 @@ public class Totalbus { sb.append(" OR ee.boleto_id = b.boleto_id)"); adicionaFiltroQuery(empresaId, sb, " and ccp.EMPRESA_ID = ", empresaId != null); adicionaFiltroQuery(puntoVentaId, sb, " and ccp.PUNTOVENTA_ID = ", puntoVentaId != null && !puntoVentaId.equals(-1)); - sb.append(" AND trunc(ccp.feccorte) = TO_DATE('"+fechaStr+"') and ee.tipoeventoextra_id <> 25 and cdp.formapago_id in (2,3) "); + sb.append(" AND ccp.feccorte = TO_DATE('"+fechaStr+" 00:00:00', 'dd/MM/yyyy HH24:mi:ss') and ee.tipoeventoextra_id <> 25 and cdp.formapago_id in (2,3) "); sb.append(" GROUP BY cdp.formapago_id, fp.DESCPAGO,"); sb.append(" e.empresa_id, cd.PUNTOVENTA_ID, "); sb.append(" tee.contacontabil,"); From 21968300420a0503d41a89fecc1560332690ab6d Mon Sep 17 00:00:00 2001 From: valdevir Date: Mon, 8 Mar 2021 18:20:15 +0000 Subject: [PATCH 082/121] fixes bug#00000 qua: dev:Valdevir Removido caracteres nao UTF8 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@105692 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../entidades/DespesaReceita.java | 46 +++++++++---------- .../entidades/DespesaReceitaComporte.java | 2 +- 2 files changed, 24 insertions(+), 24 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 5f95a414a..1ed27938b 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -8,26 +8,26 @@ import org.apache.commons.lang.StringUtils; public class DespesaReceita { protected String dataLancamento; // DD/MM/YYYY - protected String codigoEmpresa; // 011 003 Numérico - protected final String codigoFilial = "001"; // 014 003 Numérico - protected String localArrecadação; // 017 005 Alfanumérico - protected final String numeroDaGuia = " "; // 022 025 Alfanumérico - protected String dataMovimento; // 047 010 Alfanumérico - protected final String usuarioGlobus = "TOTALBUS ";// 057 015 Alfanumérico - protected final String turno = "01";// 072 002 Numérico - protected String codigoReceitaDespesa;// 074 010 Numérico CONSTANTE CODIGO_RECEITA_DESPESA_GLOBUS - protected String identificadorReceitaDespesa;// 084 001 Alfanumérico - protected String valorLancamento;// 085 013 Numérico - protected final String numeroContratoTurismo = "0000000000";// 098 010 Numérico - protected final String numeroReciboTurismo = " ";// 108 010 Alfanumérico - protected final String formaPagamentoTurismo = " ";// 118 002 Numérico - protected String tipoPagamentoTurismo = " ";// 120 002 Numérico - protected String descricaoDetalhada = "";// 122 80 Alfanumérico - protected final String documentoVenda = "000000";// 202 6 Numérico - protected final String tipoDocumentoVenda = " ";// 208 1 Alfanumérico - protected final String numerodocumentoCPG = "0000000000";// 209 10 Numérico - protected String formaPagamentoId = "0";// 218 Numérico - protected final String finalLinha = "*";// 239 1 Alfanumérico + protected String codigoEmpresa; // 011 003 Num�rico + protected final String codigoFilial = "001"; // 014 003 Num�rico + protected String localArrecadacao; // 017 005 Alfanum�rico + protected final String numeroDaGuia = " "; // 022 025 Alfanum�rico + protected String dataMovimento; // 047 010 Alfanum�rico + protected final String usuarioGlobus = "TOTALBUS ";// 057 015 Alfanum�rico + protected final String turno = "01";// 072 002 Num�rico + protected String codigoReceitaDespesa;// 074 010 Num�rico CONSTANTE CODIGO_RECEITA_DESPESA_GLOBUS + protected String identificadorReceitaDespesa;// 084 001 Alfanum�rico + protected String valorLancamento;// 085 013 Num�rico + protected final String numeroContratoTurismo = "0000000000";// 098 010 Num�rico + protected final String numeroReciboTurismo = " ";// 108 010 Alfanum�rico + protected final String formaPagamentoTurismo = " ";// 118 002 Num�rico + protected String tipoPagamentoTurismo = " ";// 120 002 Num�rico + protected String descricaoDetalhada = "";// 122 80 Alfanum�rico + protected final String documentoVenda = "000000";// 202 6 Num�rico + protected final String tipoDocumentoVenda = " ";// 208 1 Alfanum�rico + protected final String numerodocumentoCPG = "0000000000";// 209 10 Num�rico + protected String formaPagamentoId = "0";// 218 Num�rico + protected final String finalLinha = "*";// 239 1 Alfanum�rico protected SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); @@ -41,7 +41,7 @@ public class DespesaReceita { sb.append(dataLancamento); sb.append(codigoEmpresa); sb.append(codigoFilial); - sb.append(localArrecadação.toUpperCase()); + sb.append(localArrecadacao.toUpperCase()); sb.append(numeroDaGuia); sb.append(dataMovimento); sb.append(usuarioGlobus); @@ -72,11 +72,11 @@ public class DespesaReceita { } public void setLocalArrecadacao(Integer localArrecadacao) { - this.localArrecadação = StringUtils.rightPad(localArrecadacao != null ? truncStr(localArrecadacao.toString(), 5) : "", 5, " "); + this.localArrecadacao = StringUtils.rightPad(localArrecadacao != null ? truncStr(localArrecadacao.toString(), 5) : "", 5, " "); } public void setLocalArrecadacao(String localArrecadacao) { - this.localArrecadação = StringUtils.rightPad(localArrecadacao != null ? truncStr(localArrecadacao, 6) : "", 5, ""); + this.localArrecadacao = StringUtils.rightPad(localArrecadacao != null ? truncStr(localArrecadacao, 6) : "", 5, ""); } public void setDataMovimento(Date dataMovimento) { diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java index 52ffc9a9c..50da252f0 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java @@ -15,7 +15,7 @@ public class DespesaReceitaComporte extends DespesaReceita { sb.append(dataLancamento); sb.append(codigoEmpresa); sb.append(codigoFilial); - sb.append(localArrecadação.toUpperCase()); + sb.append(localArrecadacao.toUpperCase()); sb.append(numeroDaGuia); sb.append(dataMovimento); sb.append(usuarioGlobus); From 9e13be5ac7208f25ec51073b5953ab11c20b0a8d Mon Sep 17 00:00:00 2001 From: walace Date: Sat, 12 Jun 2021 22:59:54 +0000 Subject: [PATCH 083/121] fixes bug#22314 qua: dev: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A descrição vinda da tabela evento extra vinha com uma quebra de linha. Existia uma tratativa para a tabulação '\t', foi incluído a tratava para quebra de linha '\n' git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@107185 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../rjconsultores/integracaoreceitadespesa/dao/Totalbus.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 69bb005f9..59f5e712d 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -870,6 +870,9 @@ public class Totalbus { String desc =rs.getString(6); if(StringUtils.isNotBlank(desc) && desc.contains("\t")){ desc = desc.replaceAll("\t", ""); + }else if(StringUtils.isNotBlank(desc) && desc.contains("\n")){ + desc = desc.replaceAll("\n", ""); + } despesa.setDescricaoDetalhada(desc); if (incluiTipoPagamentoTurismoBGM) { From 26e6967b027612426100759f3484a10d24cbb0d5 Mon Sep 17 00:00:00 2001 From: walace Date: Tue, 6 Jul 2021 13:49:02 +0000 Subject: [PATCH 084/121] fixes bug#22702 qua: dev: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Feito a pedido do cliente. alterado a forma de pagamento para 2 posições. Lembrando que o codigo da carteira digital é 39, não 12, como relatou o cliente git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@107713 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/entidades/DespesaReceita.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 1ed27938b..d64532964 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -116,7 +116,7 @@ public class DespesaReceita { } public void setFormaPagamentoId(String formaPagamentoId) { - this.formaPagamentoId = StringUtils.leftPad(StringUtils.isNotEmpty(formaPagamentoId) ? truncStr(formaPagamentoId.toString(), 1) : "", 1, "0"); + this.formaPagamentoId = StringUtils.leftPad(StringUtils.isNotEmpty(formaPagamentoId) ? truncStr(formaPagamentoId.toString(), 2) : "", 1, "0"); } protected String truncStr(String str, int size) { From 8e0dda166e291c061cf2f424133709e283262bf6 Mon Sep 17 00:00:00 2001 From: celio Date: Tue, 27 Jul 2021 13:49:28 +0000 Subject: [PATCH 085/121] fix bug#22439 dev: FABIO qua: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@108036 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/dao/Totalbus.java | 4 +++- .../entidades/DespesaReceitaComporte.java | 10 ++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 59f5e712d..98addab5b 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -731,7 +731,8 @@ public class Totalbus { sb.append(" ev.tipoeventoextra_id, "); sb.append(" COALESCE(cdp.formapago_id,0) as formapagoId, "); sb.append(" ct.numautorizacion AS numautorizacion, "); - sb.append(" pte.numsitef AS numeroestabelecimento "); + sb.append(" pte.numsitef AS numeroestabelecimento, "); + sb.append(" ct.cantparcelas "); sb.append(" from "); sb.append(" caja_diversos cd "); sb.append(" left join evento_extra ev on ev.eventoextra_id = cd.eventoextra_id "); @@ -769,6 +770,7 @@ public class Totalbus { receita.setDataLancamento(rs.getDate(1)); receita.setDataMovimento(rs.getDate(1)); receita.setLocalArrecadacao(rs.getString(6)); + receita.setCantParcelas(rs.getString(12)); if (rs.getBigDecimal(4).signum() == -1) { receita.setIdentificadorReceitaDespesa("D"); receita.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java index 50da252f0..6b82e2a62 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java @@ -8,6 +8,7 @@ public class DespesaReceitaComporte extends DespesaReceita { protected String numeroEstabelecimento; protected String codigoAutorizacao; + protected String cantParcelas = ""; @Override public void preencheLinha(List rows) { @@ -33,6 +34,7 @@ public class DespesaReceitaComporte extends DespesaReceita { sb.append(StringUtils.rightPad("", 16, " ")); sb.append(StringUtils.rightPad("", 3, "0")); sb.append(StringUtils.leftPad(formaPagamentoId, 2, "0")); + sb.append(cantParcelas); sb.append(finalLinha); sb.append(System.getProperty("line.separator")); rows.add(sb.toString()); @@ -53,4 +55,12 @@ public class DespesaReceitaComporte extends DespesaReceita { public void setCodigoAutorizacao(String codigoAutorizacao) { this.codigoAutorizacao = StringUtils.rightPad(codigoAutorizacao != null ? truncStr(codigoAutorizacao, 22) : "", 22, "0"); } + + public String getCantParcelas() { + return cantParcelas; + } + + public void setCantParcelas(String cantParcelas) { + this.cantParcelas = StringUtils.isNotEmpty(cantParcelas) ? StringUtils.leftPad(cantParcelas, 4,"0") : " "; + } } From 7912d7cc249d5a16b4ca465183642c94d76b33a6 Mon Sep 17 00:00:00 2001 From: walace Date: Wed, 15 Sep 2021 13:08:20 +0000 Subject: [PATCH 086/121] fixes bug#22704 qua:wally dev: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Faltou a realizaação de um commit na classe Arquivo e do arquivo pom.xml no projeto ventaboletosadm git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@108702 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../integracaoreceitadespesa/Arquivo.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java b/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java index 0fb8a4c57..3fc87e635 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java @@ -1,6 +1,8 @@ package com.rjconsultores.integracaoreceitadespesa; +import java.io.Closeable; import java.io.FileWriter; +import java.io.IOException; import java.util.List; import org.apache.log4j.Logger; @@ -20,4 +22,14 @@ public class Arquivo { log.error("", e); } } + + public static void close(Closeable c) { + if (c == null) return; + try { + c.close(); + } catch (IOException e) { + log.error(e); + } + } + } From 6f77f1f6c5637b5abfed39ad02eb285b2166f41b Mon Sep 17 00:00:00 2001 From: gleimar Date: Wed, 22 Sep 2021 19:13:50 +0000 Subject: [PATCH 087/121] fixes bug#23301 dev: lucas qua: wally git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@108789 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../dao/Totalbus.java | 37 ++++++++++++------- 1 file changed, 23 insertions(+), 14 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 98addab5b..76293c95e 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -226,9 +226,9 @@ public class Totalbus { } String desc =rs.getString(8); - if(StringUtils.isNotBlank(desc) && desc.contains("\t")){ - desc = desc.replaceAll("\t", ""); - } + + desc = this.removerQuebraDeLinha(desc); + receita.setDescricaoDetalhada(desc); if (incluiTipoPagamentoTurismoBGM) { receita.setTipoPagamentoTurismo(rs.getString("tipoEventoExtra")); @@ -689,9 +689,9 @@ public class Totalbus { } String desc =rs.getString(7); - if(StringUtils.isNotBlank(desc) && desc.contains("\t")){ - desc = desc.replaceAll("\t", ""); - } + + desc = this.removerQuebraDeLinha(desc); + receita.setDescricaoDetalhada(desc); if (incluiTipoPagamentoTurismoBGM) { receita.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); @@ -780,9 +780,9 @@ public class Totalbus { } String desc =rs.getString(7); - if(StringUtils.isNotBlank(desc) && desc.contains("\t")){ - desc = desc.replaceAll("\t", ""); - } + + desc = this.removerQuebraDeLinha(desc); + receita.setDescricaoDetalhada(desc); if (incluiTipoPagamentoTurismoBGM) { receita.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); @@ -870,12 +870,9 @@ public class Totalbus { despesa.setValorLancamento(df.format(rs.getBigDecimal(4).doubleValue() * -1)); despesa.setIdentificadorReceitaDespesa("D"); String desc =rs.getString(6); - if(StringUtils.isNotBlank(desc) && desc.contains("\t")){ - desc = desc.replaceAll("\t", ""); - }else if(StringUtils.isNotBlank(desc) && desc.contains("\n")){ - desc = desc.replaceAll("\n", ""); - } + desc = this.removerQuebraDeLinha(desc); + despesa.setDescricaoDetalhada(desc); if (incluiTipoPagamentoTurismoBGM) { despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); @@ -901,6 +898,18 @@ public class Totalbus { return despesas; } + private String removerQuebraDeLinha(String desc) { + if(StringUtils.isBlank(desc)){ + return desc; + } + + desc = desc.replaceAll("\t", " "); + + desc = desc.replaceAll("\n", " "); + + return desc; + } + public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { List depositos = new ArrayList(); From 259b8eacc3a0d5132333f87491e1251c71b1a1c5 Mon Sep 17 00:00:00 2001 From: gleimar Date: Fri, 8 Oct 2021 14:16:04 +0000 Subject: [PATCH 088/121] fixes bug#23301 dev:lukas qua:wally git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@109041 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../rjconsultores/integracaoreceitadespesa/dao/Totalbus.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 76293c95e..0eb1c6d58 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -907,6 +907,8 @@ public class Totalbus { desc = desc.replaceAll("\n", " "); + desc = desc.replaceAll("\r", " "); + return desc; } @@ -1118,7 +1120,7 @@ public class Totalbus { public void setIsReceitasDespesasComporte(Boolean isReceitasDespesasComporte) { this.isReceitasDespesasComporte = isReceitasDespesasComporte; } - public static void main(String[] args) { + public static void amain(String[] args) { System.out.println(new BigDecimal("0").signum()); } From f8a460532f3770a19b4cc23709669e8064e459f7 Mon Sep 17 00:00:00 2001 From: fabiorj Date: Fri, 3 Dec 2021 20:06:39 -0300 Subject: [PATCH 089/121] Commit inicial --- .gitignore | 4 + pom.xml | 44 + src/META-INF/MANIFEST.MF | 3 + .../integracaoreceitadespesa/Application.java | 55 + .../integracaoreceitadespesa/Arquivo.java | 35 + .../BGMApplication.java | 267 ++++ .../IntegracaoReceitaDespesaException.java | 13 + .../dao/Totalbus.java | 1145 +++++++++++++++++ .../entidades/DespesaReceita.java | 155 +++ .../entidades/DespesaReceitaComporte.java | 66 + .../entidades/Empresa.java | 11 + .../entidades/PuntoVenta.java | 11 + 12 files changed, 1809 insertions(+) create mode 100644 .gitignore create mode 100644 pom.xml create mode 100644 src/META-INF/MANIFEST.MF create mode 100644 src/com/rjconsultores/integracaoreceitadespesa/Application.java create mode 100644 src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java create mode 100644 src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java create mode 100644 src/com/rjconsultores/integracaoreceitadespesa/IntegracaoReceitaDespesaException.java create mode 100644 src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java create mode 100644 src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java create mode 100644 src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java create mode 100644 src/com/rjconsultores/integracaoreceitadespesa/entidades/Empresa.java create mode 100644 src/com/rjconsultores/integracaoreceitadespesa/entidades/PuntoVenta.java diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000..4e247eee2 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +/.settings +/target +/.classpath +/.project diff --git a/pom.xml b/pom.xml new file mode 100644 index 000000000..766d63b1b --- /dev/null +++ b/pom.xml @@ -0,0 +1,44 @@ + + 4.0.0 + br.com.rjconsultores + IntegracaoReceitaDespesa + 0.0.1-SNAPSHOT + + + + log4j + log4j + 1.2.16 + + + commons-lang + commons-lang + 2.0 + + + + + + src + + + src + + **/*.java + + + + + + maven-compiler-plugin + 3.3 + + 1.6 + 1.6 + Cp1252 + + + + + \ No newline at end of file diff --git a/src/META-INF/MANIFEST.MF b/src/META-INF/MANIFEST.MF new file mode 100644 index 000000000..254272e1c --- /dev/null +++ b/src/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Class-Path: + diff --git a/src/com/rjconsultores/integracaoreceitadespesa/Application.java b/src/com/rjconsultores/integracaoreceitadespesa/Application.java new file mode 100644 index 000000000..875ee650e --- /dev/null +++ b/src/com/rjconsultores/integracaoreceitadespesa/Application.java @@ -0,0 +1,55 @@ +package com.rjconsultores.integracaoreceitadespesa; + +import java.io.FileInputStream; +import java.io.IOException; +import java.sql.Connection; +import java.sql.DriverManager; +import java.util.Properties; + +import org.apache.log4j.Logger; + +public class Application { + private static Application instance = null; + + private static final Logger log = Logger.getLogger(Application.class); + + private Application(){ + + } + + public Connection getConnection(){ + try { + Properties props = Application.getInstance().getApplicationProperties(); + + String DRIVER = "oracle.jdbc.driver.OracleDriver"; + + Class.forName(DRIVER); + Connection conn = DriverManager.getConnection( + props.getProperty("url"), + props.getProperty("username").trim(), + props.getProperty("password").trim()); + + return conn; + + } catch (Exception e){ + log.error("", e); + return null; + } + } + public static Application getInstance(){ + if (instance == null){ + instance = new Application(); + } + return instance; + } + + public Properties getApplicationProperties(){ + Properties props = new Properties(); + try { + props.load(new FileInputStream("db.properties")); + } catch (IOException e) { + log.error("", e); + } + return props; + } +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java b/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java new file mode 100644 index 000000000..c7c8712a2 --- /dev/null +++ b/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java @@ -0,0 +1,35 @@ +package com.rjconsultores.integracaoreceitadespesa; + +import java.io.Closeable; +import java.io.FileWriter; +import java.io.IOException; +import java.util.List; + +import org.apache.log4j.Logger; + +public class Arquivo { + private static final Logger log = Logger.getLogger(Arquivo.class); + + public static void GravaArquivo(String filename, List rows){ + try{ + log.debug("gravando arquivo" + filename + "..."); + FileWriter writer = new FileWriter(filename); + for(String str: rows) { + writer.write(str); + } + writer.close(); + } catch (Exception e){ + log.error("", e); + } + } + + public static void close(Closeable c) { + if (c == null) return; + try { + c.close(); + } catch (IOException e) { + log.error(e); + } + } + +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java new file mode 100644 index 000000000..41b3eec14 --- /dev/null +++ b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java @@ -0,0 +1,267 @@ +package com.rjconsultores.integracaoreceitadespesa; + +import java.io.BufferedInputStream; +import java.io.BufferedOutputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.IOException; +import java.nio.channels.FileChannel; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.Calendar; +import java.util.Date; +import java.util.List; +import java.util.Properties; +import java.util.zip.ZipEntry; +import java.util.zip.ZipOutputStream; + +import org.apache.commons.lang.StringUtils; +import org.apache.log4j.Logger; + +import com.rjconsultores.integracaoreceitadespesa.dao.Totalbus; + +public class BGMApplication { + private static BGMApplication instance = null; + + private static final Logger log = Logger.getLogger(BGMApplication.class); + + private static final int TAMANHO_BUFFER = 4096; // 4kb + + private boolean isReceitasDespesasComporte; + + private boolean isCodReceitaFixoBgm; + + private boolean isReceitasDespesasOuroPrata; + + private BGMApplication(){ + + } + + public Connection getConnection(){ + try { + Properties props = BGMApplication.getInstance().getApplicationProperties(); + + String DRIVER = "oracle.jdbc.driver.OracleDriver"; + + Class.forName(DRIVER); + Connection conn = DriverManager.getConnection( + props.getProperty("url"), + props.getProperty("username").trim(), + props.getProperty("password").trim()); + + return conn; + + } catch (Exception e){ + log.error("", e); + return null; + } + } + + public static BGMApplication getInstance(){ + if (instance == null){ + instance = new BGMApplication(); + } + return instance; + } + + public Properties getApplicationProperties(){ + Properties props = new Properties(); + try { + props.load(new FileInputStream("db.properties")); + } catch (IOException e) { + log.error("", e); + } + return props; + } + + public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean isReceitasDespesasComporte,boolean isCodReceitaFixoBgm, boolean isReceitasDespesasOuroPrata, boolean layoutNovo) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ + this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; + this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; + return executaExportacao(dataInicio, dataFinal, diretorio, empresaId, puntoVentaId, con, pathGravacaoExternaArquivos, incluiTipoPagamentoTurismoBGM, layoutNovo); + } + + public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean isReceitasDespesasComporte,boolean isCodReceitaFixoBgm, boolean isReceitasDespesasOuroPrata) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ + this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; + this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; + return executaExportacao(dataInicio, dataFinal, diretorio, empresaId, puntoVentaId, con, pathGravacaoExternaArquivos, incluiTipoPagamentoTurismoBGM, false); + } + + public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean isReceitasDespesasComporte, boolean isReceitasDespesasOuroPrata) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ + this.isReceitasDespesasComporte = isReceitasDespesasComporte; + return executaExportacao(dataInicio, dataFinal, diretorio, empresaId, puntoVentaId, con, pathGravacaoExternaArquivos, incluiTipoPagamentoTurismoBGM, false); + } + + public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean layoutNovo) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ + if (empresaId == null){ + throw new IllegalArgumentException("o parâmetro empesaId é obrigatório!"); + } + if (puntoVentaId == null){ + throw new IllegalArgumentException("o parâmetro puntoVentaId é obrigatório!"); + } + excluirArquivosZip(diretorio); + Totalbus totalbus = new Totalbus(con, isReceitasDespesasComporte, isCodReceitaFixoBgm, isReceitasDespesasOuroPrata, layoutNovo ); + if (totalbus.isConstanteBloqueioMenorQueData(empresaId, dataFinal)){ + totalbus.updateDataBloqueio(empresaId, dataFinal); + } + List files = new ArrayList(); + Calendar cal = Calendar.getInstance(); + // Seta primeiro dia da iteração + cal.setTime(dataInicio); + Calendar calFinal = Calendar.getInstance(); + calFinal.setTime(dataFinal); + + Calendar cf = Calendar.getInstance(); + cf.setTime(dataFinal); + cf.add(Calendar.DATE, 1); + try{ + + while (cal.before(cf)) { + String fileName = diretorio + File.separator + "BGM_" + empresaId + "-" + cal.get(Calendar.YEAR) + + "" + StringUtils.leftPad(Integer.toString(cal.get(Calendar.MONTH) + 1), 2, "0") + "" + + StringUtils.leftPad(Integer.toString(cal.get(Calendar.DAY_OF_MONTH)), 2, "0") + ".txt"; + File file = new File(fileName); + + log.debug("gerando arquivo..."); + Arquivo.GravaArquivo(file.getAbsolutePath(), totalbus.getDespesasReceitas(puntoVentaId, empresaId, cal.getTime(), incluiTipoPagamentoTurismoBGM)); + + this.copiarArquivoExternamente(file, pathGravacaoExternaArquivos); + + // adiciona um dia para iteração + cal.add(Calendar.DAY_OF_MONTH, 1); + files.add(file); + } + + String fileZip = diretorio + File.separator + "ArquivosBGM.zip"; + log.debug("nome arquivo: " + fileZip); + + compactarArquivos(files, fileZip); + return fileZip; + } catch (IntegracaoReceitaDespesaException e){ + throw e; + } catch (Exception e) { + log.error("", e); + return ""; + } finally{ + try { + con.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + } + + private void copiarArquivoExternamente(File arquivoBGM,String pathGravacaoExternaArquivos){ + if (pathGravacaoExternaArquivos == null){ + log.info("Path externo para gravação de arquivos não configurado"); + + return; + } + + if (!pathGravacaoExternaArquivos.endsWith("/")){ + pathGravacaoExternaArquivos = pathGravacaoExternaArquivos +"/"; + } + + File destino = new File(pathGravacaoExternaArquivos + arquivoBGM.getName()); + + try { + this.copyFileUsingChannel(arquivoBGM, destino); + } catch (IOException e) { + log.error(String.format("Erro ao gravar o arquivo %s no diretorio %s", arquivoBGM.getName(),pathGravacaoExternaArquivos) ,e); + } + } + + @SuppressWarnings("resource") + private void copyFileUsingChannel(File source, File dest) throws IOException { + + FileChannel sourceChannel = null; + FileChannel destChannel = null; + try { + sourceChannel = new FileInputStream(source).getChannel(); + destChannel = new FileOutputStream(dest).getChannel(); + destChannel.transferFrom(sourceChannel, 0, sourceChannel.size()); + }finally{ + sourceChannel.close(); + destChannel.close(); + } + } + + private void excluirArquivosZip(String diretorio){ + File pasta = new File(diretorio); + File[] arquivos = pasta.listFiles(); + + for(File arquivo : arquivos) { + if(arquivo.getName().endsWith("zip")) { + arquivo.delete(); + } + } + } + + public static void compactarArquivo(String arqSaida,String arqEntrada) throws IOException{ + int cont; + byte[] dados = new byte[TAMANHO_BUFFER]; + BufferedInputStream origem = null; + FileInputStream streamDeEntrada = null; + FileOutputStream destino = null; + ZipOutputStream saida = null; + ZipEntry entry = null; + try { + destino = new FileOutputStream(new File(arqSaida)); + saida = new ZipOutputStream(new BufferedOutputStream(destino)); + File file = new File(arqEntrada); + streamDeEntrada = new FileInputStream(file); + origem = new BufferedInputStream(streamDeEntrada, TAMANHO_BUFFER); + entry = new ZipEntry(file.getName()); + saida.putNextEntry(entry); + while((cont = origem.read(dados, 0, TAMANHO_BUFFER)) != -1) { + saida.write(dados, 0, cont); + } + origem.close(); + saida.close(); + } catch(IOException e) { + log.error(e.getMessage()); + throw new IOException(e.getMessage()); + } + } + + private void compactarArquivos(List arquivosEOuPastas, String arquivoDeSaida){ + System.out.println(arquivoDeSaida); + log.debug(arquivoDeSaida); + + // Create a buffer for reading the files + byte[] buf = new byte[1024]; + + try { + // Create the ZIP file + ZipOutputStream out = new ZipOutputStream(new FileOutputStream(arquivoDeSaida)); + + // Compress the files + for (File f : arquivosEOuPastas) { + FileInputStream in = new FileInputStream(f.getPath()); + + // Add ZIP entry to output stream. + out.putNextEntry(new ZipEntry(f.getName())); + System.out.println(f.getPath()); + // Transfer bytes from the file to the ZIP file + int len; + while ((len = in.read(buf)) > 0) { + out.write(buf, 0, len); + } + + // Complete the entry + out.closeEntry(); + in.close(); + f.delete(); + } + + // Complete the ZIP file + out.close(); + } catch (IOException e) { + log.error(e.getMessage(),e); + e.printStackTrace(); + } + } + +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/IntegracaoReceitaDespesaException.java b/src/com/rjconsultores/integracaoreceitadespesa/IntegracaoReceitaDespesaException.java new file mode 100644 index 000000000..c38e2c744 --- /dev/null +++ b/src/com/rjconsultores/integracaoreceitadespesa/IntegracaoReceitaDespesaException.java @@ -0,0 +1,13 @@ +package com.rjconsultores.integracaoreceitadespesa; + +public class IntegracaoReceitaDespesaException extends Exception{ + + /** + * + */ + private static final long serialVersionUID = -5422391379643449955L; + + public IntegracaoReceitaDespesaException(String message) { + super(message); + } +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java new file mode 100644 index 000000000..53ce3590c --- /dev/null +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -0,0 +1,1145 @@ +package com.rjconsultores.integracaoreceitadespesa.dao; + +import java.math.BigDecimal; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.text.DecimalFormat; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Calendar; +import java.util.Collection; +import java.util.Date; +import java.util.List; + +import org.apache.commons.lang.StringUtils; +import org.apache.log4j.Logger; + +import com.rjconsultores.integracaoreceitadespesa.IntegracaoReceitaDespesaException; +import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceita; +import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceitaComporte; +import com.rjconsultores.integracaoreceitadespesa.entidades.Empresa; +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 Connection conn; + + private List pontosVenda = new ArrayList(); + private List empresas = new ArrayList(); + + private Boolean isCodReceitaFixoBgm = false; + + private Boolean isReceitasDespesasComporte = false; + + private Boolean isReceitasDespesasOuroPrata= false; + + private Boolean isLayoutNovo= false; + + private DecimalFormat df = new DecimalFormat("#0.00"); + + public Totalbus(Connection con, Boolean isReceitasDespesasComporte, Boolean isReceitasDespesasOuroPrata) { + this.conn = con; + this.isReceitasDespesasComporte = isReceitasDespesasComporte; + this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; + loadEmpresas(); + loadPuntosVenta(); + } + + public Totalbus(Connection con, Boolean isReceitasDespesasComporte,Boolean isCodReceitaFixoBgm, Boolean isReceitasDespesasOuroPrata) { + this.conn = con; + this.isReceitasDespesasComporte = isReceitasDespesasComporte; + this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; + this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; + loadEmpresas(); + loadPuntosVenta(); + } + + public Totalbus(Connection con, Boolean isReceitasDespesasComporte,Boolean isCodReceitaFixoBgm, Boolean isReceitasDespesasOuroPrata, Boolean isLayoutNovo) { + this.conn = con; + this.isReceitasDespesasComporte = isReceitasDespesasComporte; + this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; + this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; + this.isLayoutNovo = isLayoutNovo; + loadEmpresas(); + loadPuntosVenta(); + } + + public List getDespesasReceitas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException{ + log.debug("gerando depósitos..."); + List despesasReceitas = getDepositos(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM); + log.debug("gerando despesas..."); + despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + log.debug("gerando despesas cartão..."); + + if (isReceitasDespesasComporte){ + despesasReceitas.addAll(getDespesaCartaoDebCredComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + log.debug("gerando receitas..."); + despesasReceitas.addAll(getReceitasComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + + }else { + despesasReceitas.addAll(getDespesaCartaoDebCred(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + log.debug("gerando receitas..."); + despesasReceitas.addAll(getReceitas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + if(isReceitasDespesasOuroPrata) { + getContaCorrenteAgencia(despesasReceitas, puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM); + } + } + + List rows = new ArrayList(); + + if( isLayoutNovo ) { + for (DespesaReceita item : despesasReceitas) { + item.preencheLinhaLayoutNovo(rows); + } + }else { + for (DespesaReceita item : despesasReceitas) { + item.preencheLinha(rows); + } + } + return rows; + } + + private void getContaCorrenteAgencia(List despesasReceitas, Integer puntoVentaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { + despesasReceitas.addAll(buscarFormasPagamentoContaCorrenteAgencia(puntoVentaId, empresaId, fechaParam,incluiTipoPagamentoTurismoBGM)); + despesasReceitas.addAll(buscarComissoesContaCorrenteAgencia(puntoVentaId, empresaId, fechaParam,incluiTipoPagamentoTurismoBGM)); + } + + private Collection buscarFormasPagamentoContaCorrenteAgencia(Integer puntoVentaId, + Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) + throws IntegracaoReceitaDespesaException { + + List despesas = new ArrayList(); + + StringBuilder sb = new StringBuilder(); + + SimpleDateFormat sf = new SimpleDateFormat("dd/MM/yyyy"); + String fechaStr = sf.format(fechaParam); + if (fechaParam == null) { + fechaStr = sf.format(getData()); + } + + + sb.append("SELECT SUM(precioboleto) AS precioBoleto, "); + sb.append("formaPagoId, "); + sb.append("descripcionFormaPago, "); + sb.append("empresa, "); + sb.append("puntoventaId, "); + sb.append("contacontabil, "); + sb.append("numpuntoventa, "); + sb.append("descinfo, "); + sb.append("tipoEventoExtra, "); + sb.append("feccorte AS feccorte "); + sb.append("FROM ("); + sb.append("(SELECT SUM(CASE "); + sb.append(" WHEN c.MOTIVOCANCELACION_ID IS NULL THEN 1 ELSE -1 END * cfp.importe) AS precioBoleto, "); + sb.append("cfp.formapago_id AS formaPagoId, "); + sb.append("fp.DESCPAGO AS descripcionFormaPago, "); + sb.append("e.empresa_id AS empresa, "); + sb.append("ccp.PUNTOVENTA_ID AS puntoventaId, "); + sb.append("tee.contacontabil AS contacontabil, "); + sb.append("pv.numpuntoventa AS numpuntoventa, "); + sb.append("ee.descinfo AS descinfo, "); + sb.append("ee.tipoeventoextra_id AS tipoEventoExtra, "); + sb.append("ccp.feccorte AS feccorte "); + sb.append(" FROM forma_pago fp, caja c "); + sb.append(" left OUTER JOIN motivo_cancelacion mc ON c.motivocancelacion_id = mc.motivocancelacion_id"); + sb.append(" left OUTER JOIN marca m ON c.marca_id = m.marca_id"); + sb.append(" left OUTER JOIN empresa e ON m.empresa_id = e.empresa_id"); + sb.append(" INNER JOIN caja_formapago cfp ON c.caja_id = cfp.caja_id"); + sb.append(" left OUTER JOIN boleto b ON b.boleto_id = c.transacao_id"); + sb.append(" left JOIN evento_extra ee ON b.boleto_id = ee.boleto_id and ee.boleto_id is null "); + sb.append(" left JOIN tipo_evento_extra tee ON tee.tipoeventoextra_id = ee.tipoeventoextra_id"); + sb.append(" left JOIN punto_venta pv ON pv.puntoventa_id = c.puntoventa_id and (cfp.activo = 1) "); + sb.append(" INNER JOIN CONTA_CORRENTE_PTOVTA ccp ON e.EMPRESA_ID = ccp.EMPRESA_ID"); + sb.append(" and ccp.PUNTOVENTA_ID = c.PUNTOVENTA_ID"); + sb.append(" and ccp.FECCORTE = c.FECCORTE"); + sb.append(" and ccp.TURNO_ID = c.turno_id"); + sb.append(" and ccp.ACTIVO = 1"); + sb.append(" and c.USUARIO_ID = ccp.USUARIO_ID"); + sb.append(" WHERE cfp.formapago_id = fp.formapago_id"); + sb.append(" and C.INDSTATUSOPERACION = 'F'"); + sb.append(" and c.INDREIMPRESION = 0"); + sb.append(" and c.tipoventa_id <> 6"); + sb.append(" and c.ACTIVO = 1"); + adicionaFiltroQuery(empresaId, sb, " and ccp.EMPRESA_ID = ", empresaId != null); + adicionaFiltroQuery(puntoVentaId, sb, " and ccp.PUNTOVENTA_ID = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + sb.append(" and ccp.feccorte = TO_DATE('"+fechaStr+" 00:00:00', 'dd/MM/yyyy HH24:mi:ss')and cfp.formapago_id in (2,3) "); + sb.append(" GROUP BY cfp.formapago_id,"); + sb.append(" fp.DESCPAGO,"); + sb.append(" e.empresa_id,"); + sb.append(" ccp.PUNTOVENTA_ID,"); + sb.append(" tee.contacontabil,"); + sb.append(" pv.numpuntoventa,"); + sb.append(" ee.descinfo, ee.tipoeventoextra_id, ccp.FECCORTE )"); + sb.append(" UNION"); + sb.append(" (SELECT SUM(cdp.IMPORTE) AS precioBoleto,"); + sb.append(" cdp.formapago_id AS formaPagoId,"); + sb.append(" fp.DESCPAGO AS descripcionFormaPago,"); + sb.append(" e.empresa_id AS empresa,"); + sb.append(" cd.PUNTOVENTA_ID AS puntoventaId,"); + sb.append(" tee.contacontabil AS contacontabil,"); + sb.append(" pv.numpuntoventa AS numpuntoventa,"); + sb.append(" ee.descinfo AS descinfo,"); + sb.append(" ee.tipoeventoextra_id AS tipoEventoExtra, ccp.feccorte AS feccorte "); + sb.append(" FROM CAJA_DIVERSOS cd"); + sb.append(" JOIN CAJA_DIVERSOS_PAGO cdp ON cdp.CAJADIVERSOS_ID = cd.CAJADIVERSOS_ID"); + sb.append(" INNER JOIN forma_pago fp ON fp.formapago_id = cdp.formapago_id"); + sb.append(" INNER JOIN EVENTO_EXTRA EE ON EE.EVENTOEXTRA_ID = cd.EVENTOEXTRA_ID"); + sb.append(" LEFT OUTER JOIN empresa e ON ee.empresa_id = e.empresa_id"); + sb.append(" LEFT JOIN boleto b ON b.boleto_id = ee.boleto_id"); + sb.append(" LEFT OUTER JOIN evento_extra ee ON b.boleto_id = ee.boleto_id"); + sb.append(" LEFT JOIN tipo_evento_extra tee ON tee.tipoeventoextra_id = ee.tipoeventoextra_id"); + sb.append(" LEFT JOIN punto_venta pv ON pv.puntoventa_id = cd.puntoventa_id "); + sb.append(" INNER JOIN CONTA_CORRENTE_PTOVTA ccp ON e.EMPRESA_ID = ccp.EMPRESA_ID "); + sb.append(" AND ccp.PUNTOVENTA_ID = cd.PUNTOVENTA_ID "); + sb.append("AND ccp.FECCORTE = cd.FECCORTE "); + sb.append(" AND ccp.TURNO_ID = cd.turno_id "); + sb.append(" AND cd.USUARIO_ID = ccp.USUARIO_ID "); + sb.append(" WHERE 1 = 1"); + sb.append(" AND cd.ACTIVO = 1"); + sb.append(" AND ccp.ACTIVO = 1"); + sb.append(" AND (ee.boleto_id IS NULL"); + sb.append(" OR ee.boleto_id = b.boleto_id)"); + adicionaFiltroQuery(empresaId, sb, " and ccp.EMPRESA_ID = ", empresaId != null); + adicionaFiltroQuery(puntoVentaId, sb, " and ccp.PUNTOVENTA_ID = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + sb.append(" AND ccp.feccorte = TO_DATE('"+fechaStr+" 00:00:00', 'dd/MM/yyyy HH24:mi:ss') and ee.tipoeventoextra_id <> 25 and cdp.formapago_id in (2,3) "); + sb.append(" GROUP BY cdp.formapago_id, fp.DESCPAGO,"); + sb.append(" e.empresa_id, cd.PUNTOVENTA_ID, "); + sb.append(" tee.contacontabil,"); + sb.append(" pv.numpuntoventa, ee.descinfo,"); + sb.append(" ee.tipoeventoextra_id, ccp.FECCORTE )) x "); + sb.append("GROUP BY formaPagoId, descripcionFormaPago, empresa, "); + sb.append(" puntoventaId,"); + sb.append(" contacontabil,"); + sb.append(" numpuntoventa,"); + sb.append(" descinfo,"); + sb.append(" tipoEventoExtra,feccorte "); + sb.append("ORDER BY formaPagoId, descripcionFormaPago"); + + + PreparedStatement stmt = null; + ResultSet rs = null; + + try { + stmt = getConnection().prepareStatement(sb.toString()); + rs = stmt.executeQuery(); + + while (rs.next()) { + DespesaReceita receita = new DespesaReceita(); + receita.setCodigoEmpresa(rs.getInt(4)); + receita.setCodigoReceitaDespesa(rs.getString(6)); + receita.setDataLancamento(rs.getDate(10)); + receita.setDataMovimento(rs.getDate(10)); + receita.setLocalArrecadacao(rs.getString(7)); + if (rs.getBigDecimal(1).signum() == 1) { + receita.setIdentificadorReceitaDespesa("D"); + receita.setValorLancamento(df.format(rs.getBigDecimal(1))); + } else { + receita.setIdentificadorReceitaDespesa("R"); + receita.setValorLancamento(df.format(rs.getBigDecimal(1))); + } + + String desc =rs.getString(8); + + desc = this.removerQuebraDeLinha(desc); + + receita.setDescricaoDetalhada(desc); + if (incluiTipoPagamentoTurismoBGM) { + receita.setTipoPagamentoTurismo(rs.getString("tipoEventoExtra")); + } + receita.setFormaPagamentoId(rs.getString("formaPagoId")); + despesas.add(receita); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Receitas"); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + stmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return despesas; + } + + private void loadPuntosVenta() { + PreparedStatement pstmt = null; + ResultSet rs = null; + + try { + pstmt = getConnection().prepareStatement("Select puntoventa_id, nombpuntoventa from punto_venta order by nombpuntoventa"); + rs = pstmt.executeQuery(); + while (rs.next()) { + PuntoVenta puntoVenta = new PuntoVenta(); + puntoVenta.codigo = rs.getInt(1); + puntoVenta.nombpuntoventa = rs.getString(2); + pontosVenda.add(puntoVenta); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + } + + private Collection buscarComissoesContaCorrenteAgencia(Integer puntoVentaId,Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) + throws IntegracaoReceitaDespesaException { + List despesas = new ArrayList(); + + StringBuilder sb = new StringBuilder(); + + SimpleDateFormat sf = new SimpleDateFormat("dd/MM/yyyy"); + String fechaStr = sf.format(fechaParam); + if (fechaParam == null) { + fechaStr = sf.format(getData()); + } + + sb.append("SELECT CASE"); + sb.append(" WHEN E.INDRATEIOCOMISSAOGRUPOLINHA = 1"); + sb.append(" AND OP.TIPOOPERACIONCC_ID = 5"); + sb.append(" AND CCGL.CONTACORRENTEPTOVTAGRLIN_ID IS NOT NULL THEN CCGL.IMPORTE"); + sb.append(" ELSE CC.IMPORTETOTALEFECTIVO"); + sb.append(" END AS precioBoleto ,"); + sb.append(" CASE"); + sb.append(" WHEN OP.INDCREDITO = 1 THEN 'CREDITO'"); + sb.append(" ELSE 'DEBITO'"); + sb.append(" END AS descripcionFormaPago ,"); + sb.append(" CASE"); + sb.append(" WHEN OP.CVETIPO = 'CM' THEN 'COMISSAO' "); + sb.append(" WHEN OP.CVETIPO = 'LQ' THEN 'LQ' "); + sb.append(" END AS descripcionFormaPago,"); + sb.append(" cc.empresa_id, "); + sb.append(" cc.puntoventa_id, "); + sb.append(" pv.numpuntoventa, "); + sb.append(" cc.fechoroperacion "); + sb.append("FROM CONTA_CORRENTE_PTOVTA CC "); + sb.append("LEFT JOIN CONTA_CORRENTE_PTOVTA_GR_LIN CCGL ON CCGL.CONTACORRENTEPTOVTA_ID = CC.CONTACORRENTEPTOVTA_ID "); + sb.append("JOIN TIPO_OPERACION_CC OP ON CC.TIPOOPERACIONCC_ID = OP.TIPOOPERACIONCC_ID "); + sb.append("JOIN PUNTO_VENTA PV ON CC.PUNTOVENTA_ID = PV.PUNTOVENTA_ID "); + sb.append("JOIN EMPRESA E ON CC.EMPRESA_ID = E.EMPRESA_ID "); + sb.append("LEFT JOIN LOG_CONFERENCIA LG ON CC.CONTACORRENTEPTOVTA_ID = LG.CONTACORRENTEPTOVTA_ID "); + sb.append("LEFT JOIN CONFERENCIA_PENDENCIA CP ON CP.CONFERENCIAPENDENCIA_ID = LG.CONFERENCIAPENDENCIA_ID "); + sb.append("WHERE CC.ACTIVO = 1 "); + sb.append(" AND cc.feccorte = TO_DATE('"+fechaStr+" 00:00:00', 'dd/MM/yyyy HH24:mi:ss') "); + adicionaFiltroQuery(empresaId, sb, " and CC.EMPRESA_ID = ", empresaId != null); + adicionaFiltroQuery(puntoVentaId, sb, " and CC.PUNTOVENTA_ID = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + sb.append(" ORDER BY PV.NOMBPUNTOVENTA,"); + sb.append(" E.NOMBEMPRESA,"); + sb.append(" OP.DESCTIPO,"); + sb.append(" OP.CVETIPO "); + + + PreparedStatement stmt = null; + ResultSet rs = null; + + + try { + stmt = getConnection().prepareStatement(sb.toString()); + + rs = stmt.executeQuery(); + + while (rs.next()) { + DespesaReceita receita = new DespesaReceita(); + receita.setCodigoEmpresa(rs.getInt(4)); + receita.setCodigoReceitaDespesa(""); + receita.setDataLancamento(rs.getDate(7)); + receita.setDataMovimento(rs.getDate(7)); + receita.setLocalArrecadacao(rs.getString(6)); + if(rs.getString(3) != null) { + if(rs.getString(3).equalsIgnoreCase("COMISSAO")) { + if (rs.getBigDecimal(1).signum() == 1) { + receita.setIdentificadorReceitaDespesa("D"); + } else { + receita.setIdentificadorReceitaDespesa("R"); + } + }else if(rs.getString(3).equalsIgnoreCase("LQ")) { + if (rs.getBigDecimal(1).signum() == 1) { + receita.setIdentificadorReceitaDespesa("D"); + } else { + receita.setIdentificadorReceitaDespesa("R"); + } + } + } + receita.setValorLancamento(df.format(rs.getBigDecimal(1))); + receita.setDescricaoDetalhada(""); + if (incluiTipoPagamentoTurismoBGM) { + receita.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); + } + receita.setFormaPagamentoId("1"); + despesas.add(receita); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Receitas"); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + stmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return despesas; + } + + + + private void loadEmpresas() { + PreparedStatement pstmt = null; + ResultSet rs = null; + + try { + pstmt = getConnection().prepareStatement("Select empresa_id, nombempresa from empresa order by nombempresa"); + rs = pstmt.executeQuery(); + while (rs.next()) { + Empresa empresa = new Empresa(); + empresa.codigo = rs.getInt(1); + empresa.nombempresa = rs.getString(2); + empresas.add(empresa); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + } + + public Connection getConnection() { + return this.conn; + } + + public List getDespesaCartaoDebCred(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException{ + List despesas = new ArrayList(); + StringBuilder sb = new StringBuilder(); + 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, "); + + if(isCodReceitaFixoBgm){ + sb.append(" case when cdp.formapago_id = 2 then 802 else 803 end, "); + }else{ + sb.append(" tee.contacontabil AS contacontabil, "); + } + + sb.append(" pv.numpuntoventa AS numpuntoventa, "); + sb.append(" ev.tipoeventoextra_id, "); + sb.append(" cdp.formapago_id as formapagoId "); + 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 = ? "); + adicionaFiltroQuery(puntoVentaId, sb, " and cd.puntoventa_id = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); + sb.append(" and cd.activo = 1 "); + sb.append(" and cdp.formapago_id in (2,3) "); + sb.append(" and tee.indtipo = 0 "); + sb.append(" group by "); + sb.append(" cd.feccorte, "); + sb.append(" e.empresa_id, "); + sb.append(" pv.puntoventa_id, "); + + if(isCodReceitaFixoBgm){ + sb.append(" case when cdp.formapago_id = 2 then 802 else 803 end, "); + }else{ + sb.append(" tee.contacontabil, "); + } + + sb.append(" pv.numpuntoventa, ev.tipoeventoextra_id, "); + sb.append(" cdp.formapago_id "); + + PreparedStatement stmt = null; + ResultSet rs = null; + + Date fecha = fechaParam; + if (fechaParam == null) { + 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.getString(5)); + despesa.setDataLancamento(rs.getDate(1)); + despesa.setDataMovimento(rs.getDate(1)); + despesa.setLocalArrecadacao(rs.getString(6)); + if (rs.getBigDecimal(4).signum() == -1) { + despesa.setIdentificadorReceitaDespesa("D"); + despesa.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); + } else { + despesa.setIdentificadorReceitaDespesa("R"); + despesa.setValorLancamento(df.format(rs.getBigDecimal(4))); + } + if (incluiTipoPagamentoTurismoBGM) { + despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); + } + despesa.setFormaPagamentoId(rs.getString("formapagoId")); + despesas.add(despesa); + } + } catch (Exception e) { + log.error(e.toString(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas Cartão Crédito/Débito"); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error("", ignore); + } + try { + stmt.close(); + } catch (Exception ignore) { + log.error("", ignore); + } + } + return despesas; + } + + public List getDespesaCartaoDebCredComporte(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException{ + List despesas = new ArrayList(); + StringBuilder sb = new StringBuilder(); + 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(" pv.numpuntoventa AS numpuntoventa, "); + sb.append(" ev.tipoeventoextra_id, "); + sb.append(" cdp.formapago_id as formapagoId, "); + sb.append(" ct.numautorizacion as numautorizacion, "); + sb.append(" pte.numsitef as numeroEstabelecimento "); + 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(" left join caja_tarjeta ct on ct.cajatarjeta_id = cdp.cajatarjeta_id "); + sb.append(" left join ptovta_empresa pte on pte.puntoventa_id = pv.puntoventa_id and pte.empresa_id = e.empresa_id "); + sb.append(" where "); + sb.append(" cd.feccorte = ? "); + adicionaFiltroQuery(puntoVentaId, sb, " and cd.puntoventa_id = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); + sb.append(" and cd.activo = 1 "); + sb.append(" and cdp.formapago_id in (2,3) "); + sb.append(" and tee.indtipo = 0 "); + sb.append(" group by "); + sb.append(" cd.feccorte, "); + sb.append(" e.empresa_id, "); + sb.append(" pv.puntoventa_id, "); + sb.append(" tee.contacontabil, "); + sb.append(" pv.numpuntoventa, ev.tipoeventoextra_id, "); + sb.append(" cdp.formapago_id, "); + sb.append(" ct.numautorizacion, "); + sb.append(" pte.numsitef "); + + PreparedStatement stmt = null; + ResultSet rs = null; + + Date fecha = fechaParam; + if (fechaParam == null) { + fecha = getData(); + } + + try { + stmt = getConnection().prepareStatement(sb.toString()); + stmt.setDate(1, new java.sql.Date(fecha.getTime())); + rs = stmt.executeQuery(); + + while (rs.next()) { + DespesaReceitaComporte despesa = new DespesaReceitaComporte(); + despesa.setCodigoEmpresa(rs.getInt(2)); + despesa.setCodigoReceitaDespesa(rs.getString(5)); + despesa.setDataLancamento(rs.getDate(1)); + despesa.setDataMovimento(rs.getDate(1)); + despesa.setLocalArrecadacao(rs.getString(6)); + if (rs.getBigDecimal(4).signum() == -1) { + despesa.setIdentificadorReceitaDespesa("D"); + despesa.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); + } else { + despesa.setIdentificadorReceitaDespesa("R"); + despesa.setValorLancamento(df.format(rs.getBigDecimal(4))); + } + if (incluiTipoPagamentoTurismoBGM) { + despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); + } + despesa.setFormaPagamentoId(rs.getString("formapagoId")); + + if( despesa.getFormaPagamentoId().equals("2") || despesa.getFormaPagamentoId().equals("3")) { + despesa.setCodigoAutorizacao(rs.getString("numautorizacion")); + despesa.setNumeroEstabelecimento(rs.getString("numeroEstabelecimento")); + }else { + despesa.setCodigoAutorizacao(""); + despesa.setNumeroEstabelecimento(""); + } + + despesas.add(despesa); + } + } catch (Exception e) { + log.error(e.toString(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas Cartão Crédito/Débito"); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error("", ignore); + } + try { + stmt.close(); + } catch (Exception ignore) { + log.error("", ignore); + } + } + return despesas; + } + + private void adicionaFiltroQuery(final Integer valor, StringBuilder sb, String filtroSQL, Boolean adicionar) { + if (adicionar) { + sb.append(filtroSQL + valor); + } + } + + public List getReceitas(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { + List despesas = new ArrayList(); + StringBuilder sb = new StringBuilder(); + 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(" COALESCE(sum(cdp.importe),0) AS valor, "); + sb.append(" tee.contacontabil AS contacontabil, "); + sb.append(" pv.numpuntoventa AS numpuntoventa, "); + sb.append(" ev.descinfo as descinfo, "); + sb.append(" ev.tipoeventoextra_id, "); + sb.append(" COALESCE(cdp.formapago_id,0) as formapagoId "); + 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 = ? "); + adicionaFiltroQuery(puntoVentaId, sb, " and cd.puntoventa_id = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); + sb.append(" and cd.activo = 1 "); + sb.append(" and tee.indtipo = 1 "); + sb.append(" group by cd.feccorte, "); + sb.append(" e.empresa_id, pv.puntoventa_id, "); + sb.append(" tee.contacontabil, pv.numpuntoventa, "); + sb.append(" ev.descinfo, ev.tipoeventoextra_id, "); + sb.append(" cdp.formapago_id "); + + PreparedStatement stmt = null; + ResultSet rs = null; + + Date fecha = fechaParam; + if (fechaParam == null) { + fecha = getData(); + } + + try { + stmt = getConnection().prepareStatement(sb.toString()); + stmt.setDate(1, new java.sql.Date(fecha.getTime())); + rs = stmt.executeQuery(); + + while (rs.next()) { + DespesaReceita receita = new DespesaReceita(); + receita.setCodigoEmpresa(rs.getInt(2)); + receita.setCodigoReceitaDespesa(rs.getString(5)); + receita.setDataLancamento(rs.getDate(1)); + receita.setDataMovimento(rs.getDate(1)); + receita.setLocalArrecadacao(rs.getString(6)); + if (rs.getBigDecimal(4).signum() == -1) { + receita.setIdentificadorReceitaDespesa("D"); + receita.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); + } else { + receita.setIdentificadorReceitaDespesa("R"); + receita.setValorLancamento(df.format(rs.getBigDecimal(4))); + } + + String desc =rs.getString(7); + + desc = this.removerQuebraDeLinha(desc); + + receita.setDescricaoDetalhada(desc); + if (incluiTipoPagamentoTurismoBGM) { + receita.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); + } + receita.setFormaPagamentoId(rs.getString("formapagoId")); + despesas.add(receita); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Receitas"); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + stmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return despesas; + } + + public List getReceitasComporte(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { + List despesas = new ArrayList(); + StringBuilder sb = new StringBuilder(); + 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(" COALESCE(cdp.importe,0) AS valor, "); + sb.append(" tee.contacontabil AS contacontabil, "); + sb.append(" pv.numpuntoventa AS numpuntoventa, "); + sb.append(" ev.descinfo AS descinfo, "); + sb.append(" ev.tipoeventoextra_id, "); + sb.append(" COALESCE(cdp.formapago_id,0) as formapagoId, "); + sb.append(" ct.numautorizacion AS numautorizacion, "); + sb.append(" pte.numsitef AS numeroestabelecimento, "); + sb.append(" ct.cantparcelas "); + 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(" LEFT JOIN caja_tarjeta ct ON ct.cajatarjeta_id = cdp.cajatarjeta_id "); + sb.append(" LEFT JOIN ptovta_empresa pte ON pte.puntoventa_id = pv.puntoventa_id AND pte.empresa_id = e.empresa_id "); + sb.append(" where "); + sb.append(" cd.feccorte = ? "); + adicionaFiltroQuery(puntoVentaId, sb, " and cd.puntoventa_id = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); + sb.append(" and cd.activo = 1 "); + sb.append(" and tee.indtipo = 1 "); + + PreparedStatement stmt = null; + ResultSet rs = null; + + Date fecha = fechaParam; + if (fechaParam == null) { + fecha = getData(); + } + + try { + stmt = getConnection().prepareStatement(sb.toString()); + stmt.setDate(1, new java.sql.Date(fecha.getTime())); + rs = stmt.executeQuery(); + + while (rs.next()) { + DespesaReceitaComporte receita = new DespesaReceitaComporte(); + receita.setCodigoEmpresa(rs.getInt(2)); + receita.setCodigoReceitaDespesa(rs.getString(5)); + receita.setDataLancamento(rs.getDate(1)); + receita.setDataMovimento(rs.getDate(1)); + receita.setLocalArrecadacao(rs.getString(6)); + receita.setCantParcelas(rs.getString(12)); + if (rs.getBigDecimal(4).signum() == -1) { + receita.setIdentificadorReceitaDespesa("D"); + receita.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); + } else { + receita.setIdentificadorReceitaDespesa("R"); + receita.setValorLancamento(df.format(rs.getBigDecimal(4))); + } + + String desc =rs.getString(7); + + desc = this.removerQuebraDeLinha(desc); + + receita.setDescricaoDetalhada(desc); + if (incluiTipoPagamentoTurismoBGM) { + receita.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); + } + receita.setFormaPagamentoId(rs.getString("formapagoId")); + + if( receita.getFormaPagamentoId().equals("2") || receita.getFormaPagamentoId().equals("3")) { + receita.setCodigoAutorizacao(rs.getString("numautorizacion")); + receita.setNumeroEstabelecimento(rs.getString("numeroEstabelecimento")); + }else { + receita.setCodigoAutorizacao(""); + receita.setNumeroEstabelecimento(""); + } + + despesas.add(receita); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Receitas"); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + stmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return despesas; + } + + public List getDespesas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { + 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.numpuntoventa as numpuntoventa, "); + sb.append(" cdp.importe as valor, "); + sb.append(" tee.contacontabil as contacontabil, "); + sb.append(" ev.descinfo as descinfo, "); + sb.append(" ev.tipoeventoextra_id, "); + sb.append(" cdp.formapago_id as formapagoId "); + 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 "); + adicionaFiltroQuery(puntoventaId, sb, " and cd.puntoventa_id = ", puntoventaId != null && !puntoventaId.equals(-1)); + adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); + sb.append(" and cd.activo = 1 "); + sb.append(" AND cdp.formapago_id not IN (2,3) "); + 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 = fechaParam; + if (fechaParam == null) { + fecha = getData(); + } + + PreparedStatement pstmt = null; + ResultSet rs = null; + + try { + pstmt = getConnection().prepareStatement(sb.toString()); + pstmt.setDate(1, new java.sql.Date(fecha.getTime())); + + rs = pstmt.executeQuery(); + while (rs.next()) { + DespesaReceita despesa = new DespesaReceita(); + despesa.setCodigoEmpresa(rs.getInt(2)); + despesa.setCodigoReceitaDespesa(rs.getString(5)); + despesa.setDataLancamento(rs.getDate(1)); + despesa.setDataMovimento(rs.getDate(1)); + despesa.setLocalArrecadacao(rs.getString(3)); + despesa.setValorLancamento(df.format(rs.getBigDecimal(4).doubleValue() * -1)); + despesa.setIdentificadorReceitaDespesa("D"); + String desc =rs.getString(6); + + desc = this.removerQuebraDeLinha(desc); + + despesa.setDescricaoDetalhada(desc); + if (incluiTipoPagamentoTurismoBGM) { + despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); + } + despesa.setFormaPagamentoId(rs.getString("formapagoId")); + despesas.add(despesa); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas"); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return despesas; + } + + private String removerQuebraDeLinha(String desc) { + if(StringUtils.isBlank(desc)){ + return desc; + } + + desc = desc.replaceAll("\t", " "); + + desc = desc.replaceAll("\n", " "); + + desc = desc.replaceAll("\r", " "); + + return desc; + } + + public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { + List depositos = new ArrayList(); + + StringBuilder strFechamentos = new StringBuilder(); + strFechamentos.append("Select distinct sum(fd.valor_pago), fdep.numdeposito, fdep.fecha_deposito, fc.empresa_id, "); + strFechamentos.append(" pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion, fdep.feccreacion "); + strFechamentos.append(" from fechamento_deposito fdep "); + strFechamentos.append(" join fechamento_cct_deposito fd on fd.fechamentodeposito_id = fdep.fechamentodeposito_id "); + strFechamentos.append(" join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); + strFechamentos.append(" inner join PUNTO_VENTA pv on PV.PUNTOVENTA_ID = FC.PUNTOVENTA_ID "); + strFechamentos.append(" join empresa_contabancaria ec on ec.EMPRESACONTABANCARIA_ID = fdep.EMPRESACONTABANCARIA_ID "); + strFechamentos.append(" join INSTI_FINANCEIRA if on if.INSTIFINANCEIRA_ID = EC.INSTIFINANCEIRA_ID "); + strFechamentos.append(" join EMPRESA e on e.empresa_id = fc.empresa_id "); + strFechamentos.append(" where trunc(fdep.feccreacion) = :fecha and fd.activo = 1 and fc.activo = 1 and fdep.activo = 1 "); + adicionaFiltroQuery(puntoventaId, strFechamentos, " and fc.puntoventa_id = ", puntoventaId != null && !puntoventaId.equals(-1)); + adicionaFiltroQuery(empresaId, strFechamentos, " and fc.empresa_id = ", empresaId != null); + strFechamentos.append(" group by fdep.numdeposito, fdep.feccreacion, fdep.fecha_deposito, fc.empresa_id, pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion "); + + Date fecha = fechaParam; + if (fechaParam == null) { + fecha = getData(); + } + + PreparedStatement pstmtFechamentos = null; + ResultSet rsFechamentos = null; + BigDecimal soma = BigDecimal.ZERO; + try { + pstmtFechamentos = getConnection().prepareStatement(strFechamentos.toString()); + pstmtFechamentos.setDate(1, new java.sql.Date(fecha.getTime())); + + rsFechamentos = pstmtFechamentos.executeQuery(); + + while (rsFechamentos.next()) { + Integer empId = null; + String banco = ""; + String agencia = ""; + String contaCorrente = ""; + String numDep = " Dep: " + rsFechamentos.getString(2); + String codRecDesp = null; + String numpuntoventa = rsFechamentos.getString(5); + + if (empId == null) { + empId = rsFechamentos.getInt(4); + } + if (banco.isEmpty()) { + banco = "Bco: " + StringUtils.leftPad(rsFechamentos.getString(8), 3, "0"); + } + + if (agencia.isEmpty()) { + agencia = " Ag: " + rsFechamentos.getString(6); + } + if (contaCorrente.isEmpty()) { + contaCorrente = " C/C: " + rsFechamentos.getString(7); + } + if (codRecDesp == null) { + codRecDesp = rsFechamentos.getString(9); + } + + DespesaReceita deposito = new DespesaReceita(); + deposito.setCodigoEmpresa(empId); + deposito.setDataLancamento(rsFechamentos.getDate(10)); + deposito.setDataMovimento(rsFechamentos.getDate(3)); + deposito.setLocalArrecadacao(numpuntoventa); + deposito.setValorLancamento(df.format(rsFechamentos.getBigDecimal(1))); + deposito.setIdentificadorReceitaDespesa("D"); + deposito.setCodigoReceitaDespesa(codRecDesp); + deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep); + + depositos.add(deposito); + soma = soma.add(rsFechamentos.getBigDecimal(1)); + } + log.debug("Total depósitos: " + soma); + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Depósitos"); + } finally { + try { + pstmtFechamentos.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + rsFechamentos.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return depositos; + } + + public Integer getCodigoReceitaDespesaGlobus() { + StringBuilder sb = new StringBuilder(); + sb.append("Select valorconstante from constante where nombconstante = 'CODIGO_RECEITA_DESPESA_GLOBUS' "); + PreparedStatement pstmt = null; + ResultSet rs = null; + Integer result = null; + try { + pstmt = getConnection().prepareStatement(sb.toString()); + rs = pstmt.executeQuery(); + if (rs.next()) { + result = rs.getInt(1); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return result; + + } + + public Boolean isConstanteBloqueioMenorQueData(Integer empresaId, Date data) { + StringBuilder sb = new StringBuilder(); + sb.append("Select valorconstante from constante where nombconstante = 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "'"); + PreparedStatement pstmt = null; + ResultSet rs = null; + Boolean result = null; + try { + pstmt = getConnection().prepareStatement(sb.toString()); + rs = pstmt.executeQuery(); + if (rs.next()) { + Date rsDate = new SimpleDateFormat("dd/MM/yyyy").parse(rs.getString(1)); + result = !rsDate.after(data); + } else { // se não existir a constante, retorno true para que ela seja criada na função updateDataBloqueio + result = true; + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return result; + + } + + public void updateDataBloqueio(Integer empresaId, Date data) { + StringBuilder sb = new StringBuilder(); + PreparedStatement pstmt = null; + SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); + try { + if (!getConnection().prepareStatement("Select valorconstante from constante where nombconstante = 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "'").executeQuery().next()) { + sb.append("insert into constante values (constante_seq.nextval, 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "', 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "',1," + + "'" + sdf.format(data) + "', 1, 1, :datamodif, 1)"); + pstmt = getConnection().prepareStatement(sb.toString()); + pstmt.setDate(1, new java.sql.Date(new Date().getTime())); + } else { + sb.append("update constante set valorconstante = :valor where nombconstante = 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "'"); + pstmt = getConnection().prepareStatement(sb.toString()); + pstmt.setString(1, sdf.format(data)); + } + + pstmt.executeUpdate(); + } catch (Exception e) { + log.error(e.getMessage(), e); + } finally { + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + } + + private Date getData() { + Calendar cal = Calendar.getInstance(); + cal.set(2015, 10, 13); + cal.setTime(new Date()); + cal.add(Calendar.DAY_OF_MONTH, DAYS_AGO); + return cal.getTime(); + } + + public List getPontosVenda() { + return pontosVenda; + } + + public void setPontosVenda(List pontosVenda) { + this.pontosVenda = pontosVenda; + } + + public List getEmpresas() { + return empresas; + } + + public void setEmpresas(List empresas) { + this.empresas = empresas; + } + + public void setIsReceitasDespesasComporte(Boolean isReceitasDespesasComporte) { + this.isReceitasDespesasComporte = isReceitasDespesasComporte; + } + public static void amain(String[] args) { + System.out.println(new BigDecimal("0").signum()); + } + +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java new file mode 100644 index 000000000..5f77c7553 --- /dev/null +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -0,0 +1,155 @@ +package com.rjconsultores.integracaoreceitadespesa.entidades; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.List; + +import org.apache.commons.lang.StringUtils; + +public class DespesaReceita { + protected String dataLancamento; // DD/MM/YYYY + protected String codigoEmpresa; // 011 003 Numerico + protected final String codigoFilial = "001"; // 014 003 Numerico + protected String localArrecadacao; // 017 005 Alfanumerico + protected final String numeroDaGuia = " "; // 022 025 Alfanumerico + protected String dataMovimento; // 047 010 Alfanumerico + protected final String usuarioGlobus = "TOTALBUS ";// 057 015 Alfanumerico + protected final String turno = "01";// 072 002 Numerico + protected String codigoReceitaDespesa;// 074 010 Numerico CONSTANTE CODIGO_RECEITA_DESPESA_GLOBUS + protected String identificadorReceitaDespesa;// 084 001 Alfanumerico + protected String valorLancamento;// 085 013 Numerico + protected final String numeroContratoTurismo = "0000000000"; // 098 010 Numerico + protected final String numeroReciboTurismo = " "; // 108 010 Alfanumerico + protected final String formaPagamentoTurismo = " ";// 118 002 Numerico + protected String tipoPagamentoTurismo = " ";// 120 002 Numerico + protected String descricaoDetalhada = "";// 122 80 Alfanumerico + protected final String documentoVenda = "000000";// 202 6 Numerico + protected final String tipoDocumentoVenda = " ";// 208 1 Alfanumerico + protected final String numerodocumentoCPG = "0000000000";// 209 10 Numerico + protected String formaPagamentoId = "0";// 218 Numerico + protected final String finalLinha = "*";// 239 1 Alfanumerico + + + protected SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); + + public DespesaReceita() { + + } + + public void preencheLinha(List rows) { + StringBuilder sb = new StringBuilder(); + sb.append(dataLancamento); + sb.append(codigoEmpresa); + sb.append(codigoFilial); + sb.append(localArrecadacao.toUpperCase()); + sb.append(numeroDaGuia); + sb.append(dataMovimento); + sb.append(usuarioGlobus); + sb.append(turno); + sb.append(codigoReceitaDespesa); + sb.append(identificadorReceitaDespesa.toUpperCase()); + sb.append(valorLancamento); + sb.append(StringUtils.rightPad("", 10, " ")); + sb.append(numeroReciboTurismo); + sb.append(getFormaPagamentoTurismo()); + sb.append(getTipoPagamentoTurismo()); + sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(descricaoDetalhada) ? truncStr(descricaoDetalhada, 100) : "", 100, " ")); + sb.append(documentoVenda); + sb.append(tipoDocumentoVenda); + sb.append(StringUtils.rightPad("", 9, "0")); + sb.append(formaPagamentoId); + sb.append(finalLinha); + sb.append(System.getProperty("line.separator")); + rows.add(sb.toString()); + } + + public void preencheLinhaLayoutNovo(List rows) { + StringBuilder sb = new StringBuilder(); + sb.append(StringUtils.rightPad(dataLancamento.trim(), 10, " ")); + sb.append(StringUtils.leftPad(codigoEmpresa.trim(), 3, "0")); + sb.append(StringUtils.leftPad(codigoFilial.trim(), 3, "0")); + sb.append(StringUtils.rightPad(localArrecadacao.toUpperCase().trim(), 5, " ")); + sb.append(StringUtils.rightPad(numeroDaGuia.trim(), 25, " ")); + sb.append(StringUtils.rightPad(dataMovimento.trim(), 10, " ")); + sb.append(StringUtils.rightPad(usuarioGlobus.trim(), 15, " ")); + sb.append(StringUtils.leftPad(turno.trim(), 2, "0")); + sb.append(StringUtils.leftPad(codigoReceitaDespesa.trim(), 10, "0")); + sb.append(StringUtils.rightPad(identificadorReceitaDespesa.toUpperCase().trim(), 1, " ")); + sb.append(StringUtils.leftPad(valorLancamento.trim(), 13, "0")); + sb.append(StringUtils.rightPad("", 10, " ")); + sb.append(StringUtils.rightPad(numeroReciboTurismo.trim(), 10, " ")); + sb.append(StringUtils.leftPad(getFormaPagamentoTurismo().trim(), 2, "0")); + sb.append(StringUtils.leftPad(getTipoPagamentoTurismo().trim(), 2, "0")); + sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(descricaoDetalhada) ? truncStr(descricaoDetalhada, 100) : "", 100, " ")); + sb.append(StringUtils.leftPad(documentoVenda.trim(), 6, "0")); + sb.append(StringUtils.rightPad(tipoDocumentoVenda.trim(), 1, " ")); + sb.append(StringUtils.rightPad("", 9, "0")); + sb.append(finalLinha); + sb.append(System.getProperty("line.separator")); + rows.add(sb.toString()); + } + + public void setDataLancamento(Date dataLancamento) { + this.dataLancamento = sdf.format(dataLancamento); + } + + public void setCodigoEmpresa(Integer codigoEmpresa) { + this.codigoEmpresa = StringUtils.leftPad(codigoEmpresa.toString(), 3, "0"); + } + + public void setLocalArrecadacao(Integer localArrecadacao) { + this.localArrecadacao = StringUtils.rightPad(localArrecadacao != null ? truncStr(localArrecadacao.toString(), 5) : "", 5, " "); + } + + public void setLocalArrecadacao(String localArrecadacao) { + this.localArrecadacao = StringUtils.rightPad(localArrecadacao != null ? truncStr(localArrecadacao, 6) : "", 5, ""); + } + + public void setDataMovimento(Date dataMovimento) { + this.dataMovimento = sdf.format(dataMovimento); + } + + public void setCodigoReceitaDespesa(String codigoReceitaDespesa) { + this.codigoReceitaDespesa = StringUtils.leftPad(codigoReceitaDespesa != null ? codigoReceitaDespesa : "0", 10, "0"); + } + + public void setIdentificadorReceitaDespesa(String identificadorReceitaDespesa) { + this.identificadorReceitaDespesa = identificadorReceitaDespesa.toUpperCase(); + } + + public void setValorLancamento(String valorLancamento) { + this.valorLancamento = StringUtils.leftPad(valorLancamento!=null?truncStr(valorLancamento.replace(",", "").replace(".", ""), 100):"", 13, "0"); + } + + public void setDescricaoDetalhada(String desc) { + this.descricaoDetalhada = StringUtils.rightPad(StringUtils.isNotEmpty(desc) ? truncStr(desc, 100) : "", 100, " "); + } + + public String getFormaPagamentoTurismo() { + return formaPagamentoTurismo; + } + + public String getTipoPagamentoTurismo() { + return tipoPagamentoTurismo; + } + + public void setTipoPagamentoTurismo(String tipoPagamentoTurismo) { + this.tipoPagamentoTurismo = StringUtils.leftPad(StringUtils.isNotEmpty(tipoPagamentoTurismo) ? truncStr(tipoPagamentoTurismo, 2):tipoPagamentoTurismo, 2, " "); + } + + public String getFormaPagamentoId() { + return formaPagamentoId; + } + + public void setFormaPagamentoId(String formaPagamentoId) { + this.formaPagamentoId = StringUtils.leftPad(StringUtils.isNotEmpty(formaPagamentoId) ? truncStr(formaPagamentoId.toString(), 2) : "", 1, "0"); + } + + protected String truncStr(String str, int size) { + if (str.length() > size) { + return str.substring(0, size - 1); + } + return str; + } + +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java new file mode 100644 index 000000000..1fe8fe538 --- /dev/null +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java @@ -0,0 +1,66 @@ +package com.rjconsultores.integracaoreceitadespesa.entidades; + +import java.util.List; + +import org.apache.commons.lang.StringUtils; + +public class DespesaReceitaComporte extends DespesaReceita { + + protected String numeroEstabelecimento; + protected String codigoAutorizacao; + protected String cantParcelas = ""; + + @Override + public void preencheLinha(List rows) { + StringBuilder sb = new StringBuilder(); + sb.append(dataLancamento); + sb.append(codigoEmpresa); + sb.append(codigoFilial); + sb.append(localArrecadacao.toUpperCase()); + sb.append(numeroDaGuia); + sb.append(dataMovimento); + sb.append(usuarioGlobus); + sb.append(turno); + sb.append(codigoReceitaDespesa); + sb.append(identificadorReceitaDespesa.toUpperCase()); + sb.append(valorLancamento); + sb.append(numeroContratoTurismo); + sb.append(numeroReciboTurismo); + sb.append(getFormaPagamentoTurismo()); + sb.append(getTipoPagamentoTurismo()); + sb.append(StringUtils.rightPad("", 80, " ")); + sb.append(StringUtils.rightPad(numeroEstabelecimento, 10, "0").substring(0,10)); + sb.append(StringUtils.rightPad(codigoAutorizacao, 6, "0").substring(0,6)); + sb.append(StringUtils.rightPad("", 16, " ")); + sb.append(StringUtils.rightPad("", 3, "0")); + sb.append(StringUtils.leftPad(formaPagamentoId, 2, "0")); + sb.append(cantParcelas); + sb.append(finalLinha); + sb.append(System.getProperty("line.separator")); + rows.add(sb.toString()); + } + + public String getNumeroEstabelecimento() { + return numeroEstabelecimento; + } + + public void setNumeroEstabelecimento(String numeroEstabelecimento) { + this.numeroEstabelecimento = StringUtils.rightPad(numeroEstabelecimento != null ? numeroEstabelecimento : "", 10, " "); + } + + public String getCodigoAutorizacao() { + return codigoAutorizacao; + } + + public void setCodigoAutorizacao(String codigoAutorizacao) { + this.codigoAutorizacao = StringUtils.rightPad(codigoAutorizacao != null ? truncStr(codigoAutorizacao, 22) : "", 22, "0"); + } + + public String getCantParcelas() { + return cantParcelas; + } + + public void setCantParcelas(String cantParcelas) { + this.cantParcelas = StringUtils.isNotEmpty(cantParcelas) ? StringUtils.leftPad(cantParcelas, 4,"0") : " "; + } +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/Empresa.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/Empresa.java new file mode 100644 index 000000000..debc1c81a --- /dev/null +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/Empresa.java @@ -0,0 +1,11 @@ +package com.rjconsultores.integracaoreceitadespesa.entidades; + +public class Empresa { + public Integer codigo; + public String nombempresa; + + @Override + public String toString(){ + return nombempresa; + } +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/PuntoVenta.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/PuntoVenta.java new file mode 100644 index 000000000..62d041503 --- /dev/null +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/PuntoVenta.java @@ -0,0 +1,11 @@ +package com.rjconsultores.integracaoreceitadespesa.entidades; + +public class PuntoVenta { + public Integer codigo; + public String nombpuntoventa; + + @Override + public String toString(){ + return nombpuntoventa; + } +} From 6f0192ee35198c55ad5877f41cfdab9152725d3f Mon Sep 17 00:00:00 2001 From: fabio Date: Tue, 7 Dec 2021 11:20:47 +0000 Subject: [PATCH 090/121] fixes bug#23550 dev: Celio qua: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@109910 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../BGMApplication.java | 15 +++-- .../dao/Totalbus.java | 28 ++++++-- .../entidades/DespesaReceita.java | 66 +++++++++++++------ 3 files changed, 80 insertions(+), 29 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java index 5b13f61e6..120325669 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java @@ -77,18 +77,24 @@ public class BGMApplication { return props; } + public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean isReceitasDespesasComporte,boolean isCodReceitaFixoBgm, boolean isReceitasDespesasOuroPrata, boolean layoutNovo) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ + this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; + this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; + return executaExportacao(dataInicio, dataFinal, diretorio, empresaId, puntoVentaId, con, pathGravacaoExternaArquivos, incluiTipoPagamentoTurismoBGM, layoutNovo); + } + public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean isReceitasDespesasComporte,boolean isCodReceitaFixoBgm, boolean isReceitasDespesasOuroPrata) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; - return executaExportacao(dataInicio, dataFinal, diretorio, empresaId, puntoVentaId, con, pathGravacaoExternaArquivos, incluiTipoPagamentoTurismoBGM); + return executaExportacao(dataInicio, dataFinal, diretorio, empresaId, puntoVentaId, con, pathGravacaoExternaArquivos, incluiTipoPagamentoTurismoBGM, false); } public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean isReceitasDespesasComporte, boolean isReceitasDespesasOuroPrata) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ this.isReceitasDespesasComporte = isReceitasDespesasComporte; - return executaExportacao(dataInicio, dataFinal, diretorio, empresaId, puntoVentaId, con, pathGravacaoExternaArquivos, incluiTipoPagamentoTurismoBGM); + return executaExportacao(dataInicio, dataFinal, diretorio, empresaId, puntoVentaId, con, pathGravacaoExternaArquivos, incluiTipoPagamentoTurismoBGM, false); } - public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ + public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean layoutNovo) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ if (empresaId == null){ throw new IllegalArgumentException("o parâmetro empesaId é obrigatório!"); } @@ -96,7 +102,7 @@ public class BGMApplication { throw new IllegalArgumentException("o parâmetro puntoVentaId é obrigatório!"); } excluirArquivosZip(diretorio); - Totalbus totalbus = new Totalbus(con, isReceitasDespesasComporte,isCodReceitaFixoBgm, isReceitasDespesasOuroPrata ); + Totalbus totalbus = new Totalbus(con, isReceitasDespesasComporte, isCodReceitaFixoBgm, isReceitasDespesasOuroPrata, layoutNovo ); if (totalbus.isConstanteBloqueioMenorQueData(empresaId, dataFinal)){ totalbus.updateDataBloqueio(empresaId, dataFinal); } @@ -167,6 +173,7 @@ public class BGMApplication { } } + @SuppressWarnings("resource") private void copyFileUsingChannel(File source, File dest) throws IOException { FileChannel sourceChannel = null; diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 0eb1c6d58..f06b3f339 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -37,6 +37,8 @@ public class Totalbus { private Boolean isReceitasDespesasOuroPrata= false; + private Boolean isLayoutNovo= false; + private DecimalFormat df = new DecimalFormat("#0.00"); public Totalbus(Connection con, Boolean isReceitasDespesasComporte, Boolean isReceitasDespesasOuroPrata) { @@ -55,6 +57,16 @@ public class Totalbus { loadEmpresas(); loadPuntosVenta(); } + + public Totalbus(Connection con, Boolean isReceitasDespesasComporte,Boolean isCodReceitaFixoBgm, Boolean isReceitasDespesasOuroPrata, Boolean isLayoutNovo) { + this.conn = con; + this.isReceitasDespesasComporte = isReceitasDespesasComporte; + this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; + this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; + this.isLayoutNovo = isLayoutNovo; + loadEmpresas(); + loadPuntosVenta(); + } public List getDespesasReceitas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException{ log.debug("gerando depósitos..."); @@ -79,8 +91,14 @@ public class Totalbus { List rows = new ArrayList(); - for (DespesaReceita item : despesasReceitas) { - item.preencheLinha(rows); + if( isLayoutNovo ) { + for (DespesaReceita item : despesasReceitas) { + item.preencheLinhaLayoutNovo(rows); + } + }else { + for (DespesaReceita item : despesasReceitas) { + item.preencheLinha(rows); + } } return rows; } @@ -631,11 +649,11 @@ public class Totalbus { List despesas = new ArrayList(); StringBuilder sb = new StringBuilder(); sb.append(" select "); - sb.append(" cd.feccorte AS fechorvta, "); - sb.append(" e.empresa_id AS empresa, "); + sb.append(" cd.feccorte AS fechorvta, "); + sb.append(" e.empresa_id AS empresa, "); sb.append(" pv.puntoventa_id AS puntoventaId, "); sb.append(" COALESCE(sum(cdp.importe),0) AS valor, "); - sb.append(" tee.contacontabil AS contacontabil, "); + sb.append(" tee.contacontabil AS contacontabil, "); sb.append(" pv.numpuntoventa AS numpuntoventa, "); sb.append(" ev.descinfo as descinfo, "); sb.append(" ev.tipoeventoextra_id, "); diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index d64532964..034b127df 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -8,26 +8,26 @@ import org.apache.commons.lang.StringUtils; public class DespesaReceita { protected String dataLancamento; // DD/MM/YYYY - protected String codigoEmpresa; // 011 003 Num�rico - protected final String codigoFilial = "001"; // 014 003 Num�rico - protected String localArrecadacao; // 017 005 Alfanum�rico - protected final String numeroDaGuia = " "; // 022 025 Alfanum�rico - protected String dataMovimento; // 047 010 Alfanum�rico - protected final String usuarioGlobus = "TOTALBUS ";// 057 015 Alfanum�rico - protected final String turno = "01";// 072 002 Num�rico - protected String codigoReceitaDespesa;// 074 010 Num�rico CONSTANTE CODIGO_RECEITA_DESPESA_GLOBUS - protected String identificadorReceitaDespesa;// 084 001 Alfanum�rico - protected String valorLancamento;// 085 013 Num�rico - protected final String numeroContratoTurismo = "0000000000";// 098 010 Num�rico - protected final String numeroReciboTurismo = " ";// 108 010 Alfanum�rico - protected final String formaPagamentoTurismo = " ";// 118 002 Num�rico - protected String tipoPagamentoTurismo = " ";// 120 002 Num�rico - protected String descricaoDetalhada = "";// 122 80 Alfanum�rico - protected final String documentoVenda = "000000";// 202 6 Num�rico - protected final String tipoDocumentoVenda = " ";// 208 1 Alfanum�rico - protected final String numerodocumentoCPG = "0000000000";// 209 10 Num�rico - protected String formaPagamentoId = "0";// 218 Num�rico - protected final String finalLinha = "*";// 239 1 Alfanum�rico + protected String codigoEmpresa; // 011 003 Numerico + protected final String codigoFilial = "001"; // 014 003 Numerico + protected String localArrecadacao; // 017 005 Alfanumerico + protected final String numeroDaGuia = " "; // 022 025 Alfanumerico + protected String dataMovimento; // 047 010 Alfanumerico + protected final String usuarioGlobus = "TOTALBUS ";// 057 015 Alfanumerico + protected final String turno = "01";// 072 002 Numerico + protected String codigoReceitaDespesa;// 074 010 Numerico CONSTANTE CODIGO_RECEITA_DESPESA_GLOBUS + protected String identificadorReceitaDespesa;// 084 001 Alfanumerico + protected String valorLancamento;// 085 013 Numerico + protected final String numeroContratoTurismo = "0000000000"; // 098 010 Numerico + protected final String numeroReciboTurismo = " "; // 108 010 Alfanumerico + protected final String formaPagamentoTurismo = " ";// 118 002 Numerico + protected String tipoPagamentoTurismo = " ";// 120 002 Numerico + protected String descricaoDetalhada = "";// 122 80 Alfanumerico + protected final String documentoVenda = "000000";// 202 6 Numerico + protected final String tipoDocumentoVenda = " ";// 208 1 Alfanumerico + protected final String numerodocumentoCPG = "0000000000";// 209 10 Numerico + protected String formaPagamentoId = "0";// 218 Numerico + protected final String finalLinha = "*";// 239 1 Alfanumerico protected SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); @@ -62,6 +62,32 @@ public class DespesaReceita { sb.append(System.getProperty("line.separator")); rows.add(sb.toString()); } + + public void preencheLinhaLayoutNovo(List rows) { + StringBuilder sb = new StringBuilder(); + sb.append(StringUtils.rightPad(dataLancamento.trim(), 10, " ")); + sb.append(StringUtils.leftPad(codigoEmpresa.trim(), 3, "0")); + sb.append(StringUtils.leftPad(codigoFilial.trim(), 3, "0")); + sb.append(StringUtils.rightPad( truncStr(localArrecadacao.toUpperCase(), 5), 5, " ")); + sb.append(StringUtils.rightPad(numeroDaGuia.trim(), 25, " ")); + sb.append(StringUtils.rightPad(dataMovimento.trim(), 10, " ")); + sb.append(StringUtils.rightPad(usuarioGlobus.trim(), 15, " ")); + sb.append(StringUtils.leftPad(turno.trim(), 2, "0")); + sb.append(StringUtils.leftPad(codigoReceitaDespesa.trim(), 10, "0")); + sb.append(StringUtils.rightPad(identificadorReceitaDespesa.toUpperCase().trim(), 1, " ")); + sb.append(StringUtils.leftPad(valorLancamento.trim(), 13, "0")); + sb.append(StringUtils.rightPad("", 10, " ")); + sb.append(StringUtils.rightPad(numeroReciboTurismo.trim(), 10, " ")); + sb.append(StringUtils.leftPad(getFormaPagamentoTurismo().trim(), 2, "0")); + sb.append(StringUtils.leftPad(getTipoPagamentoTurismo().trim(), 2, "0")); + sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(descricaoDetalhada) ? truncStr(descricaoDetalhada, 100) : "", 100, " ")); + sb.append(StringUtils.leftPad(documentoVenda.trim(), 6, "0")); + sb.append(StringUtils.rightPad(tipoDocumentoVenda.trim(), 1, " ")); + sb.append(StringUtils.rightPad("", 10, "0")); + sb.append(finalLinha); + sb.append(System.getProperty("line.separator")); + rows.add(sb.toString()); + } public void setDataLancamento(Date dataLancamento) { this.dataLancamento = sdf.format(dataLancamento); From 4ed81080fe5c132cba47bfdbad97ebab0d3ff5c7 Mon Sep 17 00:00:00 2001 From: fabiorj Date: Wed, 8 Dec 2021 18:57:44 -0300 Subject: [PATCH 091/121] ajuste para build --- pom.xml | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/pom.xml b/pom.xml index 766d63b1b..323c12f99 100644 --- a/pom.xml +++ b/pom.xml @@ -3,21 +3,7 @@ 4.0.0 br.com.rjconsultores IntegracaoReceitaDespesa - 0.0.1-SNAPSHOT - - - - log4j - log4j - 1.2.16 - - - commons-lang - commons-lang - 2.0 - - - + 1.0.0 src @@ -32,13 +18,27 @@ maven-compiler-plugin - 3.3 + 3.8.1 - 1.6 - 1.6 - Cp1252 + 1.8 + 1.8 + ISO-8859-1 + + + + log4j + log4j + 1.2.16 + + + commons-lang + commons-lang + 2.0 + + + \ No newline at end of file From 612691f1509c622922f4102c225ef0af943d35a4 Mon Sep 17 00:00:00 2001 From: fabio Date: Tue, 14 Dec 2021 15:11:11 +0000 Subject: [PATCH 092/121] fixes bug#23550 dev: Celio qua: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/Integracion/IntegracaoReceitaDespesa/trunk/IntegracaoReceitaDespesa@110010 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../BGMApplication.java | 2 +- .../dao/Totalbus.java | 104 ++++++++++++++---- .../entidades/DespesaReceita.java | 12 +- 3 files changed, 95 insertions(+), 23 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java index 120325669..7d8dc5d6c 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java @@ -125,7 +125,7 @@ public class BGMApplication { File file = new File(fileName); log.debug("gerando arquivo..."); - Arquivo.GravaArquivo(file.getAbsolutePath(), totalbus.getDespesasReceitas(puntoVentaId, empresaId, cal.getTime(), incluiTipoPagamentoTurismoBGM)); + Arquivo.GravaArquivo(file.getAbsolutePath(), totalbus.getDespesasReceitas(puntoVentaId, empresaId, cal.getTime(), incluiTipoPagamentoTurismoBGM, layoutNovo)); this.copiarArquivoExternamente(file, pathGravacaoExternaArquivos); diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index f06b3f339..cca74c8a5 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -68,11 +68,11 @@ public class Totalbus { loadPuntosVenta(); } - public List getDespesasReceitas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException{ + public List getDespesasReceitas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException{ log.debug("gerando depósitos..."); - List despesasReceitas = getDepositos(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM); + List despesasReceitas = getDepositos(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo); log.debug("gerando despesas..."); - despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); log.debug("gerando despesas cartão..."); if (isReceitasDespesasComporte){ @@ -81,9 +81,9 @@ public class Totalbus { despesasReceitas.addAll(getReceitasComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); }else { - despesasReceitas.addAll(getDespesaCartaoDebCred(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + despesasReceitas.addAll(getDespesaCartaoDebCred(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); log.debug("gerando receitas..."); - despesasReceitas.addAll(getReceitas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + despesasReceitas.addAll(getReceitas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); if(isReceitasDespesasOuroPrata) { getContaCorrenteAgencia(despesasReceitas, puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM); } @@ -440,7 +440,7 @@ public class Totalbus { return this.conn; } - public List getDespesaCartaoDebCred(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException{ + public List getDespesaCartaoDebCred(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException{ List despesas = new ArrayList(); StringBuilder sb = new StringBuilder(); sb.append(" select "); @@ -518,6 +518,13 @@ public class Totalbus { despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); } despesa.setFormaPagamentoId(rs.getString("formapagoId")); + + if(isLayoutNovo) { + despesa.setTipoPagamentoTurismo("01"); + despesa.setFormaPagamentoId("03"); + despesa.setTipoDocumentoVenda("P"); + } + despesas.add(despesa); } } catch (Exception e) { @@ -645,7 +652,7 @@ public class Totalbus { } } - public List getReceitas(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { + public List getReceitas(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException { List despesas = new ArrayList(); StringBuilder sb = new StringBuilder(); sb.append(" select "); @@ -657,13 +664,16 @@ public class Totalbus { sb.append(" pv.numpuntoventa AS numpuntoventa, "); sb.append(" ev.descinfo as descinfo, "); sb.append(" ev.tipoeventoextra_id, "); - sb.append(" COALESCE(cdp.formapago_id,0) as formapagoId "); + sb.append(" COALESCE(cdp.formapago_id,0) as formapagoId, "); + sb.append(" tee.desctipoevento, "); + sb.append(" fp.tipo_pago "); 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 forma_pago fp on cdp.formapago_id = fp.formapago_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 "); @@ -676,7 +686,7 @@ public class Totalbus { sb.append(" e.empresa_id, pv.puntoventa_id, "); sb.append(" tee.contacontabil, pv.numpuntoventa, "); sb.append(" ev.descinfo, ev.tipoeventoextra_id, "); - sb.append(" cdp.formapago_id "); + sb.append(" cdp.formapago_id, tee.desctipoevento,fp.tipo_pago "); PreparedStatement stmt = null; ResultSet rs = null; @@ -708,13 +718,26 @@ public class Totalbus { String desc =rs.getString(7); - desc = this.removerQuebraDeLinha(desc); - + desc = this.removerQuebraDeLinha(desc); receita.setDescricaoDetalhada(desc); + if (incluiTipoPagamentoTurismoBGM) { receita.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); } receita.setFormaPagamentoId(rs.getString("formapagoId")); + + if(isLayoutNovo) { + if( rs.getString("desctipoevento").matches("EXCESSO.BAGAGEM") ) { + receita.setTipoDocumentoVenda("E"); + }else { + receita.setTipoDocumentoVenda("P"); + } + + receita.setTipoPagamentoTurismo("01"); + receita.setFormaPagamentoId( converteFormaPagamentoLayoutNovo(rs.getString("tipo_pago")) ); + + } + despesas.add(receita); } } catch (Exception e) { @@ -734,7 +757,7 @@ public class Totalbus { } return despesas; } - + public List getReceitasComporte(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { List despesas = new ArrayList(); StringBuilder sb = new StringBuilder(); @@ -835,19 +858,19 @@ public class Totalbus { return despesas; } - public List getDespesas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { + public List getDespesas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo ) throws IntegracaoReceitaDespesaException { 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(" e.empresa_id as empresa_id, "); sb.append(" pv.numpuntoventa as numpuntoventa, "); - sb.append(" cdp.importe as valor, "); - sb.append(" tee.contacontabil as contacontabil, "); + sb.append(" cdp.importe as valor, "); + sb.append(" tee.contacontabil as contacontabil, "); sb.append(" ev.descinfo as descinfo, "); - sb.append(" ev.tipoeventoextra_id, "); + sb.append(" ev.tipoeventoextra_id, "); sb.append(" cdp.formapago_id as formapagoId "); - sb.append(" from "); + 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 "); @@ -861,7 +884,7 @@ public class Totalbus { adicionaFiltroQuery(puntoventaId, sb, " and cd.puntoventa_id = ", puntoventaId != null && !puntoventaId.equals(-1)); adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); sb.append(" and cd.activo = 1 "); - sb.append(" AND cdp.formapago_id not IN (2,3) "); + sb.append(" and cdp.formapago_id not IN (2,3) "); 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 "); @@ -896,6 +919,13 @@ public class Totalbus { despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); } despesa.setFormaPagamentoId(rs.getString("formapagoId")); + + if(isLayoutNovo) { + despesa.setTipoPagamentoTurismo("01"); + despesa.setFormaPagamentoId("01"); + despesa.setTipoDocumentoVenda("P"); + } + despesas.add(despesa); } } catch (Exception e) { @@ -930,7 +960,7 @@ public class Totalbus { return desc; } - public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { + public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException { List depositos = new ArrayList(); StringBuilder strFechamentos = new StringBuilder(); @@ -997,6 +1027,12 @@ public class Totalbus { deposito.setIdentificadorReceitaDespesa("D"); deposito.setCodigoReceitaDespesa(codRecDesp); deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep); + + if(isLayoutNovo) { + deposito.setTipoPagamentoTurismo("01"); + deposito.setFormaPagamentoId("04"); + deposito.setTipoDocumentoVenda("P"); + } depositos.add(deposito); soma = soma.add(rsFechamentos.getBigDecimal(1)); @@ -1118,6 +1154,33 @@ public class Totalbus { cal.add(Calendar.DAY_OF_MONTH, DAYS_AGO); return cal.getTime(); } + + private String converteFormaPagamentoLayoutNovo(String formaPago) { + //lista de tipos: com.rjconsultores.ventaboletos.enums.TipoFormapago + if(formaPago == null) { + return ""; + } + + Integer converted = new Integer( formaPago); + switch (converted) { + case 0: + return "01"; + case 1: + return "03"; + case 2: + return "03"; + case 3: + return "05"; + case 4: + return "05"; + case 10: + return "02"; + case 11: + return "04"; + default: + return ""; + } + } public List getPontosVenda() { return pontosVenda; @@ -1138,6 +1201,7 @@ public class Totalbus { public void setIsReceitasDespesasComporte(Boolean isReceitasDespesasComporte) { this.isReceitasDespesasComporte = isReceitasDespesasComporte; } + public static void amain(String[] args) { System.out.println(new BigDecimal("0").signum()); } diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 034b127df..84353cf94 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -24,7 +24,7 @@ public class DespesaReceita { protected String tipoPagamentoTurismo = " ";// 120 002 Numerico protected String descricaoDetalhada = "";// 122 80 Alfanumerico protected final String documentoVenda = "000000";// 202 6 Numerico - protected final String tipoDocumentoVenda = " ";// 208 1 Alfanumerico + protected String tipoDocumentoVenda = " ";// 208 1 Alfanumerico protected final String numerodocumentoCPG = "0000000000";// 209 10 Numerico protected String formaPagamentoId = "0";// 218 Numerico protected final String finalLinha = "*";// 239 1 Alfanumerico @@ -78,7 +78,7 @@ public class DespesaReceita { sb.append(StringUtils.leftPad(valorLancamento.trim(), 13, "0")); sb.append(StringUtils.rightPad("", 10, " ")); sb.append(StringUtils.rightPad(numeroReciboTurismo.trim(), 10, " ")); - sb.append(StringUtils.leftPad(getFormaPagamentoTurismo().trim(), 2, "0")); + sb.append(StringUtils.leftPad(getFormaPagamentoId().trim(), 2, "0")); sb.append(StringUtils.leftPad(getTipoPagamentoTurismo().trim(), 2, "0")); sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(descricaoDetalhada) ? truncStr(descricaoDetalhada, 100) : "", 100, " ")); sb.append(StringUtils.leftPad(documentoVenda.trim(), 6, "0")); @@ -152,4 +152,12 @@ public class DespesaReceita { return str; } + public String getTipoDocumentoVenda() { + return tipoDocumentoVenda; + } + + public void setTipoDocumentoVenda(String tipoDocumentoVenda) { + this.tipoDocumentoVenda = tipoDocumentoVenda; + } + } From 177201414d8022e0c4b6a121c32b06582fdb770c Mon Sep 17 00:00:00 2001 From: Fabio Faria Date: Sat, 19 Mar 2022 10:50:14 -0300 Subject: [PATCH 093/121] envio para o nexus --- pom.xml | 40 +++++++++++++++++++++++++++------------- 1 file changed, 27 insertions(+), 13 deletions(-) diff --git a/pom.xml b/pom.xml index 323c12f99..464e64ec2 100644 --- a/pom.xml +++ b/pom.xml @@ -5,27 +5,41 @@ IntegracaoReceitaDespesa 1.0.0 + + 1.8 + 1.8 + 1.8 + ISO-8859-1 + + + + + rj-releases + http://52.5.53.15:8081/nexus/content/repositories/releases/ + + + - src - - - src - - **/*.java - - - - maven-compiler-plugin + org.apache.maven.plugins + maven-release-plugin 3.8.1 - 1.8 - 1.8 - ISO-8859-1 + @{project.version} + + + + + org.sonarsource.scanner.maven + sonar-maven-plugin + 3.9.1 + + + From 1bf1e175b3ff0c60765ca411b82cffd2657b4e1e Mon Sep 17 00:00:00 2001 From: Fabio Faria Date: Mon, 28 Mar 2022 19:53:32 -0300 Subject: [PATCH 094/121] =?UTF-8?q?RollBack=20para=20corre=C3=A7=C3=A3o=20?= =?UTF-8?q?do=20build?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 40 +++++++++++++--------------------------- 1 file changed, 13 insertions(+), 27 deletions(-) diff --git a/pom.xml b/pom.xml index 464e64ec2..323c12f99 100644 --- a/pom.xml +++ b/pom.xml @@ -5,41 +5,27 @@ IntegracaoReceitaDespesa 1.0.0 - - 1.8 - 1.8 - 1.8 - ISO-8859-1 - - - - - rj-releases - http://52.5.53.15:8081/nexus/content/repositories/releases/ - - - + src + + + src + + **/*.java + + + - org.apache.maven.plugins - maven-release-plugin + maven-compiler-plugin 3.8.1 - @{project.version} + 1.8 + 1.8 + ISO-8859-1 - - - - - org.sonarsource.scanner.maven - sonar-maven-plugin - 3.9.1 - - - From fcabf5d108b98158702a6792ee007ad170ca8335 Mon Sep 17 00:00:00 2001 From: Fabio Faria Date: Wed, 13 Apr 2022 13:46:44 -0300 Subject: [PATCH 095/121] reenvio pro nexus --- pom.xml | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/pom.xml b/pom.xml index 323c12f99..3d5df12ea 100644 --- a/pom.xml +++ b/pom.xml @@ -5,16 +5,15 @@ IntegracaoReceitaDespesa 1.0.0 + + + rj-releases + http://52.5.53.15:8081/nexus/content/repositories/releases/ + + + - src - - - src - - **/*.java - - - + src maven-compiler-plugin From ae4f0d486fb39492c9c9fb32a338a1dc2ade7c0a Mon Sep 17 00:00:00 2001 From: Fabio Faria Date: Tue, 23 Aug 2022 18:49:16 -0300 Subject: [PATCH 096/121] =?UTF-8?q?atualiza=C3=A7=C3=A3o=20de=20fonte?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BGMApplication.java | 2 +- .../dao/Totalbus.java | 104 ++++++++++++++---- .../entidades/DespesaReceita.java | 16 ++- 3 files changed, 97 insertions(+), 25 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java index 41b3eec14..3b90a5a43 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java @@ -125,7 +125,7 @@ public class BGMApplication { File file = new File(fileName); log.debug("gerando arquivo..."); - Arquivo.GravaArquivo(file.getAbsolutePath(), totalbus.getDespesasReceitas(puntoVentaId, empresaId, cal.getTime(), incluiTipoPagamentoTurismoBGM)); + Arquivo.GravaArquivo(file.getAbsolutePath(), totalbus.getDespesasReceitas(puntoVentaId, empresaId, cal.getTime(), incluiTipoPagamentoTurismoBGM, layoutNovo)); this.copiarArquivoExternamente(file, pathGravacaoExternaArquivos); diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 53ce3590c..c528cbcd3 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -68,11 +68,11 @@ public class Totalbus { loadPuntosVenta(); } - public List getDespesasReceitas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException{ + public List getDespesasReceitas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException{ log.debug("gerando depósitos..."); - List despesasReceitas = getDepositos(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM); + List despesasReceitas = getDepositos(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo); log.debug("gerando despesas..."); - despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); log.debug("gerando despesas cartão..."); if (isReceitasDespesasComporte){ @@ -81,9 +81,9 @@ public class Totalbus { despesasReceitas.addAll(getReceitasComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); }else { - despesasReceitas.addAll(getDespesaCartaoDebCred(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + despesasReceitas.addAll(getDespesaCartaoDebCred(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); log.debug("gerando receitas..."); - despesasReceitas.addAll(getReceitas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + despesasReceitas.addAll(getReceitas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); if(isReceitasDespesasOuroPrata) { getContaCorrenteAgencia(despesasReceitas, puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM); } @@ -440,7 +440,7 @@ public class Totalbus { return this.conn; } - public List getDespesaCartaoDebCred(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException{ + public List getDespesaCartaoDebCred(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException{ List despesas = new ArrayList(); StringBuilder sb = new StringBuilder(); sb.append(" select "); @@ -518,6 +518,13 @@ public class Totalbus { despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); } despesa.setFormaPagamentoId(rs.getString("formapagoId")); + + if(isLayoutNovo) { + despesa.setTipoPagamentoTurismo("01"); + despesa.setFormaPagamentoId("03"); + despesa.setTipoDocumentoVenda("P"); + } + despesas.add(despesa); } } catch (Exception e) { @@ -645,7 +652,7 @@ public class Totalbus { } } - public List getReceitas(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { + public List getReceitas(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException { List despesas = new ArrayList(); StringBuilder sb = new StringBuilder(); sb.append(" select "); @@ -657,13 +664,16 @@ public class Totalbus { sb.append(" pv.numpuntoventa AS numpuntoventa, "); sb.append(" ev.descinfo as descinfo, "); sb.append(" ev.tipoeventoextra_id, "); - sb.append(" COALESCE(cdp.formapago_id,0) as formapagoId "); + sb.append(" COALESCE(cdp.formapago_id,0) as formapagoId, "); + sb.append(" tee.desctipoevento, "); + sb.append(" fp.tipo_pago "); 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 forma_pago fp on cdp.formapago_id = fp.formapago_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 "); @@ -676,7 +686,7 @@ public class Totalbus { sb.append(" e.empresa_id, pv.puntoventa_id, "); sb.append(" tee.contacontabil, pv.numpuntoventa, "); sb.append(" ev.descinfo, ev.tipoeventoextra_id, "); - sb.append(" cdp.formapago_id "); + sb.append(" cdp.formapago_id, tee.desctipoevento,fp.tipo_pago "); PreparedStatement stmt = null; ResultSet rs = null; @@ -708,13 +718,26 @@ public class Totalbus { String desc =rs.getString(7); - desc = this.removerQuebraDeLinha(desc); - + desc = this.removerQuebraDeLinha(desc); receita.setDescricaoDetalhada(desc); + if (incluiTipoPagamentoTurismoBGM) { receita.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); } receita.setFormaPagamentoId(rs.getString("formapagoId")); + + if(isLayoutNovo) { + if( rs.getString("desctipoevento").matches("EXCESSO.BAGAGEM") ) { + receita.setTipoDocumentoVenda("E"); + }else { + receita.setTipoDocumentoVenda("P"); + } + + receita.setTipoPagamentoTurismo("01"); + receita.setFormaPagamentoId( converteFormaPagamentoLayoutNovo(rs.getString("tipo_pago")) ); + + } + despesas.add(receita); } } catch (Exception e) { @@ -734,7 +757,7 @@ public class Totalbus { } return despesas; } - + public List getReceitasComporte(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { List despesas = new ArrayList(); StringBuilder sb = new StringBuilder(); @@ -835,19 +858,19 @@ public class Totalbus { return despesas; } - public List getDespesas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { + public List getDespesas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo ) throws IntegracaoReceitaDespesaException { 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(" e.empresa_id as empresa_id, "); sb.append(" pv.numpuntoventa as numpuntoventa, "); - sb.append(" cdp.importe as valor, "); - sb.append(" tee.contacontabil as contacontabil, "); + sb.append(" cdp.importe as valor, "); + sb.append(" tee.contacontabil as contacontabil, "); sb.append(" ev.descinfo as descinfo, "); - sb.append(" ev.tipoeventoextra_id, "); + sb.append(" ev.tipoeventoextra_id, "); sb.append(" cdp.formapago_id as formapagoId "); - sb.append(" from "); + 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 "); @@ -861,7 +884,7 @@ public class Totalbus { adicionaFiltroQuery(puntoventaId, sb, " and cd.puntoventa_id = ", puntoventaId != null && !puntoventaId.equals(-1)); adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); sb.append(" and cd.activo = 1 "); - sb.append(" AND cdp.formapago_id not IN (2,3) "); + sb.append(" and cdp.formapago_id not IN (2,3) "); 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 "); @@ -896,6 +919,13 @@ public class Totalbus { despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); } despesa.setFormaPagamentoId(rs.getString("formapagoId")); + + if(isLayoutNovo) { + despesa.setTipoPagamentoTurismo("01"); + despesa.setFormaPagamentoId("01"); + despesa.setTipoDocumentoVenda("P"); + } + despesas.add(despesa); } } catch (Exception e) { @@ -930,7 +960,7 @@ public class Totalbus { return desc; } - public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { + public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException { List depositos = new ArrayList(); StringBuilder strFechamentos = new StringBuilder(); @@ -997,6 +1027,12 @@ public class Totalbus { deposito.setIdentificadorReceitaDespesa("D"); deposito.setCodigoReceitaDespesa(codRecDesp); deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep); + + if(isLayoutNovo) { + deposito.setTipoPagamentoTurismo("01"); + deposito.setFormaPagamentoId("04"); + deposito.setTipoDocumentoVenda("P"); + } depositos.add(deposito); soma = soma.add(rsFechamentos.getBigDecimal(1)); @@ -1118,6 +1154,33 @@ public class Totalbus { cal.add(Calendar.DAY_OF_MONTH, DAYS_AGO); return cal.getTime(); } + + private String converteFormaPagamentoLayoutNovo(String formaPago) { + //lista de tipos: com.rjconsultores.ventaboletos.enums.TipoFormapago + if(formaPago == null) { + return ""; + } + + Integer converted = new Integer( formaPago); + switch (converted) { + case 0: + return "01"; + case 1: + return "03"; + case 2: + return "03"; + case 3: + return "05"; + case 4: + return "05"; + case 10: + return "02"; + case 11: + return "04"; + default: + return ""; + } + } public List getPontosVenda() { return pontosVenda; @@ -1138,6 +1201,7 @@ public class Totalbus { public void setIsReceitasDespesasComporte(Boolean isReceitasDespesasComporte) { this.isReceitasDespesasComporte = isReceitasDespesasComporte; } + public static void amain(String[] args) { System.out.println(new BigDecimal("0").signum()); } diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 5f77c7553..67aec67f5 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -24,7 +24,7 @@ public class DespesaReceita { protected String tipoPagamentoTurismo = " ";// 120 002 Numerico protected String descricaoDetalhada = "";// 122 80 Alfanumerico protected final String documentoVenda = "000000";// 202 6 Numerico - protected final String tipoDocumentoVenda = " ";// 208 1 Alfanumerico + protected String tipoDocumentoVenda = " ";// 208 1 Alfanumerico protected final String numerodocumentoCPG = "0000000000";// 209 10 Numerico protected String formaPagamentoId = "0";// 218 Numerico protected final String finalLinha = "*";// 239 1 Alfanumerico @@ -68,7 +68,7 @@ public class DespesaReceita { sb.append(StringUtils.rightPad(dataLancamento.trim(), 10, " ")); sb.append(StringUtils.leftPad(codigoEmpresa.trim(), 3, "0")); sb.append(StringUtils.leftPad(codigoFilial.trim(), 3, "0")); - sb.append(StringUtils.rightPad(localArrecadacao.toUpperCase().trim(), 5, " ")); + sb.append(StringUtils.rightPad( truncStr(localArrecadacao.toUpperCase(), 5), 5, " ")); sb.append(StringUtils.rightPad(numeroDaGuia.trim(), 25, " ")); sb.append(StringUtils.rightPad(dataMovimento.trim(), 10, " ")); sb.append(StringUtils.rightPad(usuarioGlobus.trim(), 15, " ")); @@ -78,12 +78,12 @@ public class DespesaReceita { sb.append(StringUtils.leftPad(valorLancamento.trim(), 13, "0")); sb.append(StringUtils.rightPad("", 10, " ")); sb.append(StringUtils.rightPad(numeroReciboTurismo.trim(), 10, " ")); - sb.append(StringUtils.leftPad(getFormaPagamentoTurismo().trim(), 2, "0")); + sb.append(StringUtils.leftPad(getFormaPagamentoId().trim(), 2, "0")); sb.append(StringUtils.leftPad(getTipoPagamentoTurismo().trim(), 2, "0")); sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(descricaoDetalhada) ? truncStr(descricaoDetalhada, 100) : "", 100, " ")); sb.append(StringUtils.leftPad(documentoVenda.trim(), 6, "0")); sb.append(StringUtils.rightPad(tipoDocumentoVenda.trim(), 1, " ")); - sb.append(StringUtils.rightPad("", 9, "0")); + sb.append(StringUtils.rightPad("", 10, "0")); sb.append(finalLinha); sb.append(System.getProperty("line.separator")); rows.add(sb.toString()); @@ -152,4 +152,12 @@ public class DespesaReceita { return str; } + public String getTipoDocumentoVenda() { + return tipoDocumentoVenda; + } + + public void setTipoDocumentoVenda(String tipoDocumentoVenda) { + this.tipoDocumentoVenda = tipoDocumentoVenda; + } + } From 42d92fed67d20d399fdd7ada438f961fc0e357c6 Mon Sep 17 00:00:00 2001 From: Fabio Faria Date: Mon, 10 Oct 2022 14:04:33 -0300 Subject: [PATCH 097/121] =?UTF-8?q?altera=C3=A7=C3=A3o=20do=20ignore?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 4e247eee2..8617fbc1a 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,5 @@ /target /.classpath /.project +.settings +target From 851565ad8f915a45d8e9d0beb6339f9f82ceca3a Mon Sep 17 00:00:00 2001 From: Fabio Faria Date: Tue, 29 Nov 2022 18:09:38 -0300 Subject: [PATCH 098/121] =?UTF-8?q?Adi=C3=A7=C3=A3o=20de=20historico?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .classpath | 21 --------- .gitignore | 6 +++ .project | 30 ------------ .settings/org.eclipse.jdt.core.prefs | 11 ----- .settings/org.eclipse.wst.common.component | 6 --- ....eclipse.wst.common.project.facet.core.xml | 8 ---- pom.xml | 47 +++++++++---------- 7 files changed, 29 insertions(+), 100 deletions(-) delete mode 100644 .classpath create mode 100644 .gitignore delete mode 100644 .project delete mode 100644 .settings/org.eclipse.jdt.core.prefs delete mode 100644 .settings/org.eclipse.wst.common.component delete mode 100644 .settings/org.eclipse.wst.common.project.facet.core.xml diff --git a/.classpath b/.classpath deleted file mode 100644 index 4e149f946..000000000 --- a/.classpath +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000..8617fbc1a --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +/.settings +/target +/.classpath +/.project +.settings +target diff --git a/.project b/.project deleted file mode 100644 index 256b4c128..000000000 --- a/.project +++ /dev/null @@ -1,30 +0,0 @@ - - - IntegracaoReceitaDespesa - - - - - - org.eclipse.wst.common.project.facet.core.builder - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.wst.validation.validationbuilder - - - - - - org.eclipse.jem.workbench.JavaEMFNature - org.eclipse.wst.common.modulecore.ModuleCoreNature - org.eclipse.jdt.core.javanature - org.eclipse.wst.common.project.facet.core.nature - - diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 54e493c07..000000000 --- a/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.6 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.6 diff --git a/.settings/org.eclipse.wst.common.component b/.settings/org.eclipse.wst.common.component deleted file mode 100644 index aa731865e..000000000 --- a/.settings/org.eclipse.wst.common.component +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/.settings/org.eclipse.wst.common.project.facet.core.xml b/.settings/org.eclipse.wst.common.project.facet.core.xml deleted file mode 100644 index b069b576d..000000000 --- a/.settings/org.eclipse.wst.common.project.facet.core.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/pom.xml b/pom.xml index f419be3a6..0ad5ba815 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,29 @@ 4.0.0 br.com.rjconsultores IntegracaoReceitaDespesa - 0.0.1-SNAPSHOT + 1.0.0 + + + + rj-releases + http://52.5.53.15:8081/nexus/content/repositories/releases/ + + + + + src + + + maven-compiler-plugin + 3.8.1 + + 1.8 + 1.8 + ISO-8859-1 + + + + @@ -18,27 +40,4 @@ - - - src - - - src - - **/*.java - - - - - - maven-compiler-plugin - 3.3 - - 1.6 - 1.6 - Cp1252 - - - - \ No newline at end of file From a052682b60e5ac61b332001e79a519e0418036fa Mon Sep 17 00:00:00 2001 From: Fabio Faria Date: Wed, 30 Nov 2022 11:29:00 -0300 Subject: [PATCH 099/121] =?UTF-8?q?Adequa=C3=A7=C3=A3o=20de=20vers=C3=A3o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 3d5df12ea..292d481eb 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 br.com.rjconsultores IntegracaoReceitaDespesa - 1.0.0 + 1.0.1 From da470ed13c50b6d9831673ab362e3c2cb0258490 Mon Sep 17 00:00:00 2001 From: "wallace.henrique" Date: Thu, 30 Mar 2023 17:07:25 -0300 Subject: [PATCH 100/121] fixes bug#AL-2206 dev: qua: --- pom.xml | 2 +- .../dao/Totalbus.java | 32 +++++++++++++++---- .../entidades/DespesaReceitaComporte.java | 21 ++++++++++++ 3 files changed, 47 insertions(+), 8 deletions(-) diff --git a/pom.xml b/pom.xml index 292d481eb..175b126c4 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 br.com.rjconsultores IntegracaoReceitaDespesa - 1.0.1 + 1.1.0 diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index cca74c8a5..026a23d9c 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -558,7 +558,9 @@ public class Totalbus { sb.append(" ev.tipoeventoextra_id, "); sb.append(" cdp.formapago_id as formapagoId, "); sb.append(" ct.numautorizacion as numautorizacion, "); - sb.append(" pte.numsitef as numeroEstabelecimento "); + sb.append(" pte.numsitef as numeroEstabelecimento, "); + sb.append(" b.numfoliosistema,"); + sb.append(" ct.tx_id"); sb.append(" from "); sb.append(" caja_diversos cd "); sb.append(" left join evento_extra ev on ev.eventoextra_id = cd.eventoextra_id "); @@ -569,6 +571,7 @@ public class Totalbus { sb.append(" left join ptovta_integra pi on e.empresa_id = pi.empresa_id and pi.puntoventa_id = pv.puntoventa_id "); sb.append(" left join caja_tarjeta ct on ct.cajatarjeta_id = cdp.cajatarjeta_id "); sb.append(" left join ptovta_empresa pte on pte.puntoventa_id = pv.puntoventa_id and pte.empresa_id = e.empresa_id "); + sb.append(" left join boleto b on (b.boleto_id = ev.boleto_id) "); sb.append(" where "); sb.append(" cd.feccorte = ? "); adicionaFiltroQuery(puntoVentaId, sb, " and cd.puntoventa_id = ", puntoVentaId != null && !puntoVentaId.equals(-1)); @@ -584,7 +587,9 @@ public class Totalbus { sb.append(" pv.numpuntoventa, ev.tipoeventoextra_id, "); sb.append(" cdp.formapago_id, "); sb.append(" ct.numautorizacion, "); - sb.append(" pte.numsitef "); + sb.append(" pte.numsitef, "); + sb.append(" b.numfoliosistema,"); + sb.append(" ct.tx_id"); PreparedStatement stmt = null; ResultSet rs = null; @@ -603,6 +608,11 @@ public class Totalbus { DespesaReceitaComporte despesa = new DespesaReceitaComporte(); despesa.setCodigoEmpresa(rs.getInt(2)); despesa.setCodigoReceitaDespesa(rs.getString(5)); + if(StringUtils.isNotBlank(rs.getString(5)) && (rs.getString(5).equals("22") || rs.getString(5).equals("8101"))) { + despesa.setNumfoliosistema(rs.getString(11)); + }else { + despesa.setNumfoliosistema(""); + } despesa.setDataLancamento(rs.getDate(1)); despesa.setDataMovimento(rs.getDate(1)); despesa.setLocalArrecadacao(rs.getString(6)); @@ -625,7 +635,7 @@ public class Totalbus { despesa.setCodigoAutorizacao(""); despesa.setNumeroEstabelecimento(""); } - + despesa.setTxId(rs.getString(12)); despesas.add(despesa); } } catch (Exception e) { @@ -773,7 +783,9 @@ public class Totalbus { sb.append(" COALESCE(cdp.formapago_id,0) as formapagoId, "); sb.append(" ct.numautorizacion AS numautorizacion, "); sb.append(" pte.numsitef AS numeroestabelecimento, "); - sb.append(" ct.cantparcelas "); + sb.append(" ct.cantparcelas, "); + sb.append(" b.numfoliosistema,"); + sb.append(" ct.tx_id"); sb.append(" from "); sb.append(" caja_diversos cd "); sb.append(" left join evento_extra ev on ev.eventoextra_id = cd.eventoextra_id "); @@ -784,12 +796,13 @@ public class Totalbus { sb.append(" left join ptovta_integra pi on e.empresa_id = pi.empresa_id and pi.puntoventa_id = pv.puntoventa_id "); sb.append(" LEFT JOIN caja_tarjeta ct ON ct.cajatarjeta_id = cdp.cajatarjeta_id "); sb.append(" LEFT JOIN ptovta_empresa pte ON pte.puntoventa_id = pv.puntoventa_id AND pte.empresa_id = e.empresa_id "); + sb.append(" LEFT JOIN boleto b on (b.boleto_id = ev.boleto_id) "); sb.append(" where "); sb.append(" cd.feccorte = ? "); adicionaFiltroQuery(puntoVentaId, sb, " and cd.puntoventa_id = ", puntoVentaId != null && !puntoVentaId.equals(-1)); adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); sb.append(" and cd.activo = 1 "); - sb.append(" and tee.indtipo = 1 "); + sb.append(" and tee.indtipo = 1 "); PreparedStatement stmt = null; ResultSet rs = null; @@ -808,10 +821,15 @@ public class Totalbus { DespesaReceitaComporte receita = new DespesaReceitaComporte(); receita.setCodigoEmpresa(rs.getInt(2)); receita.setCodigoReceitaDespesa(rs.getString(5)); + if(StringUtils.isNotBlank(rs.getString(5)) && (rs.getString(5).equals("22") || rs.getString(5).equals("8101"))) { + receita.setNumfoliosistema(rs.getString(13)); + }else { + receita.setNumfoliosistema(""); + } receita.setDataLancamento(rs.getDate(1)); receita.setDataMovimento(rs.getDate(1)); receita.setLocalArrecadacao(rs.getString(6)); - receita.setCantParcelas(rs.getString(12)); + receita.setCantParcelas(rs.getString(12)); if (rs.getBigDecimal(4).signum() == -1) { receita.setIdentificadorReceitaDespesa("D"); receita.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); @@ -837,7 +855,7 @@ public class Totalbus { receita.setCodigoAutorizacao(""); receita.setNumeroEstabelecimento(""); } - + receita.setTxId(rs.getString(14)); despesas.add(receita); } } catch (Exception e) { diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java index 6b82e2a62..6fc46e43d 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java @@ -9,6 +9,8 @@ public class DespesaReceitaComporte extends DespesaReceita { protected String numeroEstabelecimento; protected String codigoAutorizacao; protected String cantParcelas = ""; + protected String numfoliosistema = ""; + protected String txId = ""; @Override public void preencheLinha(List rows) { @@ -35,6 +37,8 @@ public class DespesaReceitaComporte extends DespesaReceita { sb.append(StringUtils.rightPad("", 3, "0")); sb.append(StringUtils.leftPad(formaPagamentoId, 2, "0")); sb.append(cantParcelas); + sb.append(numfoliosistema); + sb.append(txId); sb.append(finalLinha); sb.append(System.getProperty("line.separator")); rows.add(sb.toString()); @@ -63,4 +67,21 @@ public class DespesaReceitaComporte extends DespesaReceita { public void setCantParcelas(String cantParcelas) { this.cantParcelas = StringUtils.isNotEmpty(cantParcelas) ? StringUtils.leftPad(cantParcelas, 4,"0") : " "; } + + public String getNumfoliosistema() { + return numfoliosistema; + } + + public void setNumfoliosistema(String numfoliosistema) { + this.numfoliosistema = StringUtils.leftPad(numfoliosistema != null ? numfoliosistema : "", 16, ""); + } + + public String getTxId() { + return txId; + } + + public void setTxId(String txId) { + this.txId = StringUtils.leftPad(txId != null ? truncStr(txId, 36) : "", 35, ""); + } + } From 27c163e41c16aec0d525def5f609c8d28f576d2e Mon Sep 17 00:00:00 2001 From: Fabio Faria Date: Mon, 8 May 2023 10:40:09 -0300 Subject: [PATCH 101/121] =?UTF-8?q?Defini=C3=A7=C3=A3o=20do=20encoding=20d?= =?UTF-8?q?o=20projeto=20#AL-2629?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 175b126c4..d0e831954 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 br.com.rjconsultores IntegracaoReceitaDespesa - 1.1.0 + 1.2.0 @@ -11,6 +11,11 @@ http://52.5.53.15:8081/nexus/content/repositories/releases/ + + + ISO-8859-1 + ISO-8859-1 + src From 4b489954ab34817dd0c657010274392df3f36947 Mon Sep 17 00:00:00 2001 From: fabio Date: Mon, 15 May 2023 19:21:01 +0000 Subject: [PATCH 102/121] =?UTF-8?q?defini=C3=A7=C3=A3o=20de=20encoding?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index d0e831954..479bae231 100644 --- a/pom.xml +++ b/pom.xml @@ -13,8 +13,8 @@ - ISO-8859-1 - ISO-8859-1 + UTF-8 + UTF-8 @@ -26,7 +26,6 @@ 1.8 1.8 - ISO-8859-1 From a64026423bbad0e95236e45cac3c8dde3d98489c Mon Sep 17 00:00:00 2001 From: "gleison.cruz" Date: Thu, 25 May 2023 11:50:52 -0300 Subject: [PATCH 103/121] fixes bug#AL-2590 --- pom.xml | 2 +- .../dao/Totalbus.java | 20 ++++++++----- .../entidades/DespesaReceita.java | 30 ++++++++++++++++++- 3 files changed, 42 insertions(+), 10 deletions(-) diff --git a/pom.xml b/pom.xml index 479bae231..b239f5c7f 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 br.com.rjconsultores IntegracaoReceitaDespesa - 1.2.0 + 1.2.1 diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 026a23d9c..c9d744596 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -69,11 +69,11 @@ public class Totalbus { } public List getDespesasReceitas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException{ - log.debug("gerando depósitos..."); + log.debug("gerando dep�sitos..."); List despesasReceitas = getDepositos(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo); log.debug("gerando despesas..."); despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); - log.debug("gerando despesas cartão..."); + log.debug("gerando despesas cart�o..."); if (isReceitasDespesasComporte){ despesasReceitas.addAll(getDespesaCartaoDebCredComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); @@ -97,7 +97,11 @@ public class Totalbus { } }else { for (DespesaReceita item : despesasReceitas) { - item.preencheLinha(rows); + if (isReceitasDespesasComporte) { + item.preencheLinhaComporte(rows); + }else { + item.preencheLinha(rows); + } } } return rows; @@ -529,7 +533,7 @@ public class Totalbus { } } catch (Exception e) { log.error(e.toString(), e); - throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas Cartão Crédito/Débito"); + throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas Cart�o Cr�dito/D�bito"); } finally { try { rs.close(); @@ -640,7 +644,7 @@ public class Totalbus { } } catch (Exception e) { log.error(e.toString(), e); - throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas Cartão Crédito/Débito"); + throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas Cart�o Cr�dito/D�bito"); } finally { try { rs.close(); @@ -1055,10 +1059,10 @@ public class Totalbus { depositos.add(deposito); soma = soma.add(rsFechamentos.getBigDecimal(1)); } - log.debug("Total depósitos: " + soma); + log.debug("Total dep�sitos: " + soma); } catch (Exception e) { log.error(e.getMessage(), e); - throw new IntegracaoReceitaDespesaException("Erro ao processar Depósitos"); + throw new IntegracaoReceitaDespesaException("Erro ao processar Dep�sitos"); } finally { try { pstmtFechamentos.close(); @@ -1116,7 +1120,7 @@ public class Totalbus { if (rs.next()) { Date rsDate = new SimpleDateFormat("dd/MM/yyyy").parse(rs.getString(1)); result = !rsDate.after(data); - } else { // se não existir a constante, retorno true para que ela seja criada na função updateDataBloqueio + } else { // se n�o existir a constante, retorno true para que ela seja criada na fun��o updateDataBloqueio result = true; } } catch (Exception e) { diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 84353cf94..6f27ccc4c 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -63,12 +63,40 @@ public class DespesaReceita { rows.add(sb.toString()); } + public void preencheLinhaComporte(List rows) { + StringBuilder sb = new StringBuilder(); + sb.append(StringUtils.rightPad(dataLancamento.trim(), 10, " ")); + sb.append(StringUtils.leftPad(codigoEmpresa.trim(), 3, "0")); + sb.append(StringUtils.leftPad(codigoFilial.trim(), 3, "0")); + sb.append(StringUtils.rightPad(truncStr(localArrecadacao.toUpperCase(), 5), 5, " ")); + sb.append(StringUtils.rightPad(numeroDaGuia.trim(), 25, " ")); + sb.append(StringUtils.rightPad(dataMovimento.trim(), 10, " ")); + sb.append(StringUtils.rightPad(usuarioGlobus.trim(), 15, " ")); + sb.append(StringUtils.leftPad(turno.trim(), 2, "0")); + sb.append(StringUtils.leftPad(codigoReceitaDespesa.trim(), 10, "0")); + sb.append(StringUtils.rightPad(identificadorReceitaDespesa.toUpperCase().trim(), 1, " ")); + sb.append(StringUtils.leftPad(valorLancamento.trim(), 13, "0")); + sb.append(StringUtils.rightPad(numeroReciboTurismo.trim(), 10, " ")); + sb.append(StringUtils.leftPad(getFormaPagamentoId().trim(), 2, " ")); + sb.append(StringUtils.leftPad(getTipoPagamentoTurismo().trim(), 2, " ")); + sb.append(StringUtils.rightPad("", 10, " ")); + sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(descricaoDetalhada) ? truncStr(descricaoDetalhada, 90) : "", 90, " ")); + sb.append(StringUtils.leftPad(documentoVenda.trim(), 6, "0")); + sb.append(StringUtils.leftPad("", 1, " ")); + sb.append(StringUtils.leftPad(tipoDocumentoVenda.trim(), 15, " ")); + sb.append(StringUtils.leftPad(formaPagamentoId.trim(), 25, " ")); + sb.append(System.getProperty("line.separator")); + sb.append(finalLinha); + + rows.add(sb.toString()); + } + public void preencheLinhaLayoutNovo(List rows) { StringBuilder sb = new StringBuilder(); sb.append(StringUtils.rightPad(dataLancamento.trim(), 10, " ")); sb.append(StringUtils.leftPad(codigoEmpresa.trim(), 3, "0")); sb.append(StringUtils.leftPad(codigoFilial.trim(), 3, "0")); - sb.append(StringUtils.rightPad( truncStr(localArrecadacao.toUpperCase(), 5), 5, " ")); + sb.append(StringUtils.rightPad(truncStr(localArrecadacao.toUpperCase(), 5), 5, " ")); sb.append(StringUtils.rightPad(numeroDaGuia.trim(), 25, " ")); sb.append(StringUtils.rightPad(dataMovimento.trim(), 10, " ")); sb.append(StringUtils.rightPad(usuarioGlobus.trim(), 15, " ")); From 293dc85180a73bfb13a769bb86db5d553f2142cd Mon Sep 17 00:00:00 2001 From: "gleison.cruz" Date: Thu, 25 May 2023 13:05:32 -0300 Subject: [PATCH 104/121] fixes bug#AL-2590 --- .../integracaoreceitadespesa/dao/Totalbus.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index c9d744596..475320b8c 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -69,11 +69,11 @@ public class Totalbus { } public List getDespesasReceitas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException{ - log.debug("gerando dep�sitos..."); + log.debug("gerando depósitos..."); List despesasReceitas = getDepositos(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo); log.debug("gerando despesas..."); despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); - log.debug("gerando despesas cart�o..."); + log.debug("gerando despesas cartão..."); if (isReceitasDespesasComporte){ despesasReceitas.addAll(getDespesaCartaoDebCredComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); @@ -533,7 +533,7 @@ public class Totalbus { } } catch (Exception e) { log.error(e.toString(), e); - throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas Cart�o Cr�dito/D�bito"); + throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas Cartão Crédito/Débito"); } finally { try { rs.close(); @@ -644,7 +644,7 @@ public class Totalbus { } } catch (Exception e) { log.error(e.toString(), e); - throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas Cart�o Cr�dito/D�bito"); + throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas Cartão Crédito/Débito"); } finally { try { rs.close(); @@ -1059,10 +1059,10 @@ public class Totalbus { depositos.add(deposito); soma = soma.add(rsFechamentos.getBigDecimal(1)); } - log.debug("Total dep�sitos: " + soma); + log.debug("Total depósitos: " + soma); } catch (Exception e) { log.error(e.getMessage(), e); - throw new IntegracaoReceitaDespesaException("Erro ao processar Dep�sitos"); + throw new IntegracaoReceitaDespesaException("Erro ao processar Depósitos"); } finally { try { pstmtFechamentos.close(); @@ -1120,7 +1120,7 @@ public class Totalbus { if (rs.next()) { Date rsDate = new SimpleDateFormat("dd/MM/yyyy").parse(rs.getString(1)); result = !rsDate.after(data); - } else { // se n�o existir a constante, retorno true para que ela seja criada na fun��o updateDataBloqueio + } else { // se n�o existir a constante, retorno true para que ela seja criada na função updateDataBloqueio result = true; } } catch (Exception e) { From 0adb223849e23208e95e34cba1496a625a29f27e Mon Sep 17 00:00:00 2001 From: "gleison.cruz" Date: Thu, 25 May 2023 13:06:56 -0300 Subject: [PATCH 105/121] fixes bug#AL-2590 --- .../rjconsultores/integracaoreceitadespesa/dao/Totalbus.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 475320b8c..5b5aaa318 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -1120,7 +1120,7 @@ public class Totalbus { if (rs.next()) { Date rsDate = new SimpleDateFormat("dd/MM/yyyy").parse(rs.getString(1)); result = !rsDate.after(data); - } else { // se n�o existir a constante, retorno true para que ela seja criada na função updateDataBloqueio + } else { // se não existir a constante, retorno true para que ela seja criada na função updateDataBloqueio result = true; } } catch (Exception e) { From d4e31b0a3b65aa3a0323b37443707fe2d067b11b Mon Sep 17 00:00:00 2001 From: "gleison.cruz" Date: Thu, 25 May 2023 16:34:54 -0300 Subject: [PATCH 106/121] fixes bug#AL-2602 --- pom.xml | 2 +- .../integracaoreceitadespesa/dao/Totalbus.java | 15 ++------------- 2 files changed, 3 insertions(+), 14 deletions(-) diff --git a/pom.xml b/pom.xml index b239f5c7f..55a509ec1 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 br.com.rjconsultores IntegracaoReceitaDespesa - 1.2.1 + 1.2.2 diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 5b5aaa318..c136c3a1d 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -556,7 +556,7 @@ public class Totalbus { 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(" cdp.importe AS valor, "); sb.append(" tee.contacontabil AS contacontabil, "); sb.append(" pv.numpuntoventa AS numpuntoventa, "); sb.append(" ev.tipoeventoextra_id, "); @@ -582,18 +582,7 @@ public class Totalbus { adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); sb.append(" and cd.activo = 1 "); sb.append(" and cdp.formapago_id in (2,3) "); - sb.append(" and tee.indtipo = 0 "); - sb.append(" group by "); - sb.append(" cd.feccorte, "); - sb.append(" e.empresa_id, "); - sb.append(" pv.puntoventa_id, "); - sb.append(" tee.contacontabil, "); - sb.append(" pv.numpuntoventa, ev.tipoeventoextra_id, "); - sb.append(" cdp.formapago_id, "); - sb.append(" ct.numautorizacion, "); - sb.append(" pte.numsitef, "); - sb.append(" b.numfoliosistema,"); - sb.append(" ct.tx_id"); + sb.append(" and tee.indtipo = 0 "); PreparedStatement stmt = null; ResultSet rs = null; From 7d74b9b1180698a03e4ea9aa1a0a2c2bf61b2247 Mon Sep 17 00:00:00 2001 From: valdevir Date: Fri, 2 Jun 2023 12:07:05 -0300 Subject: [PATCH 107/121] fixes bug #AL-2468 Resolucao problema encoding --- pom.xml | 2 +- .../integracaoreceitadespesa/BGMApplication.java | 10 +++++----- .../integracaoreceitadespesa/dao/Totalbus.java | 10 +++++----- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/pom.xml b/pom.xml index 55a509ec1..c0ea64eb6 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 br.com.rjconsultores IntegracaoReceitaDespesa - 1.2.2 + 1.2.3 diff --git a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java index 7d8dc5d6c..79571742f 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java @@ -96,10 +96,10 @@ public class BGMApplication { public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean layoutNovo) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ if (empresaId == null){ - throw new IllegalArgumentException("o parâmetro empesaId é obrigatório!"); + throw new IllegalArgumentException("o parâmetro empesaId é obrigatório!"); } if (puntoVentaId == null){ - throw new IllegalArgumentException("o parâmetro puntoVentaId é obrigatório!"); + throw new IllegalArgumentException("o parâmetro puntoVentaId é obrigatório!"); } excluirArquivosZip(diretorio); Totalbus totalbus = new Totalbus(con, isReceitasDespesasComporte, isCodReceitaFixoBgm, isReceitasDespesasOuroPrata, layoutNovo ); @@ -108,7 +108,7 @@ public class BGMApplication { } List files = new ArrayList(); Calendar cal = Calendar.getInstance(); - // Seta primeiro dia da iteração + // Seta primeiro dia da iteração cal.setTime(dataInicio); Calendar calFinal = Calendar.getInstance(); calFinal.setTime(dataFinal); @@ -129,7 +129,7 @@ public class BGMApplication { this.copiarArquivoExternamente(file, pathGravacaoExternaArquivos); - // adiciona um dia para iteração + // adiciona um dia para iteração cal.add(Calendar.DAY_OF_MONTH, 1); files.add(file); } @@ -155,7 +155,7 @@ public class BGMApplication { private void copiarArquivoExternamente(File arquivoBGM,String pathGravacaoExternaArquivos){ if (pathGravacaoExternaArquivos == null){ - log.info("Path externo para gravação de arquivos não configurado"); + log.info("Path externo para gravação de arquivos Não configurado"); return; } diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index c136c3a1d..a66ea4593 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -69,7 +69,7 @@ public class Totalbus { } public List getDespesasReceitas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException{ - log.debug("gerando depósitos..."); + log.debug("gerando depositos..."); List despesasReceitas = getDepositos(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo); log.debug("gerando despesas..."); despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); @@ -533,7 +533,7 @@ public class Totalbus { } } catch (Exception e) { log.error(e.toString(), e); - throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas Cartão Crédito/Débito"); + throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas cartão Crédito/Débito"); } finally { try { rs.close(); @@ -633,7 +633,7 @@ public class Totalbus { } } catch (Exception e) { log.error(e.toString(), e); - throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas Cartão Crédito/Débito"); + throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas cartão Crédito/Débito"); } finally { try { rs.close(); @@ -1048,10 +1048,10 @@ public class Totalbus { depositos.add(deposito); soma = soma.add(rsFechamentos.getBigDecimal(1)); } - log.debug("Total depósitos: " + soma); + log.debug("Total depositos: " + soma); } catch (Exception e) { log.error(e.getMessage(), e); - throw new IntegracaoReceitaDespesaException("Erro ao processar Depósitos"); + throw new IntegracaoReceitaDespesaException("Erro ao processar Depositos"); } finally { try { pstmtFechamentos.close(); From 913e534e8f11e13a69c8fbce3ff0603298ffa7c0 Mon Sep 17 00:00:00 2001 From: "gleison.cruz" Date: Wed, 14 Jun 2023 10:55:21 -0300 Subject: [PATCH 108/121] AL-2783 --- pom.xml | 2 +- .../dao/Totalbus.java | 4 +- .../entidades/DespesaReceita.java | 76 +++++++++++++------ .../entidades/DespesaReceitaComporte.java | 40 +++++----- 4 files changed, 76 insertions(+), 46 deletions(-) diff --git a/pom.xml b/pom.xml index 55a509ec1..c0ea64eb6 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 br.com.rjconsultores IntegracaoReceitaDespesa - 1.2.2 + 1.2.3 diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index c136c3a1d..93912878c 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -761,8 +761,8 @@ public class Totalbus { return despesas; } - public List getReceitasComporte(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { - List despesas = new ArrayList(); + public List getReceitasComporte(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { + List despesas = new ArrayList(); StringBuilder sb = new StringBuilder(); sb.append(" select "); sb.append(" cd.feccorte AS fechorvta, "); diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 6f27ccc4c..8e8a829ff 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -22,13 +22,19 @@ public class DespesaReceita { protected final String numeroReciboTurismo = " "; // 108 010 Alfanumerico protected final String formaPagamentoTurismo = " ";// 118 002 Numerico protected String tipoPagamentoTurismo = " ";// 120 002 Numerico - protected String descricaoDetalhada = "";// 122 80 Alfanumerico + protected String descricaoDetalhada = " ";// 122 80 Alfanumerico protected final String documentoVenda = "000000";// 202 6 Numerico protected String tipoDocumentoVenda = " ";// 208 1 Alfanumerico protected final String numerodocumentoCPG = "0000000000";// 209 10 Numerico protected String formaPagamentoId = "0";// 218 Numerico + protected String tx_id = " "; + protected String numFolioSistema = " "; protected final String finalLinha = "*";// 239 1 Alfanumerico + protected String numeroEstabelecimento = " "; + protected String codigoAutorizacao = " "; + protected String cantParcelas = "0000"; + protected SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); @@ -65,28 +71,30 @@ public class DespesaReceita { public void preencheLinhaComporte(List rows) { StringBuilder sb = new StringBuilder(); - sb.append(StringUtils.rightPad(dataLancamento.trim(), 10, " ")); - sb.append(StringUtils.leftPad(codigoEmpresa.trim(), 3, "0")); - sb.append(StringUtils.leftPad(codigoFilial.trim(), 3, "0")); - sb.append(StringUtils.rightPad(truncStr(localArrecadacao.toUpperCase(), 5), 5, " ")); - sb.append(StringUtils.rightPad(numeroDaGuia.trim(), 25, " ")); - sb.append(StringUtils.rightPad(dataMovimento.trim(), 10, " ")); - sb.append(StringUtils.rightPad(usuarioGlobus.trim(), 15, " ")); - sb.append(StringUtils.leftPad(turno.trim(), 2, "0")); - sb.append(StringUtils.leftPad(codigoReceitaDespesa.trim(), 10, "0")); - sb.append(StringUtils.rightPad(identificadorReceitaDespesa.toUpperCase().trim(), 1, " ")); - sb.append(StringUtils.leftPad(valorLancamento.trim(), 13, "0")); - sb.append(StringUtils.rightPad(numeroReciboTurismo.trim(), 10, " ")); - sb.append(StringUtils.leftPad(getFormaPagamentoId().trim(), 2, " ")); - sb.append(StringUtils.leftPad(getTipoPagamentoTurismo().trim(), 2, " ")); - sb.append(StringUtils.rightPad("", 10, " ")); - sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(descricaoDetalhada) ? truncStr(descricaoDetalhada, 90) : "", 90, " ")); - sb.append(StringUtils.leftPad(documentoVenda.trim(), 6, "0")); - sb.append(StringUtils.leftPad("", 1, " ")); - sb.append(StringUtils.leftPad(tipoDocumentoVenda.trim(), 15, " ")); - sb.append(StringUtils.leftPad(formaPagamentoId.trim(), 25, " ")); - sb.append(System.getProperty("line.separator")); + sb.append(StringUtils.rightPad(dataLancamento.trim(), 10, " ")); //10 + sb.append(StringUtils.leftPad(codigoEmpresa.trim(), 3, "0")); //13 + sb.append(StringUtils.leftPad(codigoFilial.trim(), 3, "0")); //16 + sb.append(StringUtils.rightPad(truncStr(localArrecadacao.toUpperCase(), 5), 5, " ")); //21 + sb.append(StringUtils.rightPad(numeroDaGuia.trim(), 25, " ")); //46 + sb.append(StringUtils.rightPad(dataMovimento.trim(), 10, " ")); //56 + sb.append(StringUtils.rightPad(usuarioGlobus.trim(), 15, " ")); //71 + sb.append(StringUtils.leftPad(turno.trim(), 2, "0")); //73 + sb.append(StringUtils.leftPad(codigoReceitaDespesa.trim(), 10, "0")); //83 + sb.append(StringUtils.rightPad(identificadorReceitaDespesa.toUpperCase().trim(), 1, " ")); //84 + sb.append(StringUtils.leftPad(valorLancamento.trim(), 13, "0")); //97 + sb.append(StringUtils.rightPad(numeroContratoTurismo.trim(), 10, " ")); //107 + sb.append(StringUtils.rightPad(numeroReciboTurismo.trim(), 10, " ")); //117 + sb.append(StringUtils.leftPad(getFormaPagamentoId().trim(), 2, " ")); //119 + sb.append(StringUtils.leftPad(getTipoPagamentoTurismo().trim(), 2, " ")); //111 + sb.append(StringUtils.rightPad(descricaoDetalhada.trim(), 80, " ")); //211 + sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(numeroEstabelecimento) ? StringUtils.rightPad(numeroEstabelecimento, 10, " ").substring(0,10) : "", 10, " ")); + sb.append(codigoAutorizacao != null ? StringUtils.rightPad(codigoAutorizacao, 22, " ") : StringUtils.rightPad("", 22, " ")); + sb.append(StringUtils.rightPad(formaPagamentoId.trim(), 2, "0")); //229 + sb.append(StringUtils.leftPad(cantParcelas.trim(), 4, "0")); + sb.append(StringUtils.leftPad(numFolioSistema.trim(), 16, " ")); //259 + sb.append(StringUtils.leftPad(tx_id.trim(), 35, " ")); //294 sb.append(finalLinha); + sb.append(System.getProperty("line.separator")); rows.add(sb.toString()); } @@ -187,5 +195,29 @@ public class DespesaReceita { public void setTipoDocumentoVenda(String tipoDocumentoVenda) { this.tipoDocumentoVenda = tipoDocumentoVenda; } + + public String getNumeroEstabelecimento() { + return numeroEstabelecimento; + } + + public void setNumeroEstabelecimento(String numeroEstabelecimento) { + this.numeroEstabelecimento = StringUtils.rightPad(numeroEstabelecimento != null ? numeroEstabelecimento : " ", 10, " "); + } + + public String getCodigoAutorizacao() { + return codigoAutorizacao; + } + + public void setCodigoAutorizacao(String codigoAutorizacao) { + this.codigoAutorizacao = StringUtils.rightPad(codigoAutorizacao != null ? truncStr(codigoAutorizacao, 22) : " ", 22, "0"); + } + + public String getCantParcelas() { + return cantParcelas; + } + + public void setCantParcelas(String cantParcelas) { + this.cantParcelas = StringUtils.isNotEmpty(cantParcelas) ? StringUtils.leftPad(cantParcelas, 4,"0") : " "; + } } diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java index 6fc46e43d..27f23cf6b 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java @@ -15,26 +15,24 @@ public class DespesaReceitaComporte extends DespesaReceita { @Override public void preencheLinha(List rows) { StringBuilder sb = new StringBuilder(); - sb.append(dataLancamento); - sb.append(codigoEmpresa); - sb.append(codigoFilial); - sb.append(localArrecadacao.toUpperCase()); - sb.append(numeroDaGuia); - sb.append(dataMovimento); - sb.append(usuarioGlobus); - sb.append(turno); - sb.append(codigoReceitaDespesa); - sb.append(identificadorReceitaDespesa.toUpperCase()); - sb.append(valorLancamento); - sb.append(numeroContratoTurismo); - sb.append(numeroReciboTurismo); + sb.append(StringUtils.rightPad(dataLancamento.trim(), 10, " ")); //10 + sb.append(StringUtils.leftPad(codigoEmpresa.trim(), 3, "0")); //13 + sb.append(StringUtils.leftPad(codigoFilial.trim(), 3, "0")); //16 + sb.append(StringUtils.rightPad(truncStr(localArrecadacao.toUpperCase(), 5), 5, " ")); //21 + sb.append(StringUtils.rightPad(numeroDaGuia.trim(), 25, " ")); //46 + sb.append(StringUtils.rightPad(dataMovimento.trim(), 10, " ")); //56 + sb.append(StringUtils.rightPad(usuarioGlobus.trim(), 15, " ")); //71 + sb.append(StringUtils.leftPad(turno.trim(), 2, "0")); //73 + sb.append(StringUtils.leftPad(codigoReceitaDespesa.trim(), 10, "0")); //83 + sb.append(StringUtils.rightPad(identificadorReceitaDespesa.toUpperCase().trim(), 1, " ")); //84 + sb.append(StringUtils.leftPad(valorLancamento.trim(), 13, "0")); //97 + sb.append(StringUtils.leftPad(numeroContratoTurismo.trim(), 10, "0")); + sb.append(StringUtils.leftPad(numeroReciboTurismo.trim(), 10, "0")); sb.append(getFormaPagamentoTurismo()); sb.append(getTipoPagamentoTurismo()); sb.append(StringUtils.rightPad("", 80, " ")); - sb.append(StringUtils.rightPad(numeroEstabelecimento, 10, "0").substring(0,10)); - sb.append(StringUtils.rightPad(codigoAutorizacao, 6, "0").substring(0,6)); - sb.append(StringUtils.rightPad("", 16, " ")); - sb.append(StringUtils.rightPad("", 3, "0")); + sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(numeroEstabelecimento) ? StringUtils.rightPad(numeroEstabelecimento, 10, " ").substring(0,10) : "", 10, " ")); + sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(codigoAutorizacao) ? StringUtils.rightPad(codigoAutorizacao, 22, " ").substring(0,22) : "", 22, " ")); sb.append(StringUtils.leftPad(formaPagamentoId, 2, "0")); sb.append(cantParcelas); sb.append(numfoliosistema); @@ -49,7 +47,7 @@ public class DespesaReceitaComporte extends DespesaReceita { } public void setNumeroEstabelecimento(String numeroEstabelecimento) { - this.numeroEstabelecimento = StringUtils.rightPad(numeroEstabelecimento != null ? numeroEstabelecimento : "", 10, " "); + this.numeroEstabelecimento = StringUtils.rightPad(numeroEstabelecimento != null ? numeroEstabelecimento : " ", 10, " "); } public String getCodigoAutorizacao() { @@ -57,7 +55,7 @@ public class DespesaReceitaComporte extends DespesaReceita { } public void setCodigoAutorizacao(String codigoAutorizacao) { - this.codigoAutorizacao = StringUtils.rightPad(codigoAutorizacao != null ? truncStr(codigoAutorizacao, 22) : "", 22, "0"); + this.codigoAutorizacao = StringUtils.rightPad(codigoAutorizacao != null ? truncStr(codigoAutorizacao, 22) : " ", 22, "0"); } public String getCantParcelas() { @@ -73,7 +71,7 @@ public class DespesaReceitaComporte extends DespesaReceita { } public void setNumfoliosistema(String numfoliosistema) { - this.numfoliosistema = StringUtils.leftPad(numfoliosistema != null ? numfoliosistema : "", 16, ""); + this.numfoliosistema = StringUtils.leftPad(numfoliosistema != null ? numfoliosistema : "", 16, " "); } public String getTxId() { @@ -81,7 +79,7 @@ public class DespesaReceitaComporte extends DespesaReceita { } public void setTxId(String txId) { - this.txId = StringUtils.leftPad(txId != null ? truncStr(txId, 36) : "", 35, ""); + this.txId = StringUtils.leftPad(txId != null ? truncStr(txId, 36) : "", 35, " "); } } From e431189178c3c402b3be1e64e8c361f334e21931 Mon Sep 17 00:00:00 2001 From: "gleison.cruz" Date: Fri, 16 Jun 2023 15:54:24 -0300 Subject: [PATCH 109/121] fixes bug#AL-2815 --- pom.xml | 2 +- .../dao/Totalbus.java | 10 +++------ .../entidades/DespesaReceita.java | 22 +++++++++---------- .../entidades/DespesaReceitaComporte.java | 16 +++++++------- 4 files changed, 23 insertions(+), 27 deletions(-) diff --git a/pom.xml b/pom.xml index c0ea64eb6..5bb4ae3d7 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 br.com.rjconsultores IntegracaoReceitaDespesa - 1.2.3 + 1.2.4 diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 7e093f948..aaf306ab5 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -97,11 +97,7 @@ public class Totalbus { } }else { for (DespesaReceita item : despesasReceitas) { - if (isReceitasDespesasComporte) { - item.preencheLinhaComporte(rows); - }else { - item.preencheLinha(rows); - } + item.preencheLinha(rows); } } return rows; @@ -761,8 +757,8 @@ public class Totalbus { return despesas; } - public List getReceitasComporte(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { - List despesas = new ArrayList(); + public List getReceitasComporte(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { + List despesas = new ArrayList(); StringBuilder sb = new StringBuilder(); sb.append(" select "); sb.append(" cd.feccorte AS fechorvta, "); diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index 8e8a829ff..d697424d6 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -82,17 +82,17 @@ public class DespesaReceita { sb.append(StringUtils.leftPad(codigoReceitaDespesa.trim(), 10, "0")); //83 sb.append(StringUtils.rightPad(identificadorReceitaDespesa.toUpperCase().trim(), 1, " ")); //84 sb.append(StringUtils.leftPad(valorLancamento.trim(), 13, "0")); //97 - sb.append(StringUtils.rightPad(numeroContratoTurismo.trim(), 10, " ")); //107 - sb.append(StringUtils.rightPad(numeroReciboTurismo.trim(), 10, " ")); //117 - sb.append(StringUtils.leftPad(getFormaPagamentoId().trim(), 2, " ")); //119 - sb.append(StringUtils.leftPad(getTipoPagamentoTurismo().trim(), 2, " ")); //111 - sb.append(StringUtils.rightPad(descricaoDetalhada.trim(), 80, " ")); //211 - sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(numeroEstabelecimento) ? StringUtils.rightPad(numeroEstabelecimento, 10, " ").substring(0,10) : "", 10, " ")); - sb.append(codigoAutorizacao != null ? StringUtils.rightPad(codigoAutorizacao, 22, " ") : StringUtils.rightPad("", 22, " ")); - sb.append(StringUtils.rightPad(formaPagamentoId.trim(), 2, "0")); //229 - sb.append(StringUtils.leftPad(cantParcelas.trim(), 4, "0")); - sb.append(StringUtils.leftPad(numFolioSistema.trim(), 16, " ")); //259 - sb.append(StringUtils.leftPad(tx_id.trim(), 35, " ")); //294 + sb.append(StringUtils.rightPad(numeroContratoTurismo.trim(), 10, "0")); //107 + sb.append(StringUtils.rightPad(numeroReciboTurismo.trim(), 10, "0")); //117 + sb.append(StringUtils.leftPad(getFormaPagamentoId().trim(), 2, "0")); //119 + sb.append(StringUtils.leftPad(getTipoPagamentoTurismo().trim(), 2, "0")); //121 + sb.append(StringUtils.rightPad(descricaoDetalhada.trim(), 80, " ")); //201 + sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(numeroEstabelecimento) ? StringUtils.rightPad(numeroEstabelecimento, 10, "0").substring(0,10) : "", 10, "0"));//211 + sb.append(codigoAutorizacao != null ? StringUtils.rightPad(codigoAutorizacao, 25, "0") : StringUtils.rightPad("", 25, "0")); //236 + sb.append(StringUtils.rightPad(formaPagamentoId.trim(), 2, "0")); //238 + sb.append(StringUtils.leftPad(cantParcelas.trim(), 4, "0")); //242 + sb.append(StringUtils.leftPad(numFolioSistema.trim(), 16, " ")); //258 + sb.append(StringUtils.leftPad(tx_id.trim(), 35, " ")); //293 sb.append(finalLinha); sb.append(System.getProperty("line.separator")); diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java index 27f23cf6b..717f8542d 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java @@ -24,17 +24,17 @@ public class DespesaReceitaComporte extends DespesaReceita { sb.append(StringUtils.rightPad(usuarioGlobus.trim(), 15, " ")); //71 sb.append(StringUtils.leftPad(turno.trim(), 2, "0")); //73 sb.append(StringUtils.leftPad(codigoReceitaDespesa.trim(), 10, "0")); //83 - sb.append(StringUtils.rightPad(identificadorReceitaDespesa.toUpperCase().trim(), 1, " ")); //84 + sb.append(StringUtils.rightPad(identificadorReceitaDespesa.toUpperCase().trim(), 1, "0")); //84 sb.append(StringUtils.leftPad(valorLancamento.trim(), 13, "0")); //97 sb.append(StringUtils.leftPad(numeroContratoTurismo.trim(), 10, "0")); sb.append(StringUtils.leftPad(numeroReciboTurismo.trim(), 10, "0")); - sb.append(getFormaPagamentoTurismo()); - sb.append(getTipoPagamentoTurismo()); + sb.append(StringUtils.leftPad(getFormaPagamentoTurismo().trim(),2,"0")); + sb.append(StringUtils.leftPad(getTipoPagamentoTurismo().trim(), 2, "0")); sb.append(StringUtils.rightPad("", 80, " ")); - sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(numeroEstabelecimento) ? StringUtils.rightPad(numeroEstabelecimento, 10, " ").substring(0,10) : "", 10, " ")); - sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(codigoAutorizacao) ? StringUtils.rightPad(codigoAutorizacao, 22, " ").substring(0,22) : "", 22, " ")); + sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(numeroEstabelecimento) ? StringUtils.rightPad(numeroEstabelecimento, 10, "0").substring(0,10) : "", 10, "0")); + sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(codigoAutorizacao) ? StringUtils.rightPad(codigoAutorizacao, 25, "0").substring(0,24) : "", 25, " ")); sb.append(StringUtils.leftPad(formaPagamentoId, 2, "0")); - sb.append(cantParcelas); + sb.append(StringUtils.isNotEmpty(cantParcelas) ? StringUtils.leftPad(cantParcelas, 4,"0") : "0000"); sb.append(numfoliosistema); sb.append(txId); sb.append(finalLinha); @@ -55,7 +55,7 @@ public class DespesaReceitaComporte extends DespesaReceita { } public void setCodigoAutorizacao(String codigoAutorizacao) { - this.codigoAutorizacao = StringUtils.rightPad(codigoAutorizacao != null ? truncStr(codigoAutorizacao, 22) : " ", 22, "0"); + this.codigoAutorizacao = StringUtils.rightPad(codigoAutorizacao != null ? truncStr(codigoAutorizacao, 25) : " ", 25, "0"); } public String getCantParcelas() { @@ -63,7 +63,7 @@ public class DespesaReceitaComporte extends DespesaReceita { } public void setCantParcelas(String cantParcelas) { - this.cantParcelas = StringUtils.isNotEmpty(cantParcelas) ? StringUtils.leftPad(cantParcelas, 4,"0") : " "; + this.cantParcelas = StringUtils.isNotEmpty(cantParcelas) ? StringUtils.leftPad(cantParcelas, 4,"0") : "0000"; } public String getNumfoliosistema() { From 68b208b731ad3862a8edc9825b291cb6c42b2ceb Mon Sep 17 00:00:00 2001 From: "gleison.cruz" Date: Wed, 30 Aug 2023 14:28:04 -0300 Subject: [PATCH 110/121] fixes bug#AL-2979 --- pom.xml | 2 +- .../BGMApplication.java | 8 +- .../dao/Totalbus.java | 252 ++++++++++++++++-- .../entidades/DespesaReceitaComporte.java | 30 ++- 4 files changed, 246 insertions(+), 46 deletions(-) diff --git a/pom.xml b/pom.xml index 5bb4ae3d7..8adfcb329 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 br.com.rjconsultores IntegracaoReceitaDespesa - 1.2.4 + 1.2.5 diff --git a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java index 79571742f..e3e1b8c3d 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java @@ -182,10 +182,10 @@ public class BGMApplication { sourceChannel = new FileInputStream(source).getChannel(); destChannel = new FileOutputStream(dest).getChannel(); destChannel.transferFrom(sourceChannel, 0, sourceChannel.size()); - }finally{ - sourceChannel.close(); - destChannel.close(); - } + }finally{ + sourceChannel.close(); + destChannel.close(); + } } private void excluirArquivosZip(String diretorio){ diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index aaf306ab5..2a6c137c5 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -69,35 +69,46 @@ public class Totalbus { } public List getDespesasReceitas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException{ - log.debug("gerando depositos..."); - List despesasReceitas = getDepositos(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo); - log.debug("gerando despesas..."); - despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); - log.debug("gerando despesas cartão..."); - + List rows = new ArrayList(); if (isReceitasDespesasComporte){ + log.debug("gerando depositos..."); + List despesasReceitas = getDepositosComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo); + log.debug("gerando despesas..."); + despesasReceitas.addAll(getDespesasComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); + log.debug("gerando despesas cartão..."); despesasReceitas.addAll(getDespesaCartaoDebCredComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); log.debug("gerando receitas..."); despesasReceitas.addAll(getReceitasComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + if( isLayoutNovo ) { + for (DespesaReceita item : despesasReceitas) { + item.preencheLinhaLayoutNovo(rows); + } + }else { + for (DespesaReceita item : despesasReceitas) { + item.preencheLinha(rows); + } + } }else { + log.debug("gerando depositos..."); + List despesasReceitas = getDepositos(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo); + log.debug("gerando despesas..."); + despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); + log.debug("gerando despesas cartão..."); despesasReceitas.addAll(getDespesaCartaoDebCred(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); log.debug("gerando receitas..."); despesasReceitas.addAll(getReceitas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); if(isReceitasDespesasOuroPrata) { getContaCorrenteAgencia(despesasReceitas, puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM); } - } - - List rows = new ArrayList(); - - if( isLayoutNovo ) { - for (DespesaReceita item : despesasReceitas) { - item.preencheLinhaLayoutNovo(rows); - } - }else { - for (DespesaReceita item : despesasReceitas) { - item.preencheLinha(rows); + if( isLayoutNovo ) { + for (DespesaReceita item : despesasReceitas) { + item.preencheLinhaLayoutNovo(rows); + } + }else { + for (DespesaReceita item : despesasReceitas) { + item.preencheLinha(rows); + } } } return rows; @@ -560,7 +571,8 @@ public class Totalbus { sb.append(" ct.numautorizacion as numautorizacion, "); sb.append(" pte.numsitef as numeroEstabelecimento, "); sb.append(" b.numfoliosistema,"); - sb.append(" ct.tx_id"); + sb.append(" ct.tx_id, "); + sb.append(" b.num_bpe "); sb.append(" from "); sb.append(" caja_diversos cd "); sb.append(" left join evento_extra ev on ev.eventoextra_id = cd.eventoextra_id "); @@ -598,7 +610,7 @@ public class Totalbus { despesa.setCodigoEmpresa(rs.getInt(2)); despesa.setCodigoReceitaDespesa(rs.getString(5)); if(StringUtils.isNotBlank(rs.getString(5)) && (rs.getString(5).equals("22") || rs.getString(5).equals("8101"))) { - despesa.setNumfoliosistema(rs.getString(11)); + despesa.setNumfoliosistema(rs.getString("num_bpe")); }else { despesa.setNumfoliosistema(""); } @@ -757,8 +769,8 @@ public class Totalbus { return despesas; } - public List getReceitasComporte(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { - List despesas = new ArrayList(); + public List getReceitasComporte(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { + List despesas = new ArrayList(); StringBuilder sb = new StringBuilder(); sb.append(" select "); sb.append(" cd.feccorte AS fechorvta, "); @@ -773,7 +785,7 @@ public class Totalbus { sb.append(" ct.numautorizacion AS numautorizacion, "); sb.append(" pte.numsitef AS numeroestabelecimento, "); sb.append(" ct.cantparcelas, "); - sb.append(" b.numfoliosistema,"); + sb.append(" case when (b.num_bpe is not null) then LPAD(b.num_bpe, 9,'0') else LPAD(' ',9,0) end as num_bpe, "); sb.append(" ct.tx_id"); sb.append(" from "); sb.append(" caja_diversos cd "); @@ -810,11 +822,7 @@ public class Totalbus { DespesaReceitaComporte receita = new DespesaReceitaComporte(); receita.setCodigoEmpresa(rs.getInt(2)); receita.setCodigoReceitaDespesa(rs.getString(5)); - if(StringUtils.isNotBlank(rs.getString(5)) && (rs.getString(5).equals("22") || rs.getString(5).equals("8101"))) { - receita.setNumfoliosistema(rs.getString(13)); - }else { - receita.setNumfoliosistema(""); - } + receita.setNumfoliosistema(rs.getString(13)); receita.setDataLancamento(rs.getDate(1)); receita.setDataMovimento(rs.getDate(1)); receita.setLocalArrecadacao(rs.getString(6)); @@ -1060,6 +1068,7 @@ public class Totalbus { log.error(ignore.getMessage(), ignore); } } + return depositos; } @@ -1213,4 +1222,193 @@ public class Totalbus { System.out.println(new BigDecimal("0").signum()); } + + public List getDepositosComporte(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException { + List depositos = new ArrayList(); + + StringBuilder strFechamentos = new StringBuilder(); + strFechamentos.append("Select distinct sum(fd.valor_pago), fdep.numdeposito, fdep.fecha_deposito, fc.empresa_id, "); + strFechamentos.append(" pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion, fdep.feccreacion "); + strFechamentos.append(" from fechamento_deposito fdep "); + strFechamentos.append(" join fechamento_cct_deposito fd on fd.fechamentodeposito_id = fdep.fechamentodeposito_id "); + strFechamentos.append(" join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); + strFechamentos.append(" inner join PUNTO_VENTA pv on PV.PUNTOVENTA_ID = FC.PUNTOVENTA_ID "); + strFechamentos.append(" join empresa_contabancaria ec on ec.EMPRESACONTABANCARIA_ID = fdep.EMPRESACONTABANCARIA_ID "); + strFechamentos.append(" join INSTI_FINANCEIRA if on if.INSTIFINANCEIRA_ID = EC.INSTIFINANCEIRA_ID "); + strFechamentos.append(" join EMPRESA e on e.empresa_id = fc.empresa_id "); + strFechamentos.append(" where trunc(fdep.feccreacion) = :fecha and fd.activo = 1 and fc.activo = 1 and fdep.activo = 1 "); + adicionaFiltroQuery(puntoventaId, strFechamentos, " and fc.puntoventa_id = ", puntoventaId != null && !puntoventaId.equals(-1)); + adicionaFiltroQuery(empresaId, strFechamentos, " and fc.empresa_id = ", empresaId != null); + strFechamentos.append(" group by fdep.numdeposito, fdep.feccreacion, fdep.fecha_deposito, fc.empresa_id, pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion "); + + Date fecha = fechaParam; + if (fechaParam == null) { + fecha = getData(); + } + + PreparedStatement pstmtFechamentos = null; + ResultSet rsFechamentos = null; + BigDecimal soma = BigDecimal.ZERO; + try { + pstmtFechamentos = getConnection().prepareStatement(strFechamentos.toString()); + pstmtFechamentos.setDate(1, new java.sql.Date(fecha.getTime())); + + rsFechamentos = pstmtFechamentos.executeQuery(); + + while (rsFechamentos.next()) { + Integer empId = null; + String banco = ""; + String agencia = ""; + String contaCorrente = ""; + String numDep = " Dep: " + rsFechamentos.getString(2); + String codRecDesp = null; + String numpuntoventa = rsFechamentos.getString(5); + + if (empId == null) { + empId = rsFechamentos.getInt(4); + } + if (banco.isEmpty()) { + banco = "Bco: " + StringUtils.leftPad(rsFechamentos.getString(8), 3, "0"); + } + + if (agencia.isEmpty()) { + agencia = " Ag: " + rsFechamentos.getString(6); + } + if (contaCorrente.isEmpty()) { + contaCorrente = " C/C: " + rsFechamentos.getString(7); + } + if (codRecDesp == null) { + codRecDesp = rsFechamentos.getString(9); + } + + DespesaReceitaComporte deposito = new DespesaReceitaComporte(); + deposito.setCodigoEmpresa(empId); + deposito.setDataLancamento(rsFechamentos.getDate(10)); + deposito.setDataMovimento(rsFechamentos.getDate(3)); + deposito.setLocalArrecadacao(numpuntoventa); + deposito.setValorLancamento(df.format(rsFechamentos.getBigDecimal(1))); + deposito.setIdentificadorReceitaDespesa("D"); + deposito.setCodigoReceitaDespesa(codRecDesp); + deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep); + + if(isLayoutNovo) { + deposito.setTipoPagamentoTurismo("01"); + deposito.setFormaPagamentoId("04"); + deposito.setTipoDocumentoVenda("P"); + } + depositos.add(deposito); + soma = soma.add(rsFechamentos.getBigDecimal(1)); + } + log.debug("Total depositos: " + soma); + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Depositos"); + } finally { + try { + pstmtFechamentos.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + rsFechamentos.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return depositos; + } + + public List getDespesasComporte(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo ) throws IntegracaoReceitaDespesaException { + 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.numpuntoventa as numpuntoventa, "); + sb.append(" cdp.importe as valor, "); + sb.append(" tee.contacontabil as contacontabil, "); + sb.append(" ev.descinfo as descinfo, "); + sb.append(" ev.tipoeventoextra_id, "); + sb.append(" cdp.formapago_id as formapagoId, "); + sb.append(" case when (b.num_bpe is not null) then LPAD(b.num_bpe, 9,'0') else LPAD(' ',9,0) end as num_bpe "); + 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(" left join boleto b on b.boleto_id = ev.boleto_id "); + sb.append(" where "); + sb.append(" cd.feccorte = ? "); + sb.append(" and tee.indtipo = 0 "); + adicionaFiltroQuery(puntoventaId, sb, " and cd.puntoventa_id = ", puntoventaId != null && !puntoventaId.equals(-1)); + adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); + sb.append(" and cd.activo = 1 "); + sb.append(" and cdp.formapago_id not IN (2,3) "); + 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 = fechaParam; + if (fechaParam == null) { + fecha = getData(); + } + + PreparedStatement pstmt = null; + ResultSet rs = null; + + try { + pstmt = getConnection().prepareStatement(sb.toString()); + pstmt.setDate(1, new java.sql.Date(fecha.getTime())); + + rs = pstmt.executeQuery(); + while (rs.next()) { + DespesaReceitaComporte despesa = new DespesaReceitaComporte(); + despesa.setCodigoEmpresa(rs.getInt(2)); + despesa.setCodigoReceitaDespesa(rs.getString(5)); + despesa.setDataLancamento(rs.getDate(1)); + despesa.setDataMovimento(rs.getDate(1)); + despesa.setLocalArrecadacao(rs.getString(3)); + despesa.setValorLancamento(df.format(rs.getBigDecimal(4).doubleValue() * -1)); + despesa.setIdentificadorReceitaDespesa("D"); + String desc =rs.getString(6); + + desc = this.removerQuebraDeLinha(desc); + + despesa.setDescricaoDetalhada(desc); + if (incluiTipoPagamentoTurismoBGM) { + despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); + } + despesa.setFormaPagamentoId(rs.getString("formapagoId")); + + if(isLayoutNovo) { + despesa.setTipoPagamentoTurismo("01"); + despesa.setFormaPagamentoId("01"); + despesa.setTipoDocumentoVenda("P"); + } + + despesa.setNumfoliosistema(rs.getString("num_bpe")); + despesas.add(despesa); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas"); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return despesas; + } + + + } diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java index 717f8542d..c42c1ef7c 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java @@ -26,17 +26,19 @@ public class DespesaReceitaComporte extends DespesaReceita { sb.append(StringUtils.leftPad(codigoReceitaDespesa.trim(), 10, "0")); //83 sb.append(StringUtils.rightPad(identificadorReceitaDespesa.toUpperCase().trim(), 1, "0")); //84 sb.append(StringUtils.leftPad(valorLancamento.trim(), 13, "0")); //97 - sb.append(StringUtils.leftPad(numeroContratoTurismo.trim(), 10, "0")); - sb.append(StringUtils.leftPad(numeroReciboTurismo.trim(), 10, "0")); - sb.append(StringUtils.leftPad(getFormaPagamentoTurismo().trim(),2,"0")); - sb.append(StringUtils.leftPad(getTipoPagamentoTurismo().trim(), 2, "0")); - sb.append(StringUtils.rightPad("", 80, " ")); - sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(numeroEstabelecimento) ? StringUtils.rightPad(numeroEstabelecimento, 10, "0").substring(0,10) : "", 10, "0")); - sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(codigoAutorizacao) ? StringUtils.rightPad(codigoAutorizacao, 25, "0").substring(0,24) : "", 25, " ")); - sb.append(StringUtils.leftPad(formaPagamentoId, 2, "0")); - sb.append(StringUtils.isNotEmpty(cantParcelas) ? StringUtils.leftPad(cantParcelas, 4,"0") : "0000"); - sb.append(numfoliosistema); - sb.append(txId); + sb.append(StringUtils.leftPad(numeroContratoTurismo.trim(), 10, "0"));//107 + sb.append(StringUtils.leftPad(numeroReciboTurismo.trim(), 10, "0"));//117 + sb.append(StringUtils.leftPad(getFormaPagamentoTurismo().trim(),2,"0"));//119 + sb.append(StringUtils.leftPad(getTipoPagamentoTurismo().trim(), 2, "0"));//121 + sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(descricaoDetalhada) ? truncStr(descricaoDetalhada, 80) : "", 80, " ")); //201 + sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(numeroEstabelecimento) ? StringUtils.rightPad(numeroEstabelecimento, 10, "0").substring(0,10) : "", 10, "0")); //211 + sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(codigoAutorizacao) ? StringUtils.rightPad(codigoAutorizacao, 22, " ").substring(0,22) : "", 22, " "));//237 + sb.append(StringUtils.leftPad("0", 2, "0"));//239 + sb.append(StringUtils.leftPad(" ", 1, " "));//239 + sb.append(StringUtils.leftPad(formaPagamentoId, 2, "0"));//239 + sb.append(StringUtils.isNotEmpty(cantParcelas) ? StringUtils.leftPad(cantParcelas, 4,"0") : "0000");//243 + sb.append(StringUtils.leftPad(numfoliosistema,16, " "));//259 + sb.append(StringUtils.leftPad(txId,35, " "));//294 sb.append(finalLinha); sb.append(System.getProperty("line.separator")); rows.add(sb.toString()); @@ -55,7 +57,7 @@ public class DespesaReceitaComporte extends DespesaReceita { } public void setCodigoAutorizacao(String codigoAutorizacao) { - this.codigoAutorizacao = StringUtils.rightPad(codigoAutorizacao != null ? truncStr(codigoAutorizacao, 25) : " ", 25, "0"); + this.codigoAutorizacao = codigoAutorizacao; } public String getCantParcelas() { @@ -71,7 +73,7 @@ public class DespesaReceitaComporte extends DespesaReceita { } public void setNumfoliosistema(String numfoliosistema) { - this.numfoliosistema = StringUtils.leftPad(numfoliosistema != null ? numfoliosistema : "", 16, " "); + this.numfoliosistema = StringUtils.leftPad(numfoliosistema != null ? numfoliosistema :StringUtils.leftPad(" ", 16) , 16, " "); } public String getTxId() { @@ -79,7 +81,7 @@ public class DespesaReceitaComporte extends DespesaReceita { } public void setTxId(String txId) { - this.txId = StringUtils.leftPad(txId != null ? truncStr(txId, 36) : "", 35, " "); + this.txId = StringUtils.leftPad(txId != null ? truncStr(txId, 36) : StringUtils.leftPad(" ", 35), 35, " "); } } From b728603f9b9dc3d64312ec3587cef5409b0bbd61 Mon Sep 17 00:00:00 2001 From: "wallace.henrique" Date: Wed, 25 Oct 2023 16:32:41 -0300 Subject: [PATCH 111/121] fixes bug#AL-3384 dev: qua: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Foi mantido a conformidade como ja era anteriormente codigo 802 para créido e 803 para débito --- pom.xml | 2 +- .../integracaoreceitadespesa/dao/Totalbus.java | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/pom.xml b/pom.xml index 8adfcb329..b77ee35eb 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 br.com.rjconsultores IntegracaoReceitaDespesa - 1.2.5 + 1.2.6 diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 2a6c137c5..75d315d40 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -151,7 +151,7 @@ public class Totalbus { sb.append("fp.DESCPAGO AS descripcionFormaPago, "); sb.append("e.empresa_id AS empresa, "); sb.append("ccp.PUNTOVENTA_ID AS puntoventaId, "); - sb.append("tee.contacontabil AS contacontabil, "); + sb.append("CASE WHEN cfp.formapago_id = 2 THEN 802 ELSE 803 END contacontabil, "); sb.append("pv.numpuntoventa AS numpuntoventa, "); sb.append("ee.descinfo AS descinfo, "); sb.append("ee.tipoeventoextra_id AS tipoEventoExtra, "); @@ -192,7 +192,7 @@ public class Totalbus { sb.append(" fp.DESCPAGO AS descripcionFormaPago,"); sb.append(" e.empresa_id AS empresa,"); sb.append(" cd.PUNTOVENTA_ID AS puntoventaId,"); - sb.append(" tee.contacontabil AS contacontabil,"); + sb.append(" CASE WHEN cdp.formapago_id = 2 THEN 802 ELSE 803 END contacontabil, "); sb.append(" pv.numpuntoventa AS numpuntoventa,"); sb.append(" ee.descinfo AS descinfo,"); sb.append(" ee.tipoeventoextra_id AS tipoEventoExtra, ccp.feccorte AS feccorte "); @@ -341,7 +341,8 @@ public class Totalbus { sb.append(" cc.empresa_id, "); sb.append(" cc.puntoventa_id, "); sb.append(" pv.numpuntoventa, "); - sb.append(" cc.fechoroperacion "); + sb.append(" cc.fechoroperacion, "); + sb.append(" CASE WHEN OP.INDCREDITO = 1 THEN 802 ELSE 803 END contacontabil "); sb.append("FROM CONTA_CORRENTE_PTOVTA CC "); sb.append("LEFT JOIN CONTA_CORRENTE_PTOVTA_GR_LIN CCGL ON CCGL.CONTACORRENTEPTOVTA_ID = CC.CONTACORRENTEPTOVTA_ID "); sb.append("JOIN TIPO_OPERACION_CC OP ON CC.TIPOOPERACIONCC_ID = OP.TIPOOPERACIONCC_ID "); @@ -371,7 +372,7 @@ public class Totalbus { while (rs.next()) { DespesaReceita receita = new DespesaReceita(); receita.setCodigoEmpresa(rs.getInt(4)); - receita.setCodigoReceitaDespesa(""); + receita.setCodigoReceitaDespesa(rs.getString(8)); receita.setDataLancamento(rs.getDate(7)); receita.setDataMovimento(rs.getDate(7)); receita.setLocalArrecadacao(rs.getString(6)); From fbfeb405fbbe1face0f8a0e6a6bb265f13e47166 Mon Sep 17 00:00:00 2001 From: Gleimar Botelho Baleeiro Date: Wed, 8 Nov 2023 18:09:52 -0300 Subject: [PATCH 112/121] =?UTF-8?q?Atualiza=C3=A7=C3=A3o=20do=20log4j?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 30 ++++++++++++++++--- .../integracaoreceitadespesa/Application.java | 5 ++-- .../integracaoreceitadespesa/Arquivo.java | 5 ++-- .../BGMApplication.java | 5 ++-- .../dao/Totalbus.java | 5 ++-- 5 files changed, 38 insertions(+), 12 deletions(-) diff --git a/pom.xml b/pom.xml index b77ee35eb..0d58c6416 100644 --- a/pom.xml +++ b/pom.xml @@ -33,10 +33,32 @@ - log4j - log4j - 1.2.16 - + org.apache.logging.log4j + log4j-core + 2.21.1 + + + org.apache.logging.log4j + log4j-api + 2.21.1 + + + org.apache.logging.log4j + log4j-slf4j-impl + 2.21.1 + test + + + org.apache.logging.log4j + log4j-1.2-api + 2.21.1 + test + + + org.apache.logging.log4j + log4j-jcl + 2.21.1 + commons-lang commons-lang diff --git a/src/com/rjconsultores/integracaoreceitadespesa/Application.java b/src/com/rjconsultores/integracaoreceitadespesa/Application.java index f01a27891..30111643b 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/Application.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/Application.java @@ -6,12 +6,13 @@ import java.sql.Connection; import java.sql.DriverManager; import java.util.Properties; -import org.apache.log4j.Logger; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; public class Application { private static Application instance = null; - private static final Logger log = Logger.getLogger(Application.class); + private static final Logger log = LogManager.getLogger(Application.class); private Application(){ diff --git a/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java b/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java index 3fc87e635..27ceee245 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java @@ -5,10 +5,11 @@ import java.io.FileWriter; import java.io.IOException; import java.util.List; -import org.apache.log4j.Logger; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; public class Arquivo { - private static final Logger log = Logger.getLogger(Arquivo.class); + private static final Logger log = LogManager.getLogger(Arquivo.class); public static void GravaArquivo(String filename, List rows){ try{ diff --git a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java index e3e1b8c3d..7f52977eb 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java @@ -19,14 +19,15 @@ import java.util.zip.ZipEntry; import java.util.zip.ZipOutputStream; import org.apache.commons.lang.StringUtils; -import org.apache.log4j.Logger; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import com.rjconsultores.integracaoreceitadespesa.dao.Totalbus; public class BGMApplication { private static BGMApplication instance = null; - private static final Logger log = Logger.getLogger(BGMApplication.class); + private static final Logger log = LogManager.getLogger(BGMApplication.class); private static final int TAMANHO_BUFFER = 4096; // 4kb diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 75d315d40..60848d4a3 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -13,7 +13,8 @@ import java.util.Date; import java.util.List; import org.apache.commons.lang.StringUtils; -import org.apache.log4j.Logger; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import com.rjconsultores.integracaoreceitadespesa.IntegracaoReceitaDespesaException; import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceita; @@ -23,7 +24,7 @@ import com.rjconsultores.integracaoreceitadespesa.entidades.PuntoVenta; public class Totalbus { - private static final Logger log = Logger.getLogger(Totalbus.class); + private static final Logger log = LogManager.getLogger(Totalbus.class); private static final int DAYS_AGO = -1; private Connection conn; From f15621232b74dc502008d771e79aefe025f2408c Mon Sep 17 00:00:00 2001 From: Gleimar Botelho Baleeiro Date: Tue, 21 Nov 2023 12:14:01 -0300 Subject: [PATCH 113/121] =?UTF-8?q?Atualiza=C3=A7=C3=A3o=20do=20log4j?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 0d58c6416..465bfe98f 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 br.com.rjconsultores IntegracaoReceitaDespesa - 1.2.6 + 1.3.0 @@ -66,4 +66,4 @@ - \ No newline at end of file + From 0f7d854de6081103c0a689b1078ff6cf61c1f12b Mon Sep 17 00:00:00 2001 From: Gleimar Botelho Baleeiro Date: Tue, 21 Nov 2023 18:55:52 -0300 Subject: [PATCH 114/121] =?UTF-8?q?Rollback=20atualiza=C3=A7=C3=A3o=20do?= =?UTF-8?q?=20log4j?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 34 ++++--------------- .../integracaoreceitadespesa/Application.java | 6 ++-- .../integracaoreceitadespesa/Arquivo.java | 6 ++-- .../BGMApplication.java | 6 ++-- .../dao/Totalbus.java | 6 ++-- 5 files changed, 18 insertions(+), 40 deletions(-) diff --git a/pom.xml b/pom.xml index 465bfe98f..5cc1a0d51 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 br.com.rjconsultores IntegracaoReceitaDespesa - 1.3.0 + 1.4.0 @@ -33,32 +33,10 @@ - org.apache.logging.log4j - log4j-core - 2.21.1 - - - org.apache.logging.log4j - log4j-api - 2.21.1 - - - org.apache.logging.log4j - log4j-slf4j-impl - 2.21.1 - test - - - org.apache.logging.log4j - log4j-1.2-api - 2.21.1 - test - - - org.apache.logging.log4j - log4j-jcl - 2.21.1 - + log4j + log4j + 1.2.16 + commons-lang commons-lang @@ -66,4 +44,4 @@ - + \ No newline at end of file diff --git a/src/com/rjconsultores/integracaoreceitadespesa/Application.java b/src/com/rjconsultores/integracaoreceitadespesa/Application.java index 30111643b..468a4de5c 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/Application.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/Application.java @@ -6,13 +6,13 @@ import java.sql.Connection; import java.sql.DriverManager; import java.util.Properties; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; +import org.apache.log4j.Logger; + public class Application { private static Application instance = null; - private static final Logger log = LogManager.getLogger(Application.class); + private static final Logger log = Logger.getLogger(Application.class); private Application(){ diff --git a/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java b/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java index 27ceee245..3ea8880c8 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java @@ -5,11 +5,11 @@ import java.io.FileWriter; import java.io.IOException; import java.util.List; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; +import org.apache.log4j.Logger; + public class Arquivo { - private static final Logger log = LogManager.getLogger(Arquivo.class); + private static final Logger log = Logger.getLogger(Arquivo.class); public static void GravaArquivo(String filename, List rows){ try{ diff --git a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java index 7f52977eb..166370f43 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java @@ -19,15 +19,15 @@ import java.util.zip.ZipEntry; import java.util.zip.ZipOutputStream; import org.apache.commons.lang.StringUtils; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; +import org.apache.log4j.Logger; + import com.rjconsultores.integracaoreceitadespesa.dao.Totalbus; public class BGMApplication { private static BGMApplication instance = null; - private static final Logger log = LogManager.getLogger(BGMApplication.class); + private static final Logger log = Logger.getLogger(BGMApplication.class); private static final int TAMANHO_BUFFER = 4096; // 4kb diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 60848d4a3..12d2c795b 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -13,8 +13,8 @@ import java.util.Date; import java.util.List; import org.apache.commons.lang.StringUtils; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; +import org.apache.log4j.Logger; + import com.rjconsultores.integracaoreceitadespesa.IntegracaoReceitaDespesaException; import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceita; @@ -24,7 +24,7 @@ import com.rjconsultores.integracaoreceitadespesa.entidades.PuntoVenta; public class Totalbus { - private static final Logger log = LogManager.getLogger(Totalbus.class); + private static final Logger log = Logger.getLogger(Totalbus.class); private static final int DAYS_AGO = -1; private Connection conn; From e19fdf808eb1336cbae50ebed5bed9fc8b2b0e4c Mon Sep 17 00:00:00 2001 From: valdevir Date: Tue, 20 Feb 2024 15:32:07 -0300 Subject: [PATCH 115/121] fixes bug #AL-3470 --- pom.xml | 8 ++++---- .../integracaoreceitadespesa/Application.java | 5 +++-- .../rjconsultores/integracaoreceitadespesa/Arquivo.java | 5 +++-- .../integracaoreceitadespesa/BGMApplication.java | 5 +++-- .../integracaoreceitadespesa/dao/Totalbus.java | 5 +++-- 5 files changed, 16 insertions(+), 12 deletions(-) diff --git a/pom.xml b/pom.xml index 5cc1a0d51..4305fe5c2 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 br.com.rjconsultores IntegracaoReceitaDespesa - 1.4.0 + 1.5.0 @@ -33,9 +33,9 @@ - log4j - log4j - 1.2.16 + org.apache.logging.log4j + log4j-core + 2.17.1 commons-lang diff --git a/src/com/rjconsultores/integracaoreceitadespesa/Application.java b/src/com/rjconsultores/integracaoreceitadespesa/Application.java index 468a4de5c..e4db8088a 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/Application.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/Application.java @@ -6,13 +6,14 @@ import java.sql.Connection; import java.sql.DriverManager; import java.util.Properties; -import org.apache.log4j.Logger; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; public class Application { private static Application instance = null; - private static final Logger log = Logger.getLogger(Application.class); + private static final Logger log = LogManager.getLogger(Application.class); private Application(){ diff --git a/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java b/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java index 3ea8880c8..2cde841af 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java @@ -5,11 +5,12 @@ import java.io.FileWriter; import java.io.IOException; import java.util.List; -import org.apache.log4j.Logger; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; public class Arquivo { - private static final Logger log = Logger.getLogger(Arquivo.class); + private static final Logger log = LogManager.getLogger(Arquivo.class); public static void GravaArquivo(String filename, List rows){ try{ diff --git a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java index 166370f43..3bbac3977 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java @@ -19,7 +19,8 @@ import java.util.zip.ZipEntry; import java.util.zip.ZipOutputStream; import org.apache.commons.lang.StringUtils; -import org.apache.log4j.Logger; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import com.rjconsultores.integracaoreceitadespesa.dao.Totalbus; @@ -27,7 +28,7 @@ import com.rjconsultores.integracaoreceitadespesa.dao.Totalbus; public class BGMApplication { private static BGMApplication instance = null; - private static final Logger log = Logger.getLogger(BGMApplication.class); + private static final Logger log = LogManager.getLogger(BGMApplication.class); private static final int TAMANHO_BUFFER = 4096; // 4kb diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 12d2c795b..c9993e124 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -13,7 +13,8 @@ import java.util.Date; import java.util.List; import org.apache.commons.lang.StringUtils; -import org.apache.log4j.Logger; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import com.rjconsultores.integracaoreceitadespesa.IntegracaoReceitaDespesaException; @@ -24,7 +25,7 @@ import com.rjconsultores.integracaoreceitadespesa.entidades.PuntoVenta; public class Totalbus { - private static final Logger log = Logger.getLogger(Totalbus.class); + private static final Logger log = LogManager.getLogger(Totalbus.class); private static final int DAYS_AGO = -1; private Connection conn; From c46e4a2150e46f78cd375b1f14a3788aee689aff Mon Sep 17 00:00:00 2001 From: Fabio Date: Tue, 4 Jun 2024 11:13:48 -0300 Subject: [PATCH 116/121] script de menu de alias classe fixes bug#AL-4470 --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 8617fbc1a..1ee2035cb 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ /.project .settings target +/.factorypath From 3f57a19bafa1b471fcc124a121f5760ef11c62b4 Mon Sep 17 00:00:00 2001 From: "gleison.cruz" Date: Wed, 19 Jun 2024 23:47:57 -0300 Subject: [PATCH 117/121] fixes bug#AL-4419 --- pom.xml | 2 +- .../dao/Totalbus.java | 41 +++++++++++++++++-- 2 files changed, 38 insertions(+), 5 deletions(-) diff --git a/pom.xml b/pom.xml index 4305fe5c2..ede6579cb 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 br.com.rjconsultores IntegracaoReceitaDespesa - 1.5.0 + 1.6.0 diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index c9993e124..a1932efcb 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -27,6 +27,7 @@ public class Totalbus { private static final Logger log = LogManager.getLogger(Totalbus.class); private static final int DAYS_AGO = -1; + private Connection conn; @@ -42,6 +43,8 @@ public class Totalbus { private Boolean isLayoutNovo= false; private DecimalFormat df = new DecimalFormat("#0.00"); + + private int formaPagoCieloLink = 0; public Totalbus(Connection con, Boolean isReceitasDespesasComporte, Boolean isReceitasDespesasOuroPrata) { this.conn = con; @@ -49,6 +52,7 @@ public class Totalbus { this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; loadEmpresas(); loadPuntosVenta(); + buscarFormaPagoCieloLink(); } public Totalbus(Connection con, Boolean isReceitasDespesasComporte,Boolean isCodReceitaFixoBgm, Boolean isReceitasDespesasOuroPrata) { @@ -58,6 +62,7 @@ public class Totalbus { this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; loadEmpresas(); loadPuntosVenta(); + buscarFormaPagoCieloLink(); } public Totalbus(Connection con, Boolean isReceitasDespesasComporte,Boolean isCodReceitaFixoBgm, Boolean isReceitasDespesasOuroPrata, Boolean isLayoutNovo) { @@ -68,6 +73,7 @@ public class Totalbus { this.isLayoutNovo = isLayoutNovo; loadEmpresas(); loadPuntosVenta(); + buscarFormaPagoCieloLink(); } public List getDespesasReceitas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException{ @@ -560,6 +566,7 @@ public class Totalbus { } public List getDespesaCartaoDebCredComporte(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException{ + List despesas = new ArrayList(); StringBuilder sb = new StringBuilder(); sb.append(" select "); @@ -592,7 +599,7 @@ public class Totalbus { adicionaFiltroQuery(puntoVentaId, sb, " and cd.puntoventa_id = ", puntoVentaId != null && !puntoVentaId.equals(-1)); adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); sb.append(" and cd.activo = 1 "); - sb.append(" and cdp.formapago_id in (2,3) "); + sb.append(" and cdp.formapago_id in (2,3," +formaPagoCieloLink+ ") "); sb.append(" and tee.indtipo = 0 "); PreparedStatement stmt = null; @@ -632,7 +639,7 @@ public class Totalbus { } despesa.setFormaPagamentoId(rs.getString("formapagoId")); - if( despesa.getFormaPagamentoId().equals("2") || despesa.getFormaPagamentoId().equals("3")) { + if( despesa.getFormaPagamentoId().equals("2") || despesa.getFormaPagamentoId().equals("3") || despesa.getFormaPagamentoId().equals(formaPagoCieloLink)) { despesa.setCodigoAutorizacao(rs.getString("numautorizacion")); despesa.setNumeroEstabelecimento(rs.getString("numeroEstabelecimento")); }else { @@ -1411,7 +1418,33 @@ public class Totalbus { } return despesas; } - - + private void buscarFormaPagoCieloLink() { + PreparedStatement pstmt = null; + ResultSet rs = null; + + try { + pstmt = getConnection().prepareStatement("Select formapago_id from forma_pago where tipo_carteira_digital = 'CIELO_LINK' and activo = 1"); + rs = pstmt.executeQuery(); + if (rs.getFetchSize() > 0) { + while (rs.next()) { + formaPagoCieloLink = rs.getInt(1); + } + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + } + } From 560299bbf36e8a72091131aeab7b57e3076c02df Mon Sep 17 00:00:00 2001 From: Fabio Date: Thu, 11 Jul 2024 14:38:27 -0300 Subject: [PATCH 118/121] =?UTF-8?q?Atualiza=C3=A7ao=20da=20lista=20de=20ig?= =?UTF-8?q?norados?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 1ee2035cb..d052193ef 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,10 @@ -/.settings -/target /.classpath /.project -.settings -target +/.settings +/target +/settings.xml +/dist /.factorypath +/*.BASE.xml +/*.LOCAL.xml +/*.REMOTE.xml From f5fb9891e1cd05f11f6c198c92653f55db1fea96 Mon Sep 17 00:00:00 2001 From: "gleison.cruz" Date: Wed, 31 Jul 2024 10:50:05 -0300 Subject: [PATCH 119/121] fixes bug#AL-4682 --- pom.xml | 2 +- .../integracaoreceitadespesa/BGMApplication.java | 1 + .../integracaoreceitadespesa/dao/Totalbus.java | 14 ++++++++++---- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/pom.xml b/pom.xml index ede6579cb..2ed0661eb 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 br.com.rjconsultores IntegracaoReceitaDespesa - 1.6.0 + 1.6.1 diff --git a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java index 3bbac3977..e2c4140eb 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java @@ -81,6 +81,7 @@ public class BGMApplication { public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean isReceitasDespesasComporte,boolean isCodReceitaFixoBgm, boolean isReceitasDespesasOuroPrata, boolean layoutNovo) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; + this.isReceitasDespesasComporte = isReceitasDespesasComporte; this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; return executaExportacao(dataInicio, dataFinal, diretorio, empresaId, puntoVentaId, con, pathGravacaoExternaArquivos, incluiTipoPagamentoTurismoBGM, layoutNovo); } diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index a1932efcb..4b31a43f8 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -22,6 +22,8 @@ import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceita; import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceitaComporte; import com.rjconsultores.integracaoreceitadespesa.entidades.Empresa; import com.rjconsultores.integracaoreceitadespesa.entidades.PuntoVenta; +import java.math.MathContext; +import java.math.RoundingMode; public class Totalbus { @@ -604,6 +606,7 @@ public class Totalbus { PreparedStatement stmt = null; ResultSet rs = null; + String formaPagoCieloLinkStr = Integer.toString(formaPagoCieloLink); Date fecha = fechaParam; if (fechaParam == null) { @@ -639,7 +642,7 @@ public class Totalbus { } despesa.setFormaPagamentoId(rs.getString("formapagoId")); - if( despesa.getFormaPagamentoId().equals("2") || despesa.getFormaPagamentoId().equals("3") || despesa.getFormaPagamentoId().equals(formaPagoCieloLink)) { + if( despesa.getFormaPagamentoId().equals("2") || despesa.getFormaPagamentoId().equals("3") || despesa.getFormaPagamentoId().equals(formaPagoCieloLinkStr)) { despesa.setCodigoAutorizacao(rs.getString("numautorizacion")); despesa.setNumeroEstabelecimento(rs.getString("numeroEstabelecimento")); }else { @@ -817,8 +820,9 @@ public class Totalbus { PreparedStatement stmt = null; ResultSet rs = null; - + String formaPagoCieloLinkStr = Integer.toString(formaPagoCieloLink); Date fecha = fechaParam; + if (fechaParam == null) { fecha = getData(); } @@ -855,9 +859,9 @@ public class Totalbus { } receita.setFormaPagamentoId(rs.getString("formapagoId")); - if( receita.getFormaPagamentoId().equals("2") || receita.getFormaPagamentoId().equals("3")) { + if( receita.getFormaPagamentoId().equals("2") || receita.getFormaPagamentoId().equals("3") || receita.getFormaPagamentoId().equals(formaPagoCieloLinkStr)) { receita.setCodigoAutorizacao(rs.getString("numautorizacion")); - receita.setNumeroEstabelecimento(rs.getString("numeroEstabelecimento")); + receita.setNumeroEstabelecimento(rs.getString("numeroestabelecimento")); }else { receita.setCodigoAutorizacao(""); receita.setNumeroEstabelecimento(""); @@ -1446,5 +1450,7 @@ public class Totalbus { } } } + + } From 4cf93d412ac470301c6d9e39289c0e65c578b1e2 Mon Sep 17 00:00:00 2001 From: "gleison.cruz" Date: Wed, 31 Jul 2024 10:52:27 -0300 Subject: [PATCH 120/121] fixes bug#AL-4682 --- .../rjconsultores/integracaoreceitadespesa/dao/Totalbus.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 4b31a43f8..662445be7 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -22,8 +22,7 @@ import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceita; import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceitaComporte; import com.rjconsultores.integracaoreceitadespesa.entidades.Empresa; import com.rjconsultores.integracaoreceitadespesa.entidades.PuntoVenta; -import java.math.MathContext; -import java.math.RoundingMode; + public class Totalbus { From b6fc55a8d525cf512bb1df12fd8f87609459d28b Mon Sep 17 00:00:00 2001 From: Fabio Date: Thu, 31 Oct 2024 14:19:41 -0300 Subject: [PATCH 121/121] join IntegracaoReceitaDespesa --- .../.gitignore | 0 pom.xml => IntegracaoReceitaDespesa/pom.xml | 0 .../src}/META-INF/MANIFEST.MF | 6 +- .../integracaoreceitadespesa/Application.java | 112 +- .../integracaoreceitadespesa/Arquivo.java | 72 +- .../BGMApplication.java | 538 +-- .../IntegracaoReceitaDespesaException.java | 26 +- .../dao/Totalbus.java | 2908 ++++++++--------- .../entidades/DespesaReceita.java | 446 +-- .../entidades/DespesaReceitaComporte.java | 174 +- .../entidades/Empresa.java | 22 +- .../entidades/PuntoVenta.java | 22 +- 12 files changed, 2163 insertions(+), 2163 deletions(-) rename .gitignore => IntegracaoReceitaDespesa/.gitignore (100%) rename pom.xml => IntegracaoReceitaDespesa/pom.xml (100%) rename {src => IntegracaoReceitaDespesa/src}/META-INF/MANIFEST.MF (92%) rename {src => IntegracaoReceitaDespesa/src}/com/rjconsultores/integracaoreceitadespesa/Application.java (95%) rename {src => IntegracaoReceitaDespesa/src}/com/rjconsultores/integracaoreceitadespesa/Arquivo.java (95%) rename {src => IntegracaoReceitaDespesa/src}/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java (97%) rename {src => IntegracaoReceitaDespesa/src}/com/rjconsultores/integracaoreceitadespesa/IntegracaoReceitaDespesaException.java (95%) rename {src => IntegracaoReceitaDespesa/src}/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java (97%) rename {src => IntegracaoReceitaDespesa/src}/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java (97%) rename {src => IntegracaoReceitaDespesa/src}/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java (97%) rename {src => IntegracaoReceitaDespesa/src}/com/rjconsultores/integracaoreceitadespesa/entidades/Empresa.java (94%) rename {src => IntegracaoReceitaDespesa/src}/com/rjconsultores/integracaoreceitadespesa/entidades/PuntoVenta.java (95%) diff --git a/.gitignore b/IntegracaoReceitaDespesa/.gitignore similarity index 100% rename from .gitignore rename to IntegracaoReceitaDespesa/.gitignore diff --git a/pom.xml b/IntegracaoReceitaDespesa/pom.xml similarity index 100% rename from pom.xml rename to IntegracaoReceitaDespesa/pom.xml diff --git a/src/META-INF/MANIFEST.MF b/IntegracaoReceitaDespesa/src/META-INF/MANIFEST.MF similarity index 92% rename from src/META-INF/MANIFEST.MF rename to IntegracaoReceitaDespesa/src/META-INF/MANIFEST.MF index 5e9495128..254272e1c 100644 --- a/src/META-INF/MANIFEST.MF +++ b/IntegracaoReceitaDespesa/src/META-INF/MANIFEST.MF @@ -1,3 +1,3 @@ -Manifest-Version: 1.0 -Class-Path: - +Manifest-Version: 1.0 +Class-Path: + diff --git a/src/com/rjconsultores/integracaoreceitadespesa/Application.java b/IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/Application.java similarity index 95% rename from src/com/rjconsultores/integracaoreceitadespesa/Application.java rename to IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/Application.java index e4db8088a..4a1ceea6a 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/Application.java +++ b/IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/Application.java @@ -1,57 +1,57 @@ -package com.rjconsultores.integracaoreceitadespesa; - -import java.io.FileInputStream; -import java.io.IOException; -import java.sql.Connection; -import java.sql.DriverManager; -import java.util.Properties; - -import org.apache.logging.log4j.LogManager; +package com.rjconsultores.integracaoreceitadespesa; + +import java.io.FileInputStream; +import java.io.IOException; +import java.sql.Connection; +import java.sql.DriverManager; +import java.util.Properties; + +import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; - - -public class Application { - private static Application instance = null; - - private static final Logger log = LogManager.getLogger(Application.class); - - private Application(){ - - } - - public Connection getConnection(){ - try { - Properties props = Application.getInstance().getApplicationProperties(); - - String DRIVER = "oracle.jdbc.driver.OracleDriver"; - - Class.forName(DRIVER); - Connection conn = DriverManager.getConnection( - props.getProperty("url"), - props.getProperty("username").trim(), - props.getProperty("password").trim()); - - return conn; - - } catch (Exception e){ - log.error("", e); - return null; - } - } - public static Application getInstance(){ - if (instance == null){ - instance = new Application(); - } - return instance; - } - - public Properties getApplicationProperties(){ - Properties props = new Properties(); - try { - props.load(new FileInputStream("db.properties")); - } catch (IOException e) { - log.error("", e); - } - return props; - } -} + + +public class Application { + private static Application instance = null; + + private static final Logger log = LogManager.getLogger(Application.class); + + private Application(){ + + } + + public Connection getConnection(){ + try { + Properties props = Application.getInstance().getApplicationProperties(); + + String DRIVER = "oracle.jdbc.driver.OracleDriver"; + + Class.forName(DRIVER); + Connection conn = DriverManager.getConnection( + props.getProperty("url"), + props.getProperty("username").trim(), + props.getProperty("password").trim()); + + return conn; + + } catch (Exception e){ + log.error("", e); + return null; + } + } + public static Application getInstance(){ + if (instance == null){ + instance = new Application(); + } + return instance; + } + + public Properties getApplicationProperties(){ + Properties props = new Properties(); + try { + props.load(new FileInputStream("db.properties")); + } catch (IOException e) { + log.error("", e); + } + return props; + } +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java b/IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java similarity index 95% rename from src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java rename to IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java index 2cde841af..c78751a3e 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java +++ b/IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/Arquivo.java @@ -1,37 +1,37 @@ -package com.rjconsultores.integracaoreceitadespesa; - -import java.io.Closeable; -import java.io.FileWriter; -import java.io.IOException; -import java.util.List; - -import org.apache.logging.log4j.LogManager; +package com.rjconsultores.integracaoreceitadespesa; + +import java.io.Closeable; +import java.io.FileWriter; +import java.io.IOException; +import java.util.List; + +import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; - - -public class Arquivo { - private static final Logger log = LogManager.getLogger(Arquivo.class); - - public static void GravaArquivo(String filename, List rows){ - try{ - log.debug("gravando arquivo" + filename + "..."); - FileWriter writer = new FileWriter(filename); - for(String str: rows) { - writer.write(str); - } - writer.close(); - } catch (Exception e){ - log.error("", e); - } - } - - public static void close(Closeable c) { - if (c == null) return; - try { - c.close(); - } catch (IOException e) { - log.error(e); - } - } - -} + + +public class Arquivo { + private static final Logger log = LogManager.getLogger(Arquivo.class); + + public static void GravaArquivo(String filename, List rows){ + try{ + log.debug("gravando arquivo" + filename + "..."); + FileWriter writer = new FileWriter(filename); + for(String str: rows) { + writer.write(str); + } + writer.close(); + } catch (Exception e){ + log.error("", e); + } + } + + public static void close(Closeable c) { + if (c == null) return; + try { + c.close(); + } catch (IOException e) { + log.error(e); + } + } + +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java b/IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java similarity index 97% rename from src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java rename to IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java index e2c4140eb..cabe11e3a 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java +++ b/IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/BGMApplication.java @@ -1,270 +1,270 @@ -package com.rjconsultores.integracaoreceitadespesa; - -import java.io.BufferedInputStream; -import java.io.BufferedOutputStream; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileOutputStream; -import java.io.IOException; -import java.nio.channels.FileChannel; -import java.sql.Connection; -import java.sql.DriverManager; -import java.sql.SQLException; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.Date; -import java.util.List; -import java.util.Properties; -import java.util.zip.ZipEntry; -import java.util.zip.ZipOutputStream; - -import org.apache.commons.lang.StringUtils; -import org.apache.logging.log4j.LogManager; +package com.rjconsultores.integracaoreceitadespesa; + +import java.io.BufferedInputStream; +import java.io.BufferedOutputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.IOException; +import java.nio.channels.FileChannel; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.Calendar; +import java.util.Date; +import java.util.List; +import java.util.Properties; +import java.util.zip.ZipEntry; +import java.util.zip.ZipOutputStream; + +import org.apache.commons.lang.StringUtils; +import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; - - -import com.rjconsultores.integracaoreceitadespesa.dao.Totalbus; - -public class BGMApplication { - private static BGMApplication instance = null; - - private static final Logger log = LogManager.getLogger(BGMApplication.class); - - private static final int TAMANHO_BUFFER = 4096; // 4kb - - private boolean isReceitasDespesasComporte; - - private boolean isCodReceitaFixoBgm; - - private boolean isReceitasDespesasOuroPrata; - - private BGMApplication(){ - - } - - public Connection getConnection(){ - try { - Properties props = BGMApplication.getInstance().getApplicationProperties(); - - String DRIVER = "oracle.jdbc.driver.OracleDriver"; - - Class.forName(DRIVER); - Connection conn = DriverManager.getConnection( - props.getProperty("url"), - props.getProperty("username").trim(), - props.getProperty("password").trim()); - - return conn; - - } catch (Exception e){ - log.error("", e); - return null; - } - } - - public static BGMApplication getInstance(){ - if (instance == null){ - instance = new BGMApplication(); - } - return instance; - } - - public Properties getApplicationProperties(){ - Properties props = new Properties(); - try { - props.load(new FileInputStream("db.properties")); - } catch (IOException e) { - log.error("", e); - } - return props; - } - - public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean isReceitasDespesasComporte,boolean isCodReceitaFixoBgm, boolean isReceitasDespesasOuroPrata, boolean layoutNovo) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ - this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; - this.isReceitasDespesasComporte = isReceitasDespesasComporte; - this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; - return executaExportacao(dataInicio, dataFinal, diretorio, empresaId, puntoVentaId, con, pathGravacaoExternaArquivos, incluiTipoPagamentoTurismoBGM, layoutNovo); - } - - public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean isReceitasDespesasComporte,boolean isCodReceitaFixoBgm, boolean isReceitasDespesasOuroPrata) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ - this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; - this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; - return executaExportacao(dataInicio, dataFinal, diretorio, empresaId, puntoVentaId, con, pathGravacaoExternaArquivos, incluiTipoPagamentoTurismoBGM, false); - } - - public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean isReceitasDespesasComporte, boolean isReceitasDespesasOuroPrata) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ - this.isReceitasDespesasComporte = isReceitasDespesasComporte; - return executaExportacao(dataInicio, dataFinal, diretorio, empresaId, puntoVentaId, con, pathGravacaoExternaArquivos, incluiTipoPagamentoTurismoBGM, false); - } - - public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean layoutNovo) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ - if (empresaId == null){ - throw new IllegalArgumentException("o parâmetro empesaId é obrigatório!"); - } - if (puntoVentaId == null){ - throw new IllegalArgumentException("o parâmetro puntoVentaId é obrigatório!"); - } - excluirArquivosZip(diretorio); - Totalbus totalbus = new Totalbus(con, isReceitasDespesasComporte, isCodReceitaFixoBgm, isReceitasDespesasOuroPrata, layoutNovo ); - if (totalbus.isConstanteBloqueioMenorQueData(empresaId, dataFinal)){ - totalbus.updateDataBloqueio(empresaId, dataFinal); - } - List files = new ArrayList(); - Calendar cal = Calendar.getInstance(); - // Seta primeiro dia da iteração - cal.setTime(dataInicio); - Calendar calFinal = Calendar.getInstance(); - calFinal.setTime(dataFinal); - - Calendar cf = Calendar.getInstance(); - cf.setTime(dataFinal); - cf.add(Calendar.DATE, 1); - try{ - - while (cal.before(cf)) { - String fileName = diretorio + File.separator + "BGM_" + empresaId + "-" + cal.get(Calendar.YEAR) - + "" + StringUtils.leftPad(Integer.toString(cal.get(Calendar.MONTH) + 1), 2, "0") + "" - + StringUtils.leftPad(Integer.toString(cal.get(Calendar.DAY_OF_MONTH)), 2, "0") + ".txt"; - File file = new File(fileName); - - log.debug("gerando arquivo..."); - Arquivo.GravaArquivo(file.getAbsolutePath(), totalbus.getDespesasReceitas(puntoVentaId, empresaId, cal.getTime(), incluiTipoPagamentoTurismoBGM, layoutNovo)); - - this.copiarArquivoExternamente(file, pathGravacaoExternaArquivos); - - // adiciona um dia para iteração - cal.add(Calendar.DAY_OF_MONTH, 1); - files.add(file); - } - - String fileZip = diretorio + File.separator + "ArquivosBGM.zip"; - log.debug("nome arquivo: " + fileZip); - - compactarArquivos(files, fileZip); - return fileZip; - } catch (IntegracaoReceitaDespesaException e){ - throw e; - } catch (Exception e) { - log.error("", e); - return ""; - } finally{ - try { - con.close(); - } catch (SQLException e) { - e.printStackTrace(); - } - } - } - - private void copiarArquivoExternamente(File arquivoBGM,String pathGravacaoExternaArquivos){ - if (pathGravacaoExternaArquivos == null){ - log.info("Path externo para gravação de arquivos Não configurado"); - - return; - } - - if (!pathGravacaoExternaArquivos.endsWith("/")){ - pathGravacaoExternaArquivos = pathGravacaoExternaArquivos +"/"; - } - - File destino = new File(pathGravacaoExternaArquivos + arquivoBGM.getName()); - - try { - this.copyFileUsingChannel(arquivoBGM, destino); - } catch (IOException e) { - log.error(String.format("Erro ao gravar o arquivo %s no diretorio %s", arquivoBGM.getName(),pathGravacaoExternaArquivos) ,e); - } - } - - @SuppressWarnings("resource") - private void copyFileUsingChannel(File source, File dest) throws IOException { - - FileChannel sourceChannel = null; - FileChannel destChannel = null; - try { - sourceChannel = new FileInputStream(source).getChannel(); - destChannel = new FileOutputStream(dest).getChannel(); - destChannel.transferFrom(sourceChannel, 0, sourceChannel.size()); - }finally{ - sourceChannel.close(); - destChannel.close(); - } - } - - private void excluirArquivosZip(String diretorio){ - File pasta = new File(diretorio); - File[] arquivos = pasta.listFiles(); - - for(File arquivo : arquivos) { - if(arquivo.getName().endsWith("zip")) { - arquivo.delete(); - } - } - } - - public static void compactarArquivo(String arqSaida,String arqEntrada) throws IOException{ - int cont; - byte[] dados = new byte[TAMANHO_BUFFER]; - BufferedInputStream origem = null; - FileInputStream streamDeEntrada = null; - FileOutputStream destino = null; - ZipOutputStream saida = null; - ZipEntry entry = null; - try { - destino = new FileOutputStream(new File(arqSaida)); - saida = new ZipOutputStream(new BufferedOutputStream(destino)); - File file = new File(arqEntrada); - streamDeEntrada = new FileInputStream(file); - origem = new BufferedInputStream(streamDeEntrada, TAMANHO_BUFFER); - entry = new ZipEntry(file.getName()); - saida.putNextEntry(entry); - while((cont = origem.read(dados, 0, TAMANHO_BUFFER)) != -1) { - saida.write(dados, 0, cont); - } - origem.close(); - saida.close(); - } catch(IOException e) { - log.error(e.getMessage()); - throw new IOException(e.getMessage()); - } - } - - private void compactarArquivos(List arquivosEOuPastas, String arquivoDeSaida){ - System.out.println(arquivoDeSaida); - log.debug(arquivoDeSaida); - - // Create a buffer for reading the files - byte[] buf = new byte[1024]; - - try { - // Create the ZIP file - ZipOutputStream out = new ZipOutputStream(new FileOutputStream(arquivoDeSaida)); - - // Compress the files - for (File f : arquivosEOuPastas) { - FileInputStream in = new FileInputStream(f.getPath()); - - // Add ZIP entry to output stream. - out.putNextEntry(new ZipEntry(f.getName())); - System.out.println(f.getPath()); - // Transfer bytes from the file to the ZIP file - int len; - while ((len = in.read(buf)) > 0) { - out.write(buf, 0, len); - } - - // Complete the entry - out.closeEntry(); - in.close(); - f.delete(); - } - - // Complete the ZIP file - out.close(); - } catch (IOException e) { - log.error(e.getMessage(),e); - e.printStackTrace(); - } - } - -} + + +import com.rjconsultores.integracaoreceitadespesa.dao.Totalbus; + +public class BGMApplication { + private static BGMApplication instance = null; + + private static final Logger log = LogManager.getLogger(BGMApplication.class); + + private static final int TAMANHO_BUFFER = 4096; // 4kb + + private boolean isReceitasDespesasComporte; + + private boolean isCodReceitaFixoBgm; + + private boolean isReceitasDespesasOuroPrata; + + private BGMApplication(){ + + } + + public Connection getConnection(){ + try { + Properties props = BGMApplication.getInstance().getApplicationProperties(); + + String DRIVER = "oracle.jdbc.driver.OracleDriver"; + + Class.forName(DRIVER); + Connection conn = DriverManager.getConnection( + props.getProperty("url"), + props.getProperty("username").trim(), + props.getProperty("password").trim()); + + return conn; + + } catch (Exception e){ + log.error("", e); + return null; + } + } + + public static BGMApplication getInstance(){ + if (instance == null){ + instance = new BGMApplication(); + } + return instance; + } + + public Properties getApplicationProperties(){ + Properties props = new Properties(); + try { + props.load(new FileInputStream("db.properties")); + } catch (IOException e) { + log.error("", e); + } + return props; + } + + public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean isReceitasDespesasComporte,boolean isCodReceitaFixoBgm, boolean isReceitasDespesasOuroPrata, boolean layoutNovo) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ + this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; + this.isReceitasDespesasComporte = isReceitasDespesasComporte; + this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; + return executaExportacao(dataInicio, dataFinal, diretorio, empresaId, puntoVentaId, con, pathGravacaoExternaArquivos, incluiTipoPagamentoTurismoBGM, layoutNovo); + } + + public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean isReceitasDespesasComporte,boolean isCodReceitaFixoBgm, boolean isReceitasDespesasOuroPrata) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ + this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; + this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; + return executaExportacao(dataInicio, dataFinal, diretorio, empresaId, puntoVentaId, con, pathGravacaoExternaArquivos, incluiTipoPagamentoTurismoBGM, false); + } + + public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean isReceitasDespesasComporte, boolean isReceitasDespesasOuroPrata) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ + this.isReceitasDespesasComporte = isReceitasDespesasComporte; + return executaExportacao(dataInicio, dataFinal, diretorio, empresaId, puntoVentaId, con, pathGravacaoExternaArquivos, incluiTipoPagamentoTurismoBGM, false); + } + + public String executaExportacao(Date dataInicio, Date dataFinal, String diretorio, Integer empresaId, Integer puntoVentaId, Connection con,String pathGravacaoExternaArquivos, boolean incluiTipoPagamentoTurismoBGM, boolean layoutNovo) throws IllegalArgumentException, IntegracaoReceitaDespesaException{ + if (empresaId == null){ + throw new IllegalArgumentException("o parâmetro empesaId é obrigatório!"); + } + if (puntoVentaId == null){ + throw new IllegalArgumentException("o parâmetro puntoVentaId é obrigatório!"); + } + excluirArquivosZip(diretorio); + Totalbus totalbus = new Totalbus(con, isReceitasDespesasComporte, isCodReceitaFixoBgm, isReceitasDespesasOuroPrata, layoutNovo ); + if (totalbus.isConstanteBloqueioMenorQueData(empresaId, dataFinal)){ + totalbus.updateDataBloqueio(empresaId, dataFinal); + } + List files = new ArrayList(); + Calendar cal = Calendar.getInstance(); + // Seta primeiro dia da iteração + cal.setTime(dataInicio); + Calendar calFinal = Calendar.getInstance(); + calFinal.setTime(dataFinal); + + Calendar cf = Calendar.getInstance(); + cf.setTime(dataFinal); + cf.add(Calendar.DATE, 1); + try{ + + while (cal.before(cf)) { + String fileName = diretorio + File.separator + "BGM_" + empresaId + "-" + cal.get(Calendar.YEAR) + + "" + StringUtils.leftPad(Integer.toString(cal.get(Calendar.MONTH) + 1), 2, "0") + "" + + StringUtils.leftPad(Integer.toString(cal.get(Calendar.DAY_OF_MONTH)), 2, "0") + ".txt"; + File file = new File(fileName); + + log.debug("gerando arquivo..."); + Arquivo.GravaArquivo(file.getAbsolutePath(), totalbus.getDespesasReceitas(puntoVentaId, empresaId, cal.getTime(), incluiTipoPagamentoTurismoBGM, layoutNovo)); + + this.copiarArquivoExternamente(file, pathGravacaoExternaArquivos); + + // adiciona um dia para iteração + cal.add(Calendar.DAY_OF_MONTH, 1); + files.add(file); + } + + String fileZip = diretorio + File.separator + "ArquivosBGM.zip"; + log.debug("nome arquivo: " + fileZip); + + compactarArquivos(files, fileZip); + return fileZip; + } catch (IntegracaoReceitaDespesaException e){ + throw e; + } catch (Exception e) { + log.error("", e); + return ""; + } finally{ + try { + con.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + } + + private void copiarArquivoExternamente(File arquivoBGM,String pathGravacaoExternaArquivos){ + if (pathGravacaoExternaArquivos == null){ + log.info("Path externo para gravação de arquivos Não configurado"); + + return; + } + + if (!pathGravacaoExternaArquivos.endsWith("/")){ + pathGravacaoExternaArquivos = pathGravacaoExternaArquivos +"/"; + } + + File destino = new File(pathGravacaoExternaArquivos + arquivoBGM.getName()); + + try { + this.copyFileUsingChannel(arquivoBGM, destino); + } catch (IOException e) { + log.error(String.format("Erro ao gravar o arquivo %s no diretorio %s", arquivoBGM.getName(),pathGravacaoExternaArquivos) ,e); + } + } + + @SuppressWarnings("resource") + private void copyFileUsingChannel(File source, File dest) throws IOException { + + FileChannel sourceChannel = null; + FileChannel destChannel = null; + try { + sourceChannel = new FileInputStream(source).getChannel(); + destChannel = new FileOutputStream(dest).getChannel(); + destChannel.transferFrom(sourceChannel, 0, sourceChannel.size()); + }finally{ + sourceChannel.close(); + destChannel.close(); + } + } + + private void excluirArquivosZip(String diretorio){ + File pasta = new File(diretorio); + File[] arquivos = pasta.listFiles(); + + for(File arquivo : arquivos) { + if(arquivo.getName().endsWith("zip")) { + arquivo.delete(); + } + } + } + + public static void compactarArquivo(String arqSaida,String arqEntrada) throws IOException{ + int cont; + byte[] dados = new byte[TAMANHO_BUFFER]; + BufferedInputStream origem = null; + FileInputStream streamDeEntrada = null; + FileOutputStream destino = null; + ZipOutputStream saida = null; + ZipEntry entry = null; + try { + destino = new FileOutputStream(new File(arqSaida)); + saida = new ZipOutputStream(new BufferedOutputStream(destino)); + File file = new File(arqEntrada); + streamDeEntrada = new FileInputStream(file); + origem = new BufferedInputStream(streamDeEntrada, TAMANHO_BUFFER); + entry = new ZipEntry(file.getName()); + saida.putNextEntry(entry); + while((cont = origem.read(dados, 0, TAMANHO_BUFFER)) != -1) { + saida.write(dados, 0, cont); + } + origem.close(); + saida.close(); + } catch(IOException e) { + log.error(e.getMessage()); + throw new IOException(e.getMessage()); + } + } + + private void compactarArquivos(List arquivosEOuPastas, String arquivoDeSaida){ + System.out.println(arquivoDeSaida); + log.debug(arquivoDeSaida); + + // Create a buffer for reading the files + byte[] buf = new byte[1024]; + + try { + // Create the ZIP file + ZipOutputStream out = new ZipOutputStream(new FileOutputStream(arquivoDeSaida)); + + // Compress the files + for (File f : arquivosEOuPastas) { + FileInputStream in = new FileInputStream(f.getPath()); + + // Add ZIP entry to output stream. + out.putNextEntry(new ZipEntry(f.getName())); + System.out.println(f.getPath()); + // Transfer bytes from the file to the ZIP file + int len; + while ((len = in.read(buf)) > 0) { + out.write(buf, 0, len); + } + + // Complete the entry + out.closeEntry(); + in.close(); + f.delete(); + } + + // Complete the ZIP file + out.close(); + } catch (IOException e) { + log.error(e.getMessage(),e); + e.printStackTrace(); + } + } + +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/IntegracaoReceitaDespesaException.java b/IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/IntegracaoReceitaDespesaException.java similarity index 95% rename from src/com/rjconsultores/integracaoreceitadespesa/IntegracaoReceitaDespesaException.java rename to IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/IntegracaoReceitaDespesaException.java index 7c1e71722..c38e2c744 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/IntegracaoReceitaDespesaException.java +++ b/IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/IntegracaoReceitaDespesaException.java @@ -1,13 +1,13 @@ -package com.rjconsultores.integracaoreceitadespesa; - -public class IntegracaoReceitaDespesaException extends Exception{ - - /** - * - */ - private static final long serialVersionUID = -5422391379643449955L; - - public IntegracaoReceitaDespesaException(String message) { - super(message); - } -} +package com.rjconsultores.integracaoreceitadespesa; + +public class IntegracaoReceitaDespesaException extends Exception{ + + /** + * + */ + private static final long serialVersionUID = -5422391379643449955L; + + public IntegracaoReceitaDespesaException(String message) { + super(message); + } +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java b/IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java similarity index 97% rename from src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java rename to IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java index 662445be7..78ef4ac70 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java +++ b/IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/dao/Totalbus.java @@ -1,1455 +1,1455 @@ -package com.rjconsultores.integracaoreceitadespesa.dao; - -import java.math.BigDecimal; -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.text.DecimalFormat; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.Collection; -import java.util.Date; -import java.util.List; - -import org.apache.commons.lang.StringUtils; -import org.apache.logging.log4j.LogManager; +package com.rjconsultores.integracaoreceitadespesa.dao; + +import java.math.BigDecimal; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.text.DecimalFormat; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Calendar; +import java.util.Collection; +import java.util.Date; +import java.util.List; + +import org.apache.commons.lang.StringUtils; +import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; - - -import com.rjconsultores.integracaoreceitadespesa.IntegracaoReceitaDespesaException; -import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceita; -import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceitaComporte; -import com.rjconsultores.integracaoreceitadespesa.entidades.Empresa; -import com.rjconsultores.integracaoreceitadespesa.entidades.PuntoVenta; - - -public class Totalbus { - - private static final Logger log = LogManager.getLogger(Totalbus.class); - private static final int DAYS_AGO = -1; - - - private Connection conn; - - private List pontosVenda = new ArrayList(); - private List empresas = new ArrayList(); - - private Boolean isCodReceitaFixoBgm = false; - - private Boolean isReceitasDespesasComporte = false; - - private Boolean isReceitasDespesasOuroPrata= false; - - private Boolean isLayoutNovo= false; - - private DecimalFormat df = new DecimalFormat("#0.00"); - - private int formaPagoCieloLink = 0; - - public Totalbus(Connection con, Boolean isReceitasDespesasComporte, Boolean isReceitasDespesasOuroPrata) { - this.conn = con; - this.isReceitasDespesasComporte = isReceitasDespesasComporte; - this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; - loadEmpresas(); - loadPuntosVenta(); - buscarFormaPagoCieloLink(); - } - - public Totalbus(Connection con, Boolean isReceitasDespesasComporte,Boolean isCodReceitaFixoBgm, Boolean isReceitasDespesasOuroPrata) { - this.conn = con; - this.isReceitasDespesasComporte = isReceitasDespesasComporte; - this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; - this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; - loadEmpresas(); - loadPuntosVenta(); - buscarFormaPagoCieloLink(); - } - - public Totalbus(Connection con, Boolean isReceitasDespesasComporte,Boolean isCodReceitaFixoBgm, Boolean isReceitasDespesasOuroPrata, Boolean isLayoutNovo) { - this.conn = con; - this.isReceitasDespesasComporte = isReceitasDespesasComporte; - this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; - this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; - this.isLayoutNovo = isLayoutNovo; - loadEmpresas(); - loadPuntosVenta(); - buscarFormaPagoCieloLink(); - } - - public List getDespesasReceitas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException{ - List rows = new ArrayList(); - if (isReceitasDespesasComporte){ - log.debug("gerando depositos..."); - List despesasReceitas = getDepositosComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo); - log.debug("gerando despesas..."); - despesasReceitas.addAll(getDespesasComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); - log.debug("gerando despesas cartão..."); - despesasReceitas.addAll(getDespesaCartaoDebCredComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); - log.debug("gerando receitas..."); - despesasReceitas.addAll(getReceitasComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); - - if( isLayoutNovo ) { - for (DespesaReceita item : despesasReceitas) { - item.preencheLinhaLayoutNovo(rows); - } - }else { - for (DespesaReceita item : despesasReceitas) { - item.preencheLinha(rows); - } - } - }else { - log.debug("gerando depositos..."); - List despesasReceitas = getDepositos(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo); - log.debug("gerando despesas..."); - despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); - log.debug("gerando despesas cartão..."); - despesasReceitas.addAll(getDespesaCartaoDebCred(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); - log.debug("gerando receitas..."); - despesasReceitas.addAll(getReceitas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); - if(isReceitasDespesasOuroPrata) { - getContaCorrenteAgencia(despesasReceitas, puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM); - } - if( isLayoutNovo ) { - for (DespesaReceita item : despesasReceitas) { - item.preencheLinhaLayoutNovo(rows); - } - }else { - for (DespesaReceita item : despesasReceitas) { - item.preencheLinha(rows); - } - } - } - return rows; - } - - private void getContaCorrenteAgencia(List despesasReceitas, Integer puntoVentaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { - despesasReceitas.addAll(buscarFormasPagamentoContaCorrenteAgencia(puntoVentaId, empresaId, fechaParam,incluiTipoPagamentoTurismoBGM)); - despesasReceitas.addAll(buscarComissoesContaCorrenteAgencia(puntoVentaId, empresaId, fechaParam,incluiTipoPagamentoTurismoBGM)); - } - - private Collection buscarFormasPagamentoContaCorrenteAgencia(Integer puntoVentaId, - Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) - throws IntegracaoReceitaDespesaException { - - List despesas = new ArrayList(); - - StringBuilder sb = new StringBuilder(); - - SimpleDateFormat sf = new SimpleDateFormat("dd/MM/yyyy"); - String fechaStr = sf.format(fechaParam); - if (fechaParam == null) { - fechaStr = sf.format(getData()); - } - - - sb.append("SELECT SUM(precioboleto) AS precioBoleto, "); - sb.append("formaPagoId, "); - sb.append("descripcionFormaPago, "); - sb.append("empresa, "); - sb.append("puntoventaId, "); - sb.append("contacontabil, "); - sb.append("numpuntoventa, "); - sb.append("descinfo, "); - sb.append("tipoEventoExtra, "); - sb.append("feccorte AS feccorte "); - sb.append("FROM ("); - sb.append("(SELECT SUM(CASE "); - sb.append(" WHEN c.MOTIVOCANCELACION_ID IS NULL THEN 1 ELSE -1 END * cfp.importe) AS precioBoleto, "); - sb.append("cfp.formapago_id AS formaPagoId, "); - sb.append("fp.DESCPAGO AS descripcionFormaPago, "); - sb.append("e.empresa_id AS empresa, "); - sb.append("ccp.PUNTOVENTA_ID AS puntoventaId, "); - sb.append("CASE WHEN cfp.formapago_id = 2 THEN 802 ELSE 803 END contacontabil, "); - sb.append("pv.numpuntoventa AS numpuntoventa, "); - sb.append("ee.descinfo AS descinfo, "); - sb.append("ee.tipoeventoextra_id AS tipoEventoExtra, "); - sb.append("ccp.feccorte AS feccorte "); - sb.append(" FROM forma_pago fp, caja c "); - sb.append(" left OUTER JOIN motivo_cancelacion mc ON c.motivocancelacion_id = mc.motivocancelacion_id"); - sb.append(" left OUTER JOIN marca m ON c.marca_id = m.marca_id"); - sb.append(" left OUTER JOIN empresa e ON m.empresa_id = e.empresa_id"); - sb.append(" INNER JOIN caja_formapago cfp ON c.caja_id = cfp.caja_id"); - sb.append(" left OUTER JOIN boleto b ON b.boleto_id = c.transacao_id"); - sb.append(" left JOIN evento_extra ee ON b.boleto_id = ee.boleto_id and ee.boleto_id is null "); - sb.append(" left JOIN tipo_evento_extra tee ON tee.tipoeventoextra_id = ee.tipoeventoextra_id"); - sb.append(" left JOIN punto_venta pv ON pv.puntoventa_id = c.puntoventa_id and (cfp.activo = 1) "); - sb.append(" INNER JOIN CONTA_CORRENTE_PTOVTA ccp ON e.EMPRESA_ID = ccp.EMPRESA_ID"); - sb.append(" and ccp.PUNTOVENTA_ID = c.PUNTOVENTA_ID"); - sb.append(" and ccp.FECCORTE = c.FECCORTE"); - sb.append(" and ccp.TURNO_ID = c.turno_id"); - sb.append(" and ccp.ACTIVO = 1"); - sb.append(" and c.USUARIO_ID = ccp.USUARIO_ID"); - sb.append(" WHERE cfp.formapago_id = fp.formapago_id"); - sb.append(" and C.INDSTATUSOPERACION = 'F'"); - sb.append(" and c.INDREIMPRESION = 0"); - sb.append(" and c.tipoventa_id <> 6"); - sb.append(" and c.ACTIVO = 1"); - adicionaFiltroQuery(empresaId, sb, " and ccp.EMPRESA_ID = ", empresaId != null); - adicionaFiltroQuery(puntoVentaId, sb, " and ccp.PUNTOVENTA_ID = ", puntoVentaId != null && !puntoVentaId.equals(-1)); - sb.append(" and ccp.feccorte = TO_DATE('"+fechaStr+" 00:00:00', 'dd/MM/yyyy HH24:mi:ss')and cfp.formapago_id in (2,3) "); - sb.append(" GROUP BY cfp.formapago_id,"); - sb.append(" fp.DESCPAGO,"); - sb.append(" e.empresa_id,"); - sb.append(" ccp.PUNTOVENTA_ID,"); - sb.append(" tee.contacontabil,"); - sb.append(" pv.numpuntoventa,"); - sb.append(" ee.descinfo, ee.tipoeventoextra_id, ccp.FECCORTE )"); - sb.append(" UNION"); - sb.append(" (SELECT SUM(cdp.IMPORTE) AS precioBoleto,"); - sb.append(" cdp.formapago_id AS formaPagoId,"); - sb.append(" fp.DESCPAGO AS descripcionFormaPago,"); - sb.append(" e.empresa_id AS empresa,"); - sb.append(" cd.PUNTOVENTA_ID AS puntoventaId,"); - sb.append(" CASE WHEN cdp.formapago_id = 2 THEN 802 ELSE 803 END contacontabil, "); - sb.append(" pv.numpuntoventa AS numpuntoventa,"); - sb.append(" ee.descinfo AS descinfo,"); - sb.append(" ee.tipoeventoextra_id AS tipoEventoExtra, ccp.feccorte AS feccorte "); - sb.append(" FROM CAJA_DIVERSOS cd"); - sb.append(" JOIN CAJA_DIVERSOS_PAGO cdp ON cdp.CAJADIVERSOS_ID = cd.CAJADIVERSOS_ID"); - sb.append(" INNER JOIN forma_pago fp ON fp.formapago_id = cdp.formapago_id"); - sb.append(" INNER JOIN EVENTO_EXTRA EE ON EE.EVENTOEXTRA_ID = cd.EVENTOEXTRA_ID"); - sb.append(" LEFT OUTER JOIN empresa e ON ee.empresa_id = e.empresa_id"); - sb.append(" LEFT JOIN boleto b ON b.boleto_id = ee.boleto_id"); - sb.append(" LEFT OUTER JOIN evento_extra ee ON b.boleto_id = ee.boleto_id"); - sb.append(" LEFT JOIN tipo_evento_extra tee ON tee.tipoeventoextra_id = ee.tipoeventoextra_id"); - sb.append(" LEFT JOIN punto_venta pv ON pv.puntoventa_id = cd.puntoventa_id "); - sb.append(" INNER JOIN CONTA_CORRENTE_PTOVTA ccp ON e.EMPRESA_ID = ccp.EMPRESA_ID "); - sb.append(" AND ccp.PUNTOVENTA_ID = cd.PUNTOVENTA_ID "); - sb.append("AND ccp.FECCORTE = cd.FECCORTE "); - sb.append(" AND ccp.TURNO_ID = cd.turno_id "); - sb.append(" AND cd.USUARIO_ID = ccp.USUARIO_ID "); - sb.append(" WHERE 1 = 1"); - sb.append(" AND cd.ACTIVO = 1"); - sb.append(" AND ccp.ACTIVO = 1"); - sb.append(" AND (ee.boleto_id IS NULL"); - sb.append(" OR ee.boleto_id = b.boleto_id)"); - adicionaFiltroQuery(empresaId, sb, " and ccp.EMPRESA_ID = ", empresaId != null); - adicionaFiltroQuery(puntoVentaId, sb, " and ccp.PUNTOVENTA_ID = ", puntoVentaId != null && !puntoVentaId.equals(-1)); - sb.append(" AND ccp.feccorte = TO_DATE('"+fechaStr+" 00:00:00', 'dd/MM/yyyy HH24:mi:ss') and ee.tipoeventoextra_id <> 25 and cdp.formapago_id in (2,3) "); - sb.append(" GROUP BY cdp.formapago_id, fp.DESCPAGO,"); - sb.append(" e.empresa_id, cd.PUNTOVENTA_ID, "); - sb.append(" tee.contacontabil,"); - sb.append(" pv.numpuntoventa, ee.descinfo,"); - sb.append(" ee.tipoeventoextra_id, ccp.FECCORTE )) x "); - sb.append("GROUP BY formaPagoId, descripcionFormaPago, empresa, "); - sb.append(" puntoventaId,"); - sb.append(" contacontabil,"); - sb.append(" numpuntoventa,"); - sb.append(" descinfo,"); - sb.append(" tipoEventoExtra,feccorte "); - sb.append("ORDER BY formaPagoId, descripcionFormaPago"); - - - PreparedStatement stmt = null; - ResultSet rs = null; - - try { - stmt = getConnection().prepareStatement(sb.toString()); - rs = stmt.executeQuery(); - - while (rs.next()) { - DespesaReceita receita = new DespesaReceita(); - receita.setCodigoEmpresa(rs.getInt(4)); - receita.setCodigoReceitaDespesa(rs.getString(6)); - receita.setDataLancamento(rs.getDate(10)); - receita.setDataMovimento(rs.getDate(10)); - receita.setLocalArrecadacao(rs.getString(7)); - if (rs.getBigDecimal(1).signum() == 1) { - receita.setIdentificadorReceitaDespesa("D"); - receita.setValorLancamento(df.format(rs.getBigDecimal(1))); - } else { - receita.setIdentificadorReceitaDespesa("R"); - receita.setValorLancamento(df.format(rs.getBigDecimal(1))); - } - - String desc =rs.getString(8); - - desc = this.removerQuebraDeLinha(desc); - - receita.setDescricaoDetalhada(desc); - if (incluiTipoPagamentoTurismoBGM) { - receita.setTipoPagamentoTurismo(rs.getString("tipoEventoExtra")); - } - receita.setFormaPagamentoId(rs.getString("formaPagoId")); - despesas.add(receita); - } - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new IntegracaoReceitaDespesaException("Erro ao processar Receitas"); - } finally { - try { - rs.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - try { - stmt.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - } - return despesas; - } - - private void loadPuntosVenta() { - PreparedStatement pstmt = null; - ResultSet rs = null; - - try { - pstmt = getConnection().prepareStatement("Select puntoventa_id, nombpuntoventa from punto_venta order by nombpuntoventa"); - rs = pstmt.executeQuery(); - while (rs.next()) { - PuntoVenta puntoVenta = new PuntoVenta(); - puntoVenta.codigo = rs.getInt(1); - puntoVenta.nombpuntoventa = rs.getString(2); - pontosVenda.add(puntoVenta); - } - } catch (Exception e) { - log.error(e.getMessage(), e); - } finally { - try { - rs.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - try { - pstmt.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - } - } - - private Collection buscarComissoesContaCorrenteAgencia(Integer puntoVentaId,Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) - throws IntegracaoReceitaDespesaException { - List despesas = new ArrayList(); - - StringBuilder sb = new StringBuilder(); - - SimpleDateFormat sf = new SimpleDateFormat("dd/MM/yyyy"); - String fechaStr = sf.format(fechaParam); - if (fechaParam == null) { - fechaStr = sf.format(getData()); - } - - sb.append("SELECT CASE"); - sb.append(" WHEN E.INDRATEIOCOMISSAOGRUPOLINHA = 1"); - sb.append(" AND OP.TIPOOPERACIONCC_ID = 5"); - sb.append(" AND CCGL.CONTACORRENTEPTOVTAGRLIN_ID IS NOT NULL THEN CCGL.IMPORTE"); - sb.append(" ELSE CC.IMPORTETOTALEFECTIVO"); - sb.append(" END AS precioBoleto ,"); - sb.append(" CASE"); - sb.append(" WHEN OP.INDCREDITO = 1 THEN 'CREDITO'"); - sb.append(" ELSE 'DEBITO'"); - sb.append(" END AS descripcionFormaPago ,"); - sb.append(" CASE"); - sb.append(" WHEN OP.CVETIPO = 'CM' THEN 'COMISSAO' "); - sb.append(" WHEN OP.CVETIPO = 'LQ' THEN 'LQ' "); - sb.append(" END AS descripcionFormaPago,"); - sb.append(" cc.empresa_id, "); - sb.append(" cc.puntoventa_id, "); - sb.append(" pv.numpuntoventa, "); - sb.append(" cc.fechoroperacion, "); - sb.append(" CASE WHEN OP.INDCREDITO = 1 THEN 802 ELSE 803 END contacontabil "); - sb.append("FROM CONTA_CORRENTE_PTOVTA CC "); - sb.append("LEFT JOIN CONTA_CORRENTE_PTOVTA_GR_LIN CCGL ON CCGL.CONTACORRENTEPTOVTA_ID = CC.CONTACORRENTEPTOVTA_ID "); - sb.append("JOIN TIPO_OPERACION_CC OP ON CC.TIPOOPERACIONCC_ID = OP.TIPOOPERACIONCC_ID "); - sb.append("JOIN PUNTO_VENTA PV ON CC.PUNTOVENTA_ID = PV.PUNTOVENTA_ID "); - sb.append("JOIN EMPRESA E ON CC.EMPRESA_ID = E.EMPRESA_ID "); - sb.append("LEFT JOIN LOG_CONFERENCIA LG ON CC.CONTACORRENTEPTOVTA_ID = LG.CONTACORRENTEPTOVTA_ID "); - sb.append("LEFT JOIN CONFERENCIA_PENDENCIA CP ON CP.CONFERENCIAPENDENCIA_ID = LG.CONFERENCIAPENDENCIA_ID "); - sb.append("WHERE CC.ACTIVO = 1 "); - sb.append(" AND cc.feccorte = TO_DATE('"+fechaStr+" 00:00:00', 'dd/MM/yyyy HH24:mi:ss') "); - adicionaFiltroQuery(empresaId, sb, " and CC.EMPRESA_ID = ", empresaId != null); - adicionaFiltroQuery(puntoVentaId, sb, " and CC.PUNTOVENTA_ID = ", puntoVentaId != null && !puntoVentaId.equals(-1)); - sb.append(" ORDER BY PV.NOMBPUNTOVENTA,"); - sb.append(" E.NOMBEMPRESA,"); - sb.append(" OP.DESCTIPO,"); - sb.append(" OP.CVETIPO "); - - - PreparedStatement stmt = null; - ResultSet rs = null; - - - try { - stmt = getConnection().prepareStatement(sb.toString()); - - rs = stmt.executeQuery(); - - while (rs.next()) { - DespesaReceita receita = new DespesaReceita(); - receita.setCodigoEmpresa(rs.getInt(4)); - receita.setCodigoReceitaDespesa(rs.getString(8)); - receita.setDataLancamento(rs.getDate(7)); - receita.setDataMovimento(rs.getDate(7)); - receita.setLocalArrecadacao(rs.getString(6)); - if(rs.getString(3) != null) { - if(rs.getString(3).equalsIgnoreCase("COMISSAO")) { - if (rs.getBigDecimal(1).signum() == 1) { - receita.setIdentificadorReceitaDespesa("D"); - } else { - receita.setIdentificadorReceitaDespesa("R"); - } - }else if(rs.getString(3).equalsIgnoreCase("LQ")) { - if (rs.getBigDecimal(1).signum() == 1) { - receita.setIdentificadorReceitaDespesa("D"); - } else { - receita.setIdentificadorReceitaDespesa("R"); - } - } - } - receita.setValorLancamento(df.format(rs.getBigDecimal(1))); - receita.setDescricaoDetalhada(""); - if (incluiTipoPagamentoTurismoBGM) { - receita.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); - } - receita.setFormaPagamentoId("1"); - despesas.add(receita); - } - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new IntegracaoReceitaDespesaException("Erro ao processar Receitas"); - } finally { - try { - rs.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - try { - stmt.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - } - return despesas; - } - - - - private void loadEmpresas() { - PreparedStatement pstmt = null; - ResultSet rs = null; - - try { - pstmt = getConnection().prepareStatement("Select empresa_id, nombempresa from empresa order by nombempresa"); - rs = pstmt.executeQuery(); - while (rs.next()) { - Empresa empresa = new Empresa(); - empresa.codigo = rs.getInt(1); - empresa.nombempresa = rs.getString(2); - empresas.add(empresa); - } - } catch (Exception e) { - log.error(e.getMessage(), e); - } finally { - try { - rs.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - try { - pstmt.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - } - } - - public Connection getConnection() { - return this.conn; - } - - public List getDespesaCartaoDebCred(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException{ - List despesas = new ArrayList(); - StringBuilder sb = new StringBuilder(); - 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, "); - - if(isCodReceitaFixoBgm){ - sb.append(" case when cdp.formapago_id = 2 then 802 else 803 end, "); - }else{ - sb.append(" tee.contacontabil AS contacontabil, "); - } - - sb.append(" pv.numpuntoventa AS numpuntoventa, "); - sb.append(" ev.tipoeventoextra_id, "); - sb.append(" cdp.formapago_id as formapagoId "); - 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 = ? "); - adicionaFiltroQuery(puntoVentaId, sb, " and cd.puntoventa_id = ", puntoVentaId != null && !puntoVentaId.equals(-1)); - adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); - sb.append(" and cd.activo = 1 "); - sb.append(" and cdp.formapago_id in (2,3) "); - sb.append(" and tee.indtipo = 0 "); - sb.append(" group by "); - sb.append(" cd.feccorte, "); - sb.append(" e.empresa_id, "); - sb.append(" pv.puntoventa_id, "); - - if(isCodReceitaFixoBgm){ - sb.append(" case when cdp.formapago_id = 2 then 802 else 803 end, "); - }else{ - sb.append(" tee.contacontabil, "); - } - - sb.append(" pv.numpuntoventa, ev.tipoeventoextra_id, "); - sb.append(" cdp.formapago_id "); - - PreparedStatement stmt = null; - ResultSet rs = null; - - Date fecha = fechaParam; - if (fechaParam == null) { - 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.getString(5)); - despesa.setDataLancamento(rs.getDate(1)); - despesa.setDataMovimento(rs.getDate(1)); - despesa.setLocalArrecadacao(rs.getString(6)); - if (rs.getBigDecimal(4).signum() == -1) { - despesa.setIdentificadorReceitaDespesa("D"); - despesa.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); - } else { - despesa.setIdentificadorReceitaDespesa("R"); - despesa.setValorLancamento(df.format(rs.getBigDecimal(4))); - } - if (incluiTipoPagamentoTurismoBGM) { - despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); - } - despesa.setFormaPagamentoId(rs.getString("formapagoId")); - - if(isLayoutNovo) { - despesa.setTipoPagamentoTurismo("01"); - despesa.setFormaPagamentoId("03"); - despesa.setTipoDocumentoVenda("P"); - } - - despesas.add(despesa); - } - } catch (Exception e) { - log.error(e.toString(), e); - throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas cartão Crédito/Débito"); - } finally { - try { - rs.close(); - } catch (Exception ignore) { - log.error("", ignore); - } - try { - stmt.close(); - } catch (Exception ignore) { - log.error("", ignore); - } - } - return despesas; - } - - public List getDespesaCartaoDebCredComporte(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException{ - - List despesas = new ArrayList(); - StringBuilder sb = new StringBuilder(); - 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(" cdp.importe AS valor, "); - sb.append(" tee.contacontabil AS contacontabil, "); - sb.append(" pv.numpuntoventa AS numpuntoventa, "); - sb.append(" ev.tipoeventoextra_id, "); - sb.append(" cdp.formapago_id as formapagoId, "); - sb.append(" ct.numautorizacion as numautorizacion, "); - sb.append(" pte.numsitef as numeroEstabelecimento, "); - sb.append(" b.numfoliosistema,"); - sb.append(" ct.tx_id, "); - sb.append(" b.num_bpe "); - 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(" left join caja_tarjeta ct on ct.cajatarjeta_id = cdp.cajatarjeta_id "); - sb.append(" left join ptovta_empresa pte on pte.puntoventa_id = pv.puntoventa_id and pte.empresa_id = e.empresa_id "); - sb.append(" left join boleto b on (b.boleto_id = ev.boleto_id) "); - sb.append(" where "); - sb.append(" cd.feccorte = ? "); - adicionaFiltroQuery(puntoVentaId, sb, " and cd.puntoventa_id = ", puntoVentaId != null && !puntoVentaId.equals(-1)); - adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); - sb.append(" and cd.activo = 1 "); - sb.append(" and cdp.formapago_id in (2,3," +formaPagoCieloLink+ ") "); - sb.append(" and tee.indtipo = 0 "); - - PreparedStatement stmt = null; - ResultSet rs = null; - String formaPagoCieloLinkStr = Integer.toString(formaPagoCieloLink); - - Date fecha = fechaParam; - if (fechaParam == null) { - fecha = getData(); - } - - try { - stmt = getConnection().prepareStatement(sb.toString()); - stmt.setDate(1, new java.sql.Date(fecha.getTime())); - rs = stmt.executeQuery(); - - while (rs.next()) { - DespesaReceitaComporte despesa = new DespesaReceitaComporte(); - despesa.setCodigoEmpresa(rs.getInt(2)); - despesa.setCodigoReceitaDespesa(rs.getString(5)); - if(StringUtils.isNotBlank(rs.getString(5)) && (rs.getString(5).equals("22") || rs.getString(5).equals("8101"))) { - despesa.setNumfoliosistema(rs.getString("num_bpe")); - }else { - despesa.setNumfoliosistema(""); - } - despesa.setDataLancamento(rs.getDate(1)); - despesa.setDataMovimento(rs.getDate(1)); - despesa.setLocalArrecadacao(rs.getString(6)); - if (rs.getBigDecimal(4).signum() == -1) { - despesa.setIdentificadorReceitaDespesa("D"); - despesa.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); - } else { - despesa.setIdentificadorReceitaDespesa("R"); - despesa.setValorLancamento(df.format(rs.getBigDecimal(4))); - } - if (incluiTipoPagamentoTurismoBGM) { - despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); - } - despesa.setFormaPagamentoId(rs.getString("formapagoId")); - - if( despesa.getFormaPagamentoId().equals("2") || despesa.getFormaPagamentoId().equals("3") || despesa.getFormaPagamentoId().equals(formaPagoCieloLinkStr)) { - despesa.setCodigoAutorizacao(rs.getString("numautorizacion")); - despesa.setNumeroEstabelecimento(rs.getString("numeroEstabelecimento")); - }else { - despesa.setCodigoAutorizacao(""); - despesa.setNumeroEstabelecimento(""); - } - despesa.setTxId(rs.getString(12)); - despesas.add(despesa); - } - } catch (Exception e) { - log.error(e.toString(), e); - throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas cartão Crédito/Débito"); - } finally { - try { - rs.close(); - } catch (Exception ignore) { - log.error("", ignore); - } - try { - stmt.close(); - } catch (Exception ignore) { - log.error("", ignore); - } - } - return despesas; - } - - private void adicionaFiltroQuery(final Integer valor, StringBuilder sb, String filtroSQL, Boolean adicionar) { - if (adicionar) { - sb.append(filtroSQL + valor); - } - } - - public List getReceitas(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException { - List despesas = new ArrayList(); - StringBuilder sb = new StringBuilder(); - 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(" COALESCE(sum(cdp.importe),0) AS valor, "); - sb.append(" tee.contacontabil AS contacontabil, "); - sb.append(" pv.numpuntoventa AS numpuntoventa, "); - sb.append(" ev.descinfo as descinfo, "); - sb.append(" ev.tipoeventoextra_id, "); - sb.append(" COALESCE(cdp.formapago_id,0) as formapagoId, "); - sb.append(" tee.desctipoevento, "); - sb.append(" fp.tipo_pago "); - 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 forma_pago fp on cdp.formapago_id = fp.formapago_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 = ? "); - adicionaFiltroQuery(puntoVentaId, sb, " and cd.puntoventa_id = ", puntoVentaId != null && !puntoVentaId.equals(-1)); - adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); - sb.append(" and cd.activo = 1 "); - sb.append(" and tee.indtipo = 1 "); - sb.append(" group by cd.feccorte, "); - sb.append(" e.empresa_id, pv.puntoventa_id, "); - sb.append(" tee.contacontabil, pv.numpuntoventa, "); - sb.append(" ev.descinfo, ev.tipoeventoextra_id, "); - sb.append(" cdp.formapago_id, tee.desctipoevento,fp.tipo_pago "); - - PreparedStatement stmt = null; - ResultSet rs = null; - - Date fecha = fechaParam; - if (fechaParam == null) { - fecha = getData(); - } - - try { - stmt = getConnection().prepareStatement(sb.toString()); - stmt.setDate(1, new java.sql.Date(fecha.getTime())); - rs = stmt.executeQuery(); - - while (rs.next()) { - DespesaReceita receita = new DespesaReceita(); - receita.setCodigoEmpresa(rs.getInt(2)); - receita.setCodigoReceitaDespesa(rs.getString(5)); - receita.setDataLancamento(rs.getDate(1)); - receita.setDataMovimento(rs.getDate(1)); - receita.setLocalArrecadacao(rs.getString(6)); - if (rs.getBigDecimal(4).signum() == -1) { - receita.setIdentificadorReceitaDespesa("D"); - receita.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); - } else { - receita.setIdentificadorReceitaDespesa("R"); - receita.setValorLancamento(df.format(rs.getBigDecimal(4))); - } - - String desc =rs.getString(7); - - desc = this.removerQuebraDeLinha(desc); - receita.setDescricaoDetalhada(desc); - - if (incluiTipoPagamentoTurismoBGM) { - receita.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); - } - receita.setFormaPagamentoId(rs.getString("formapagoId")); - - if(isLayoutNovo) { - if( rs.getString("desctipoevento").matches("EXCESSO.BAGAGEM") ) { - receita.setTipoDocumentoVenda("E"); - }else { - receita.setTipoDocumentoVenda("P"); - } - - receita.setTipoPagamentoTurismo("01"); - receita.setFormaPagamentoId( converteFormaPagamentoLayoutNovo(rs.getString("tipo_pago")) ); - - } - - despesas.add(receita); - } - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new IntegracaoReceitaDespesaException("Erro ao processar Receitas"); - } finally { - try { - rs.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - try { - stmt.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - } - return despesas; - } - - public List getReceitasComporte(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { - List despesas = new ArrayList(); - StringBuilder sb = new StringBuilder(); - 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(" COALESCE(cdp.importe,0) AS valor, "); - sb.append(" tee.contacontabil AS contacontabil, "); - sb.append(" pv.numpuntoventa AS numpuntoventa, "); - sb.append(" ev.descinfo AS descinfo, "); - sb.append(" ev.tipoeventoextra_id, "); - sb.append(" COALESCE(cdp.formapago_id,0) as formapagoId, "); - sb.append(" ct.numautorizacion AS numautorizacion, "); - sb.append(" pte.numsitef AS numeroestabelecimento, "); - sb.append(" ct.cantparcelas, "); - sb.append(" case when (b.num_bpe is not null) then LPAD(b.num_bpe, 9,'0') else LPAD(' ',9,0) end as num_bpe, "); - sb.append(" ct.tx_id"); - 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(" LEFT JOIN caja_tarjeta ct ON ct.cajatarjeta_id = cdp.cajatarjeta_id "); - sb.append(" LEFT JOIN ptovta_empresa pte ON pte.puntoventa_id = pv.puntoventa_id AND pte.empresa_id = e.empresa_id "); - sb.append(" LEFT JOIN boleto b on (b.boleto_id = ev.boleto_id) "); - sb.append(" where "); - sb.append(" cd.feccorte = ? "); - adicionaFiltroQuery(puntoVentaId, sb, " and cd.puntoventa_id = ", puntoVentaId != null && !puntoVentaId.equals(-1)); - adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); - sb.append(" and cd.activo = 1 "); - sb.append(" and tee.indtipo = 1 "); - - PreparedStatement stmt = null; - ResultSet rs = null; - String formaPagoCieloLinkStr = Integer.toString(formaPagoCieloLink); - Date fecha = fechaParam; - - if (fechaParam == null) { - fecha = getData(); - } - - try { - stmt = getConnection().prepareStatement(sb.toString()); - stmt.setDate(1, new java.sql.Date(fecha.getTime())); - rs = stmt.executeQuery(); - - while (rs.next()) { - DespesaReceitaComporte receita = new DespesaReceitaComporte(); - receita.setCodigoEmpresa(rs.getInt(2)); - receita.setCodigoReceitaDespesa(rs.getString(5)); - receita.setNumfoliosistema(rs.getString(13)); - receita.setDataLancamento(rs.getDate(1)); - receita.setDataMovimento(rs.getDate(1)); - receita.setLocalArrecadacao(rs.getString(6)); - receita.setCantParcelas(rs.getString(12)); - if (rs.getBigDecimal(4).signum() == -1) { - receita.setIdentificadorReceitaDespesa("D"); - receita.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); - } else { - receita.setIdentificadorReceitaDespesa("R"); - receita.setValorLancamento(df.format(rs.getBigDecimal(4))); - } - - String desc =rs.getString(7); - - desc = this.removerQuebraDeLinha(desc); - - receita.setDescricaoDetalhada(desc); - if (incluiTipoPagamentoTurismoBGM) { - receita.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); - } - receita.setFormaPagamentoId(rs.getString("formapagoId")); - - if( receita.getFormaPagamentoId().equals("2") || receita.getFormaPagamentoId().equals("3") || receita.getFormaPagamentoId().equals(formaPagoCieloLinkStr)) { - receita.setCodigoAutorizacao(rs.getString("numautorizacion")); - receita.setNumeroEstabelecimento(rs.getString("numeroestabelecimento")); - }else { - receita.setCodigoAutorizacao(""); - receita.setNumeroEstabelecimento(""); - } - receita.setTxId(rs.getString(14)); - despesas.add(receita); - } - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new IntegracaoReceitaDespesaException("Erro ao processar Receitas"); - } finally { - try { - rs.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - try { - stmt.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - } - return despesas; - } - - public List getDespesas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo ) throws IntegracaoReceitaDespesaException { - 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.numpuntoventa as numpuntoventa, "); - sb.append(" cdp.importe as valor, "); - sb.append(" tee.contacontabil as contacontabil, "); - sb.append(" ev.descinfo as descinfo, "); - sb.append(" ev.tipoeventoextra_id, "); - sb.append(" cdp.formapago_id as formapagoId "); - 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 "); - adicionaFiltroQuery(puntoventaId, sb, " and cd.puntoventa_id = ", puntoventaId != null && !puntoventaId.equals(-1)); - adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); - sb.append(" and cd.activo = 1 "); - sb.append(" and cdp.formapago_id not IN (2,3) "); - 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 = fechaParam; - if (fechaParam == null) { - fecha = getData(); - } - - PreparedStatement pstmt = null; - ResultSet rs = null; - - try { - pstmt = getConnection().prepareStatement(sb.toString()); - pstmt.setDate(1, new java.sql.Date(fecha.getTime())); - - rs = pstmt.executeQuery(); - while (rs.next()) { - DespesaReceita despesa = new DespesaReceita(); - despesa.setCodigoEmpresa(rs.getInt(2)); - despesa.setCodigoReceitaDespesa(rs.getString(5)); - despesa.setDataLancamento(rs.getDate(1)); - despesa.setDataMovimento(rs.getDate(1)); - despesa.setLocalArrecadacao(rs.getString(3)); - despesa.setValorLancamento(df.format(rs.getBigDecimal(4).doubleValue() * -1)); - despesa.setIdentificadorReceitaDespesa("D"); - String desc =rs.getString(6); - - desc = this.removerQuebraDeLinha(desc); - - despesa.setDescricaoDetalhada(desc); - if (incluiTipoPagamentoTurismoBGM) { - despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); - } - despesa.setFormaPagamentoId(rs.getString("formapagoId")); - - if(isLayoutNovo) { - despesa.setTipoPagamentoTurismo("01"); - despesa.setFormaPagamentoId("01"); - despesa.setTipoDocumentoVenda("P"); - } - - despesas.add(despesa); - } - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas"); - } finally { - try { - rs.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - try { - pstmt.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - } - return despesas; - } - - private String removerQuebraDeLinha(String desc) { - if(StringUtils.isBlank(desc)){ - return desc; - } - - desc = desc.replaceAll("\t", " "); - - desc = desc.replaceAll("\n", " "); - - desc = desc.replaceAll("\r", " "); - - return desc; - } - - public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException { - List depositos = new ArrayList(); - - StringBuilder strFechamentos = new StringBuilder(); - strFechamentos.append("Select distinct sum(fd.valor_pago), fdep.numdeposito, fdep.fecha_deposito, fc.empresa_id, "); - strFechamentos.append(" pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion, fdep.feccreacion "); - strFechamentos.append(" from fechamento_deposito fdep "); - strFechamentos.append(" join fechamento_cct_deposito fd on fd.fechamentodeposito_id = fdep.fechamentodeposito_id "); - strFechamentos.append(" join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); - strFechamentos.append(" inner join PUNTO_VENTA pv on PV.PUNTOVENTA_ID = FC.PUNTOVENTA_ID "); - strFechamentos.append(" join empresa_contabancaria ec on ec.EMPRESACONTABANCARIA_ID = fdep.EMPRESACONTABANCARIA_ID "); - strFechamentos.append(" join INSTI_FINANCEIRA if on if.INSTIFINANCEIRA_ID = EC.INSTIFINANCEIRA_ID "); - strFechamentos.append(" join EMPRESA e on e.empresa_id = fc.empresa_id "); - strFechamentos.append(" where trunc(fdep.feccreacion) = :fecha and fd.activo = 1 and fc.activo = 1 and fdep.activo = 1 "); - adicionaFiltroQuery(puntoventaId, strFechamentos, " and fc.puntoventa_id = ", puntoventaId != null && !puntoventaId.equals(-1)); - adicionaFiltroQuery(empresaId, strFechamentos, " and fc.empresa_id = ", empresaId != null); - strFechamentos.append(" group by fdep.numdeposito, fdep.feccreacion, fdep.fecha_deposito, fc.empresa_id, pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion "); - - Date fecha = fechaParam; - if (fechaParam == null) { - fecha = getData(); - } - - PreparedStatement pstmtFechamentos = null; - ResultSet rsFechamentos = null; - BigDecimal soma = BigDecimal.ZERO; - try { - pstmtFechamentos = getConnection().prepareStatement(strFechamentos.toString()); - pstmtFechamentos.setDate(1, new java.sql.Date(fecha.getTime())); - - rsFechamentos = pstmtFechamentos.executeQuery(); - - while (rsFechamentos.next()) { - Integer empId = null; - String banco = ""; - String agencia = ""; - String contaCorrente = ""; - String numDep = " Dep: " + rsFechamentos.getString(2); - String codRecDesp = null; - String numpuntoventa = rsFechamentos.getString(5); - - if (empId == null) { - empId = rsFechamentos.getInt(4); - } - if (banco.isEmpty()) { - banco = "Bco: " + StringUtils.leftPad(rsFechamentos.getString(8), 3, "0"); - } - - if (agencia.isEmpty()) { - agencia = " Ag: " + rsFechamentos.getString(6); - } - if (contaCorrente.isEmpty()) { - contaCorrente = " C/C: " + rsFechamentos.getString(7); - } - if (codRecDesp == null) { - codRecDesp = rsFechamentos.getString(9); - } - - DespesaReceita deposito = new DespesaReceita(); - deposito.setCodigoEmpresa(empId); - deposito.setDataLancamento(rsFechamentos.getDate(10)); - deposito.setDataMovimento(rsFechamentos.getDate(3)); - deposito.setLocalArrecadacao(numpuntoventa); - deposito.setValorLancamento(df.format(rsFechamentos.getBigDecimal(1))); - deposito.setIdentificadorReceitaDespesa("D"); - deposito.setCodigoReceitaDespesa(codRecDesp); - deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep); - - if(isLayoutNovo) { - deposito.setTipoPagamentoTurismo("01"); - deposito.setFormaPagamentoId("04"); - deposito.setTipoDocumentoVenda("P"); - } - - depositos.add(deposito); - soma = soma.add(rsFechamentos.getBigDecimal(1)); - } - log.debug("Total depositos: " + soma); - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new IntegracaoReceitaDespesaException("Erro ao processar Depositos"); - } finally { - try { - pstmtFechamentos.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - try { - rsFechamentos.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - } - - return depositos; - } - - public Integer getCodigoReceitaDespesaGlobus() { - StringBuilder sb = new StringBuilder(); - sb.append("Select valorconstante from constante where nombconstante = 'CODIGO_RECEITA_DESPESA_GLOBUS' "); - PreparedStatement pstmt = null; - ResultSet rs = null; - Integer result = null; - try { - pstmt = getConnection().prepareStatement(sb.toString()); - rs = pstmt.executeQuery(); - if (rs.next()) { - result = rs.getInt(1); - } - } catch (Exception e) { - log.error(e.getMessage(), e); - } finally { - try { - rs.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - try { - pstmt.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - } - return result; - - } - - public Boolean isConstanteBloqueioMenorQueData(Integer empresaId, Date data) { - StringBuilder sb = new StringBuilder(); - sb.append("Select valorconstante from constante where nombconstante = 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "'"); - PreparedStatement pstmt = null; - ResultSet rs = null; - Boolean result = null; - try { - pstmt = getConnection().prepareStatement(sb.toString()); - rs = pstmt.executeQuery(); - if (rs.next()) { - Date rsDate = new SimpleDateFormat("dd/MM/yyyy").parse(rs.getString(1)); - result = !rsDate.after(data); - } else { // se não existir a constante, retorno true para que ela seja criada na função updateDataBloqueio - result = true; - } - } catch (Exception e) { - log.error(e.getMessage(), e); - } finally { - try { - rs.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - try { - pstmt.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - } - return result; - - } - - public void updateDataBloqueio(Integer empresaId, Date data) { - StringBuilder sb = new StringBuilder(); - PreparedStatement pstmt = null; - SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); - try { - if (!getConnection().prepareStatement("Select valorconstante from constante where nombconstante = 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "'").executeQuery().next()) { - sb.append("insert into constante values (constante_seq.nextval, 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "', 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "',1," + - "'" + sdf.format(data) + "', 1, 1, :datamodif, 1)"); - pstmt = getConnection().prepareStatement(sb.toString()); - pstmt.setDate(1, new java.sql.Date(new Date().getTime())); - } else { - sb.append("update constante set valorconstante = :valor where nombconstante = 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "'"); - pstmt = getConnection().prepareStatement(sb.toString()); - pstmt.setString(1, sdf.format(data)); - } - - pstmt.executeUpdate(); - } catch (Exception e) { - log.error(e.getMessage(), e); - } finally { - try { - pstmt.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - } - } - - private Date getData() { - Calendar cal = Calendar.getInstance(); - cal.set(2015, 10, 13); - cal.setTime(new Date()); - cal.add(Calendar.DAY_OF_MONTH, DAYS_AGO); - return cal.getTime(); - } - - private String converteFormaPagamentoLayoutNovo(String formaPago) { - //lista de tipos: com.rjconsultores.ventaboletos.enums.TipoFormapago - if(formaPago == null) { - return ""; - } - - Integer converted = new Integer( formaPago); - switch (converted) { - case 0: - return "01"; - case 1: - return "03"; - case 2: - return "03"; - case 3: - return "05"; - case 4: - return "05"; - case 10: - return "02"; - case 11: - return "04"; - default: - return ""; - } - } - - public List getPontosVenda() { - return pontosVenda; - } - - public void setPontosVenda(List pontosVenda) { - this.pontosVenda = pontosVenda; - } - - public List getEmpresas() { - return empresas; - } - - public void setEmpresas(List empresas) { - this.empresas = empresas; - } - - public void setIsReceitasDespesasComporte(Boolean isReceitasDespesasComporte) { - this.isReceitasDespesasComporte = isReceitasDespesasComporte; - } - - public static void amain(String[] args) { - System.out.println(new BigDecimal("0").signum()); - } - - - public List getDepositosComporte(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException { - List depositos = new ArrayList(); - - StringBuilder strFechamentos = new StringBuilder(); - strFechamentos.append("Select distinct sum(fd.valor_pago), fdep.numdeposito, fdep.fecha_deposito, fc.empresa_id, "); - strFechamentos.append(" pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion, fdep.feccreacion "); - strFechamentos.append(" from fechamento_deposito fdep "); - strFechamentos.append(" join fechamento_cct_deposito fd on fd.fechamentodeposito_id = fdep.fechamentodeposito_id "); - strFechamentos.append(" join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); - strFechamentos.append(" inner join PUNTO_VENTA pv on PV.PUNTOVENTA_ID = FC.PUNTOVENTA_ID "); - strFechamentos.append(" join empresa_contabancaria ec on ec.EMPRESACONTABANCARIA_ID = fdep.EMPRESACONTABANCARIA_ID "); - strFechamentos.append(" join INSTI_FINANCEIRA if on if.INSTIFINANCEIRA_ID = EC.INSTIFINANCEIRA_ID "); - strFechamentos.append(" join EMPRESA e on e.empresa_id = fc.empresa_id "); - strFechamentos.append(" where trunc(fdep.feccreacion) = :fecha and fd.activo = 1 and fc.activo = 1 and fdep.activo = 1 "); - adicionaFiltroQuery(puntoventaId, strFechamentos, " and fc.puntoventa_id = ", puntoventaId != null && !puntoventaId.equals(-1)); - adicionaFiltroQuery(empresaId, strFechamentos, " and fc.empresa_id = ", empresaId != null); - strFechamentos.append(" group by fdep.numdeposito, fdep.feccreacion, fdep.fecha_deposito, fc.empresa_id, pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion "); - - Date fecha = fechaParam; - if (fechaParam == null) { - fecha = getData(); - } - - PreparedStatement pstmtFechamentos = null; - ResultSet rsFechamentos = null; - BigDecimal soma = BigDecimal.ZERO; - try { - pstmtFechamentos = getConnection().prepareStatement(strFechamentos.toString()); - pstmtFechamentos.setDate(1, new java.sql.Date(fecha.getTime())); - - rsFechamentos = pstmtFechamentos.executeQuery(); - - while (rsFechamentos.next()) { - Integer empId = null; - String banco = ""; - String agencia = ""; - String contaCorrente = ""; - String numDep = " Dep: " + rsFechamentos.getString(2); - String codRecDesp = null; - String numpuntoventa = rsFechamentos.getString(5); - - if (empId == null) { - empId = rsFechamentos.getInt(4); - } - if (banco.isEmpty()) { - banco = "Bco: " + StringUtils.leftPad(rsFechamentos.getString(8), 3, "0"); - } - - if (agencia.isEmpty()) { - agencia = " Ag: " + rsFechamentos.getString(6); - } - if (contaCorrente.isEmpty()) { - contaCorrente = " C/C: " + rsFechamentos.getString(7); - } - if (codRecDesp == null) { - codRecDesp = rsFechamentos.getString(9); - } - - DespesaReceitaComporte deposito = new DespesaReceitaComporte(); - deposito.setCodigoEmpresa(empId); - deposito.setDataLancamento(rsFechamentos.getDate(10)); - deposito.setDataMovimento(rsFechamentos.getDate(3)); - deposito.setLocalArrecadacao(numpuntoventa); - deposito.setValorLancamento(df.format(rsFechamentos.getBigDecimal(1))); - deposito.setIdentificadorReceitaDespesa("D"); - deposito.setCodigoReceitaDespesa(codRecDesp); - deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep); - - if(isLayoutNovo) { - deposito.setTipoPagamentoTurismo("01"); - deposito.setFormaPagamentoId("04"); - deposito.setTipoDocumentoVenda("P"); - } - depositos.add(deposito); - soma = soma.add(rsFechamentos.getBigDecimal(1)); - } - log.debug("Total depositos: " + soma); - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new IntegracaoReceitaDespesaException("Erro ao processar Depositos"); - } finally { - try { - pstmtFechamentos.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - try { - rsFechamentos.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - } - return depositos; - } - - public List getDespesasComporte(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo ) throws IntegracaoReceitaDespesaException { - 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.numpuntoventa as numpuntoventa, "); - sb.append(" cdp.importe as valor, "); - sb.append(" tee.contacontabil as contacontabil, "); - sb.append(" ev.descinfo as descinfo, "); - sb.append(" ev.tipoeventoextra_id, "); - sb.append(" cdp.formapago_id as formapagoId, "); - sb.append(" case when (b.num_bpe is not null) then LPAD(b.num_bpe, 9,'0') else LPAD(' ',9,0) end as num_bpe "); - 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(" left join boleto b on b.boleto_id = ev.boleto_id "); - sb.append(" where "); - sb.append(" cd.feccorte = ? "); - sb.append(" and tee.indtipo = 0 "); - adicionaFiltroQuery(puntoventaId, sb, " and cd.puntoventa_id = ", puntoventaId != null && !puntoventaId.equals(-1)); - adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); - sb.append(" and cd.activo = 1 "); - sb.append(" and cdp.formapago_id not IN (2,3) "); - 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 = fechaParam; - if (fechaParam == null) { - fecha = getData(); - } - - PreparedStatement pstmt = null; - ResultSet rs = null; - - try { - pstmt = getConnection().prepareStatement(sb.toString()); - pstmt.setDate(1, new java.sql.Date(fecha.getTime())); - - rs = pstmt.executeQuery(); - while (rs.next()) { - DespesaReceitaComporte despesa = new DespesaReceitaComporte(); - despesa.setCodigoEmpresa(rs.getInt(2)); - despesa.setCodigoReceitaDespesa(rs.getString(5)); - despesa.setDataLancamento(rs.getDate(1)); - despesa.setDataMovimento(rs.getDate(1)); - despesa.setLocalArrecadacao(rs.getString(3)); - despesa.setValorLancamento(df.format(rs.getBigDecimal(4).doubleValue() * -1)); - despesa.setIdentificadorReceitaDespesa("D"); - String desc =rs.getString(6); - - desc = this.removerQuebraDeLinha(desc); - - despesa.setDescricaoDetalhada(desc); - if (incluiTipoPagamentoTurismoBGM) { - despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); - } - despesa.setFormaPagamentoId(rs.getString("formapagoId")); - - if(isLayoutNovo) { - despesa.setTipoPagamentoTurismo("01"); - despesa.setFormaPagamentoId("01"); - despesa.setTipoDocumentoVenda("P"); - } - - despesa.setNumfoliosistema(rs.getString("num_bpe")); - despesas.add(despesa); - } - } catch (Exception e) { - log.error(e.getMessage(), e); - throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas"); - } finally { - try { - rs.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - try { - pstmt.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - } - return despesas; - } - - private void buscarFormaPagoCieloLink() { - PreparedStatement pstmt = null; - ResultSet rs = null; - - try { - pstmt = getConnection().prepareStatement("Select formapago_id from forma_pago where tipo_carteira_digital = 'CIELO_LINK' and activo = 1"); - rs = pstmt.executeQuery(); - if (rs.getFetchSize() > 0) { - while (rs.next()) { - formaPagoCieloLink = rs.getInt(1); - } - } - } catch (Exception e) { - log.error(e.getMessage(), e); - } finally { - try { - rs.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - try { - pstmt.close(); - } catch (Exception ignore) { - log.error(ignore.getMessage(), ignore); - } - } - } - - - -} + + +import com.rjconsultores.integracaoreceitadespesa.IntegracaoReceitaDespesaException; +import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceita; +import com.rjconsultores.integracaoreceitadespesa.entidades.DespesaReceitaComporte; +import com.rjconsultores.integracaoreceitadespesa.entidades.Empresa; +import com.rjconsultores.integracaoreceitadespesa.entidades.PuntoVenta; + + +public class Totalbus { + + private static final Logger log = LogManager.getLogger(Totalbus.class); + private static final int DAYS_AGO = -1; + + + private Connection conn; + + private List pontosVenda = new ArrayList(); + private List empresas = new ArrayList(); + + private Boolean isCodReceitaFixoBgm = false; + + private Boolean isReceitasDespesasComporte = false; + + private Boolean isReceitasDespesasOuroPrata= false; + + private Boolean isLayoutNovo= false; + + private DecimalFormat df = new DecimalFormat("#0.00"); + + private int formaPagoCieloLink = 0; + + public Totalbus(Connection con, Boolean isReceitasDespesasComporte, Boolean isReceitasDespesasOuroPrata) { + this.conn = con; + this.isReceitasDespesasComporte = isReceitasDespesasComporte; + this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; + loadEmpresas(); + loadPuntosVenta(); + buscarFormaPagoCieloLink(); + } + + public Totalbus(Connection con, Boolean isReceitasDespesasComporte,Boolean isCodReceitaFixoBgm, Boolean isReceitasDespesasOuroPrata) { + this.conn = con; + this.isReceitasDespesasComporte = isReceitasDespesasComporte; + this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; + this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; + loadEmpresas(); + loadPuntosVenta(); + buscarFormaPagoCieloLink(); + } + + public Totalbus(Connection con, Boolean isReceitasDespesasComporte,Boolean isCodReceitaFixoBgm, Boolean isReceitasDespesasOuroPrata, Boolean isLayoutNovo) { + this.conn = con; + this.isReceitasDespesasComporte = isReceitasDespesasComporte; + this.isReceitasDespesasOuroPrata = isReceitasDespesasOuroPrata; + this.isCodReceitaFixoBgm = isCodReceitaFixoBgm; + this.isLayoutNovo = isLayoutNovo; + loadEmpresas(); + loadPuntosVenta(); + buscarFormaPagoCieloLink(); + } + + public List getDespesasReceitas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException{ + List rows = new ArrayList(); + if (isReceitasDespesasComporte){ + log.debug("gerando depositos..."); + List despesasReceitas = getDepositosComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo); + log.debug("gerando despesas..."); + despesasReceitas.addAll(getDespesasComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); + log.debug("gerando despesas cartão..."); + despesasReceitas.addAll(getDespesaCartaoDebCredComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + log.debug("gerando receitas..."); + despesasReceitas.addAll(getReceitasComporte(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM)); + + if( isLayoutNovo ) { + for (DespesaReceita item : despesasReceitas) { + item.preencheLinhaLayoutNovo(rows); + } + }else { + for (DespesaReceita item : despesasReceitas) { + item.preencheLinha(rows); + } + } + }else { + log.debug("gerando depositos..."); + List despesasReceitas = getDepositos(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo); + log.debug("gerando despesas..."); + despesasReceitas.addAll(getDespesas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); + log.debug("gerando despesas cartão..."); + despesasReceitas.addAll(getDespesaCartaoDebCred(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); + log.debug("gerando receitas..."); + despesasReceitas.addAll(getReceitas(puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM, isLayoutNovo)); + if(isReceitasDespesasOuroPrata) { + getContaCorrenteAgencia(despesasReceitas, puntoventaId, empresaId, fechaParam, incluiTipoPagamentoTurismoBGM); + } + if( isLayoutNovo ) { + for (DespesaReceita item : despesasReceitas) { + item.preencheLinhaLayoutNovo(rows); + } + }else { + for (DespesaReceita item : despesasReceitas) { + item.preencheLinha(rows); + } + } + } + return rows; + } + + private void getContaCorrenteAgencia(List despesasReceitas, Integer puntoVentaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { + despesasReceitas.addAll(buscarFormasPagamentoContaCorrenteAgencia(puntoVentaId, empresaId, fechaParam,incluiTipoPagamentoTurismoBGM)); + despesasReceitas.addAll(buscarComissoesContaCorrenteAgencia(puntoVentaId, empresaId, fechaParam,incluiTipoPagamentoTurismoBGM)); + } + + private Collection buscarFormasPagamentoContaCorrenteAgencia(Integer puntoVentaId, + Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) + throws IntegracaoReceitaDespesaException { + + List despesas = new ArrayList(); + + StringBuilder sb = new StringBuilder(); + + SimpleDateFormat sf = new SimpleDateFormat("dd/MM/yyyy"); + String fechaStr = sf.format(fechaParam); + if (fechaParam == null) { + fechaStr = sf.format(getData()); + } + + + sb.append("SELECT SUM(precioboleto) AS precioBoleto, "); + sb.append("formaPagoId, "); + sb.append("descripcionFormaPago, "); + sb.append("empresa, "); + sb.append("puntoventaId, "); + sb.append("contacontabil, "); + sb.append("numpuntoventa, "); + sb.append("descinfo, "); + sb.append("tipoEventoExtra, "); + sb.append("feccorte AS feccorte "); + sb.append("FROM ("); + sb.append("(SELECT SUM(CASE "); + sb.append(" WHEN c.MOTIVOCANCELACION_ID IS NULL THEN 1 ELSE -1 END * cfp.importe) AS precioBoleto, "); + sb.append("cfp.formapago_id AS formaPagoId, "); + sb.append("fp.DESCPAGO AS descripcionFormaPago, "); + sb.append("e.empresa_id AS empresa, "); + sb.append("ccp.PUNTOVENTA_ID AS puntoventaId, "); + sb.append("CASE WHEN cfp.formapago_id = 2 THEN 802 ELSE 803 END contacontabil, "); + sb.append("pv.numpuntoventa AS numpuntoventa, "); + sb.append("ee.descinfo AS descinfo, "); + sb.append("ee.tipoeventoextra_id AS tipoEventoExtra, "); + sb.append("ccp.feccorte AS feccorte "); + sb.append(" FROM forma_pago fp, caja c "); + sb.append(" left OUTER JOIN motivo_cancelacion mc ON c.motivocancelacion_id = mc.motivocancelacion_id"); + sb.append(" left OUTER JOIN marca m ON c.marca_id = m.marca_id"); + sb.append(" left OUTER JOIN empresa e ON m.empresa_id = e.empresa_id"); + sb.append(" INNER JOIN caja_formapago cfp ON c.caja_id = cfp.caja_id"); + sb.append(" left OUTER JOIN boleto b ON b.boleto_id = c.transacao_id"); + sb.append(" left JOIN evento_extra ee ON b.boleto_id = ee.boleto_id and ee.boleto_id is null "); + sb.append(" left JOIN tipo_evento_extra tee ON tee.tipoeventoextra_id = ee.tipoeventoextra_id"); + sb.append(" left JOIN punto_venta pv ON pv.puntoventa_id = c.puntoventa_id and (cfp.activo = 1) "); + sb.append(" INNER JOIN CONTA_CORRENTE_PTOVTA ccp ON e.EMPRESA_ID = ccp.EMPRESA_ID"); + sb.append(" and ccp.PUNTOVENTA_ID = c.PUNTOVENTA_ID"); + sb.append(" and ccp.FECCORTE = c.FECCORTE"); + sb.append(" and ccp.TURNO_ID = c.turno_id"); + sb.append(" and ccp.ACTIVO = 1"); + sb.append(" and c.USUARIO_ID = ccp.USUARIO_ID"); + sb.append(" WHERE cfp.formapago_id = fp.formapago_id"); + sb.append(" and C.INDSTATUSOPERACION = 'F'"); + sb.append(" and c.INDREIMPRESION = 0"); + sb.append(" and c.tipoventa_id <> 6"); + sb.append(" and c.ACTIVO = 1"); + adicionaFiltroQuery(empresaId, sb, " and ccp.EMPRESA_ID = ", empresaId != null); + adicionaFiltroQuery(puntoVentaId, sb, " and ccp.PUNTOVENTA_ID = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + sb.append(" and ccp.feccorte = TO_DATE('"+fechaStr+" 00:00:00', 'dd/MM/yyyy HH24:mi:ss')and cfp.formapago_id in (2,3) "); + sb.append(" GROUP BY cfp.formapago_id,"); + sb.append(" fp.DESCPAGO,"); + sb.append(" e.empresa_id,"); + sb.append(" ccp.PUNTOVENTA_ID,"); + sb.append(" tee.contacontabil,"); + sb.append(" pv.numpuntoventa,"); + sb.append(" ee.descinfo, ee.tipoeventoextra_id, ccp.FECCORTE )"); + sb.append(" UNION"); + sb.append(" (SELECT SUM(cdp.IMPORTE) AS precioBoleto,"); + sb.append(" cdp.formapago_id AS formaPagoId,"); + sb.append(" fp.DESCPAGO AS descripcionFormaPago,"); + sb.append(" e.empresa_id AS empresa,"); + sb.append(" cd.PUNTOVENTA_ID AS puntoventaId,"); + sb.append(" CASE WHEN cdp.formapago_id = 2 THEN 802 ELSE 803 END contacontabil, "); + sb.append(" pv.numpuntoventa AS numpuntoventa,"); + sb.append(" ee.descinfo AS descinfo,"); + sb.append(" ee.tipoeventoextra_id AS tipoEventoExtra, ccp.feccorte AS feccorte "); + sb.append(" FROM CAJA_DIVERSOS cd"); + sb.append(" JOIN CAJA_DIVERSOS_PAGO cdp ON cdp.CAJADIVERSOS_ID = cd.CAJADIVERSOS_ID"); + sb.append(" INNER JOIN forma_pago fp ON fp.formapago_id = cdp.formapago_id"); + sb.append(" INNER JOIN EVENTO_EXTRA EE ON EE.EVENTOEXTRA_ID = cd.EVENTOEXTRA_ID"); + sb.append(" LEFT OUTER JOIN empresa e ON ee.empresa_id = e.empresa_id"); + sb.append(" LEFT JOIN boleto b ON b.boleto_id = ee.boleto_id"); + sb.append(" LEFT OUTER JOIN evento_extra ee ON b.boleto_id = ee.boleto_id"); + sb.append(" LEFT JOIN tipo_evento_extra tee ON tee.tipoeventoextra_id = ee.tipoeventoextra_id"); + sb.append(" LEFT JOIN punto_venta pv ON pv.puntoventa_id = cd.puntoventa_id "); + sb.append(" INNER JOIN CONTA_CORRENTE_PTOVTA ccp ON e.EMPRESA_ID = ccp.EMPRESA_ID "); + sb.append(" AND ccp.PUNTOVENTA_ID = cd.PUNTOVENTA_ID "); + sb.append("AND ccp.FECCORTE = cd.FECCORTE "); + sb.append(" AND ccp.TURNO_ID = cd.turno_id "); + sb.append(" AND cd.USUARIO_ID = ccp.USUARIO_ID "); + sb.append(" WHERE 1 = 1"); + sb.append(" AND cd.ACTIVO = 1"); + sb.append(" AND ccp.ACTIVO = 1"); + sb.append(" AND (ee.boleto_id IS NULL"); + sb.append(" OR ee.boleto_id = b.boleto_id)"); + adicionaFiltroQuery(empresaId, sb, " and ccp.EMPRESA_ID = ", empresaId != null); + adicionaFiltroQuery(puntoVentaId, sb, " and ccp.PUNTOVENTA_ID = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + sb.append(" AND ccp.feccorte = TO_DATE('"+fechaStr+" 00:00:00', 'dd/MM/yyyy HH24:mi:ss') and ee.tipoeventoextra_id <> 25 and cdp.formapago_id in (2,3) "); + sb.append(" GROUP BY cdp.formapago_id, fp.DESCPAGO,"); + sb.append(" e.empresa_id, cd.PUNTOVENTA_ID, "); + sb.append(" tee.contacontabil,"); + sb.append(" pv.numpuntoventa, ee.descinfo,"); + sb.append(" ee.tipoeventoextra_id, ccp.FECCORTE )) x "); + sb.append("GROUP BY formaPagoId, descripcionFormaPago, empresa, "); + sb.append(" puntoventaId,"); + sb.append(" contacontabil,"); + sb.append(" numpuntoventa,"); + sb.append(" descinfo,"); + sb.append(" tipoEventoExtra,feccorte "); + sb.append("ORDER BY formaPagoId, descripcionFormaPago"); + + + PreparedStatement stmt = null; + ResultSet rs = null; + + try { + stmt = getConnection().prepareStatement(sb.toString()); + rs = stmt.executeQuery(); + + while (rs.next()) { + DespesaReceita receita = new DespesaReceita(); + receita.setCodigoEmpresa(rs.getInt(4)); + receita.setCodigoReceitaDespesa(rs.getString(6)); + receita.setDataLancamento(rs.getDate(10)); + receita.setDataMovimento(rs.getDate(10)); + receita.setLocalArrecadacao(rs.getString(7)); + if (rs.getBigDecimal(1).signum() == 1) { + receita.setIdentificadorReceitaDespesa("D"); + receita.setValorLancamento(df.format(rs.getBigDecimal(1))); + } else { + receita.setIdentificadorReceitaDespesa("R"); + receita.setValorLancamento(df.format(rs.getBigDecimal(1))); + } + + String desc =rs.getString(8); + + desc = this.removerQuebraDeLinha(desc); + + receita.setDescricaoDetalhada(desc); + if (incluiTipoPagamentoTurismoBGM) { + receita.setTipoPagamentoTurismo(rs.getString("tipoEventoExtra")); + } + receita.setFormaPagamentoId(rs.getString("formaPagoId")); + despesas.add(receita); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Receitas"); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + stmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return despesas; + } + + private void loadPuntosVenta() { + PreparedStatement pstmt = null; + ResultSet rs = null; + + try { + pstmt = getConnection().prepareStatement("Select puntoventa_id, nombpuntoventa from punto_venta order by nombpuntoventa"); + rs = pstmt.executeQuery(); + while (rs.next()) { + PuntoVenta puntoVenta = new PuntoVenta(); + puntoVenta.codigo = rs.getInt(1); + puntoVenta.nombpuntoventa = rs.getString(2); + pontosVenda.add(puntoVenta); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + } + + private Collection buscarComissoesContaCorrenteAgencia(Integer puntoVentaId,Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) + throws IntegracaoReceitaDespesaException { + List despesas = new ArrayList(); + + StringBuilder sb = new StringBuilder(); + + SimpleDateFormat sf = new SimpleDateFormat("dd/MM/yyyy"); + String fechaStr = sf.format(fechaParam); + if (fechaParam == null) { + fechaStr = sf.format(getData()); + } + + sb.append("SELECT CASE"); + sb.append(" WHEN E.INDRATEIOCOMISSAOGRUPOLINHA = 1"); + sb.append(" AND OP.TIPOOPERACIONCC_ID = 5"); + sb.append(" AND CCGL.CONTACORRENTEPTOVTAGRLIN_ID IS NOT NULL THEN CCGL.IMPORTE"); + sb.append(" ELSE CC.IMPORTETOTALEFECTIVO"); + sb.append(" END AS precioBoleto ,"); + sb.append(" CASE"); + sb.append(" WHEN OP.INDCREDITO = 1 THEN 'CREDITO'"); + sb.append(" ELSE 'DEBITO'"); + sb.append(" END AS descripcionFormaPago ,"); + sb.append(" CASE"); + sb.append(" WHEN OP.CVETIPO = 'CM' THEN 'COMISSAO' "); + sb.append(" WHEN OP.CVETIPO = 'LQ' THEN 'LQ' "); + sb.append(" END AS descripcionFormaPago,"); + sb.append(" cc.empresa_id, "); + sb.append(" cc.puntoventa_id, "); + sb.append(" pv.numpuntoventa, "); + sb.append(" cc.fechoroperacion, "); + sb.append(" CASE WHEN OP.INDCREDITO = 1 THEN 802 ELSE 803 END contacontabil "); + sb.append("FROM CONTA_CORRENTE_PTOVTA CC "); + sb.append("LEFT JOIN CONTA_CORRENTE_PTOVTA_GR_LIN CCGL ON CCGL.CONTACORRENTEPTOVTA_ID = CC.CONTACORRENTEPTOVTA_ID "); + sb.append("JOIN TIPO_OPERACION_CC OP ON CC.TIPOOPERACIONCC_ID = OP.TIPOOPERACIONCC_ID "); + sb.append("JOIN PUNTO_VENTA PV ON CC.PUNTOVENTA_ID = PV.PUNTOVENTA_ID "); + sb.append("JOIN EMPRESA E ON CC.EMPRESA_ID = E.EMPRESA_ID "); + sb.append("LEFT JOIN LOG_CONFERENCIA LG ON CC.CONTACORRENTEPTOVTA_ID = LG.CONTACORRENTEPTOVTA_ID "); + sb.append("LEFT JOIN CONFERENCIA_PENDENCIA CP ON CP.CONFERENCIAPENDENCIA_ID = LG.CONFERENCIAPENDENCIA_ID "); + sb.append("WHERE CC.ACTIVO = 1 "); + sb.append(" AND cc.feccorte = TO_DATE('"+fechaStr+" 00:00:00', 'dd/MM/yyyy HH24:mi:ss') "); + adicionaFiltroQuery(empresaId, sb, " and CC.EMPRESA_ID = ", empresaId != null); + adicionaFiltroQuery(puntoVentaId, sb, " and CC.PUNTOVENTA_ID = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + sb.append(" ORDER BY PV.NOMBPUNTOVENTA,"); + sb.append(" E.NOMBEMPRESA,"); + sb.append(" OP.DESCTIPO,"); + sb.append(" OP.CVETIPO "); + + + PreparedStatement stmt = null; + ResultSet rs = null; + + + try { + stmt = getConnection().prepareStatement(sb.toString()); + + rs = stmt.executeQuery(); + + while (rs.next()) { + DespesaReceita receita = new DespesaReceita(); + receita.setCodigoEmpresa(rs.getInt(4)); + receita.setCodigoReceitaDespesa(rs.getString(8)); + receita.setDataLancamento(rs.getDate(7)); + receita.setDataMovimento(rs.getDate(7)); + receita.setLocalArrecadacao(rs.getString(6)); + if(rs.getString(3) != null) { + if(rs.getString(3).equalsIgnoreCase("COMISSAO")) { + if (rs.getBigDecimal(1).signum() == 1) { + receita.setIdentificadorReceitaDespesa("D"); + } else { + receita.setIdentificadorReceitaDespesa("R"); + } + }else if(rs.getString(3).equalsIgnoreCase("LQ")) { + if (rs.getBigDecimal(1).signum() == 1) { + receita.setIdentificadorReceitaDespesa("D"); + } else { + receita.setIdentificadorReceitaDespesa("R"); + } + } + } + receita.setValorLancamento(df.format(rs.getBigDecimal(1))); + receita.setDescricaoDetalhada(""); + if (incluiTipoPagamentoTurismoBGM) { + receita.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); + } + receita.setFormaPagamentoId("1"); + despesas.add(receita); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Receitas"); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + stmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return despesas; + } + + + + private void loadEmpresas() { + PreparedStatement pstmt = null; + ResultSet rs = null; + + try { + pstmt = getConnection().prepareStatement("Select empresa_id, nombempresa from empresa order by nombempresa"); + rs = pstmt.executeQuery(); + while (rs.next()) { + Empresa empresa = new Empresa(); + empresa.codigo = rs.getInt(1); + empresa.nombempresa = rs.getString(2); + empresas.add(empresa); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + } + + public Connection getConnection() { + return this.conn; + } + + public List getDespesaCartaoDebCred(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException{ + List despesas = new ArrayList(); + StringBuilder sb = new StringBuilder(); + 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, "); + + if(isCodReceitaFixoBgm){ + sb.append(" case when cdp.formapago_id = 2 then 802 else 803 end, "); + }else{ + sb.append(" tee.contacontabil AS contacontabil, "); + } + + sb.append(" pv.numpuntoventa AS numpuntoventa, "); + sb.append(" ev.tipoeventoextra_id, "); + sb.append(" cdp.formapago_id as formapagoId "); + 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 = ? "); + adicionaFiltroQuery(puntoVentaId, sb, " and cd.puntoventa_id = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); + sb.append(" and cd.activo = 1 "); + sb.append(" and cdp.formapago_id in (2,3) "); + sb.append(" and tee.indtipo = 0 "); + sb.append(" group by "); + sb.append(" cd.feccorte, "); + sb.append(" e.empresa_id, "); + sb.append(" pv.puntoventa_id, "); + + if(isCodReceitaFixoBgm){ + sb.append(" case when cdp.formapago_id = 2 then 802 else 803 end, "); + }else{ + sb.append(" tee.contacontabil, "); + } + + sb.append(" pv.numpuntoventa, ev.tipoeventoextra_id, "); + sb.append(" cdp.formapago_id "); + + PreparedStatement stmt = null; + ResultSet rs = null; + + Date fecha = fechaParam; + if (fechaParam == null) { + 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.getString(5)); + despesa.setDataLancamento(rs.getDate(1)); + despesa.setDataMovimento(rs.getDate(1)); + despesa.setLocalArrecadacao(rs.getString(6)); + if (rs.getBigDecimal(4).signum() == -1) { + despesa.setIdentificadorReceitaDespesa("D"); + despesa.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); + } else { + despesa.setIdentificadorReceitaDespesa("R"); + despesa.setValorLancamento(df.format(rs.getBigDecimal(4))); + } + if (incluiTipoPagamentoTurismoBGM) { + despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); + } + despesa.setFormaPagamentoId(rs.getString("formapagoId")); + + if(isLayoutNovo) { + despesa.setTipoPagamentoTurismo("01"); + despesa.setFormaPagamentoId("03"); + despesa.setTipoDocumentoVenda("P"); + } + + despesas.add(despesa); + } + } catch (Exception e) { + log.error(e.toString(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas cartão Crédito/Débito"); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error("", ignore); + } + try { + stmt.close(); + } catch (Exception ignore) { + log.error("", ignore); + } + } + return despesas; + } + + public List getDespesaCartaoDebCredComporte(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException{ + + List despesas = new ArrayList(); + StringBuilder sb = new StringBuilder(); + 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(" cdp.importe AS valor, "); + sb.append(" tee.contacontabil AS contacontabil, "); + sb.append(" pv.numpuntoventa AS numpuntoventa, "); + sb.append(" ev.tipoeventoextra_id, "); + sb.append(" cdp.formapago_id as formapagoId, "); + sb.append(" ct.numautorizacion as numautorizacion, "); + sb.append(" pte.numsitef as numeroEstabelecimento, "); + sb.append(" b.numfoliosistema,"); + sb.append(" ct.tx_id, "); + sb.append(" b.num_bpe "); + 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(" left join caja_tarjeta ct on ct.cajatarjeta_id = cdp.cajatarjeta_id "); + sb.append(" left join ptovta_empresa pte on pte.puntoventa_id = pv.puntoventa_id and pte.empresa_id = e.empresa_id "); + sb.append(" left join boleto b on (b.boleto_id = ev.boleto_id) "); + sb.append(" where "); + sb.append(" cd.feccorte = ? "); + adicionaFiltroQuery(puntoVentaId, sb, " and cd.puntoventa_id = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); + sb.append(" and cd.activo = 1 "); + sb.append(" and cdp.formapago_id in (2,3," +formaPagoCieloLink+ ") "); + sb.append(" and tee.indtipo = 0 "); + + PreparedStatement stmt = null; + ResultSet rs = null; + String formaPagoCieloLinkStr = Integer.toString(formaPagoCieloLink); + + Date fecha = fechaParam; + if (fechaParam == null) { + fecha = getData(); + } + + try { + stmt = getConnection().prepareStatement(sb.toString()); + stmt.setDate(1, new java.sql.Date(fecha.getTime())); + rs = stmt.executeQuery(); + + while (rs.next()) { + DespesaReceitaComporte despesa = new DespesaReceitaComporte(); + despesa.setCodigoEmpresa(rs.getInt(2)); + despesa.setCodigoReceitaDespesa(rs.getString(5)); + if(StringUtils.isNotBlank(rs.getString(5)) && (rs.getString(5).equals("22") || rs.getString(5).equals("8101"))) { + despesa.setNumfoliosistema(rs.getString("num_bpe")); + }else { + despesa.setNumfoliosistema(""); + } + despesa.setDataLancamento(rs.getDate(1)); + despesa.setDataMovimento(rs.getDate(1)); + despesa.setLocalArrecadacao(rs.getString(6)); + if (rs.getBigDecimal(4).signum() == -1) { + despesa.setIdentificadorReceitaDespesa("D"); + despesa.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); + } else { + despesa.setIdentificadorReceitaDespesa("R"); + despesa.setValorLancamento(df.format(rs.getBigDecimal(4))); + } + if (incluiTipoPagamentoTurismoBGM) { + despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); + } + despesa.setFormaPagamentoId(rs.getString("formapagoId")); + + if( despesa.getFormaPagamentoId().equals("2") || despesa.getFormaPagamentoId().equals("3") || despesa.getFormaPagamentoId().equals(formaPagoCieloLinkStr)) { + despesa.setCodigoAutorizacao(rs.getString("numautorizacion")); + despesa.setNumeroEstabelecimento(rs.getString("numeroEstabelecimento")); + }else { + despesa.setCodigoAutorizacao(""); + despesa.setNumeroEstabelecimento(""); + } + despesa.setTxId(rs.getString(12)); + despesas.add(despesa); + } + } catch (Exception e) { + log.error(e.toString(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas cartão Crédito/Débito"); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error("", ignore); + } + try { + stmt.close(); + } catch (Exception ignore) { + log.error("", ignore); + } + } + return despesas; + } + + private void adicionaFiltroQuery(final Integer valor, StringBuilder sb, String filtroSQL, Boolean adicionar) { + if (adicionar) { + sb.append(filtroSQL + valor); + } + } + + public List getReceitas(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException { + List despesas = new ArrayList(); + StringBuilder sb = new StringBuilder(); + 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(" COALESCE(sum(cdp.importe),0) AS valor, "); + sb.append(" tee.contacontabil AS contacontabil, "); + sb.append(" pv.numpuntoventa AS numpuntoventa, "); + sb.append(" ev.descinfo as descinfo, "); + sb.append(" ev.tipoeventoextra_id, "); + sb.append(" COALESCE(cdp.formapago_id,0) as formapagoId, "); + sb.append(" tee.desctipoevento, "); + sb.append(" fp.tipo_pago "); + 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 forma_pago fp on cdp.formapago_id = fp.formapago_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 = ? "); + adicionaFiltroQuery(puntoVentaId, sb, " and cd.puntoventa_id = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); + sb.append(" and cd.activo = 1 "); + sb.append(" and tee.indtipo = 1 "); + sb.append(" group by cd.feccorte, "); + sb.append(" e.empresa_id, pv.puntoventa_id, "); + sb.append(" tee.contacontabil, pv.numpuntoventa, "); + sb.append(" ev.descinfo, ev.tipoeventoextra_id, "); + sb.append(" cdp.formapago_id, tee.desctipoevento,fp.tipo_pago "); + + PreparedStatement stmt = null; + ResultSet rs = null; + + Date fecha = fechaParam; + if (fechaParam == null) { + fecha = getData(); + } + + try { + stmt = getConnection().prepareStatement(sb.toString()); + stmt.setDate(1, new java.sql.Date(fecha.getTime())); + rs = stmt.executeQuery(); + + while (rs.next()) { + DespesaReceita receita = new DespesaReceita(); + receita.setCodigoEmpresa(rs.getInt(2)); + receita.setCodigoReceitaDespesa(rs.getString(5)); + receita.setDataLancamento(rs.getDate(1)); + receita.setDataMovimento(rs.getDate(1)); + receita.setLocalArrecadacao(rs.getString(6)); + if (rs.getBigDecimal(4).signum() == -1) { + receita.setIdentificadorReceitaDespesa("D"); + receita.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); + } else { + receita.setIdentificadorReceitaDespesa("R"); + receita.setValorLancamento(df.format(rs.getBigDecimal(4))); + } + + String desc =rs.getString(7); + + desc = this.removerQuebraDeLinha(desc); + receita.setDescricaoDetalhada(desc); + + if (incluiTipoPagamentoTurismoBGM) { + receita.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); + } + receita.setFormaPagamentoId(rs.getString("formapagoId")); + + if(isLayoutNovo) { + if( rs.getString("desctipoevento").matches("EXCESSO.BAGAGEM") ) { + receita.setTipoDocumentoVenda("E"); + }else { + receita.setTipoDocumentoVenda("P"); + } + + receita.setTipoPagamentoTurismo("01"); + receita.setFormaPagamentoId( converteFormaPagamentoLayoutNovo(rs.getString("tipo_pago")) ); + + } + + despesas.add(receita); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Receitas"); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + stmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return despesas; + } + + public List getReceitasComporte(final Integer puntoVentaId, final Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM) throws IntegracaoReceitaDespesaException { + List despesas = new ArrayList(); + StringBuilder sb = new StringBuilder(); + 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(" COALESCE(cdp.importe,0) AS valor, "); + sb.append(" tee.contacontabil AS contacontabil, "); + sb.append(" pv.numpuntoventa AS numpuntoventa, "); + sb.append(" ev.descinfo AS descinfo, "); + sb.append(" ev.tipoeventoextra_id, "); + sb.append(" COALESCE(cdp.formapago_id,0) as formapagoId, "); + sb.append(" ct.numautorizacion AS numautorizacion, "); + sb.append(" pte.numsitef AS numeroestabelecimento, "); + sb.append(" ct.cantparcelas, "); + sb.append(" case when (b.num_bpe is not null) then LPAD(b.num_bpe, 9,'0') else LPAD(' ',9,0) end as num_bpe, "); + sb.append(" ct.tx_id"); + 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(" LEFT JOIN caja_tarjeta ct ON ct.cajatarjeta_id = cdp.cajatarjeta_id "); + sb.append(" LEFT JOIN ptovta_empresa pte ON pte.puntoventa_id = pv.puntoventa_id AND pte.empresa_id = e.empresa_id "); + sb.append(" LEFT JOIN boleto b on (b.boleto_id = ev.boleto_id) "); + sb.append(" where "); + sb.append(" cd.feccorte = ? "); + adicionaFiltroQuery(puntoVentaId, sb, " and cd.puntoventa_id = ", puntoVentaId != null && !puntoVentaId.equals(-1)); + adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); + sb.append(" and cd.activo = 1 "); + sb.append(" and tee.indtipo = 1 "); + + PreparedStatement stmt = null; + ResultSet rs = null; + String formaPagoCieloLinkStr = Integer.toString(formaPagoCieloLink); + Date fecha = fechaParam; + + if (fechaParam == null) { + fecha = getData(); + } + + try { + stmt = getConnection().prepareStatement(sb.toString()); + stmt.setDate(1, new java.sql.Date(fecha.getTime())); + rs = stmt.executeQuery(); + + while (rs.next()) { + DespesaReceitaComporte receita = new DespesaReceitaComporte(); + receita.setCodigoEmpresa(rs.getInt(2)); + receita.setCodigoReceitaDespesa(rs.getString(5)); + receita.setNumfoliosistema(rs.getString(13)); + receita.setDataLancamento(rs.getDate(1)); + receita.setDataMovimento(rs.getDate(1)); + receita.setLocalArrecadacao(rs.getString(6)); + receita.setCantParcelas(rs.getString(12)); + if (rs.getBigDecimal(4).signum() == -1) { + receita.setIdentificadorReceitaDespesa("D"); + receita.setValorLancamento(df.format(rs.getBigDecimal(4).multiply(new BigDecimal(-1)))); + } else { + receita.setIdentificadorReceitaDespesa("R"); + receita.setValorLancamento(df.format(rs.getBigDecimal(4))); + } + + String desc =rs.getString(7); + + desc = this.removerQuebraDeLinha(desc); + + receita.setDescricaoDetalhada(desc); + if (incluiTipoPagamentoTurismoBGM) { + receita.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); + } + receita.setFormaPagamentoId(rs.getString("formapagoId")); + + if( receita.getFormaPagamentoId().equals("2") || receita.getFormaPagamentoId().equals("3") || receita.getFormaPagamentoId().equals(formaPagoCieloLinkStr)) { + receita.setCodigoAutorizacao(rs.getString("numautorizacion")); + receita.setNumeroEstabelecimento(rs.getString("numeroestabelecimento")); + }else { + receita.setCodigoAutorizacao(""); + receita.setNumeroEstabelecimento(""); + } + receita.setTxId(rs.getString(14)); + despesas.add(receita); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Receitas"); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + stmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return despesas; + } + + public List getDespesas(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo ) throws IntegracaoReceitaDespesaException { + 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.numpuntoventa as numpuntoventa, "); + sb.append(" cdp.importe as valor, "); + sb.append(" tee.contacontabil as contacontabil, "); + sb.append(" ev.descinfo as descinfo, "); + sb.append(" ev.tipoeventoextra_id, "); + sb.append(" cdp.formapago_id as formapagoId "); + 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 "); + adicionaFiltroQuery(puntoventaId, sb, " and cd.puntoventa_id = ", puntoventaId != null && !puntoventaId.equals(-1)); + adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); + sb.append(" and cd.activo = 1 "); + sb.append(" and cdp.formapago_id not IN (2,3) "); + 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 = fechaParam; + if (fechaParam == null) { + fecha = getData(); + } + + PreparedStatement pstmt = null; + ResultSet rs = null; + + try { + pstmt = getConnection().prepareStatement(sb.toString()); + pstmt.setDate(1, new java.sql.Date(fecha.getTime())); + + rs = pstmt.executeQuery(); + while (rs.next()) { + DespesaReceita despesa = new DespesaReceita(); + despesa.setCodigoEmpresa(rs.getInt(2)); + despesa.setCodigoReceitaDespesa(rs.getString(5)); + despesa.setDataLancamento(rs.getDate(1)); + despesa.setDataMovimento(rs.getDate(1)); + despesa.setLocalArrecadacao(rs.getString(3)); + despesa.setValorLancamento(df.format(rs.getBigDecimal(4).doubleValue() * -1)); + despesa.setIdentificadorReceitaDespesa("D"); + String desc =rs.getString(6); + + desc = this.removerQuebraDeLinha(desc); + + despesa.setDescricaoDetalhada(desc); + if (incluiTipoPagamentoTurismoBGM) { + despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); + } + despesa.setFormaPagamentoId(rs.getString("formapagoId")); + + if(isLayoutNovo) { + despesa.setTipoPagamentoTurismo("01"); + despesa.setFormaPagamentoId("01"); + despesa.setTipoDocumentoVenda("P"); + } + + despesas.add(despesa); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas"); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return despesas; + } + + private String removerQuebraDeLinha(String desc) { + if(StringUtils.isBlank(desc)){ + return desc; + } + + desc = desc.replaceAll("\t", " "); + + desc = desc.replaceAll("\n", " "); + + desc = desc.replaceAll("\r", " "); + + return desc; + } + + public List getDepositos(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException { + List depositos = new ArrayList(); + + StringBuilder strFechamentos = new StringBuilder(); + strFechamentos.append("Select distinct sum(fd.valor_pago), fdep.numdeposito, fdep.fecha_deposito, fc.empresa_id, "); + strFechamentos.append(" pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion, fdep.feccreacion "); + strFechamentos.append(" from fechamento_deposito fdep "); + strFechamentos.append(" join fechamento_cct_deposito fd on fd.fechamentodeposito_id = fdep.fechamentodeposito_id "); + strFechamentos.append(" join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); + strFechamentos.append(" inner join PUNTO_VENTA pv on PV.PUNTOVENTA_ID = FC.PUNTOVENTA_ID "); + strFechamentos.append(" join empresa_contabancaria ec on ec.EMPRESACONTABANCARIA_ID = fdep.EMPRESACONTABANCARIA_ID "); + strFechamentos.append(" join INSTI_FINANCEIRA if on if.INSTIFINANCEIRA_ID = EC.INSTIFINANCEIRA_ID "); + strFechamentos.append(" join EMPRESA e on e.empresa_id = fc.empresa_id "); + strFechamentos.append(" where trunc(fdep.feccreacion) = :fecha and fd.activo = 1 and fc.activo = 1 and fdep.activo = 1 "); + adicionaFiltroQuery(puntoventaId, strFechamentos, " and fc.puntoventa_id = ", puntoventaId != null && !puntoventaId.equals(-1)); + adicionaFiltroQuery(empresaId, strFechamentos, " and fc.empresa_id = ", empresaId != null); + strFechamentos.append(" group by fdep.numdeposito, fdep.feccreacion, fdep.fecha_deposito, fc.empresa_id, pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion "); + + Date fecha = fechaParam; + if (fechaParam == null) { + fecha = getData(); + } + + PreparedStatement pstmtFechamentos = null; + ResultSet rsFechamentos = null; + BigDecimal soma = BigDecimal.ZERO; + try { + pstmtFechamentos = getConnection().prepareStatement(strFechamentos.toString()); + pstmtFechamentos.setDate(1, new java.sql.Date(fecha.getTime())); + + rsFechamentos = pstmtFechamentos.executeQuery(); + + while (rsFechamentos.next()) { + Integer empId = null; + String banco = ""; + String agencia = ""; + String contaCorrente = ""; + String numDep = " Dep: " + rsFechamentos.getString(2); + String codRecDesp = null; + String numpuntoventa = rsFechamentos.getString(5); + + if (empId == null) { + empId = rsFechamentos.getInt(4); + } + if (banco.isEmpty()) { + banco = "Bco: " + StringUtils.leftPad(rsFechamentos.getString(8), 3, "0"); + } + + if (agencia.isEmpty()) { + agencia = " Ag: " + rsFechamentos.getString(6); + } + if (contaCorrente.isEmpty()) { + contaCorrente = " C/C: " + rsFechamentos.getString(7); + } + if (codRecDesp == null) { + codRecDesp = rsFechamentos.getString(9); + } + + DespesaReceita deposito = new DespesaReceita(); + deposito.setCodigoEmpresa(empId); + deposito.setDataLancamento(rsFechamentos.getDate(10)); + deposito.setDataMovimento(rsFechamentos.getDate(3)); + deposito.setLocalArrecadacao(numpuntoventa); + deposito.setValorLancamento(df.format(rsFechamentos.getBigDecimal(1))); + deposito.setIdentificadorReceitaDespesa("D"); + deposito.setCodigoReceitaDespesa(codRecDesp); + deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep); + + if(isLayoutNovo) { + deposito.setTipoPagamentoTurismo("01"); + deposito.setFormaPagamentoId("04"); + deposito.setTipoDocumentoVenda("P"); + } + + depositos.add(deposito); + soma = soma.add(rsFechamentos.getBigDecimal(1)); + } + log.debug("Total depositos: " + soma); + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Depositos"); + } finally { + try { + pstmtFechamentos.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + rsFechamentos.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + + return depositos; + } + + public Integer getCodigoReceitaDespesaGlobus() { + StringBuilder sb = new StringBuilder(); + sb.append("Select valorconstante from constante where nombconstante = 'CODIGO_RECEITA_DESPESA_GLOBUS' "); + PreparedStatement pstmt = null; + ResultSet rs = null; + Integer result = null; + try { + pstmt = getConnection().prepareStatement(sb.toString()); + rs = pstmt.executeQuery(); + if (rs.next()) { + result = rs.getInt(1); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return result; + + } + + public Boolean isConstanteBloqueioMenorQueData(Integer empresaId, Date data) { + StringBuilder sb = new StringBuilder(); + sb.append("Select valorconstante from constante where nombconstante = 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "'"); + PreparedStatement pstmt = null; + ResultSet rs = null; + Boolean result = null; + try { + pstmt = getConnection().prepareStatement(sb.toString()); + rs = pstmt.executeQuery(); + if (rs.next()) { + Date rsDate = new SimpleDateFormat("dd/MM/yyyy").parse(rs.getString(1)); + result = !rsDate.after(data); + } else { // se não existir a constante, retorno true para que ela seja criada na função updateDataBloqueio + result = true; + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return result; + + } + + public void updateDataBloqueio(Integer empresaId, Date data) { + StringBuilder sb = new StringBuilder(); + PreparedStatement pstmt = null; + SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); + try { + if (!getConnection().prepareStatement("Select valorconstante from constante where nombconstante = 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "'").executeQuery().next()) { + sb.append("insert into constante values (constante_seq.nextval, 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "', 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "',1," + + "'" + sdf.format(data) + "', 1, 1, :datamodif, 1)"); + pstmt = getConnection().prepareStatement(sb.toString()); + pstmt.setDate(1, new java.sql.Date(new Date().getTime())); + } else { + sb.append("update constante set valorconstante = :valor where nombconstante = 'DATA_LIMITE_EDICAO_DEPOSITO_" + empresaId + "'"); + pstmt = getConnection().prepareStatement(sb.toString()); + pstmt.setString(1, sdf.format(data)); + } + + pstmt.executeUpdate(); + } catch (Exception e) { + log.error(e.getMessage(), e); + } finally { + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + } + + private Date getData() { + Calendar cal = Calendar.getInstance(); + cal.set(2015, 10, 13); + cal.setTime(new Date()); + cal.add(Calendar.DAY_OF_MONTH, DAYS_AGO); + return cal.getTime(); + } + + private String converteFormaPagamentoLayoutNovo(String formaPago) { + //lista de tipos: com.rjconsultores.ventaboletos.enums.TipoFormapago + if(formaPago == null) { + return ""; + } + + Integer converted = new Integer( formaPago); + switch (converted) { + case 0: + return "01"; + case 1: + return "03"; + case 2: + return "03"; + case 3: + return "05"; + case 4: + return "05"; + case 10: + return "02"; + case 11: + return "04"; + default: + return ""; + } + } + + public List getPontosVenda() { + return pontosVenda; + } + + public void setPontosVenda(List pontosVenda) { + this.pontosVenda = pontosVenda; + } + + public List getEmpresas() { + return empresas; + } + + public void setEmpresas(List empresas) { + this.empresas = empresas; + } + + public void setIsReceitasDespesasComporte(Boolean isReceitasDespesasComporte) { + this.isReceitasDespesasComporte = isReceitasDespesasComporte; + } + + public static void amain(String[] args) { + System.out.println(new BigDecimal("0").signum()); + } + + + public List getDepositosComporte(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo) throws IntegracaoReceitaDespesaException { + List depositos = new ArrayList(); + + StringBuilder strFechamentos = new StringBuilder(); + strFechamentos.append("Select distinct sum(fd.valor_pago), fdep.numdeposito, fdep.fecha_deposito, fc.empresa_id, "); + strFechamentos.append(" pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion, fdep.feccreacion "); + strFechamentos.append(" from fechamento_deposito fdep "); + strFechamentos.append(" join fechamento_cct_deposito fd on fd.fechamentodeposito_id = fdep.fechamentodeposito_id "); + strFechamentos.append(" join fechamento_cntcorrente fc on fc.fechamentocntcorrente_id = fd.fechamentocntcorrente_id "); + strFechamentos.append(" inner join PUNTO_VENTA pv on PV.PUNTOVENTA_ID = FC.PUNTOVENTA_ID "); + strFechamentos.append(" join empresa_contabancaria ec on ec.EMPRESACONTABANCARIA_ID = fdep.EMPRESACONTABANCARIA_ID "); + strFechamentos.append(" join INSTI_FINANCEIRA if on if.INSTIFINANCEIRA_ID = EC.INSTIFINANCEIRA_ID "); + strFechamentos.append(" join EMPRESA e on e.empresa_id = fc.empresa_id "); + strFechamentos.append(" where trunc(fdep.feccreacion) = :fecha and fd.activo = 1 and fc.activo = 1 and fdep.activo = 1 "); + adicionaFiltroQuery(puntoventaId, strFechamentos, " and fc.puntoventa_id = ", puntoventaId != null && !puntoventaId.equals(-1)); + adicionaFiltroQuery(empresaId, strFechamentos, " and fc.empresa_id = ", empresaId != null); + strFechamentos.append(" group by fdep.numdeposito, fdep.feccreacion, fdep.fecha_deposito, fc.empresa_id, pv.numpuntoventa, ec.numagencia, ec.numconta, if.CODIGO, ec.numintegracion "); + + Date fecha = fechaParam; + if (fechaParam == null) { + fecha = getData(); + } + + PreparedStatement pstmtFechamentos = null; + ResultSet rsFechamentos = null; + BigDecimal soma = BigDecimal.ZERO; + try { + pstmtFechamentos = getConnection().prepareStatement(strFechamentos.toString()); + pstmtFechamentos.setDate(1, new java.sql.Date(fecha.getTime())); + + rsFechamentos = pstmtFechamentos.executeQuery(); + + while (rsFechamentos.next()) { + Integer empId = null; + String banco = ""; + String agencia = ""; + String contaCorrente = ""; + String numDep = " Dep: " + rsFechamentos.getString(2); + String codRecDesp = null; + String numpuntoventa = rsFechamentos.getString(5); + + if (empId == null) { + empId = rsFechamentos.getInt(4); + } + if (banco.isEmpty()) { + banco = "Bco: " + StringUtils.leftPad(rsFechamentos.getString(8), 3, "0"); + } + + if (agencia.isEmpty()) { + agencia = " Ag: " + rsFechamentos.getString(6); + } + if (contaCorrente.isEmpty()) { + contaCorrente = " C/C: " + rsFechamentos.getString(7); + } + if (codRecDesp == null) { + codRecDesp = rsFechamentos.getString(9); + } + + DespesaReceitaComporte deposito = new DespesaReceitaComporte(); + deposito.setCodigoEmpresa(empId); + deposito.setDataLancamento(rsFechamentos.getDate(10)); + deposito.setDataMovimento(rsFechamentos.getDate(3)); + deposito.setLocalArrecadacao(numpuntoventa); + deposito.setValorLancamento(df.format(rsFechamentos.getBigDecimal(1))); + deposito.setIdentificadorReceitaDespesa("D"); + deposito.setCodigoReceitaDespesa(codRecDesp); + deposito.setDescricaoDetalhada(banco + agencia + contaCorrente + numDep); + + if(isLayoutNovo) { + deposito.setTipoPagamentoTurismo("01"); + deposito.setFormaPagamentoId("04"); + deposito.setTipoDocumentoVenda("P"); + } + depositos.add(deposito); + soma = soma.add(rsFechamentos.getBigDecimal(1)); + } + log.debug("Total depositos: " + soma); + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Depositos"); + } finally { + try { + pstmtFechamentos.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + rsFechamentos.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return depositos; + } + + public List getDespesasComporte(Integer puntoventaId, Integer empresaId, Date fechaParam, boolean incluiTipoPagamentoTurismoBGM, boolean isLayoutNovo ) throws IntegracaoReceitaDespesaException { + 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.numpuntoventa as numpuntoventa, "); + sb.append(" cdp.importe as valor, "); + sb.append(" tee.contacontabil as contacontabil, "); + sb.append(" ev.descinfo as descinfo, "); + sb.append(" ev.tipoeventoextra_id, "); + sb.append(" cdp.formapago_id as formapagoId, "); + sb.append(" case when (b.num_bpe is not null) then LPAD(b.num_bpe, 9,'0') else LPAD(' ',9,0) end as num_bpe "); + 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(" left join boleto b on b.boleto_id = ev.boleto_id "); + sb.append(" where "); + sb.append(" cd.feccorte = ? "); + sb.append(" and tee.indtipo = 0 "); + adicionaFiltroQuery(puntoventaId, sb, " and cd.puntoventa_id = ", puntoventaId != null && !puntoventaId.equals(-1)); + adicionaFiltroQuery(empresaId, sb, " and e.empresa_id = ", empresaId != null); + sb.append(" and cd.activo = 1 "); + sb.append(" and cdp.formapago_id not IN (2,3) "); + 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 = fechaParam; + if (fechaParam == null) { + fecha = getData(); + } + + PreparedStatement pstmt = null; + ResultSet rs = null; + + try { + pstmt = getConnection().prepareStatement(sb.toString()); + pstmt.setDate(1, new java.sql.Date(fecha.getTime())); + + rs = pstmt.executeQuery(); + while (rs.next()) { + DespesaReceitaComporte despesa = new DespesaReceitaComporte(); + despesa.setCodigoEmpresa(rs.getInt(2)); + despesa.setCodigoReceitaDespesa(rs.getString(5)); + despesa.setDataLancamento(rs.getDate(1)); + despesa.setDataMovimento(rs.getDate(1)); + despesa.setLocalArrecadacao(rs.getString(3)); + despesa.setValorLancamento(df.format(rs.getBigDecimal(4).doubleValue() * -1)); + despesa.setIdentificadorReceitaDespesa("D"); + String desc =rs.getString(6); + + desc = this.removerQuebraDeLinha(desc); + + despesa.setDescricaoDetalhada(desc); + if (incluiTipoPagamentoTurismoBGM) { + despesa.setTipoPagamentoTurismo(rs.getString("tipoeventoextra_id")); + } + despesa.setFormaPagamentoId(rs.getString("formapagoId")); + + if(isLayoutNovo) { + despesa.setTipoPagamentoTurismo("01"); + despesa.setFormaPagamentoId("01"); + despesa.setTipoDocumentoVenda("P"); + } + + despesa.setNumfoliosistema(rs.getString("num_bpe")); + despesas.add(despesa); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new IntegracaoReceitaDespesaException("Erro ao processar Despesas"); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + return despesas; + } + + private void buscarFormaPagoCieloLink() { + PreparedStatement pstmt = null; + ResultSet rs = null; + + try { + pstmt = getConnection().prepareStatement("Select formapago_id from forma_pago where tipo_carteira_digital = 'CIELO_LINK' and activo = 1"); + rs = pstmt.executeQuery(); + if (rs.getFetchSize() > 0) { + while (rs.next()) { + formaPagoCieloLink = rs.getInt(1); + } + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } finally { + try { + rs.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + try { + pstmt.close(); + } catch (Exception ignore) { + log.error(ignore.getMessage(), ignore); + } + } + } + + + +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java b/IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java similarity index 97% rename from src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java rename to IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java index d697424d6..6b3f24de1 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java +++ b/IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceita.java @@ -1,223 +1,223 @@ -package com.rjconsultores.integracaoreceitadespesa.entidades; - -import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.List; - -import org.apache.commons.lang.StringUtils; - -public class DespesaReceita { - protected String dataLancamento; // DD/MM/YYYY - protected String codigoEmpresa; // 011 003 Numerico - protected final String codigoFilial = "001"; // 014 003 Numerico - protected String localArrecadacao; // 017 005 Alfanumerico - protected final String numeroDaGuia = " "; // 022 025 Alfanumerico - protected String dataMovimento; // 047 010 Alfanumerico - protected final String usuarioGlobus = "TOTALBUS ";// 057 015 Alfanumerico - protected final String turno = "01";// 072 002 Numerico - protected String codigoReceitaDespesa;// 074 010 Numerico CONSTANTE CODIGO_RECEITA_DESPESA_GLOBUS - protected String identificadorReceitaDespesa;// 084 001 Alfanumerico - protected String valorLancamento;// 085 013 Numerico - protected final String numeroContratoTurismo = "0000000000"; // 098 010 Numerico - protected final String numeroReciboTurismo = " "; // 108 010 Alfanumerico - protected final String formaPagamentoTurismo = " ";// 118 002 Numerico - protected String tipoPagamentoTurismo = " ";// 120 002 Numerico - protected String descricaoDetalhada = " ";// 122 80 Alfanumerico - protected final String documentoVenda = "000000";// 202 6 Numerico - protected String tipoDocumentoVenda = " ";// 208 1 Alfanumerico - protected final String numerodocumentoCPG = "0000000000";// 209 10 Numerico - protected String formaPagamentoId = "0";// 218 Numerico - protected String tx_id = " "; - protected String numFolioSistema = " "; - protected final String finalLinha = "*";// 239 1 Alfanumerico - - protected String numeroEstabelecimento = " "; - protected String codigoAutorizacao = " "; - protected String cantParcelas = "0000"; - - - protected SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); - - public DespesaReceita() { - - } - - public void preencheLinha(List rows) { - StringBuilder sb = new StringBuilder(); - sb.append(dataLancamento); - sb.append(codigoEmpresa); - sb.append(codigoFilial); - sb.append(localArrecadacao.toUpperCase()); - sb.append(numeroDaGuia); - sb.append(dataMovimento); - sb.append(usuarioGlobus); - sb.append(turno); - sb.append(codigoReceitaDespesa); - sb.append(identificadorReceitaDespesa.toUpperCase()); - sb.append(valorLancamento); - sb.append(StringUtils.rightPad("", 10, " ")); - sb.append(numeroReciboTurismo); - sb.append(getFormaPagamentoTurismo()); - sb.append(getTipoPagamentoTurismo()); - sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(descricaoDetalhada) ? truncStr(descricaoDetalhada, 100) : "", 100, " ")); - sb.append(documentoVenda); - sb.append(tipoDocumentoVenda); - sb.append(StringUtils.rightPad("", 9, "0")); - sb.append(formaPagamentoId); - sb.append(finalLinha); - sb.append(System.getProperty("line.separator")); - rows.add(sb.toString()); - } - - public void preencheLinhaComporte(List rows) { - StringBuilder sb = new StringBuilder(); - sb.append(StringUtils.rightPad(dataLancamento.trim(), 10, " ")); //10 - sb.append(StringUtils.leftPad(codigoEmpresa.trim(), 3, "0")); //13 - sb.append(StringUtils.leftPad(codigoFilial.trim(), 3, "0")); //16 - sb.append(StringUtils.rightPad(truncStr(localArrecadacao.toUpperCase(), 5), 5, " ")); //21 - sb.append(StringUtils.rightPad(numeroDaGuia.trim(), 25, " ")); //46 - sb.append(StringUtils.rightPad(dataMovimento.trim(), 10, " ")); //56 - sb.append(StringUtils.rightPad(usuarioGlobus.trim(), 15, " ")); //71 - sb.append(StringUtils.leftPad(turno.trim(), 2, "0")); //73 - sb.append(StringUtils.leftPad(codigoReceitaDespesa.trim(), 10, "0")); //83 - sb.append(StringUtils.rightPad(identificadorReceitaDespesa.toUpperCase().trim(), 1, " ")); //84 - sb.append(StringUtils.leftPad(valorLancamento.trim(), 13, "0")); //97 - sb.append(StringUtils.rightPad(numeroContratoTurismo.trim(), 10, "0")); //107 - sb.append(StringUtils.rightPad(numeroReciboTurismo.trim(), 10, "0")); //117 - sb.append(StringUtils.leftPad(getFormaPagamentoId().trim(), 2, "0")); //119 - sb.append(StringUtils.leftPad(getTipoPagamentoTurismo().trim(), 2, "0")); //121 - sb.append(StringUtils.rightPad(descricaoDetalhada.trim(), 80, " ")); //201 - sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(numeroEstabelecimento) ? StringUtils.rightPad(numeroEstabelecimento, 10, "0").substring(0,10) : "", 10, "0"));//211 - sb.append(codigoAutorizacao != null ? StringUtils.rightPad(codigoAutorizacao, 25, "0") : StringUtils.rightPad("", 25, "0")); //236 - sb.append(StringUtils.rightPad(formaPagamentoId.trim(), 2, "0")); //238 - sb.append(StringUtils.leftPad(cantParcelas.trim(), 4, "0")); //242 - sb.append(StringUtils.leftPad(numFolioSistema.trim(), 16, " ")); //258 - sb.append(StringUtils.leftPad(tx_id.trim(), 35, " ")); //293 - sb.append(finalLinha); - sb.append(System.getProperty("line.separator")); - - rows.add(sb.toString()); - } - - public void preencheLinhaLayoutNovo(List rows) { - StringBuilder sb = new StringBuilder(); - sb.append(StringUtils.rightPad(dataLancamento.trim(), 10, " ")); - sb.append(StringUtils.leftPad(codigoEmpresa.trim(), 3, "0")); - sb.append(StringUtils.leftPad(codigoFilial.trim(), 3, "0")); - sb.append(StringUtils.rightPad(truncStr(localArrecadacao.toUpperCase(), 5), 5, " ")); - sb.append(StringUtils.rightPad(numeroDaGuia.trim(), 25, " ")); - sb.append(StringUtils.rightPad(dataMovimento.trim(), 10, " ")); - sb.append(StringUtils.rightPad(usuarioGlobus.trim(), 15, " ")); - sb.append(StringUtils.leftPad(turno.trim(), 2, "0")); - sb.append(StringUtils.leftPad(codigoReceitaDespesa.trim(), 10, "0")); - sb.append(StringUtils.rightPad(identificadorReceitaDespesa.toUpperCase().trim(), 1, " ")); - sb.append(StringUtils.leftPad(valorLancamento.trim(), 13, "0")); - sb.append(StringUtils.rightPad("", 10, " ")); - sb.append(StringUtils.rightPad(numeroReciboTurismo.trim(), 10, " ")); - sb.append(StringUtils.leftPad(getFormaPagamentoId().trim(), 2, "0")); - sb.append(StringUtils.leftPad(getTipoPagamentoTurismo().trim(), 2, "0")); - sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(descricaoDetalhada) ? truncStr(descricaoDetalhada, 100) : "", 100, " ")); - sb.append(StringUtils.leftPad(documentoVenda.trim(), 6, "0")); - sb.append(StringUtils.rightPad(tipoDocumentoVenda.trim(), 1, " ")); - sb.append(StringUtils.rightPad("", 10, "0")); - sb.append(finalLinha); - sb.append(System.getProperty("line.separator")); - rows.add(sb.toString()); - } - - public void setDataLancamento(Date dataLancamento) { - this.dataLancamento = sdf.format(dataLancamento); - } - - public void setCodigoEmpresa(Integer codigoEmpresa) { - this.codigoEmpresa = StringUtils.leftPad(codigoEmpresa.toString(), 3, "0"); - } - - public void setLocalArrecadacao(Integer localArrecadacao) { - this.localArrecadacao = StringUtils.rightPad(localArrecadacao != null ? truncStr(localArrecadacao.toString(), 5) : "", 5, " "); - } - - public void setLocalArrecadacao(String localArrecadacao) { - this.localArrecadacao = StringUtils.rightPad(localArrecadacao != null ? truncStr(localArrecadacao, 6) : "", 5, ""); - } - - public void setDataMovimento(Date dataMovimento) { - this.dataMovimento = sdf.format(dataMovimento); - } - - public void setCodigoReceitaDespesa(String codigoReceitaDespesa) { - this.codigoReceitaDespesa = StringUtils.leftPad(codigoReceitaDespesa != null ? codigoReceitaDespesa : "0", 10, "0"); - } - - public void setIdentificadorReceitaDespesa(String identificadorReceitaDespesa) { - this.identificadorReceitaDespesa = identificadorReceitaDespesa.toUpperCase(); - } - - public void setValorLancamento(String valorLancamento) { - this.valorLancamento = StringUtils.leftPad(valorLancamento!=null?truncStr(valorLancamento.replace(",", "").replace(".", ""), 100):"", 13, "0"); - } - - public void setDescricaoDetalhada(String desc) { - this.descricaoDetalhada = StringUtils.rightPad(StringUtils.isNotEmpty(desc) ? truncStr(desc, 100) : "", 100, " "); - } - - public String getFormaPagamentoTurismo() { - return formaPagamentoTurismo; - } - - public String getTipoPagamentoTurismo() { - return tipoPagamentoTurismo; - } - - public void setTipoPagamentoTurismo(String tipoPagamentoTurismo) { - this.tipoPagamentoTurismo = StringUtils.leftPad(StringUtils.isNotEmpty(tipoPagamentoTurismo) ? truncStr(tipoPagamentoTurismo, 2):tipoPagamentoTurismo, 2, " "); - } - - public String getFormaPagamentoId() { - return formaPagamentoId; - } - - public void setFormaPagamentoId(String formaPagamentoId) { - this.formaPagamentoId = StringUtils.leftPad(StringUtils.isNotEmpty(formaPagamentoId) ? truncStr(formaPagamentoId.toString(), 2) : "", 1, "0"); - } - - protected String truncStr(String str, int size) { - if (str.length() > size) { - return str.substring(0, size - 1); - } - return str; - } - - public String getTipoDocumentoVenda() { - return tipoDocumentoVenda; - } - - public void setTipoDocumentoVenda(String tipoDocumentoVenda) { - this.tipoDocumentoVenda = tipoDocumentoVenda; - } - - public String getNumeroEstabelecimento() { - return numeroEstabelecimento; - } - - public void setNumeroEstabelecimento(String numeroEstabelecimento) { - this.numeroEstabelecimento = StringUtils.rightPad(numeroEstabelecimento != null ? numeroEstabelecimento : " ", 10, " "); - } - - public String getCodigoAutorizacao() { - return codigoAutorizacao; - } - - public void setCodigoAutorizacao(String codigoAutorizacao) { - this.codigoAutorizacao = StringUtils.rightPad(codigoAutorizacao != null ? truncStr(codigoAutorizacao, 22) : " ", 22, "0"); - } - - public String getCantParcelas() { - return cantParcelas; - } - - public void setCantParcelas(String cantParcelas) { - this.cantParcelas = StringUtils.isNotEmpty(cantParcelas) ? StringUtils.leftPad(cantParcelas, 4,"0") : " "; - } - -} +package com.rjconsultores.integracaoreceitadespesa.entidades; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.List; + +import org.apache.commons.lang.StringUtils; + +public class DespesaReceita { + protected String dataLancamento; // DD/MM/YYYY + protected String codigoEmpresa; // 011 003 Numerico + protected final String codigoFilial = "001"; // 014 003 Numerico + protected String localArrecadacao; // 017 005 Alfanumerico + protected final String numeroDaGuia = " "; // 022 025 Alfanumerico + protected String dataMovimento; // 047 010 Alfanumerico + protected final String usuarioGlobus = "TOTALBUS ";// 057 015 Alfanumerico + protected final String turno = "01";// 072 002 Numerico + protected String codigoReceitaDespesa;// 074 010 Numerico CONSTANTE CODIGO_RECEITA_DESPESA_GLOBUS + protected String identificadorReceitaDespesa;// 084 001 Alfanumerico + protected String valorLancamento;// 085 013 Numerico + protected final String numeroContratoTurismo = "0000000000"; // 098 010 Numerico + protected final String numeroReciboTurismo = " "; // 108 010 Alfanumerico + protected final String formaPagamentoTurismo = " ";// 118 002 Numerico + protected String tipoPagamentoTurismo = " ";// 120 002 Numerico + protected String descricaoDetalhada = " ";// 122 80 Alfanumerico + protected final String documentoVenda = "000000";// 202 6 Numerico + protected String tipoDocumentoVenda = " ";// 208 1 Alfanumerico + protected final String numerodocumentoCPG = "0000000000";// 209 10 Numerico + protected String formaPagamentoId = "0";// 218 Numerico + protected String tx_id = " "; + protected String numFolioSistema = " "; + protected final String finalLinha = "*";// 239 1 Alfanumerico + + protected String numeroEstabelecimento = " "; + protected String codigoAutorizacao = " "; + protected String cantParcelas = "0000"; + + + protected SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); + + public DespesaReceita() { + + } + + public void preencheLinha(List rows) { + StringBuilder sb = new StringBuilder(); + sb.append(dataLancamento); + sb.append(codigoEmpresa); + sb.append(codigoFilial); + sb.append(localArrecadacao.toUpperCase()); + sb.append(numeroDaGuia); + sb.append(dataMovimento); + sb.append(usuarioGlobus); + sb.append(turno); + sb.append(codigoReceitaDespesa); + sb.append(identificadorReceitaDespesa.toUpperCase()); + sb.append(valorLancamento); + sb.append(StringUtils.rightPad("", 10, " ")); + sb.append(numeroReciboTurismo); + sb.append(getFormaPagamentoTurismo()); + sb.append(getTipoPagamentoTurismo()); + sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(descricaoDetalhada) ? truncStr(descricaoDetalhada, 100) : "", 100, " ")); + sb.append(documentoVenda); + sb.append(tipoDocumentoVenda); + sb.append(StringUtils.rightPad("", 9, "0")); + sb.append(formaPagamentoId); + sb.append(finalLinha); + sb.append(System.getProperty("line.separator")); + rows.add(sb.toString()); + } + + public void preencheLinhaComporte(List rows) { + StringBuilder sb = new StringBuilder(); + sb.append(StringUtils.rightPad(dataLancamento.trim(), 10, " ")); //10 + sb.append(StringUtils.leftPad(codigoEmpresa.trim(), 3, "0")); //13 + sb.append(StringUtils.leftPad(codigoFilial.trim(), 3, "0")); //16 + sb.append(StringUtils.rightPad(truncStr(localArrecadacao.toUpperCase(), 5), 5, " ")); //21 + sb.append(StringUtils.rightPad(numeroDaGuia.trim(), 25, " ")); //46 + sb.append(StringUtils.rightPad(dataMovimento.trim(), 10, " ")); //56 + sb.append(StringUtils.rightPad(usuarioGlobus.trim(), 15, " ")); //71 + sb.append(StringUtils.leftPad(turno.trim(), 2, "0")); //73 + sb.append(StringUtils.leftPad(codigoReceitaDespesa.trim(), 10, "0")); //83 + sb.append(StringUtils.rightPad(identificadorReceitaDespesa.toUpperCase().trim(), 1, " ")); //84 + sb.append(StringUtils.leftPad(valorLancamento.trim(), 13, "0")); //97 + sb.append(StringUtils.rightPad(numeroContratoTurismo.trim(), 10, "0")); //107 + sb.append(StringUtils.rightPad(numeroReciboTurismo.trim(), 10, "0")); //117 + sb.append(StringUtils.leftPad(getFormaPagamentoId().trim(), 2, "0")); //119 + sb.append(StringUtils.leftPad(getTipoPagamentoTurismo().trim(), 2, "0")); //121 + sb.append(StringUtils.rightPad(descricaoDetalhada.trim(), 80, " ")); //201 + sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(numeroEstabelecimento) ? StringUtils.rightPad(numeroEstabelecimento, 10, "0").substring(0,10) : "", 10, "0"));//211 + sb.append(codigoAutorizacao != null ? StringUtils.rightPad(codigoAutorizacao, 25, "0") : StringUtils.rightPad("", 25, "0")); //236 + sb.append(StringUtils.rightPad(formaPagamentoId.trim(), 2, "0")); //238 + sb.append(StringUtils.leftPad(cantParcelas.trim(), 4, "0")); //242 + sb.append(StringUtils.leftPad(numFolioSistema.trim(), 16, " ")); //258 + sb.append(StringUtils.leftPad(tx_id.trim(), 35, " ")); //293 + sb.append(finalLinha); + sb.append(System.getProperty("line.separator")); + + rows.add(sb.toString()); + } + + public void preencheLinhaLayoutNovo(List rows) { + StringBuilder sb = new StringBuilder(); + sb.append(StringUtils.rightPad(dataLancamento.trim(), 10, " ")); + sb.append(StringUtils.leftPad(codigoEmpresa.trim(), 3, "0")); + sb.append(StringUtils.leftPad(codigoFilial.trim(), 3, "0")); + sb.append(StringUtils.rightPad(truncStr(localArrecadacao.toUpperCase(), 5), 5, " ")); + sb.append(StringUtils.rightPad(numeroDaGuia.trim(), 25, " ")); + sb.append(StringUtils.rightPad(dataMovimento.trim(), 10, " ")); + sb.append(StringUtils.rightPad(usuarioGlobus.trim(), 15, " ")); + sb.append(StringUtils.leftPad(turno.trim(), 2, "0")); + sb.append(StringUtils.leftPad(codigoReceitaDespesa.trim(), 10, "0")); + sb.append(StringUtils.rightPad(identificadorReceitaDespesa.toUpperCase().trim(), 1, " ")); + sb.append(StringUtils.leftPad(valorLancamento.trim(), 13, "0")); + sb.append(StringUtils.rightPad("", 10, " ")); + sb.append(StringUtils.rightPad(numeroReciboTurismo.trim(), 10, " ")); + sb.append(StringUtils.leftPad(getFormaPagamentoId().trim(), 2, "0")); + sb.append(StringUtils.leftPad(getTipoPagamentoTurismo().trim(), 2, "0")); + sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(descricaoDetalhada) ? truncStr(descricaoDetalhada, 100) : "", 100, " ")); + sb.append(StringUtils.leftPad(documentoVenda.trim(), 6, "0")); + sb.append(StringUtils.rightPad(tipoDocumentoVenda.trim(), 1, " ")); + sb.append(StringUtils.rightPad("", 10, "0")); + sb.append(finalLinha); + sb.append(System.getProperty("line.separator")); + rows.add(sb.toString()); + } + + public void setDataLancamento(Date dataLancamento) { + this.dataLancamento = sdf.format(dataLancamento); + } + + public void setCodigoEmpresa(Integer codigoEmpresa) { + this.codigoEmpresa = StringUtils.leftPad(codigoEmpresa.toString(), 3, "0"); + } + + public void setLocalArrecadacao(Integer localArrecadacao) { + this.localArrecadacao = StringUtils.rightPad(localArrecadacao != null ? truncStr(localArrecadacao.toString(), 5) : "", 5, " "); + } + + public void setLocalArrecadacao(String localArrecadacao) { + this.localArrecadacao = StringUtils.rightPad(localArrecadacao != null ? truncStr(localArrecadacao, 6) : "", 5, ""); + } + + public void setDataMovimento(Date dataMovimento) { + this.dataMovimento = sdf.format(dataMovimento); + } + + public void setCodigoReceitaDespesa(String codigoReceitaDespesa) { + this.codigoReceitaDespesa = StringUtils.leftPad(codigoReceitaDespesa != null ? codigoReceitaDespesa : "0", 10, "0"); + } + + public void setIdentificadorReceitaDespesa(String identificadorReceitaDespesa) { + this.identificadorReceitaDespesa = identificadorReceitaDespesa.toUpperCase(); + } + + public void setValorLancamento(String valorLancamento) { + this.valorLancamento = StringUtils.leftPad(valorLancamento!=null?truncStr(valorLancamento.replace(",", "").replace(".", ""), 100):"", 13, "0"); + } + + public void setDescricaoDetalhada(String desc) { + this.descricaoDetalhada = StringUtils.rightPad(StringUtils.isNotEmpty(desc) ? truncStr(desc, 100) : "", 100, " "); + } + + public String getFormaPagamentoTurismo() { + return formaPagamentoTurismo; + } + + public String getTipoPagamentoTurismo() { + return tipoPagamentoTurismo; + } + + public void setTipoPagamentoTurismo(String tipoPagamentoTurismo) { + this.tipoPagamentoTurismo = StringUtils.leftPad(StringUtils.isNotEmpty(tipoPagamentoTurismo) ? truncStr(tipoPagamentoTurismo, 2):tipoPagamentoTurismo, 2, " "); + } + + public String getFormaPagamentoId() { + return formaPagamentoId; + } + + public void setFormaPagamentoId(String formaPagamentoId) { + this.formaPagamentoId = StringUtils.leftPad(StringUtils.isNotEmpty(formaPagamentoId) ? truncStr(formaPagamentoId.toString(), 2) : "", 1, "0"); + } + + protected String truncStr(String str, int size) { + if (str.length() > size) { + return str.substring(0, size - 1); + } + return str; + } + + public String getTipoDocumentoVenda() { + return tipoDocumentoVenda; + } + + public void setTipoDocumentoVenda(String tipoDocumentoVenda) { + this.tipoDocumentoVenda = tipoDocumentoVenda; + } + + public String getNumeroEstabelecimento() { + return numeroEstabelecimento; + } + + public void setNumeroEstabelecimento(String numeroEstabelecimento) { + this.numeroEstabelecimento = StringUtils.rightPad(numeroEstabelecimento != null ? numeroEstabelecimento : " ", 10, " "); + } + + public String getCodigoAutorizacao() { + return codigoAutorizacao; + } + + public void setCodigoAutorizacao(String codigoAutorizacao) { + this.codigoAutorizacao = StringUtils.rightPad(codigoAutorizacao != null ? truncStr(codigoAutorizacao, 22) : " ", 22, "0"); + } + + public String getCantParcelas() { + return cantParcelas; + } + + public void setCantParcelas(String cantParcelas) { + this.cantParcelas = StringUtils.isNotEmpty(cantParcelas) ? StringUtils.leftPad(cantParcelas, 4,"0") : " "; + } + +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java b/IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java similarity index 97% rename from src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java rename to IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java index c42c1ef7c..3a8431f52 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java +++ b/IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/entidades/DespesaReceitaComporte.java @@ -1,87 +1,87 @@ -package com.rjconsultores.integracaoreceitadespesa.entidades; - -import java.util.List; - -import org.apache.commons.lang.StringUtils; - -public class DespesaReceitaComporte extends DespesaReceita { - - protected String numeroEstabelecimento; - protected String codigoAutorizacao; - protected String cantParcelas = ""; - protected String numfoliosistema = ""; - protected String txId = ""; - - @Override - public void preencheLinha(List rows) { - StringBuilder sb = new StringBuilder(); - sb.append(StringUtils.rightPad(dataLancamento.trim(), 10, " ")); //10 - sb.append(StringUtils.leftPad(codigoEmpresa.trim(), 3, "0")); //13 - sb.append(StringUtils.leftPad(codigoFilial.trim(), 3, "0")); //16 - sb.append(StringUtils.rightPad(truncStr(localArrecadacao.toUpperCase(), 5), 5, " ")); //21 - sb.append(StringUtils.rightPad(numeroDaGuia.trim(), 25, " ")); //46 - sb.append(StringUtils.rightPad(dataMovimento.trim(), 10, " ")); //56 - sb.append(StringUtils.rightPad(usuarioGlobus.trim(), 15, " ")); //71 - sb.append(StringUtils.leftPad(turno.trim(), 2, "0")); //73 - sb.append(StringUtils.leftPad(codigoReceitaDespesa.trim(), 10, "0")); //83 - sb.append(StringUtils.rightPad(identificadorReceitaDespesa.toUpperCase().trim(), 1, "0")); //84 - sb.append(StringUtils.leftPad(valorLancamento.trim(), 13, "0")); //97 - sb.append(StringUtils.leftPad(numeroContratoTurismo.trim(), 10, "0"));//107 - sb.append(StringUtils.leftPad(numeroReciboTurismo.trim(), 10, "0"));//117 - sb.append(StringUtils.leftPad(getFormaPagamentoTurismo().trim(),2,"0"));//119 - sb.append(StringUtils.leftPad(getTipoPagamentoTurismo().trim(), 2, "0"));//121 - sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(descricaoDetalhada) ? truncStr(descricaoDetalhada, 80) : "", 80, " ")); //201 - sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(numeroEstabelecimento) ? StringUtils.rightPad(numeroEstabelecimento, 10, "0").substring(0,10) : "", 10, "0")); //211 - sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(codigoAutorizacao) ? StringUtils.rightPad(codigoAutorizacao, 22, " ").substring(0,22) : "", 22, " "));//237 - sb.append(StringUtils.leftPad("0", 2, "0"));//239 - sb.append(StringUtils.leftPad(" ", 1, " "));//239 - sb.append(StringUtils.leftPad(formaPagamentoId, 2, "0"));//239 - sb.append(StringUtils.isNotEmpty(cantParcelas) ? StringUtils.leftPad(cantParcelas, 4,"0") : "0000");//243 - sb.append(StringUtils.leftPad(numfoliosistema,16, " "));//259 - sb.append(StringUtils.leftPad(txId,35, " "));//294 - sb.append(finalLinha); - sb.append(System.getProperty("line.separator")); - rows.add(sb.toString()); - } - - public String getNumeroEstabelecimento() { - return numeroEstabelecimento; - } - - public void setNumeroEstabelecimento(String numeroEstabelecimento) { - this.numeroEstabelecimento = StringUtils.rightPad(numeroEstabelecimento != null ? numeroEstabelecimento : " ", 10, " "); - } - - public String getCodigoAutorizacao() { - return codigoAutorizacao; - } - - public void setCodigoAutorizacao(String codigoAutorizacao) { - this.codigoAutorizacao = codigoAutorizacao; - } - - public String getCantParcelas() { - return cantParcelas; - } - - public void setCantParcelas(String cantParcelas) { - this.cantParcelas = StringUtils.isNotEmpty(cantParcelas) ? StringUtils.leftPad(cantParcelas, 4,"0") : "0000"; - } - - public String getNumfoliosistema() { - return numfoliosistema; - } - - public void setNumfoliosistema(String numfoliosistema) { - this.numfoliosistema = StringUtils.leftPad(numfoliosistema != null ? numfoliosistema :StringUtils.leftPad(" ", 16) , 16, " "); - } - - public String getTxId() { - return txId; - } - - public void setTxId(String txId) { - this.txId = StringUtils.leftPad(txId != null ? truncStr(txId, 36) : StringUtils.leftPad(" ", 35), 35, " "); - } - -} +package com.rjconsultores.integracaoreceitadespesa.entidades; + +import java.util.List; + +import org.apache.commons.lang.StringUtils; + +public class DespesaReceitaComporte extends DespesaReceita { + + protected String numeroEstabelecimento; + protected String codigoAutorizacao; + protected String cantParcelas = ""; + protected String numfoliosistema = ""; + protected String txId = ""; + + @Override + public void preencheLinha(List rows) { + StringBuilder sb = new StringBuilder(); + sb.append(StringUtils.rightPad(dataLancamento.trim(), 10, " ")); //10 + sb.append(StringUtils.leftPad(codigoEmpresa.trim(), 3, "0")); //13 + sb.append(StringUtils.leftPad(codigoFilial.trim(), 3, "0")); //16 + sb.append(StringUtils.rightPad(truncStr(localArrecadacao.toUpperCase(), 5), 5, " ")); //21 + sb.append(StringUtils.rightPad(numeroDaGuia.trim(), 25, " ")); //46 + sb.append(StringUtils.rightPad(dataMovimento.trim(), 10, " ")); //56 + sb.append(StringUtils.rightPad(usuarioGlobus.trim(), 15, " ")); //71 + sb.append(StringUtils.leftPad(turno.trim(), 2, "0")); //73 + sb.append(StringUtils.leftPad(codigoReceitaDespesa.trim(), 10, "0")); //83 + sb.append(StringUtils.rightPad(identificadorReceitaDespesa.toUpperCase().trim(), 1, "0")); //84 + sb.append(StringUtils.leftPad(valorLancamento.trim(), 13, "0")); //97 + sb.append(StringUtils.leftPad(numeroContratoTurismo.trim(), 10, "0"));//107 + sb.append(StringUtils.leftPad(numeroReciboTurismo.trim(), 10, "0"));//117 + sb.append(StringUtils.leftPad(getFormaPagamentoTurismo().trim(),2,"0"));//119 + sb.append(StringUtils.leftPad(getTipoPagamentoTurismo().trim(), 2, "0"));//121 + sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(descricaoDetalhada) ? truncStr(descricaoDetalhada, 80) : "", 80, " ")); //201 + sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(numeroEstabelecimento) ? StringUtils.rightPad(numeroEstabelecimento, 10, "0").substring(0,10) : "", 10, "0")); //211 + sb.append(StringUtils.rightPad(StringUtils.isNotEmpty(codigoAutorizacao) ? StringUtils.rightPad(codigoAutorizacao, 22, " ").substring(0,22) : "", 22, " "));//237 + sb.append(StringUtils.leftPad("0", 2, "0"));//239 + sb.append(StringUtils.leftPad(" ", 1, " "));//239 + sb.append(StringUtils.leftPad(formaPagamentoId, 2, "0"));//239 + sb.append(StringUtils.isNotEmpty(cantParcelas) ? StringUtils.leftPad(cantParcelas, 4,"0") : "0000");//243 + sb.append(StringUtils.leftPad(numfoliosistema,16, " "));//259 + sb.append(StringUtils.leftPad(txId,35, " "));//294 + sb.append(finalLinha); + sb.append(System.getProperty("line.separator")); + rows.add(sb.toString()); + } + + public String getNumeroEstabelecimento() { + return numeroEstabelecimento; + } + + public void setNumeroEstabelecimento(String numeroEstabelecimento) { + this.numeroEstabelecimento = StringUtils.rightPad(numeroEstabelecimento != null ? numeroEstabelecimento : " ", 10, " "); + } + + public String getCodigoAutorizacao() { + return codigoAutorizacao; + } + + public void setCodigoAutorizacao(String codigoAutorizacao) { + this.codigoAutorizacao = codigoAutorizacao; + } + + public String getCantParcelas() { + return cantParcelas; + } + + public void setCantParcelas(String cantParcelas) { + this.cantParcelas = StringUtils.isNotEmpty(cantParcelas) ? StringUtils.leftPad(cantParcelas, 4,"0") : "0000"; + } + + public String getNumfoliosistema() { + return numfoliosistema; + } + + public void setNumfoliosistema(String numfoliosistema) { + this.numfoliosistema = StringUtils.leftPad(numfoliosistema != null ? numfoliosistema :StringUtils.leftPad(" ", 16) , 16, " "); + } + + public String getTxId() { + return txId; + } + + public void setTxId(String txId) { + this.txId = StringUtils.leftPad(txId != null ? truncStr(txId, 36) : StringUtils.leftPad(" ", 35), 35, " "); + } + +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/Empresa.java b/IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/entidades/Empresa.java similarity index 94% rename from src/com/rjconsultores/integracaoreceitadespesa/entidades/Empresa.java rename to IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/entidades/Empresa.java index e5af44183..debc1c81a 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/Empresa.java +++ b/IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/entidades/Empresa.java @@ -1,11 +1,11 @@ -package com.rjconsultores.integracaoreceitadespesa.entidades; - -public class Empresa { - public Integer codigo; - public String nombempresa; - - @Override - public String toString(){ - return nombempresa; - } -} +package com.rjconsultores.integracaoreceitadespesa.entidades; + +public class Empresa { + public Integer codigo; + public String nombempresa; + + @Override + public String toString(){ + return nombempresa; + } +} diff --git a/src/com/rjconsultores/integracaoreceitadespesa/entidades/PuntoVenta.java b/IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/entidades/PuntoVenta.java similarity index 95% rename from src/com/rjconsultores/integracaoreceitadespesa/entidades/PuntoVenta.java rename to IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/entidades/PuntoVenta.java index 1973ab7e5..62d041503 100644 --- a/src/com/rjconsultores/integracaoreceitadespesa/entidades/PuntoVenta.java +++ b/IntegracaoReceitaDespesa/src/com/rjconsultores/integracaoreceitadespesa/entidades/PuntoVenta.java @@ -1,11 +1,11 @@ -package com.rjconsultores.integracaoreceitadespesa.entidades; - -public class PuntoVenta { - public Integer codigo; - public String nombpuntoventa; - - @Override - public String toString(){ - return nombpuntoventa; - } -} +package com.rjconsultores.integracaoreceitadespesa.entidades; + +public class PuntoVenta { + public Integer codigo; + public String nombpuntoventa; + + @Override + public String toString(){ + return nombpuntoventa; + } +}