From 35b2464997ea24270b2bf2382fcfc560e90d2cb6 Mon Sep 17 00:00:00 2001 From: "rafael.henrique" Date: Mon, 2 Jul 2018 17:53:01 +0000 Subject: [PATCH] Remessa Bradesco fixes bug#10881 bug#9803 bug#9100 dev:Rafael Henrique qua:Marcelo git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/GeneradorBoletosCNAB/trunk@83040 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../ventaboletos/ArquivoRemessaItem.java | 5 +- .../bradesco/ArquivoRemessaBradesco.java | 11 +- .../bradesco/DetalheObrigatorioBradesco.java | 431 ++++++++---------- .../layouts/BradescoFlatFile.java | 14 +- .../ventaboletos/utils/FormataUtil.java | 9 + .../ventaboletos/utils/NossoNumeroUtils.java | 21 +- .../LayoutBradescoCNAB400Envio.txg.xml | 39 +- 7 files changed, 266 insertions(+), 264 deletions(-) diff --git a/src/com/rjconsultores/ventaboletos/ArquivoRemessaItem.java b/src/com/rjconsultores/ventaboletos/ArquivoRemessaItem.java index 67527e5a4..9c9c0df7d 100644 --- a/src/com/rjconsultores/ventaboletos/ArquivoRemessaItem.java +++ b/src/com/rjconsultores/ventaboletos/ArquivoRemessaItem.java @@ -25,12 +25,11 @@ public abstract class ArquivoRemessaItem implements ArquivoRemessaItemInteface, } public RodapeRemessa getRodapeRemessa() { this.rodapeRemessa = this.rodapeRemessa == null ? new RodapeRemessaPadrao() : this.rodapeRemessa; - rodapeRemessa.setNumeroSequencialRegistro(titulos.size()); + rodapeRemessa.setNumeroSequencialRegistro(titulos.size() + 1); return rodapeRemessa; } public void setRodapeRemessa(RodapeRemessa rodapeRemessa) { this.rodapeRemessa = rodapeRemessa == null ? new RodapeRemessaPadrao() : rodapeRemessa; - //this.rodapeRemessa = rodapeRemessa; } public abstract void addTitulo(DetalheObrigatorio titulo); @@ -39,6 +38,4 @@ public abstract class ArquivoRemessaItem implements ArquivoRemessaItemInteface, public ArquivoRemessaItemInteface clone() throws CloneNotSupportedException { return (ArquivoRemessaItemInteface) super.clone(); } - - } diff --git a/src/com/rjconsultores/ventaboletos/blocos/bradesco/ArquivoRemessaBradesco.java b/src/com/rjconsultores/ventaboletos/blocos/bradesco/ArquivoRemessaBradesco.java index 708a4c636..15aa153c2 100644 --- a/src/com/rjconsultores/ventaboletos/blocos/bradesco/ArquivoRemessaBradesco.java +++ b/src/com/rjconsultores/ventaboletos/blocos/bradesco/ArquivoRemessaBradesco.java @@ -5,6 +5,8 @@ import java.util.ArrayList; import com.rjconsultores.ventaboletos.ArquivoRemessaItem; import com.rjconsultores.ventaboletos.blocos.CabecalhoRemessa; import com.rjconsultores.ventaboletos.blocos.DetalheObrigatorio; +import com.rjconsultores.ventaboletos.blocos.RodapeRemessa; +import com.rjconsultores.ventaboletos.blocos.RodapeRemessaPadrao; public class ArquivoRemessaBradesco extends ArquivoRemessaItem { @@ -26,11 +28,18 @@ public class ArquivoRemessaBradesco extends ArquivoRemessaItem { if(titulo instanceof DetalheObrigatorioBradesco){ - titulo.setNumeroSequencialRegistro(titulos.size() + 1); + titulo.setNumeroSequencialRegistro(titulos.size() + 2); this.titulos.add(titulo); }else{ throw new ClassCastException("Somente cabecalho tipo: " + DetalheObrigatorioBradesco.class.getName()); } } + + @Override + public RodapeRemessa getRodapeRemessa() { + this.rodapeRemessa = this.rodapeRemessa == null ? new RodapeRemessaPadrao() : this.rodapeRemessa; + rodapeRemessa.setNumeroSequencialRegistro(titulos.size() + 2); + return rodapeRemessa; + } } diff --git a/src/com/rjconsultores/ventaboletos/blocos/bradesco/DetalheObrigatorioBradesco.java b/src/com/rjconsultores/ventaboletos/blocos/bradesco/DetalheObrigatorioBradesco.java index ca56f7011..fc4894ab6 100644 --- a/src/com/rjconsultores/ventaboletos/blocos/bradesco/DetalheObrigatorioBradesco.java +++ b/src/com/rjconsultores/ventaboletos/blocos/bradesco/DetalheObrigatorioBradesco.java @@ -10,6 +10,11 @@ import com.rjconsultores.ventaboletos.enuns.TipoInscricaoPagador; public class DetalheObrigatorioBradesco implements DetalheObrigatorio, Cloneable { + private Integer idBoletoFechamento; + private String carteira; + private String agencia; + private String contacorrente; + private String dvConta; private String numeroControleDoParticipante; private String nossoNumeroComDigito; private Integer QtdPagamento = 0; @@ -41,233 +46,6 @@ public class DetalheObrigatorioBradesco implements DetalheObrigatorio, Cloneable private RateioDeCredito rateioDeCredito; - - public String getNumeroControleDoParticipante() { - return numeroControleDoParticipante; - } - - public void setNumeroControleDoParticipante(String numeroControleDoParticipante) { - this.numeroControleDoParticipante = numeroControleDoParticipante; - } - - public String getNossoNumeroComDigito() { - return nossoNumeroComDigito; - } - - public void setNossoNumeroComDigito(String nossoNumeroComDigito) { - this.nossoNumeroComDigito = nossoNumeroComDigito; - } - - public Integer getQtdPagamento() { - return QtdPagamento; - } - - public void setQtdPagamento(Integer qtdPagamento) { - QtdPagamento = qtdPagamento; - } - - public Integer getCodigoDeOcorrencia() { - return codigoDeOcorrencia; - } - - public void setCodigoDeOcorrencia(Integer codigoDeOcorrencia) { - this.codigoDeOcorrencia = codigoDeOcorrencia; - } - - public Date getDataOcorrencia() { - return dataOcorrencia; - } - - public void setDataOcorrencia(Date dataOcorrencia) { - this.dataOcorrencia = dataOcorrencia; - } - - public String getNumeroDoDocumento() { - return numeroDoDocumento; - } - - public void setNumeroDoDocumento(String numeroDoDocumento) { - this.numeroDoDocumento = numeroDoDocumento; - } - - public Date getVencimento() { - return vencimento; - } - - public void setVencimento(Date vencimento) { - this.vencimento = vencimento; - } - - public BigDecimal getValor() { - return valor; - } - - public void setValor(BigDecimal valor) { - this.valor = valor; - } - - public String getEspecieDeTitulo() { - return especieDeTitulo; - } - - public void setEspecieDeTitulo(String especieDeTitulo) { - this.especieDeTitulo = especieDeTitulo; - } - - public Date getEmissao() { - return emissao; - } - - public void setEmissao(Date emissao) { - this.emissao = emissao; - } - - public String getInstrucao1() { - return instrucao1; - } - - public void setInstrucao1(String instrucao1) { - this.instrucao1 = instrucao1; - } - - public String getInstrucao2() { - return instrucao2; - } - - public void setInstrucao2(String instrucao2) { - this.instrucao2 = instrucao2; - } - - public BigDecimal getValorAtraso() { - return valorAtraso; - } - - public void setValorAtraso(BigDecimal valorAtraso) { - this.valorAtraso = valorAtraso; - } - - public Date getDataLimiteDesconto() { - return dataLimiteDesconto; - } - - public void setDataLimiteDesconto(Date dataLimiteDesconto) { - this.dataLimiteDesconto = dataLimiteDesconto; - } - - public BigDecimal getValorDesconto() { - return valorDesconto; - } - - public void setValorDesconto(BigDecimal valorDesconto) { - this.valorDesconto = valorDesconto; - } - - public BigDecimal getValorIOF() { - return valorIOF; - } - - public void setValorIOF(BigDecimal valorIOF) { - this.valorIOF = valorIOF; - } - - public BigDecimal getValorAbatimentoConcedido() { - return valorAbatimentoConcedido; - } - - public void setValorAbatimentoConcedido(BigDecimal valorAbatimentoConcedido) { - this.valorAbatimentoConcedido = valorAbatimentoConcedido; - } - - public TipoInscricaoPagador getTipoInscricaoPagador() { - return tipoInscricaoPagador; - } - - public void setTipoInscricaoPagador(TipoInscricaoPagador tipoInscricaoPagador) { - this.tipoInscricaoPagador = tipoInscricaoPagador; - } - - public Long getNumeroInscricaoPagador() { - return numeroInscricaoPagador; - } - - public void setNumeroInscricaoPagador(Long numeroInscricaoPagador) { - this.numeroInscricaoPagador = numeroInscricaoPagador; - } - - public String getNomePagador() { - return nomePagador; - } - - public void setNomePagador(String nomePagador) { - this.nomePagador = nomePagador; - } - - public String getEnderecoCompletoPagado() { - return enderecoCompletoPagador; - } - - public void setEnderecoCompletoPagador(String enderecoCompletoPagador) { - this.enderecoCompletoPagador = enderecoCompletoPagador; - } - - public String getMensagem1() { - return mensagem1; - } - - public void setMensagem1(String mensagem1) { - this.mensagem1 = mensagem1; - } - - public String getCEP_Prefixo() { - return CEP_Prefixo; - } - - public void setCEP_Prefixo(String cEP_Prefixo) { - CEP_Prefixo = cEP_Prefixo; - } - - public String getCEP_Sufixo() { - return CEP_Sufixo; - } - - public void setCEP_Sufixo(String cEP_Sufixo) { - CEP_Sufixo = cEP_Sufixo; - } - - public String getSacador_Avalista_Mensagem2() { - return sacador_Avalista_Mensagem2; - } - - public void setSacador_Avalista_Mensagem2(String sacador_Avalista_Mensagem2) { - this.sacador_Avalista_Mensagem2 = sacador_Avalista_Mensagem2; - } - - public Integer getNumeroSequencialRegistro() { - return numeroSequencialRegistro; - } - - public void setNumeroSequencialRegistro(Integer numeroSequencialRegistro) { - this.numeroSequencialRegistro = numeroSequencialRegistro; - } - - public DadosBoleto getDadosBoleto() { - return dadosBoleto; - } - - public void setDadosBoleto(DadosBoleto dadosBoleto) { - this.dadosBoleto = dadosBoleto; - } - - public RateioDeCredito getRateioDeCredito() { - return rateioDeCredito; - } - - public void setRateioDeCredito(RateioDeCredito rateioDeCredito) { - this.rateioDeCredito = rateioDeCredito; - } - - private Integer idBoletoFechamento; - @Override public void setIdBoletoFechamento(Integer id) { this.idBoletoFechamento = id; @@ -277,9 +55,200 @@ public class DetalheObrigatorioBradesco implements DetalheObrigatorio, Cloneable public Integer getIdBoletoFechamento(){ return this.idBoletoFechamento; } - - public DetalheObrigatorioBradesco clone() throws CloneNotSupportedException { - // TODO Auto-generated method stub - return (DetalheObrigatorioBradesco) super.clone(); + public String getCarteira() { + return carteira; + } + public void setCarteira(String carteira) { + this.carteira = carteira; + } + public String getAgencia() { + return agencia; + } + public void setAgencia(String agencia) { + this.agencia = agencia; + } + public String getContacorrente() { + return contacorrente; + } + public void setContacorrente(String contacorrente) { + this.contacorrente = contacorrente; + } + public String getDvConta() { + return dvConta; + } + public void setDvConta(String dvConta) { + this.dvConta = dvConta; + } + public String getNumeroControleDoParticipante() { + return numeroControleDoParticipante; + } + public void setNumeroControleDoParticipante(String numeroControleDoParticipante) { + this.numeroControleDoParticipante = numeroControleDoParticipante; + } + public String getNossoNumeroComDigito() { + return nossoNumeroComDigito; + } + public void setNossoNumeroComDigito(String nossoNumeroComDigito) { + this.nossoNumeroComDigito = nossoNumeroComDigito; + } + public Integer getQtdPagamento() { + return QtdPagamento; + } + public void setQtdPagamento(Integer qtdPagamento) { + QtdPagamento = qtdPagamento; + } + public Integer getCodigoDeOcorrencia() { + return codigoDeOcorrencia; + } + public void setCodigoDeOcorrencia(Integer codigoDeOcorrencia) { + this.codigoDeOcorrencia = codigoDeOcorrencia; + } + public Date getDataOcorrencia() { + return dataOcorrencia; + } + public void setDataOcorrencia(Date dataOcorrencia) { + this.dataOcorrencia = dataOcorrencia; + } + public String getNumeroDoDocumento() { + return numeroDoDocumento; + } + public void setNumeroDoDocumento(String numeroDoDocumento) { + this.numeroDoDocumento = numeroDoDocumento; + } + public Date getVencimento() { + return vencimento; + } + public void setVencimento(Date vencimento) { + this.vencimento = vencimento; + } + public BigDecimal getValor() { + return valor; + } + public void setValor(BigDecimal valor) { + this.valor = valor; + } + public String getEspecieDeTitulo() { + return especieDeTitulo; + } + public void setEspecieDeTitulo(String especieDeTitulo) { + this.especieDeTitulo = especieDeTitulo; + } + public Date getEmissao() { + return emissao; + } + public void setEmissao(Date emissao) { + this.emissao = emissao; + } + public String getInstrucao1() { + return instrucao1; + } + public void setInstrucao1(String instrucao1) { + this.instrucao1 = instrucao1; + } + public String getInstrucao2() { + return instrucao2; + } + public void setInstrucao2(String instrucao2) { + this.instrucao2 = instrucao2; + } + public BigDecimal getValorAtraso() { + return valorAtraso; + } + public void setValorAtraso(BigDecimal valorAtraso) { + this.valorAtraso = valorAtraso; + } + public Date getDataLimiteDesconto() { + return dataLimiteDesconto; + } + public void setDataLimiteDesconto(Date dataLimiteDesconto) { + this.dataLimiteDesconto = dataLimiteDesconto; + } + public BigDecimal getValorDesconto() { + return valorDesconto; + } + public void setValorDesconto(BigDecimal valorDesconto) { + this.valorDesconto = valorDesconto; + } + public BigDecimal getValorIOF() { + return valorIOF; + } + public void setValorIOF(BigDecimal valorIOF) { + this.valorIOF = valorIOF; + } + public BigDecimal getValorAbatimentoConcedido() { + return valorAbatimentoConcedido; + } + public void setValorAbatimentoConcedido(BigDecimal valorAbatimentoConcedido) { + this.valorAbatimentoConcedido = valorAbatimentoConcedido; + } + public TipoInscricaoPagador getTipoInscricaoPagador() { + return tipoInscricaoPagador; + } + public void setTipoInscricaoPagador(TipoInscricaoPagador tipoInscricaoPagador) { + this.tipoInscricaoPagador = tipoInscricaoPagador; + } + public Long getNumeroInscricaoPagador() { + return numeroInscricaoPagador; + } + public void setNumeroInscricaoPagador(Long numeroInscricaoPagador) { + this.numeroInscricaoPagador = numeroInscricaoPagador; + } + public String getNomePagador() { + return nomePagador; + } + public void setNomePagador(String nomePagador) { + this.nomePagador = nomePagador; + } + public String getEnderecoCompletoPagador() { + return enderecoCompletoPagador; + } + public void setEnderecoCompletoPagador(String enderecoCompletoPagador) { + this.enderecoCompletoPagador = enderecoCompletoPagador; + } + public String getMensagem1() { + return mensagem1; + } + public void setMensagem1(String mensagem1) { + this.mensagem1 = mensagem1; + } + public String getCEP_Prefixo() { + return CEP_Prefixo; + } + public void setCEP_Prefixo(String cEP_Prefixo) { + CEP_Prefixo = cEP_Prefixo; + } + public String getCEP_Sufixo() { + return CEP_Sufixo; + } + public void setCEP_Sufixo(String cEP_Sufixo) { + CEP_Sufixo = cEP_Sufixo; + } + public String getSacador_Avalista_Mensagem2() { + return sacador_Avalista_Mensagem2; + } + public void setSacador_Avalista_Mensagem2(String sacador_Avalista_Mensagem2) { + this.sacador_Avalista_Mensagem2 = sacador_Avalista_Mensagem2; + } + public Integer getNumeroSequencialRegistro() { + return numeroSequencialRegistro; + } + public void setNumeroSequencialRegistro(Integer numeroSequencialRegistro) { + this.numeroSequencialRegistro = numeroSequencialRegistro; + } + public DadosBoleto getDadosBoleto() { + return dadosBoleto; + } + public void setDadosBoleto(DadosBoleto dadosBoleto) { + this.dadosBoleto = dadosBoleto; + } + public RateioDeCredito getRateioDeCredito() { + return rateioDeCredito; + } + public void setRateioDeCredito(RateioDeCredito rateioDeCredito) { + this.rateioDeCredito = rateioDeCredito; + } + + public DetalheObrigatorio clone() throws CloneNotSupportedException { + return (DetalheObrigatorio) super.clone(); } } diff --git a/src/com/rjconsultores/ventaboletos/layouts/BradescoFlatFile.java b/src/com/rjconsultores/ventaboletos/layouts/BradescoFlatFile.java index e604fa4c2..1047bfbf0 100644 --- a/src/com/rjconsultores/ventaboletos/layouts/BradescoFlatFile.java +++ b/src/com/rjconsultores/ventaboletos/layouts/BradescoFlatFile.java @@ -39,7 +39,7 @@ public class BradescoFlatFile extends AbstractFlatFile implements RemessaInterfa header.setValue("NomeDaEmpresa", FormataUtil.formatarValorPorTamanho(cabecalhoRemessa.getNomeEmpresa(), 30)); //header.setValue("CodigoCompensacao", FormataUtil.formatarValorPorTamanho(cabecalhoRemessa.getCodigoBanco().toString(), 3)); //header.setValue("NomeBanco", FormataUtil.formatarValorPorTamanho(cabecalhoRemessa.getNomeBanco(), 8)); - header.setValue("DataGravacaoArquivo", FormataUtil.formataData(cabecalhoRemessa.getDataGravacao())); + header.setValue("DataGravacaoArquivo", FormataUtil.formataDataToString(cabecalhoRemessa.getDataGravacao(), "000000", "ddMMyy")); //header.setValue("IdentificacaoSistema", FormataUtil.formatarValorPorTamanho(cabecalhoRemessa.getIdentificacaoSistema(), 2)); header.setValue("NumeroSequencialRemessa", FormataUtil.formatarValorPorTamanho(cabecalhoRemessa.getNumeroSequencialRemessa().toString(), 7)); header.setValue("NumeroSequencialRegistro", FormataUtil.formatarValorPorTamanho(cabecalhoRemessa.getNumeroSequencialRegistro().toString(), 6)); @@ -54,7 +54,11 @@ public class BradescoFlatFile extends AbstractFlatFile implements RemessaInterfa DetalheObrigatorioBradesco titulo = (DetalheObrigatorioBradesco) tituloParam; - transacaoTitulos.setValue("DadosIgnorados1", FormataUtil.formatarValorPorTamanho(" ", 36)); + transacaoTitulos.setValue("DadosIgnorados1", FormataUtil.formatarValorPorTamanho(" ", 19)); + transacaoTitulos.setValue("Carteira", FormataUtil.formatarValorPorTamanho(titulo.getCarteira(), 3)); + transacaoTitulos.setValue("Agencia", FormataUtil.formatarValorPorTamanho(titulo.getAgencia(), 5)); + transacaoTitulos.setValue("Contacorrente", FormataUtil.formatarValorPorTamanho(titulo.getContacorrente(), 7)); + transacaoTitulos.setValue("DvConta", FormataUtil.formatarValorPorTamanho(titulo.getDvConta(), 1)); transacaoTitulos.setValue("NumeroControleDoParticipante", FormataUtil.formatarValorPorTamanho(titulo.getNumeroControleDoParticipante(), 25)); transacaoTitulos.setValue("Filler1", FormataUtil.formatarValorPorTamanho("0", 8)); transacaoTitulos.setValue("NossoNumeroComDigito", FormataUtil.formatarValorPorTamanho(titulo.getNossoNumeroComDigito(), 12)); @@ -62,13 +66,13 @@ public class BradescoFlatFile extends AbstractFlatFile implements RemessaInterfa transacaoTitulos.setValue("QtdPagamento", FormataUtil.formatarValorPorTamanho(titulo.getQtdPagamento().toString(), 25)); //transacaoTitulos.setValue("CodigoDeOcorrencia", FormataUtil.formatarValorPorTamanho(titulo.getCodigoDeOcorrencia().toString(), 2)); transacaoTitulos.setValue("NumeroDoDocumento", FormataUtil.formatarValorPorTamanho(titulo.getNumeroDoDocumento(), 10)); - transacaoTitulos.setValue("Vencimento", FormataUtil.formataData(titulo.getVencimento())); + transacaoTitulos.setValue("Vencimento", FormataUtil.formataDataToString(titulo.getVencimento(), "000000", "ddMMyy")); transacaoTitulos.setValue("Valor", titulo.getValor()); //transacaoTitulos.setValue("BancoCobranca", FormataUtil.formatarValorPorTamanho("0", 3)); //transacaoTitulos.setValue("AgenciaAgencia", FormataUtil.formatarValorPorTamanho("0", 5)); transacaoTitulos.setValue("EspecieDeTitulo", FormataUtil.formatarValorPorTamanho(titulo.getEspecieDeTitulo(), 2)); //transacaoTitulos.setValue("Identificação", FormataUtil.formatarValorPorTamanho("N", 1)); - transacaoTitulos.setValue("Emissao", FormataUtil.formataData(titulo.getEmissao())); + transacaoTitulos.setValue("Emissao", FormataUtil.formataDataToString(titulo.getEmissao(), "000000", "ddMMyy")); transacaoTitulos.setValue("Instrucao1", FormataUtil.formatarValorPorTamanho(titulo.getInstrucao1(), 2)); transacaoTitulos.setValue("Instrucao2", FormataUtil.formatarValorPorTamanho(titulo.getInstrucao2(), 2)); transacaoTitulos.setValue("ValorAtraso", titulo.getValorAtraso()); @@ -79,7 +83,7 @@ public class BradescoFlatFile extends AbstractFlatFile implements RemessaInterfa transacaoTitulos.setValue("TipoInscricaoPagador", FormataUtil.formatarValorPorTamanho(titulo.getTipoInscricaoPagador().toString(), 2)); transacaoTitulos.setValue("NumeroInscricaoPagador", FormataUtil.formatarValorPorTamanho(titulo.getNumeroInscricaoPagador().toString(), 14)); transacaoTitulos.setValue("NomePagador", FormataUtil.formatarValorPorTamanho(titulo.getNomePagador(), 40)); - transacaoTitulos.setValue("EnderecoCompletoPagador", FormataUtil.formatarValorPorTamanho(titulo.getEnderecoCompletoPagado(), 40)); + transacaoTitulos.setValue("EnderecoCompletoPagador", FormataUtil.formatarValorPorTamanho(titulo.getEnderecoCompletoPagador(), 40)); transacaoTitulos.setValue("Mensagem1", FormataUtil.formatarValorPorTamanho(titulo.getMensagem1(), 12)); transacaoTitulos.setValue("CEP_Prefixo", FormataUtil.formatarValorPorTamanho(titulo.getCEP_Prefixo().toString(), 5)); transacaoTitulos.setValue("CEP_Sufixo", FormataUtil.formatarValorPorTamanho(titulo.getCEP_Sufixo().toString(), 3)); diff --git a/src/com/rjconsultores/ventaboletos/utils/FormataUtil.java b/src/com/rjconsultores/ventaboletos/utils/FormataUtil.java index 2b68c8d94..651565f37 100644 --- a/src/com/rjconsultores/ventaboletos/utils/FormataUtil.java +++ b/src/com/rjconsultores/ventaboletos/utils/FormataUtil.java @@ -63,4 +63,13 @@ public class FormataUtil { return new SimpleDateFormat("ddMMyyyy").format(data); } + + public static String formataDataToString(Date data, String defaultValue, String pattern) { + + if(data == null){ + return defaultValue; + } + + return new SimpleDateFormat(pattern).format(data); + } } diff --git a/src/com/rjconsultores/ventaboletos/utils/NossoNumeroUtils.java b/src/com/rjconsultores/ventaboletos/utils/NossoNumeroUtils.java index 534026111..6e160c45e 100644 --- a/src/com/rjconsultores/ventaboletos/utils/NossoNumeroUtils.java +++ b/src/com/rjconsultores/ventaboletos/utils/NossoNumeroUtils.java @@ -104,7 +104,7 @@ public class NossoNumeroUtils { dac = 11 - (dac % 11); - return (dac == 10) ? "P" : dac + ""; + return (dac == 11) ? "0" :(dac == 10) ? "P" : dac + ""; } @@ -252,8 +252,13 @@ public class NossoNumeroUtils { public static void main(String[] args) { - //System.out.println(calcularNossonumeroBradesco(19, new BigInteger("00166509652"))); - //System.out.println(calcularNossonumeroBradesco(19, new BigInteger("00000000001"))); + + System.out.println(calcularNossonumeroBradesco(9, new BigInteger("102031"))); + System.out.println(calcularNossonumeroBradesco(9, new BigInteger("102032"))); + System.out.println(calcularNossonumeroBradesco(9, new BigInteger("102033"))); + System.out.println(calcularNossonumeroBradesco(9, new BigInteger("102034"))); + System.out.println(calcularNossonumeroBradesco(9, new BigInteger("102035"))); + System.out.println(calcularNossonumeroBradesco(9, new BigInteger("102036"))); //System.out.println(calcularNossoNumeroItau(57, 72192, 109, new BigInteger("987123451"))); //System.out.println(dvDocumentoItau(1108954)); @@ -265,13 +270,11 @@ public class NossoNumeroUtils { // System.out.println(calcularNossoNumeroBancoBrasil(3088490, 17, new BigInteger("100005"))); - System.out.println(calcularNossoNumeroBancoBrasil(490, 17, new BigInteger("100006"))); - System.out.println(calcularNossoNumeroBancoBrasil(88490, 17, new BigInteger("100007"))); - System.out.println(calcularNossoNumeroBancoBrasil(3088490, 17, new BigInteger("100005"))); + //System.out.println(calcularNossoNumeroBancoBrasil(490, 17, new BigInteger("100006"))); + //System.out.println(calcularNossoNumeroBancoBrasil(88490, 17, new BigInteger("100007"))); + //System.out.println(calcularNossoNumeroBancoBrasil(3088490, 17, new BigInteger("100005"))); - Date ini = new Date(97, 9, 7); - Date end = new Date(); - System.out.println(((end.getTime() - ini.getTime()) / DateUtils.MILLIS_IN_DAY)); + } } diff --git a/src/layouts/LayoutBradescoCNAB400Envio.txg.xml b/src/layouts/LayoutBradescoCNAB400Envio.txg.xml index ee25d798c..270fe6b61 100644 --- a/src/layouts/LayoutBradescoCNAB400Envio.txg.xml +++ b/src/layouts/LayoutBradescoCNAB400Envio.txg.xml @@ -34,11 +34,12 @@ - + - + + @@ -50,23 +51,33 @@ - + + + + + + - + + + + - - + + + - - - + + + + @@ -74,12 +85,12 @@ - - - + + + - - + +