From f813d6b1cd4259b67b52c3a7a3cce7694a6d7b13 Mon Sep 17 00:00:00 2001 From: julio Date: Wed, 22 May 2019 18:56:08 +0000 Subject: [PATCH] fixes bug#14405 dev:julio qua: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@93627 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../utilerias/exportacao/ExportacaoBpe.java | 28 +++++++++++++------ 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/src/com/rjconsultores/ventaboletos/utilerias/exportacao/ExportacaoBpe.java b/src/com/rjconsultores/ventaboletos/utilerias/exportacao/ExportacaoBpe.java index 4c353114d..4fa4e70a5 100644 --- a/src/com/rjconsultores/ventaboletos/utilerias/exportacao/ExportacaoBpe.java +++ b/src/com/rjconsultores/ventaboletos/utilerias/exportacao/ExportacaoBpe.java @@ -14,6 +14,7 @@ import org.apache.log4j.Logger; import org.springframework.stereotype.Service; import com.rjconsultores.ventaboletos.constantes.Constantes; +import com.rjconsultores.ventaboletos.service.ConstanteService; import com.rjconsultores.ventaboletos.utilerias.UtiliteriasFiscal; import com.rjconsultores.ventaboletos.utilerias.exportacao.bpe.ExportacaoBPEBase; import com.rjconsultores.ventaboletos.utilerias.exportacao.bpe.ExportacaoBPETipoBPE; @@ -21,6 +22,7 @@ import com.rjconsultores.ventaboletos.utilerias.exportacao.bpe.ExportacaoBPETipo import com.rjconsultores.ventaboletos.utilerias.exportacao.bpe.ExportacaoBPETipoOBE; import com.rjconsultores.ventaboletos.utilerias.exportacao.bpe.ExportacaoBPETipoPRC; import com.rjconsultores.ventaboletos.utilerias.exportacao.bpe.ExportacaoBPEVo; +import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; @Service("exportacaoBpe") public class ExportacaoBpe { @@ -39,10 +41,16 @@ public class ExportacaoBpe { File arquivo = File.createTempFile(nomeArquivo + "-", ".fs"); PrintWriter writer = new PrintWriter(new OutputStreamWriter(new FileOutputStream(arquivo), Constantes.UTF_8)); - adicionarRegistroBPETipoCAB(writer, dataInicial, dataFinal, nomeEmpresa, nomeArquivo); + ConstanteService constanteService = (ConstanteService) AppContext.getApplicationContext().getBean("constanteService"); + String valorConstante = constanteService.buscarPorNomeConstante("IMPORT_BPE_LAYOUT_DIF").getValorconstante(); + + boolean isVersao131 = StringUtils.isBlank(valorConstante) ? true : false; + String versaoLayout = StringUtils.isBlank(valorConstante) ? "131" : valorConstante; + + adicionarRegistroBPETipoCAB(writer, dataInicial, dataFinal, nomeEmpresa, nomeArquivo, versaoLayout); int linhas = 2; - + if (registro.getListaRegistroBaseBPE() != null && registro.getListaRegistroBaseBPE().size() == 0) { return null; } @@ -50,7 +58,7 @@ public class ExportacaoBpe { for (ExportacaoBPEBase ee : registro.getListaRegistroBaseBPE()) { for (ExportacaoBPETipoBPE tipoBPE : ee.getListaRegistroBPE()) { - adicionarRegistroBPETipoBEP(writer, tipoBPE); + adicionarRegistroBPETipoBEP(writer, tipoBPE, isVersao131); linhas++; } @@ -85,10 +93,10 @@ public class ExportacaoBpe { return null; } - private void adicionarRegistroBPETipoCAB(final PrintWriter writer, final Date dataInicial, final Date dataFinal, final String nomeEmpresa, final String arquivo) { + private void adicionarRegistroBPETipoCAB(final PrintWriter writer, final Date dataInicial, final Date dataFinal, final String nomeEmpresa, final String arquivo, String versaoLayout) { StringBuilder sb = new StringBuilder(); sb.append("CAB").append(SEPARADOR); - sb.append("131").append(SEPARADOR); + sb.append(versaoLayout).append(SEPARADOR); sb.append("TotalBus").append(SEPARADOR); sb.append(new SimpleDateFormat("yyyyMMdd").format(new Date())).append(SEPARADOR); sb.append(formataCaracter(nomeEmpresa, false, 15)).append(SEPARADOR); @@ -100,7 +108,7 @@ public class ExportacaoBpe { writer.print(sb.toString() + UtiliteriasFiscal.QUEBRA_LINHA); } - private void adicionarRegistroBPETipoBEP(final PrintWriter writer, ExportacaoBPETipoBPE tipoBPE) { + private void adicionarRegistroBPETipoBEP(final PrintWriter writer, ExportacaoBPETipoBPE tipoBPE, boolean isVersao131) { String tipoRegistro = "BPE"; String estabelecimento = tipoBPE.getEstabelecimento(); @@ -110,7 +118,7 @@ public class ExportacaoBpe { String dataEmissao = StringUtils.isBlank(tipoBPE.getDataEmissao()) ? VAZIO : tipoBPE.getDataEmissao(); String dataPrestacao = StringUtils.isBlank(tipoBPE.getDataPrestacao()) ? VAZIO : tipoBPE.getDataPrestacao(); String situacaoDocumento = tipoBPE.getSituacaoDoc(); - + String valorBruto = tipoBPE.getValorBruto() == null ? VAZIO : formataValor(tipoBPE.getValorBruto(), 15); String valorDesconto = tipoBPE.getValorDesconto() == null ? VAZIO : formataValor(tipoBPE.getValorDesconto(), 15); String UFOrigem = tipoBPE.getUFOrigem(); @@ -140,6 +148,7 @@ public class ExportacaoBpe { String codigoComplementar = VAZIO; String observacao = VAZIO; String codAjusteFiscal = VAZIO; + String exclussaoBCPISCOFINS = VAZIO; StringBuilder sb = new StringBuilder(); sb.append(tipoRegistro).append(SEPARADOR); @@ -174,8 +183,9 @@ public class ExportacaoBpe { sb.append(codigoPrevidenciaria).append(SEPARADOR); sb.append(codigoComplementar).append(SEPARADOR); sb.append(observacao).append(SEPARADOR); - sb.append(codAjusteFiscal); - + sb.append(codAjusteFiscal).append(isVersao131 ? VAZIO : SEPARADOR); + sb.append(isVersao131 ? VAZIO : exclussaoBCPISCOFINS); + writer.print(sb.toString() + UtiliteriasFiscal.QUEBRA_LINHA); }