Class: BrBoleto::Conta::Base
- Inherits:
-
ActiveModelBase
- Object
- ActiveModelBase
- BrBoleto::Conta::Base
- Includes:
- BrBoleto::Calculos, Helper::DefaultCodes
- Defined in:
- lib/br_boleto/conta/base.rb
Instance Attribute Summary collapse
-
#agencia ⇒ Object
Número da agência.
-
#agencia_dv ⇒ Object
Digito verificador da agência.
-
#carteira ⇒ Object
Uma carteira de cobrança define o modo como o boleto é tratado pelo banco.
-
#codigo_carteira ⇒ Object
Cógigo da carteira / Tipo de Cobrança Código adotado pela FEBRABAN, para identificar a característica dos títulos dentro das modalidades de cobrança existentes no banco.
-
#conta_corrente ⇒ Object
Número da Conta corrente.
-
#conta_corrente_dv ⇒ Object
Returns the value of attribute conta_corrente_dv.
-
#convenio ⇒ Object
Código do Convênio é o código do cliente, fornecido pelo banco..
-
#convenio_dv ⇒ Object
Returns the value of attribute convenio_dv.
-
#cpf_cnpj ⇒ Object
Utiliado para sempre retornar apenas os numero dos CPF/CNPJ EX: self.cpf_cnpj = 074.756.887-98 puts self.
-
#endereco ⇒ Object
Deve ser informado o endereço completo do Cedente.
-
#modalidade ⇒ Object
FORMATAÇÂO DE VALORES CONFORME TAMANHO ########################.
-
#nome_banco ⇒ Object
Nome do banco.
-
#razao_social ⇒ Object
Nome/Razão social que aparece no campo ‘Cedente’ no boleto.
-
#valid_agencia_length ⇒ Object
VALIDAÇÕES DINÂMICAS ###############################.
-
#valid_carteira_inclusion ⇒ Object
Returns the value of attribute valid_carteira_inclusion.
-
#valid_carteira_length ⇒ Object
> CARTEIRA.
-
#valid_carteira_maximum ⇒ Object
Returns the value of attribute valid_carteira_maximum.
-
#valid_carteira_minimum ⇒ Object
Returns the value of attribute valid_carteira_minimum.
-
#valid_carteira_required ⇒ Object
Returns the value of attribute valid_carteira_required.
-
#valid_codigo_carteira_length ⇒ Object
> COD.
-
#valid_codigo_carteira_required ⇒ Object
Returns the value of attribute valid_codigo_carteira_required.
-
#valid_conta_corrente_length ⇒ Object
> CONTA CORRENTE.
-
#valid_conta_corrente_maximum ⇒ Object
Returns the value of attribute valid_conta_corrente_maximum.
-
#valid_conta_corrente_minimum ⇒ Object
Returns the value of attribute valid_conta_corrente_minimum.
-
#valid_conta_corrente_required ⇒ Object
Returns the value of attribute valid_conta_corrente_required.
-
#valid_convenio_inclusion ⇒ Object
Returns the value of attribute valid_convenio_inclusion.
-
#valid_convenio_length ⇒ Object
> CONVÊNIO / CODIGO CEDENTE / CONTRATO / CODIGO BENEFICIÁRIO.
-
#valid_convenio_maximum ⇒ Object
Returns the value of attribute valid_convenio_maximum.
-
#valid_convenio_minimum ⇒ Object
Returns the value of attribute valid_convenio_minimum.
-
#valid_convenio_required ⇒ Object
Returns the value of attribute valid_convenio_required.
-
#valid_endereco_required ⇒ Object
> ENDEREÇO.
-
#valid_modalidade_inclusion ⇒ Object
Returns the value of attribute valid_modalidade_inclusion.
-
#valid_modalidade_length ⇒ Object
> Modalidade.
-
#valid_modalidade_maximum ⇒ Object
Returns the value of attribute valid_modalidade_maximum.
-
#valid_modalidade_minimum ⇒ Object
Returns the value of attribute valid_modalidade_minimum.
-
#valid_modalidade_required ⇒ Object
Returns the value of attribute valid_modalidade_required.
Instance Method Summary collapse
-
#agencia_codigo_cedente ⇒ String
Agência, código do cedente ou nosso número.
-
#carteira_formatada ⇒ String
Embora o padrão seja mostrar o número da carteira no boleto, alguns bancos requerem que seja mostrado um valor diferente na carteira.
-
#codigo_banco ⇒ String
Código do Banco.
-
#codigo_banco_dv ⇒ String
Dígito do código do banco.
-
#codigo_banco_formatado ⇒ String
Formata o código do banco com o dígito do código do banco.
-
#cpf_cnpj_formatado ⇒ Object
Utiliado para sempre retornar numero do CPF/CNPJ com a formatação correta EX: self.cpf_cnpj = 07475688798 puts self.cpf_cnpj_formatado ~> ‘074.756.887-98’.
-
#cpf_cnpj_formatado_com_label ⇒ Object
Retorna o cpf ou cnpj com a formatação de pontos com label EX: ‘CNPJ: 12.345.678/0001-88’ ‘CPF: 074.345.456-83’.
-
#tipo_cobranca ⇒ Object
Código da Carteira ou Tipo de Cobrança Código adotado pela FEBRABAN, para identificar a característica dos títulos dentro das modalidades de cobrança existentes no banco.
- #tipo_cpf_cnpj(tamanho = 2) ⇒ Object
-
#versao_layout_arquivo_cnab_240 ⇒ Object
Versões de layout para CNAB 240.
- #versao_layout_lote_cnab_240 ⇒ Object
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, #default_codigo_juros, #default_codigo_multa, #equivalent_codigo_desconto, #equivalent_codigo_juros, #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_remessa_400, #equivalent_codigo_movimento_retorno_240, #equivalent_codigo_movimento_retorno_400, #equivalent_codigo_multa, #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, #default_values, #initialize
Constructor Details
This class inherits a constructor from BrBoleto::ActiveModelBase
Instance Attribute Details
#agencia ⇒ Object
Número da agência. Campo auto explicativo.
85 86 87 |
# File 'lib/br_boleto/conta/base.rb', line 85 def agencia @agencia end |
#agencia_dv ⇒ Object
Digito verificador da agência
87 88 89 |
# File 'lib/br_boleto/conta/base.rb', line 87 def agencia_dv @agencia_dv end |
#carteira ⇒ Object
Uma carteira de cobrança define o modo como o boleto é tratado pelo banco. Existem duas grandes divisões: carteiras não registradas e carteiras registradas.
Carteiras Não Registradas
Significa que não há registro no banco sobre os boletos gerados, ou seja, você não precisa notificar o banco a cada boleto gerado. Neste caso a cobrança de taxa bancária é feita por boleto pago.
Carteiras Registradas
Você precisa notificar o banco sobre todos os boletos gerados, em geral enviando um arquivo chamado “arquivo de remessa”. Neste caso, normalmente existe uma taxa bancária por boleto gerado, independentemente de ele ser pago. Nestas carteiras também se encaixam serviços bancários adicionais, como protesto em caso de não pagamento.
Campo Obrigatório
46 47 48 |
# File 'lib/br_boleto/conta/base.rb', line 46 def carteira @carteira end |
#codigo_carteira ⇒ Object
Cógigo da carteira / Tipo de Cobrança Código adotado pela FEBRABAN, para identificar a característica dos títulos dentro das modalidades de cobrança existentes no banco
52 53 54 |
# File 'lib/br_boleto/conta/base.rb', line 52 def codigo_carteira @codigo_carteira end |
#conta_corrente ⇒ Object
Número da Conta corrente. Campo auto explicativo.
90 91 92 |
# File 'lib/br_boleto/conta/base.rb', line 90 def conta_corrente @conta_corrente end |
#conta_corrente_dv ⇒ Object
Returns the value of attribute conta_corrente_dv.
91 92 93 |
# File 'lib/br_boleto/conta/base.rb', line 91 def conta_corrente_dv @conta_corrente_dv end |
#convenio ⇒ Object
Código do Convênio é o código do cliente, fornecido pelo banco.
Alguns bancos, dependendo do banco e da carteira, precisam desse campo preenchido. A nomenclatura para essa informação varia em cada banco, pode ser também: codigo_beneficiario OU codigo_cedente OU contrato Por isso foi criado um alias para que cada um utilize a nomenclatura que preferir.
68 69 70 |
# File 'lib/br_boleto/conta/base.rb', line 68 def convenio @convenio end |
#convenio_dv ⇒ Object
Returns the value of attribute convenio_dv.
69 70 71 |
# File 'lib/br_boleto/conta/base.rb', line 69 def convenio_dv @convenio_dv end |
#cpf_cnpj ⇒ Object
Utiliado para sempre retornar apenas os numero dos CPF/CNPJ EX:
self.cpf_cnpj = 074.756.887-98
puts self. cpf_cnpj
~> '07475688798'
26 27 28 |
# File 'lib/br_boleto/conta/base.rb', line 26 def cpf_cnpj @cpf_cnpj end |
#endereco ⇒ Object
Deve ser informado o endereço completo do Cedente.
Campo Obrigatório
81 82 83 |
# File 'lib/br_boleto/conta/base.rb', line 81 def endereco @endereco end |
#modalidade ⇒ Object
FORMATAÇÂO DE VALORES CONFORME TAMANHO ########################
59 60 61 |
# File 'lib/br_boleto/conta/base.rb', line 59 def modalidade @modalidade end |
#nome_banco ⇒ Object
Nome do banco.
97 98 99 |
# File 'lib/br_boleto/conta/base.rb', line 97 def nome_banco @nome_banco end |
#razao_social ⇒ Object
Nome/Razão social que aparece no campo ‘Cedente’ no boleto.
23 24 25 |
# File 'lib/br_boleto/conta/base.rb', line 23 def @razao_social end |
#valid_agencia_length ⇒ Object
VALIDAÇÕES DINÂMICAS ###############################
100 101 102 |
# File 'lib/br_boleto/conta/base.rb', line 100 def valid_agencia_length @valid_agencia_length end |
#valid_carteira_inclusion ⇒ Object
Returns the value of attribute valid_carteira_inclusion.
121 122 123 |
# File 'lib/br_boleto/conta/base.rb', line 121 def valid_carteira_inclusion @valid_carteira_inclusion end |
#valid_carteira_length ⇒ Object
> CARTEIRA
117 118 119 |
# File 'lib/br_boleto/conta/base.rb', line 117 def valid_carteira_length @valid_carteira_length end |
#valid_carteira_maximum ⇒ Object
Returns the value of attribute valid_carteira_maximum.
119 120 121 |
# File 'lib/br_boleto/conta/base.rb', line 119 def valid_carteira_maximum @valid_carteira_maximum end |
#valid_carteira_minimum ⇒ Object
Returns the value of attribute valid_carteira_minimum.
118 119 120 |
# File 'lib/br_boleto/conta/base.rb', line 118 def valid_carteira_minimum @valid_carteira_minimum end |
#valid_carteira_required ⇒ Object
Returns the value of attribute valid_carteira_required.
120 121 122 |
# File 'lib/br_boleto/conta/base.rb', line 120 def valid_carteira_required @valid_carteira_required end |
#valid_codigo_carteira_length ⇒ Object
> COD. CARTEIRA / TIPO DE COBRANÇA
129 130 131 |
# File 'lib/br_boleto/conta/base.rb', line 129 def valid_codigo_carteira_length @valid_codigo_carteira_length end |
#valid_codigo_carteira_required ⇒ Object
Returns the value of attribute valid_codigo_carteira_required.
130 131 132 |
# File 'lib/br_boleto/conta/base.rb', line 130 def valid_codigo_carteira_required @valid_codigo_carteira_required end |
#valid_conta_corrente_length ⇒ Object
> CONTA CORRENTE
135 136 137 |
# File 'lib/br_boleto/conta/base.rb', line 135 def valid_conta_corrente_length @valid_conta_corrente_length end |
#valid_conta_corrente_maximum ⇒ Object
Returns the value of attribute valid_conta_corrente_maximum.
137 138 139 |
# File 'lib/br_boleto/conta/base.rb', line 137 def valid_conta_corrente_maximum @valid_conta_corrente_maximum end |
#valid_conta_corrente_minimum ⇒ Object
Returns the value of attribute valid_conta_corrente_minimum.
136 137 138 |
# File 'lib/br_boleto/conta/base.rb', line 136 def valid_conta_corrente_minimum @valid_conta_corrente_minimum end |
#valid_conta_corrente_required ⇒ Object
Returns the value of attribute valid_conta_corrente_required.
138 139 140 |
# File 'lib/br_boleto/conta/base.rb', line 138 def valid_conta_corrente_required @valid_conta_corrente_required end |
#valid_convenio_inclusion ⇒ Object
Returns the value of attribute valid_convenio_inclusion.
150 151 152 |
# File 'lib/br_boleto/conta/base.rb', line 150 def valid_convenio_inclusion @valid_convenio_inclusion end |
#valid_convenio_length ⇒ Object
> CONVÊNIO / CODIGO CEDENTE / CONTRATO / CODIGO BENEFICIÁRIO
146 147 148 |
# File 'lib/br_boleto/conta/base.rb', line 146 def valid_convenio_length @valid_convenio_length end |
#valid_convenio_maximum ⇒ Object
Returns the value of attribute valid_convenio_maximum.
148 149 150 |
# File 'lib/br_boleto/conta/base.rb', line 148 def valid_convenio_maximum @valid_convenio_maximum end |
#valid_convenio_minimum ⇒ Object
Returns the value of attribute valid_convenio_minimum.
147 148 149 |
# File 'lib/br_boleto/conta/base.rb', line 147 def valid_convenio_minimum @valid_convenio_minimum end |
#valid_convenio_required ⇒ Object
Returns the value of attribute valid_convenio_required.
149 150 151 |
# File 'lib/br_boleto/conta/base.rb', line 149 def valid_convenio_required @valid_convenio_required end |
#valid_endereco_required ⇒ Object
> ENDEREÇO
169 170 171 |
# File 'lib/br_boleto/conta/base.rb', line 169 def valid_endereco_required @valid_endereco_required end |
#valid_modalidade_inclusion ⇒ Object
Returns the value of attribute valid_modalidade_inclusion.
109 110 111 |
# File 'lib/br_boleto/conta/base.rb', line 109 def valid_modalidade_inclusion @valid_modalidade_inclusion end |
#valid_modalidade_length ⇒ Object
> Modalidade
105 106 107 |
# File 'lib/br_boleto/conta/base.rb', line 105 def valid_modalidade_length @valid_modalidade_length end |
#valid_modalidade_maximum ⇒ Object
Returns the value of attribute valid_modalidade_maximum.
107 108 109 |
# File 'lib/br_boleto/conta/base.rb', line 107 def valid_modalidade_maximum @valid_modalidade_maximum end |
#valid_modalidade_minimum ⇒ Object
Returns the value of attribute valid_modalidade_minimum.
106 107 108 |
# File 'lib/br_boleto/conta/base.rb', line 106 def valid_modalidade_minimum @valid_modalidade_minimum end |
#valid_modalidade_required ⇒ Object
Returns the value of attribute valid_modalidade_required.
108 109 110 |
# File 'lib/br_boleto/conta/base.rb', line 108 def valid_modalidade_required @valid_modalidade_required end |
Instance Method Details
#agencia_codigo_cedente ⇒ String
Agência, código do cedente ou nosso número. Esse campo é específico para cada banco.
249 250 251 |
# File 'lib/br_boleto/conta/base.rb', line 249 def agencia_codigo_cedente "#{agencia} / #{codigo_cedente}-#{codigo_cedente_dv}" end |
#carteira_formatada ⇒ String
Embora o padrão seja mostrar o número da carteira no boleto, alguns bancos requerem que seja mostrado um valor diferente na carteira. Para essas exceções, sobrescreva esse método na subclasse.
269 270 271 |
# File 'lib/br_boleto/conta/base.rb', line 269 def carteira_formatada carteira end |
#codigo_banco ⇒ String
Código do Banco. Esse campo é específico para cada banco.
218 219 220 |
# File 'lib/br_boleto/conta/base.rb', line 218 def codigo_banco raise NotImplementedError.new("Not implemented #codigo_banco in #{self}.") end |
#codigo_banco_dv ⇒ String
Dígito do código do banco. Esse campo é específico para cada banco.
233 234 235 |
# File 'lib/br_boleto/conta/base.rb', line 233 def codigo_banco_dv raise NotImplementedError.new("Not implemented #codigo_banco_dv in #{self}.") end |
#codigo_banco_formatado ⇒ String
Formata o código do banco com o dígito do código do banco. Método usado para o campo de código do banco localizado no cabeçalho do boleto.
241 242 243 |
# File 'lib/br_boleto/conta/base.rb', line 241 def codigo_banco_formatado "#{codigo_banco}-#{codigo_banco_dv}" end |
#cpf_cnpj_formatado ⇒ Object
Utiliado para sempre retornar numero do CPF/CNPJ com a formatação correta EX:
self.cpf_cnpj = 07475688798
puts self.cpf_cnpj_formatado
~> '074.756.887-98'
288 289 290 |
# File 'lib/br_boleto/conta/base.rb', line 288 def cpf_cnpj_formatado BrBoleto::Helper::CpfCnpj.new(cpf_cnpj).com_formatacao end |
#cpf_cnpj_formatado_com_label ⇒ Object
Retorna o cpf ou cnpj com a formatação de pontos com label EX:
'CNPJ: 12.345.678/0001-88'
'CPF: 074.345.456-83'
296 297 298 |
# File 'lib/br_boleto/conta/base.rb', line 296 def cpf_cnpj_formatado_com_label BrBoleto::Helper::CpfCnpj.new(cpf_cnpj).formatado_com_label end |
#tipo_cobranca ⇒ Object
Código da Carteira ou Tipo de Cobrança Código adotado pela FEBRABAN, para identificar a característica dos títulos dentro das modalidades de cobrança existentes no banco
256 257 258 259 260 261 262 |
# File 'lib/br_boleto/conta/base.rb', line 256 def tipo_cobranca if codigo_carteira.present? codigo_carteira elsif carteira.present? carteira.first end end |
#tipo_cpf_cnpj(tamanho = 2) ⇒ Object
300 301 302 |
# File 'lib/br_boleto/conta/base.rb', line 300 def tipo_cpf_cnpj(tamanho = 2) BrBoleto::Helper::CpfCnpj.new(cpf_cnpj).tipo_documento(tamanho) end |
#versao_layout_arquivo_cnab_240 ⇒ Object
Versões de layout para CNAB 240
305 306 307 |
# File 'lib/br_boleto/conta/base.rb', line 305 def versao_layout_arquivo_cnab_240 raise NotImplementedError.new("Not implemented #versao_layout_arquivo_cnab_240 in #{self}.") end |
#versao_layout_lote_cnab_240 ⇒ Object
308 309 310 |
# File 'lib/br_boleto/conta/base.rb', line 308 def versao_layout_lote_cnab_240 raise NotImplementedError.new("Not implemented #versao_layout_lote_cnab_240 in #{self}.") end |