Class: BrBoleto::Conta::Caixa
- Inherits:
-
Base
- Object
- ActiveModelBase
- Base
- BrBoleto::Conta::Caixa
- Defined in:
- lib/br_boleto/conta/caixa.rb
Instance Attribute Summary collapse
-
#valid_versao_aplicativo_required ⇒ Object
Versão do aplicativo.
-
#versao_aplicativo ⇒ Object
versão do aplicativo da caixa.
Attributes inherited from Base
#agencia, #carteira, #conta_corrente, #convenio, #cpf_cnpj, #endereco, #modalidade, #razao_social, #valid_agencia_length, #valid_carteira_inclusion, #valid_carteira_length, #valid_carteira_maximum, #valid_carteira_minimum, #valid_carteira_required, #valid_conta_corrente_length, #valid_conta_corrente_maximum, #valid_conta_corrente_minimum, #valid_conta_corrente_required, #valid_convenio_inclusion, #valid_convenio_length, #valid_convenio_maximum, #valid_convenio_minimum, #valid_convenio_required, #valid_endereco_required, #valid_modalidade_inclusion, #valid_modalidade_length, #valid_modalidade_maximum, #valid_modalidade_minimum, #valid_modalidade_required
Instance Method Summary collapse
-
#agencia_codigo_cedente ⇒ String
Campo Agência / Código do Cedente.
- #agencia_dv ⇒ Object
-
#carteira_formatada ⇒ String
Formata a carteira dependendo se ela é registrada ou não.
-
#carteiras_com_registro ⇒ Array
Retorna as carteiras com registro da Caixa Econômica Federal.
- #codigo_banco ⇒ Object
-
#codigo_banco_dv ⇒ Object
Dígito do código do banco descrito na documentação.
- #conta_corrente_dv ⇒ Object
- #convenio_dv ⇒ Object
- #default_values ⇒ Object
- #nome_banco ⇒ Object
- #versao_layout_arquivo_cnab_240 ⇒ Object
- #versao_layout_lote_cnab_240 ⇒ Object
Methods inherited from Base
#codigo_banco_formatado, #cpf_cnpj_formatado, #cpf_cnpj_formatado_com_label, #tipo_cpf_cnpj
Methods included from Helper::DefaultCodes
#equivalent_especie_titulo, #get_especie_titulo
Methods inherited from ActiveModelBase
#assign_attributes, #initialize
Constructor Details
This class inherits a constructor from BrBoleto::ActiveModelBase
Instance Attribute Details
#valid_versao_aplicativo_required ⇒ Object
Versão do aplicativo
17 18 19 |
# File 'lib/br_boleto/conta/caixa.rb', line 17 def valid_versao_aplicativo_required @valid_versao_aplicativo_required end |
#versao_aplicativo ⇒ Object
versão do aplicativo da caixa
13 14 15 |
# File 'lib/br_boleto/conta/caixa.rb', line 13 def versao_aplicativo @versao_aplicativo end |
Instance Method Details
#agencia_codigo_cedente ⇒ String
Campo Agência / Código do Cedente
103 104 105 |
# File 'lib/br_boleto/conta/caixa.rb', line 103 def agencia_codigo_cedente "#{agencia} / #{codigo_cedente}-#{codigo_cedente_dv}" end |
#agencia_dv ⇒ Object
56 57 58 59 60 |
# File 'lib/br_boleto/conta/caixa.rb', line 56 def agencia_dv # utilizando a agencia com 4 digitos # para calcular o digito @agencia_dv ||= BrBoleto::Calculos::Modulo11FatorDe2a9RestoZero.new(agencia).to_s end |
#carteira_formatada ⇒ String
Formata a carteira dependendo se ela é registrada ou não.
Para cobrança COM registro usar: RG Para Cobrança SEM registro usar: SR
81 82 83 84 85 86 87 |
# File 'lib/br_boleto/conta/caixa.rb', line 81 def carteira_formatada if carteira.in?(carteiras_com_registro) 'RG' else 'SR' end end |
#carteiras_com_registro ⇒ Array
Retorna as carteiras com registro da Caixa Econômica Federal. Você pode sobrescrever esse método na subclasse caso exista mais carteiras com registro na Caixa Econômica Federal.
95 96 97 |
# File 'lib/br_boleto/conta/caixa.rb', line 95 def carteiras_com_registro %w(14) end |
#codigo_banco ⇒ Object
35 36 37 |
# File 'lib/br_boleto/conta/caixa.rb', line 35 def codigo_banco '104' end |
#codigo_banco_dv ⇒ Object
Dígito do código do banco descrito na documentação
40 41 42 |
# File 'lib/br_boleto/conta/caixa.rb', line 40 def codigo_banco_dv '0' end |
#conta_corrente_dv ⇒ Object
62 63 64 |
# File 'lib/br_boleto/conta/caixa.rb', line 62 def conta_corrente_dv @conta_corrente_dv ||= BrBoleto::Calculos::Modulo11FatorDe2a9RestoZero.new(conta_corrente).to_s end |
#convenio_dv ⇒ Object
66 67 68 |
# File 'lib/br_boleto/conta/caixa.rb', line 66 def convenio_dv @convenio_dv ||= BrBoleto::Calculos::Modulo11FatorDe2a9RestoZero.new(convenio).to_s end |
#default_values ⇒ Object
23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/br_boleto/conta/caixa.rb', line 23 def default_values super.merge({ carteira: '14', # Com registro valid_carteira_required: true, # <- Validação dinâmica que a modalidade é obrigatória valid_carteira_length: 2, # <- Validação dinâmica que a modalidade deve ter 2 digitos valid_carteira_inclusion: %w[11 14 21], # <- Validação dinâmica de valores aceitos para a modalidade valid_convenio_required: true, # <- Validação que a convenio deve ter obrigatório valid_convenio_maximum: 6, # <- Validação que a convenio deve ter no máximo 6 digitos versao_aplicativo: '0', }) end |
#nome_banco ⇒ Object
44 45 46 |
# File 'lib/br_boleto/conta/caixa.rb', line 44 def nome_banco @nome_banco ||= 'CAIXA ECONOMICA FEDERAL' end |
#versao_layout_arquivo_cnab_240 ⇒ Object
48 49 50 |
# File 'lib/br_boleto/conta/caixa.rb', line 48 def versao_layout_arquivo_cnab_240 '050' end |
#versao_layout_lote_cnab_240 ⇒ Object
52 53 54 |
# File 'lib/br_boleto/conta/caixa.rb', line 52 def versao_layout_lote_cnab_240 '030' end |