Module: BrBoleto::Remessa::Cnab400::Helper::Detalhe
- Included in:
- Base
- Defined in:
- lib/br_boleto/remessa/cnab400/helper/detalhe.rb
Instance Method Summary collapse
-
#detalhe_posicao_001_001 ⇒ Object
Identificação do Registro Detalhe Padrão: 1 Tipo: Numero Tamanho: 001.
-
#detalhe_posicao_002_003 ⇒ Object
Tipo de inscrição do beneficiario 01 = CPF 02 = CNPJ Tipo: Numero Tamanho: 002.
-
#detalhe_posicao_004_017 ⇒ Object
CNPJ/CPF do beneficiário Tipo: Numero Tamanho: 014.
-
#detalhe_posicao_018_037 ⇒ Object
Informações da conta Tipo: Numero Tamanho: 20.
-
#detalhe_posicao_038_062 ⇒ Object
Numero de controle do participante Padrão: “ ” Brancos Tipo: String Tamanho: 25.
-
#detalhe_posicao_063_076(pagamento, sequencial) ⇒ Object
Nosso numero e informações do pagaemnto Tamanho: 14.
-
#detalhe_posicao_077_108(pagamento, sequencial) ⇒ Object
Diferente para cada banco Tipo: X N Tamanho: 32.
-
#detalhe_posicao_109_110(pagamento, sequencial) ⇒ Object
Comando/Movimento Tipo: N Padrão: ‘01’ = Registro de títulos Tamanho: 2.
-
#detalhe_posicao_111_120(pagamento, sequencial) ⇒ Object
Seu número Tipo: N Tamanho: 10.
-
#detalhe_posicao_121_160(pagamento, sequencial) ⇒ Object
Informações do pagamento Tipo: XN Tamanho: 40.
-
#detalhe_posicao_161_218(pagamento, sequencial) ⇒ Object
Informações de multa e juros Tipo: XN Tamanho: 58.
-
#detalhe_posicao_219_394(pagamento, sequencial) ⇒ Object
Informações do sacado Tipo: XN Tamanho: 176.
-
#detalhe_posicao_395_400(pagamento, sequencial) ⇒ Object
Sequencial do registro Tipo: N Tamanho: 6.
-
#monta_detalhe(pagamento, sequencial) ⇒ String
Monta o registro segmento P do arquivo.
Instance Method Details
#detalhe_posicao_001_001 ⇒ Object
Identificação do Registro Detalhe Padrão: 1 Tipo: Numero Tamanho: 001
42 43 44 |
# File 'lib/br_boleto/remessa/cnab400/helper/detalhe.rb', line 42 def detalhe_posicao_001_001 '1' end |
#detalhe_posicao_002_003 ⇒ Object
Tipo de inscrição do beneficiario 01 = CPF 02 = CNPJ Tipo: Numero Tamanho: 002
51 52 53 |
# File 'lib/br_boleto/remessa/cnab400/helper/detalhe.rb', line 51 def detalhe_posicao_002_003 conta.tipo_cpf_cnpj end |
#detalhe_posicao_004_017 ⇒ Object
CNPJ/CPF do beneficiário Tipo: Numero Tamanho: 014
58 59 60 |
# File 'lib/br_boleto/remessa/cnab400/helper/detalhe.rb', line 58 def detalhe_posicao_004_017 "#{conta.cpf_cnpj}".adjust_size_to(14, '0', :right) end |
#detalhe_posicao_018_037 ⇒ Object
Informações da conta Tipo: Numero Tamanho: 20
65 66 67 |
# File 'lib/br_boleto/remessa/cnab400/helper/detalhe.rb', line 65 def detalhe_posicao_018_037 informacoes_da_conta(:detalhe) end |
#detalhe_posicao_038_062 ⇒ Object
Numero de controle do participante Padrão: “ ” Brancos Tipo: String Tamanho: 25
73 74 75 |
# File 'lib/br_boleto/remessa/cnab400/helper/detalhe.rb', line 73 def detalhe_posicao_038_062 ''.adjust_size_to(25) end |
#detalhe_posicao_063_076(pagamento, sequencial) ⇒ Object
Nosso numero e informações do pagaemnto Tamanho: 14
79 80 81 |
# File 'lib/br_boleto/remessa/cnab400/helper/detalhe.rb', line 79 def detalhe_posicao_063_076(pagamento, sequencial) dados_do_pagamento(pagamento) end |
#detalhe_posicao_077_108(pagamento, sequencial) ⇒ Object
Diferente para cada banco Tipo: X N Tamanho: 32
86 87 88 |
# File 'lib/br_boleto/remessa/cnab400/helper/detalhe.rb', line 86 def detalhe_posicao_077_108(pagamento, sequencial) raise NotImplementedError.new("Sobreescreva o metodo #detalhe_posicao_077_108 para a class #{self}") end |
#detalhe_posicao_109_110(pagamento, sequencial) ⇒ Object
Comando/Movimento Tipo: N Padrão: ‘01’ = Registro de títulos Tamanho: 2
94 95 96 |
# File 'lib/br_boleto/remessa/cnab400/helper/detalhe.rb', line 94 def detalhe_posicao_109_110(pagamento, sequencial) "#{pagamento.identificacao_ocorrencia}".adjust_size_to(2, '0', :right) end |
#detalhe_posicao_111_120(pagamento, sequencial) ⇒ Object
Seu número Tipo: N Tamanho: 10
101 102 103 |
# File 'lib/br_boleto/remessa/cnab400/helper/detalhe.rb', line 101 def detalhe_posicao_111_120(pagamento, sequencial) "#{pagamento.numero_documento}".adjust_size_to(10, '0', :right) end |
#detalhe_posicao_121_160(pagamento, sequencial) ⇒ Object
Informações do pagamento Tipo: XN Tamanho: 40
108 109 110 |
# File 'lib/br_boleto/remessa/cnab400/helper/detalhe.rb', line 108 def detalhe_posicao_121_160(pagamento, sequencial) informacoes_do_pagamento(pagamento, sequencial) end |
#detalhe_posicao_161_218(pagamento, sequencial) ⇒ Object
Informações de multa e juros Tipo: XN Tamanho: 58
115 116 117 |
# File 'lib/br_boleto/remessa/cnab400/helper/detalhe.rb', line 115 def detalhe_posicao_161_218(pagamento, sequencial) detalhe_multas_e_juros_do_pagamento(pagamento, sequencial) end |
#detalhe_posicao_219_394(pagamento, sequencial) ⇒ Object
Informações do sacado Tipo: XN Tamanho: 176
122 123 124 |
# File 'lib/br_boleto/remessa/cnab400/helper/detalhe.rb', line 122 def detalhe_posicao_219_394(pagamento, sequencial) informacoes_do_sacado(pagamento, sequencial) end |
#detalhe_posicao_395_400(pagamento, sequencial) ⇒ Object
Sequencial do registro Tipo: N Tamanho: 6
129 130 131 |
# File 'lib/br_boleto/remessa/cnab400/helper/detalhe.rb', line 129 def detalhe_posicao_395_400(pagamento, sequencial) "#{sequencial}".adjust_size_to(6, '0', :right) end |
#monta_detalhe(pagamento, sequencial) ⇒ String
Monta o registro segmento P do arquivo
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/br_boleto/remessa/cnab400/helper/detalhe.rb', line 17 def monta_detalhe(pagamento, sequencial) # campos com * na frente nao foram implementados # # DESCRICAO TAMANHO detalhe = '' detalhe << detalhe_posicao_001_001 # Identificação do Registro Detalhe detalhe << detalhe_posicao_002_003 # Tipo de inscrição do beneficiario detalhe << detalhe_posicao_004_017 # CNPJ do beneficiario detalhe << detalhe_posicao_018_037 # Informações da conta detalhe << detalhe_posicao_038_062 # Numero de controle do participante detalhe << detalhe_posicao_063_076(pagamento, sequencial) # Nosso número com DV detalhe << detalhe_posicao_077_108(pagamento, sequencial) # Diferente para cada banco detalhe << detalhe_posicao_109_110(pagamento, sequencial) # Comando/Movimento detalhe << detalhe_posicao_111_120(pagamento, sequencial) # Seu número detalhe << detalhe_posicao_121_160(pagamento, sequencial) # Informações do pagamento detalhe << detalhe_posicao_161_218(pagamento, sequencial) # Informações de multa e juros detalhe << detalhe_posicao_219_394(pagamento, sequencial) # Informações do sacado/pagador detalhe << detalhe_posicao_395_400(pagamento, sequencial) # Sequencial detalhe.upcase end |