Class: BrBoleto::Conta::Sicoob
- Inherits:
-
Base
- Object
- ActiveModelBase
- Base
- BrBoleto::Conta::Sicoob
- Defined in:
- lib/br_boleto/conta/sicoob.rb
Instance Attribute Summary
Attributes inherited from Base
#agencia, #carteira, #codigo_carteira, #conta_corrente, #convenio, #convenio_dv, #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_codigo_carteira_length, #valid_codigo_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_dv ⇒ Object
- #codigo_banco ⇒ Object
-
#codigo_banco_dv ⇒ Object
Dígito do código do banco descrito na documentação.
- #conta_corrente_dv ⇒ Object
- #default_codigo_juros ⇒ Object
- #default_codigo_multa ⇒ Object
-
#default_values ⇒ Object
MODALIDADE O banco siccob utiliza a combinação da carteira e modalidade para saber se é um pagamento com registro, sem registrou ou caucionada.
-
#equivalent_codigo_juros ⇒ Object
Código que representa a isenção de juros e multa deve ser ‘0’ Diferentemente do padrão da FEBRABAN que é ‘3’ Ou seja, se passar o código 3 deve considerar ‘0’.
-
#equivalent_codigo_movimento_remessa_400 ⇒ Object
Códigos de Movimento Remessa / Identificacao Ocorrência específicos do Banco.
-
#equivalent_codigo_movimento_retorno_400 ⇒ Object
Identificações de Ocorrência / Código de ocorrência:.
- #equivalent_codigo_multa ⇒ Object
- #nome_banco ⇒ Object
- #versao_layout_arquivo_cnab_240 ⇒ Object
- #versao_layout_lote_cnab_240 ⇒ Object
Methods inherited from Base
#agencia_codigo_cedente, #carteira_formatada, #codigo_banco_formatado, #cpf_cnpj_formatado, #cpf_cnpj_formatado_com_label, #tipo_cobranca, #tipo_cpf_cnpj
Methods included from Helper::DefaultCodes
#codigos_movimento_retorno_para_ocorrencia_A_240, #codigos_movimento_retorno_para_ocorrencia_A_400, #codigos_movimento_retorno_para_ocorrencia_B_240, #codigos_movimento_retorno_para_ocorrencia_B_400, #codigos_movimento_retorno_para_ocorrencia_C_240, #codigos_movimento_retorno_para_ocorrencia_C_400, #codigos_movimento_retorno_para_ocorrencia_D_240, #codigos_movimento_retorno_para_ocorrencia_D_400, #equivalent_codigo_desconto, #equivalent_codigo_moeda_240, #equivalent_codigo_moeda_400, #equivalent_codigo_motivo_ocorrencia_A_240, #equivalent_codigo_motivo_ocorrencia_A_400, #equivalent_codigo_motivo_ocorrencia_B_240, #equivalent_codigo_motivo_ocorrencia_B_400, #equivalent_codigo_motivo_ocorrencia_C_240, #equivalent_codigo_motivo_ocorrencia_C_400, #equivalent_codigo_motivo_ocorrencia_D_240, #equivalent_codigo_motivo_ocorrencia_D_400, #equivalent_codigo_movimento_remessa_240, #equivalent_codigo_movimento_retorno_240, #equivalent_codigo_ocorrencia_pagador_240, #equivalent_codigo_ocorrencia_pagador_400, #equivalent_codigo_protesto_240, #equivalent_codigo_protesto_400, #equivalent_distribuicao_boleto, #equivalent_especie_titulo_240, #equivalent_especie_titulo_400, #equivalent_identificacao_emissao_240, #equivalent_identificacao_emissao_400, #equivalent_tipo_cobranca_240, #equivalent_tipo_cobranca_400, #equivalent_tipo_impressao_240, #equivalent_tipo_impressao_400, #get_codigo_desconto, #get_codigo_juros, #get_codigo_moeda, #get_codigo_motivo_ocorrencia, #get_codigo_movimento_remessa, #get_codigo_movimento_retorno, #get_codigo_multa, #get_codigo_ocorrencia_pagador, #get_codigo_protesto, #get_distribuicao_boleto, #get_especie_titulo, #get_identificacao_emissao, #get_tipo_cobranca, #get_tipo_impressao
Methods inherited from ActiveModelBase
#assign_attributes, #initialize
Constructor Details
This class inherits a constructor from BrBoleto::ActiveModelBase
Instance Method Details
#agencia_dv ⇒ Object
53 54 55 56 57 |
# File 'lib/br_boleto/conta/sicoob.rb', line 53 def agencia_dv # utilizando a agencia com 4 digitos # para calcular o digito @agencia_dv ||= BrBoleto::Calculos::Modulo11FatorDe2a9RestoZero.new(agencia).to_s end |
#codigo_banco ⇒ Object
32 33 34 |
# File 'lib/br_boleto/conta/sicoob.rb', line 32 def codigo_banco '756' end |
#codigo_banco_dv ⇒ Object
Dígito do código do banco descrito na documentação
37 38 39 |
# File 'lib/br_boleto/conta/sicoob.rb', line 37 def codigo_banco_dv '0' end |
#conta_corrente_dv ⇒ Object
59 60 61 62 63 |
# File 'lib/br_boleto/conta/sicoob.rb', line 59 def conta_corrente_dv # utilizando a conta corrente com 5 digitos # para calcular o digito @conta_corrente_dv ||= BrBoleto::Calculos::Modulo11FatorDe2a9RestoZero.new(conta_corrente).to_s end |
#default_codigo_juros ⇒ Object
88 89 90 |
# File 'lib/br_boleto/conta/sicoob.rb', line 88 def default_codigo_juros '0' end |
#default_codigo_multa ⇒ Object
91 92 93 |
# File 'lib/br_boleto/conta/sicoob.rb', line 91 def default_codigo_multa '0' end |
#default_values ⇒ Object
MODALIDADE O banco siccob utiliza a combinação da carteira e modalidade para saber se é um pagamento com registro, sem registrou ou caucionada. Carteira / Modalidade = Tipo de pagamento
1 / 01 = Simples com Registro
1 / 02 = Simples sem Registro
3 / 03 = Garantia caicionada
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/br_boleto/conta/sicoob.rb', line 14 def default_values super.merge({ carteira: '1', # Simples modalidade: '01', # Com registro valid_modalidade_required: true, # <- Validação dinâmica que a modalidade é obrigatória valid_modalidade_length: 2, # <- Validação dinâmica que a modalidade deve ter 2 digitos valid_modalidade_inclusion: %w[01 02 03],# <- Validação dinâmica de valores aceitos para a modalidade valid_carteira_required: true, # <- Validação dinâmica que a carteira é obrigatória valid_carteira_length: 1, # <- Validação dinâmica que a carteira deve ter 1 digito valid_carteira_inclusion: %w[1 3], # <- Validação dinâmica de valores aceitos para a carteira codigo_carteira: '1', # Cobrança Simples valid_codigo_carteira_length: 1, # <- Validação dinâmica que a carteira deve ter 1 digito valid_conta_corrente_required: true, # <- Validação dinâmica que a conta_corrente é obrigatória valid_conta_corrente_maximum: 8, # <- Validação que a conta_corrente deve ter no máximo 8 digitos valid_codigo_cedente_maximum: 6, # <- Validação que a codigo_cedente/convênio deve ter no máximo 7 digitos }) end |
#equivalent_codigo_juros ⇒ Object
Código que representa a isenção de juros e multa deve ser ‘0’ Diferentemente do padrão da FEBRABAN que é ‘3’ Ou seja, se passar o código 3 deve considerar ‘0’
81 82 83 |
# File 'lib/br_boleto/conta/sicoob.rb', line 81 def equivalent_codigo_juros super.merge({'3' => '0', '0'=>'0'}) end |
#equivalent_codigo_movimento_remessa_400 ⇒ Object
Códigos de Movimento Remessa / Identificacao Ocorrência específicos do Banco
69 70 71 72 73 74 75 |
# File 'lib/br_boleto/conta/sicoob.rb', line 69 def equivalent_codigo_movimento_remessa_400 super.merge( { '23' => '12', # Alteração de Pagador '46' => '34', # Baixa - Pagamento Direto ao Beneficiário }) end |
#equivalent_codigo_movimento_retorno_400 ⇒ Object
Identificações de Ocorrência / Código de ocorrência:
96 97 98 99 100 101 102 103 104 |
# File 'lib/br_boleto/conta/sicoob.rb', line 96 def equivalent_codigo_movimento_retorno_400 super.merge( # Padrão Código para {# do Banco a GEM '05' => '17' , # Liquidação Sem Registro: Identifica a liquidação de título da modalidade "SEM REGISTRO"; '15' => '101', # Liquidação em Cartório: Identifica as liquidações dos títulos ocorridas em cartórios de protesto; '23' => '19' , # Encaminhado a Protesto: Identifica o recebimento da instrução de protesto }) end |
#equivalent_codigo_multa ⇒ Object
84 85 86 |
# File 'lib/br_boleto/conta/sicoob.rb', line 84 def equivalent_codigo_multa super.merge({'3' => '0', '0'=>'0'}) end |
#nome_banco ⇒ Object
41 42 43 |
# File 'lib/br_boleto/conta/sicoob.rb', line 41 def nome_banco @nome_banco ||= 'SICOOB' end |
#versao_layout_arquivo_cnab_240 ⇒ Object
45 46 47 |
# File 'lib/br_boleto/conta/sicoob.rb', line 45 def versao_layout_arquivo_cnab_240 '081' end |
#versao_layout_lote_cnab_240 ⇒ Object
49 50 51 |
# File 'lib/br_boleto/conta/sicoob.rb', line 49 def versao_layout_lote_cnab_240 '040' end |