lib/brcobranca/boleto/banco_bradesco.rb in brcobranca-2.0.5 vs lib/brcobranca/boleto/banco_bradesco.rb in brcobranca-2.0.6
- old
+ new
@@ -4,11 +4,23 @@
def initialize(campos={})
padrao={:carteira => "06", :banco => "237"}
campos = padrao.merge!(campos)
super(campos)
end
+
+ # Campo usado apenas na exibição no boleto
+ # Deverá ser sobreescrito para cada banco
+ def nosso_numero_boleto
+ "#{self.carteira}/#{self.numero_documento.zeros_esquerda(:tamanho => 11)}-#{self.nosso_numero_dv}"
+ end
+ # Campo usado apenas na exibição no boleto
+ # Deverá ser sobreescrito para cada banco
+ def agencia_conta_boleto
+ "#{self.agencia}-#{self.agencia_dv} / #{self.conta_corrente}-#{self.conta_corrente_dv}"
+ end
+
# Responsável por montar uma String com 43 caracteres que será usado na criação do código de barras
# As posições do campo livre ficam a critério de cada Banco arrecadador, sendo que o
# padrão do Bradesco é:
# Posição Tamanho Conteúdo
# 20 a 23 4 Agência Cedente (Sem o digito verificador, completar com zeros a esquerda quando necessário)
@@ -24,8 +36,9 @@
agencia = self.agencia.zeros_esquerda(:tamanho => 4)
carteira = self.carteira.zeros_esquerda(:tamanho => 2)
numero_documento = self.numero_documento.zeros_esquerda(:tamanho => 11)
conta = self.conta_corrente.zeros_esquerda(:tamanho => 7)
- "#{banco}#{self.moeda}#{fator}#{valor_documento}#{agencia}#{carteira}#{numero_documento}#{conta}0"
+ numero = "#{banco}#{self.moeda}#{fator}#{valor_documento}#{agencia}#{carteira}#{numero_documento}#{conta}0"
+ numero.size == 43 ? numero : nil
end
end
\ No newline at end of file