Class: BrBoleto::Boleto::Bradesco
- Inherits:
-
Base
- Object
- ActiveModelBase
- Base
- BrBoleto::Boleto::Bradesco
- Defined in:
- lib/br_boleto/boleto/bradesco.rb
Overview
Implementação de emissão de boleto bancário pelo Banco Bradesco.
Documentação Implementada
A documentação na qual essa implementação foi baseada está localizada na pasta ‘documentacoes_dos_boletos/bradesco’ dentro dessa biblioteca.
Direct Known Subclasses
Instance Attribute Summary
Attributes inherited from Base
#aceite, #codigo_moeda, #data_documento, #data_vencimento, #especie, #especie_documento, #instrucoes1, #instrucoes2, #instrucoes3, #instrucoes4, #instrucoes5, #instrucoes6, #local_pagamento, #logo, #numero_documento, #parcelas, #valor_documento
Instance Method Summary collapse
-
#codigo_de_barras_do_banco ⇒ Object
Código de barras do banco.
- #conta_class ⇒ Object
-
#default_values ⇒ Object
Conforme descrito na documentação, o valor que deve constar em local do pagamento é “PAGÁVEL PREFERENCIALMENTE NA REDE BRADESCO OU NO BRADESCO EXPRESSO”.
-
#digito_verificador_nosso_numero ⇒ String
Para o cálculo do dígito, será necessário acrescentar o número da carteira à esquerda antes do Nosso Número (número do documento), e aplicar o módulo 11, com fatores de 2 a 7.
-
#nosso_numero ⇒ Object
Nosso Número descrito na documentação (Pag. 36).
-
#nosso_numero_retorno ⇒ Object
No arquivo de retorno a carteira não vem junto com o nosso núemro.
- #valid_carteira_inclusion ⇒ Object
-
#valid_conta_corrente_maximum ⇒ Object
Tamanho máximo de uma conta corrente no Banco Bradesco.
-
#valid_convenio_maximum ⇒ Object
Tamanho máximo para o codigo_cedente/Convênio.
-
#valid_convenio_required ⇒ Object
codigo_cedente/Convênio deve ser obrigatório.
-
#valid_numero_documento_maximum ⇒ Object
VALIDAÇÕES DINÂMICAS #################.
Methods inherited from Base
#aceite_formatado, #codigo_de_barras, #codigo_de_barras_padrao, #data_vencimento_deve_ser_uma_data, #digito_codigo_de_barras, #fator_de_vencimento, #linha_digitavel, #persisted?, #to_partial_path, #valid_valor_documento_tamanho_maximo, #valor_formatado_para_codigo_de_barras
Methods included from HavePagador
Methods included from HaveConta
Methods inherited from ActiveModelBase
#assign_attributes, #initialize
Constructor Details
This class inherits a constructor from BrBoleto::ActiveModelBase
Instance Method Details
#codigo_de_barras_do_banco ⇒ Object
Código de barras do banco
___________________________________________________________________________________________________
| Posição | Tamanho | Descrição |
|----------|---------|-----------------------------------------------------------------------------|
| 20-23 | 04 | Agência (Sem o digito, completar com zeros a esquerda se necessário) |
| 24-25 | 02 | Carteira |
| 26-36 | 11 | Número do Documento - Número do Nosso Número (Sem o digito verificador) |
| 37-43 | 07 | Conta Corrente (Sem o digito, completar com zeros a esquerda se necessário) |
| 44 | 01 | Zero |
----------------------------------------------------------------------------------------------------
80 81 82 83 |
# File 'lib/br_boleto/boleto/bradesco.rb', line 80 def conta_corrente = "#{conta.conta_corrente}".adjust_size_to(7, '0', :right) "#{conta.agencia}#{conta.carteira}#{numero_documento}#{conta_corrente}0" end |
#conta_class ⇒ Object
11 12 13 |
# File 'lib/br_boleto/boleto/bradesco.rb', line 11 def conta_class BrBoleto::Conta::Bradesco end |
#default_values ⇒ Object
Conforme descrito na documentação, o valor que deve constar em local do pagamento é “PAGÁVEL PREFERENCIALMENTE NA REDE BRADESCO OU NO BRADESCO EXPRESSO”
42 43 44 45 46 |
# File 'lib/br_boleto/boleto/bradesco.rb', line 42 def default_values super.merge({ :local_pagamento => 'PAGÁVEL PREFERENCIALMENTE NA REDE BRADESCO OU NO BRADESCO EXPRESSO' }) end |
#digito_verificador_nosso_numero ⇒ String
Para o cálculo do dígito, será necessário acrescentar o número da carteira à esquerda antes do Nosso Número (número do documento), e aplicar o módulo 11, com fatores de 2 a 7.
64 65 66 |
# File 'lib/br_boleto/boleto/bradesco.rb', line 64 def digito_verificador_nosso_numero BrBoleto::Calculos::Modulo11FatorDe2a7.new("#{conta.carteira}#{numero_documento}") end |
#nosso_numero ⇒ Object
Nosso Número descrito na documentação (Pag. 36). Carteira com 2 (dois) caracteres / N.Número com 11 (onze) caracteres + digito. Exemplo: 99 / 99999999999-D
51 52 53 |
# File 'lib/br_boleto/boleto/bradesco.rb', line 51 def nosso_numero "#{conta.carteira}/#{numero_documento}-#{digito_verificador_nosso_numero}" end |
#nosso_numero_retorno ⇒ Object
No arquivo de retorno a carteira não vem junto com o nosso núemro
57 58 59 |
# File 'lib/br_boleto/boleto/bradesco.rb', line 57 def nosso_numero_retorno "#{nosso_numero}".gsub(/[^\w\d]/i, '')[2..-1] end |
#valid_carteira_inclusion ⇒ Object
20 21 22 |
# File 'lib/br_boleto/boleto/bradesco.rb', line 20 def valid_carteira_inclusion %w[06 09 19 21 22] end |
#valid_conta_corrente_maximum ⇒ Object
Tamanho máximo de uma conta corrente no Banco Bradesco
30 31 32 |
# File 'lib/br_boleto/boleto/bradesco.rb', line 30 def valid_conta_corrente_maximum 7 end |
#valid_convenio_maximum ⇒ Object
Tamanho máximo para o codigo_cedente/Convênio
25 26 27 |
# File 'lib/br_boleto/boleto/bradesco.rb', line 25 def valid_convenio_maximum 7 end |
#valid_convenio_required ⇒ Object
codigo_cedente/Convênio deve ser obrigatório
35 36 37 |
# File 'lib/br_boleto/boleto/bradesco.rb', line 35 def valid_convenio_required true end |
#valid_numero_documento_maximum ⇒ Object
VALIDAÇÕES DINÂMICAS #################
16 17 18 |
# File 'lib/br_boleto/boleto/bradesco.rb', line 16 def valid_numero_documento_maximum 11 end |