Class: BancoBradesco
- Inherits:
-
Brcobranca::Boleto::Base
- Object
- Brcobranca::Boleto::Base
- BancoBradesco
- Defined in:
- lib/brcobranca/boleto/banco_bradesco.rb
Overview
Banco BRADESCO
Instance Attribute Summary
Attributes inherited from Brcobranca::Boleto::Base
#aceite, #agencia, #banco, #carteira, #cedente, #codigo_servico, #conta_corrente, #convenio, #data_documento, #data_processamento, #dias_vencimento, #documento_cedente, #especie, #especie_documento, #instrucao1, #instrucao2, #instrucao3, #instrucao4, #instrucao5, #instrucao6, #instrucao7, #local_pagamento, #moeda, #numero_documento, #quantidade, #sacado, #sacado_documento, #sacado_endereco, #valor, #variacao
Instance Method Summary collapse
-
#agencia_conta_boleto ⇒ Object
Campo usado apenas na exibição no boleto Deverá ser sobreescrito para cada banco.
-
#initialize(campos = {}) ⇒ BancoBradesco
constructor
Responsável por definir dados iniciais quando se cria uma nova intancia da classe BancoBradesco.
-
#monta_codigo_43_digitos ⇒ Object
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 a 25 2 Carteira 26 a 36 11 Número do Nosso Número(Sem o digito verificador) 37 a 43 7 Conta do Cedente (Sem o digito verificador, completar com zeros a esquerda quando necessário) 44 a 44 1 Zero.
-
#nosso_numero_boleto ⇒ Object
Campo usado apenas na exibição no boleto Deverá ser sobreescrito para cada banco.
Methods inherited from Brcobranca::Boleto::Base
#agencia_dv, #banco_dv, #codigo_barras, #conta_corrente_dv, #data_vencimento, #nosso_numero, #nosso_numero_dv, #valor_documento
Constructor Details
#initialize(campos = {}) ⇒ BancoBradesco
Responsável por definir dados iniciais quando se cria uma nova intancia da classe BancoBradesco
4 5 6 7 8 |
# File 'lib/brcobranca/boleto/banco_bradesco.rb', line 4 def initialize(campos={}) padrao={:carteira => "06", :banco => "237"} campos = padrao.merge!(campos) super(campos) end |
Instance Method Details
#agencia_conta_boleto ⇒ Object
Campo usado apenas na exibição no boleto
Deverá ser sobreescrito para cada banco
18 19 20 |
# File 'lib/brcobranca/boleto/banco_bradesco.rb', line 18 def agencia_conta_boleto "#{self.agencia}-#{self.agencia_dv} / #{self.conta_corrente}-#{self.conta_corrente_dv}" end |
#monta_codigo_43_digitos ⇒ Object
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 a 25 2 Carteira
26 a 36 11 Número do Nosso Número(Sem o digito verificador)
37 a 43 7 Conta do Cedente (Sem o digito verificador, completar com zeros a esquerda quando necessário)
44 a 44 1 Zero
32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/brcobranca/boleto/banco_bradesco.rb', line 32 def monta_codigo_43_digitos banco = self.banco.zeros_esquerda(:tamanho => 3) fator = self.data_vencimento.fator_vencimento valor_documento = self.valor_documento.limpa_valor_moeda.zeros_esquerda(:tamanho => 10) 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) numero = "#{banco}#{self.moeda}#{fator}#{valor_documento}#{agencia}#{carteira}#{numero_documento}#{conta}0" numero.size == 43 ? numero : nil end |
#nosso_numero_boleto ⇒ Object
Campo usado apenas na exibição no boleto
Deverá ser sobreescrito para cada banco
12 13 14 |
# File 'lib/brcobranca/boleto/banco_bradesco.rb', line 12 def nosso_numero_boleto "#{self.carteira}/#{self.numero_documento.zeros_esquerda(:tamanho => 11)}-#{self.nosso_numero_dv}" end |