From 7fc8a4e1b4202a4162817244a3552015f8e3ee90 Mon Sep 17 00:00:00 2001 From: julio Date: Fri, 25 Aug 2017 18:33:51 +0000 Subject: [PATCH] bug #9608 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@73079 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../dao/hibernate/FiscalHibernateDAO.java | 84 ++++++++++++++----- .../utilerias/impressaormd/vo/FolioRMD.java | 55 ++++++++++++ 2 files changed, 116 insertions(+), 23 deletions(-) diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/FiscalHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/FiscalHibernateDAO.java index ffdc52295..31d0aa423 100644 --- a/src/com/rjconsultores/ventaboletos/dao/hibernate/FiscalHibernateDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/FiscalHibernateDAO.java @@ -1447,8 +1447,8 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO sb.append(" and c.feccreacion >= to_date(?,'DD/MM/YYYY HH24:MI:SS') and c.feccreacion <= to_date(?,'DD/MM/YYYY HH24:MI:SS')"); sb.append(" and c.empresacorrida_id = ?"); sb.append(" and ((case when s.aliasorigen_id is null then eo.cveestado else eos.cveestado end) = ?)"); -// sb.append(" and r2.numserie20 = 'BE091410100011239069'"); - + // sb.append(" and r2.numserie20 = 'BE091410100011239069'"); + try { PreparedStatement ps = connection.prepareStatement(sb.toString()); ps.setString(1, DateUtil.getStringDate(inicio, DATE_FORMAT_DMY) + " 00:00:00"); @@ -1459,7 +1459,7 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO ResultSet rs = ps.executeQuery(); ExportacaoECFBase registro = null; - + while (rs.next()) { BigDecimal valortributado = BigDecimal.ZERO; BigDecimal valortotal = BigDecimal.ZERO; @@ -1471,7 +1471,7 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO if (rs.getBigDecimal("valortotal") != null) { valortotal = rs.getBigDecimal("valortotal"); } - + registro = new ExportacaoECFBase(); registro.setEcf(rs.getString("ecf")); registro.setNumeroSerie(rs.getString("numserie")); @@ -1499,7 +1499,7 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO registro.setIsenta(rs.getInt("isenta")); registro.setValorTributado(valortributado); registro.setValorTotal(valortotal); - + exportacaoECF.getListaRegistroECF().add(registro); } @@ -1507,14 +1507,14 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO ps.close(); exportacaoECF.gerarListas(); - + } catch (Exception e) { log.error(e.getMessage(), e); } return exportacaoECF; } - + @Override public List buscarRegistroECFTipoCFC(Connection connection, Date inicio, Date fim, Integer empresaId, String cveestado) { List retorno = new ArrayList(); @@ -2456,36 +2456,36 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO sb.append(" b.numfoliopreimpreso,"); sb.append(" (case when eo.cveestado = ed.cveestado then 5357 else 6357 end),"); sb.append(" ed.cveestado"); - + try { PreparedStatement ps = connection.prepareStatement(sb.toString()); ps.setString(1, DateUtil.getStringDate(inicio, DATE_FORMAT_DMY) + " 00:00:00"); ps.setString(2, DateUtil.getStringDate(fim, DATE_FORMAT_DMY) + " 23:59:59"); ps.setLong(3, Long.valueOf(empresaId)); ps.setString(4, cveestado); - + ResultSet rs = ps.executeQuery(); - + ExportacaoRMDBase registro = null; - + while (rs.next()) { registro = new ExportacaoRMDBase(); - + exportacaoRMD.getListaRegistroRMD().add(registro); } - + rs.close(); ps.close(); - + exportacaoRMD.gerarListas(); - + } catch (Exception e) { log.error(e.getMessage(), e); } return exportacaoRMD; } - + @Override public List buscarRegistroRMDTipoPAR(Connection connection, Date inicio, Date fim, Integer empresaId, String cveestado) { List retorno = new ArrayList(); @@ -3250,7 +3250,8 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO boletos.add(boletoAgr); for (String folio : foliosRmd) { - insereConsulmoFolioRMD(connection, inicio, empresaId, estado.getEstadoId(), aidf, folio, isCancela, isInativa, false, isECF, isBPR); + insereConsulmoFolioRMD(connection, inicio, empresaId, estado.getEstadoId(), aidf, folio, + isCancela, isInativa, false, isECF, isBPR, null, null, null, null, null, null); } marcarRMDBoletos(connection, boletos, null, null); @@ -3292,12 +3293,16 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO } private void insereConsulmoFolioRMD(Connection connection, Date dataBilhete, Integer empresaId, Integer estadoId, Aidf aidf, - String folio, boolean isCancela, boolean isInativa, boolean isImpresso, boolean isECF, boolean isBPR) { + String folio, boolean isCancela, boolean isInativa, boolean isImpresso, boolean isECF, boolean isBPR, + BigDecimal valorContabil, BigDecimal baseCalculo, BigDecimal aliquota, BigDecimal isentos, + BigDecimal outros, BigDecimal icms) { + PreparedStatement pstmt = null; try { StringBuilder sb = new StringBuilder(); sb.append(" insert into FOLIO_CONSUMO_RMD (FOLIOCONSUMORMD_ID, RMD_ID, FOLIO, "); sb.append(" EMPRESA_ID, ESTADO_ID, INDCANCELACION, INDINACTIVO, INDIMPRESSO, FECHORFOLIO, "); + sb.append(" VALORCONTABIL, BASECALCULO, ALIQUOTA, ISENTOS, OUTROS, ICMS, "); sb.append(" INDECF, INDBPR, ACTIVO, FECMODIF, USUARIO_ID) "); sb.append(" values (").append("FOLIO_CONSUMO_RMD_SEQ.NEXTVAL").append(","); sb.append(aidf.getAidfId()).append(",").append(folio).append(","); @@ -3311,6 +3316,12 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO sb.append(0).append(",").append(0).append(",").append(1).append(","); sb.append("?").append(","); + sb.append("?").append(","); + sb.append("?").append(","); + sb.append("?").append(","); + sb.append("?").append(","); + sb.append("?").append(","); + sb.append("?").append(","); if (isECF) sb.append(1).append(",").append(0).append(","); @@ -3321,6 +3332,12 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO pstmt = connection.prepareStatement(sb.toString()); pstmt.setTimestamp(1, new java.sql.Timestamp(DateUtil.inicioFecha(dataBilhete).getTime())); + pstmt.setBigDecimal(2, MoneyHelper.arredondar(valorContabil)); + pstmt.setBigDecimal(3, MoneyHelper.arredondar(baseCalculo)); + pstmt.setBigDecimal(4, MoneyHelper.arredondar(aliquota)); + pstmt.setBigDecimal(5, MoneyHelper.arredondar(isentos)); + pstmt.setBigDecimal(6, MoneyHelper.arredondar(outros)); + pstmt.setBigDecimal(7, MoneyHelper.arredondar(icms)); pstmt.executeUpdate(); } catch (Exception e) { @@ -3346,6 +3363,13 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO int contBolto = 0; Date dataBilhete = null; + BigDecimal valorContabil = BigDecimal.ZERO; + BigDecimal baseCalculo = BigDecimal.ZERO; + BigDecimal aliquota = BigDecimal.ZERO; + BigDecimal isentos = BigDecimal.ZERO; + BigDecimal outros = BigDecimal.ZERO; + BigDecimal icms = BigDecimal.ZERO; + for (ImpressaoRMD imp : rmds) { if (dataBilhete == null) @@ -3361,7 +3385,8 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO rmdIterate++; cont = 0; - insereConsulmoFolioRMD(connection, dataBilhete, empresaId, estadoId, aidf, rmdIterate.toString(), false, false, true, isECF, isBPR); + insereConsulmoFolioRMD(connection, dataBilhete, empresaId, estadoId, aidf, rmdIterate.toString(), false, false, true, isECF, isBPR, + valorContabil, baseCalculo, aliquota, isentos, outros, icms); marcarRMDBoletos(connection, boletos, aidf.getAidfId(), rmdIterate); @@ -3370,6 +3395,13 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO boletoAgr = null; contBolto = 0; dataBilhete = imp.getData(); + + valorContabil = BigDecimal.ZERO; + baseCalculo = BigDecimal.ZERO; + aliquota = BigDecimal.ZERO; + isentos = BigDecimal.ZERO; + outros = BigDecimal.ZERO; + icms = BigDecimal.ZERO; } for (DetalhadoRMD det : imp.getDetalhada()) { @@ -3388,12 +3420,20 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO contBolto++; } cont++; + + valorContabil = valorContabil.add(imp.getValorContabil()); + baseCalculo = baseCalculo.add(imp.getBaseCalculo()); + aliquota = imp.getAliquota(); + isentos = isentos.add(imp.getIsentos()); + outros = outros.add(imp.getOutros()); + icms = imp.getIcms(); } - + if (boletos.isEmpty()) { rmdIterate++; boletos.add(boletoAgr); - insereConsulmoFolioRMD(connection, dataBilhete, empresaId, estadoId, aidf, rmdIterate.toString(), false, false, true, isECF, isBPR); + insereConsulmoFolioRMD(connection, dataBilhete, empresaId, estadoId, aidf, rmdIterate.toString(), false, false, true, isECF, isBPR, + valorContabil, baseCalculo, aliquota, isentos, outros, icms); marcarRMDBoletos(connection, boletos, aidf.getAidfId(), rmdIterate); } } @@ -4254,7 +4294,6 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO sql.append(" and e.empresa_id = :EMPRESA_ID "); sql.append(" and r4.datamov between :STR_INICIO and :STR_FIM "); sql.append(" and coalesce(eos.cveestado, eo.cveestado) in ( ").append(ufs).append(" ) "); - sql.append(" and coalesce(r4.indcancelamento, 'N') <> 'S' "); sql.append(" "); sql.append("union "); sql.append(" "); @@ -4398,7 +4437,6 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO sql.append(" and caj.indcancelacion = 1 "); sql.append(" and caj.indstatusboleto = 'C' "); sql.append(" and coalesce(eos.cveestado, eo.cveestado) in ( ").append(ufs).append(" ) "); - sql.append(" and coalesce(r4.indcancelamento, 'N') <> 'S' "); sql.append(" "); sql.append("union "); sql.append(" "); diff --git a/src/com/rjconsultores/ventaboletos/utilerias/impressaormd/vo/FolioRMD.java b/src/com/rjconsultores/ventaboletos/utilerias/impressaormd/vo/FolioRMD.java index 0ec7f0f0e..d2dbb0c0b 100644 --- a/src/com/rjconsultores/ventaboletos/utilerias/impressaormd/vo/FolioRMD.java +++ b/src/com/rjconsultores/ventaboletos/utilerias/impressaormd/vo/FolioRMD.java @@ -1,5 +1,6 @@ package com.rjconsultores.ventaboletos.utilerias.impressaormd.vo; +import java.math.BigDecimal; import java.util.Date; public class FolioRMD { @@ -13,6 +14,12 @@ public class FolioRMD { private String tipo; private Date fechorfolioDate; private String doc; + private BigDecimal valorContabil; + private BigDecimal baseCalculo; + private BigDecimal aliquota; + private BigDecimal isentos; + private BigDecimal outros; + private BigDecimal icms; public String getFoliormd() { return foliormd; @@ -86,4 +93,52 @@ public class FolioRMD { this.doc = doc; } + public BigDecimal getValorContabil() { + return valorContabil; + } + + public void setValorContabil(BigDecimal valorContabil) { + this.valorContabil = valorContabil; + } + + public BigDecimal getBaseCalculo() { + return baseCalculo; + } + + public void setBaseCalculo(BigDecimal baseCalculo) { + this.baseCalculo = baseCalculo; + } + + public BigDecimal getAliquota() { + return aliquota; + } + + public void setAliquota(BigDecimal aliquota) { + this.aliquota = aliquota; + } + + public BigDecimal getIsentos() { + return isentos; + } + + public void setIsentos(BigDecimal isentos) { + this.isentos = isentos; + } + + public BigDecimal getOutros() { + return outros; + } + + public void setOutros(BigDecimal outros) { + this.outros = outros; + } + + public BigDecimal getIcms() { + return icms; + } + + public void setIcms(BigDecimal icms) { + this.icms = icms; + } + }