Class: Brcobranca::Boleto::Banespa
- Defined in:
- lib/brcobranca/boleto/banespa.rb
Overview
Banco BANESPA
Instance Attribute Summary
Attributes inherited from Base
#aceite, #agencia, #carteira, #cedente, #codigo_servico, #conta_corrente, #convenio, #data_documento, #data_processamento, #dias_vencimento, #documento_cedente, #especie, #especie_documento, #instrucao1, #instrucao2, #instrucao3, #instrucao4, #instrucao5, #instrucao6, #instrucao7, #local_pagamento, #moeda, #numero_documento, #quantidade, #sacado, #sacado_documento, #sacado_endereco, #valor, #variacao
Instance Method Summary collapse
-
#agencia=(valor) ⇒ String
Código da agência.
-
#agencia_conta_boleto ⇒ String
Número do convênio/contrato do cliente para exibir no boleto.
-
#banco ⇒ String
Codigo do banco emissor (3 dígitos sempre).
-
#codigo_barras_segunda_parte ⇒ String
Segunda parte do código de barras.
-
#convenio=(valor) ⇒ String
Número do convênio/contrato do cliente junto ao banco.
-
#initialize(campos = {}) ⇒ Banespa
constructor
Nova instancia do Banespa.
-
#nosso_numero ⇒ String
Agência + Número sequencial.
-
#nosso_numero_boleto ⇒ String
Nosso número para exibir no boleto.
-
#nosso_numero_dv ⇒ String
Dígito verificador do nosso número.
-
#numero_documento=(valor) ⇒ String
Número seqüencial utilizado para identificar o boleto.
Methods inherited from Base
#agencia_dv, #banco_dv, #codigo_barras, #conta_corrente_dv, #data_vencimento, #fator_vencimento, #logotipo, #valor_documento
Methods included from Template::Base
Constructor Details
#initialize(campos = {}) ⇒ Banespa
Nova instancia do Banespa
12 13 14 15 |
# File 'lib/brcobranca/boleto/banespa.rb', line 12 def initialize(campos={}) campos = {:carteira => "COB"}.merge!(campos) super(campos) end |
Instance Method Details
#agencia=(valor) ⇒ String
Código da agência
26 27 28 |
# File 'lib/brcobranca/boleto/banespa.rb', line 26 def agencia=(valor) @agencia = valor.to_s.rjust(3,'0') unless valor.nil? end |
#agencia_conta_boleto ⇒ String
Número do convênio/contrato do cliente para exibir no boleto.
66 67 68 |
# File 'lib/brcobranca/boleto/banespa.rb', line 66 def agencia_conta_boleto self.convenio.gsub(/^(.{3})(.{2})(.{5})(.{1})$/,'\1 \2 \3 \4') end |
#banco ⇒ String
Codigo do banco emissor (3 dígitos sempre)
20 21 22 |
# File 'lib/brcobranca/boleto/banespa.rb', line 20 def banco "033" end |
#codigo_barras_segunda_parte ⇒ String
Segunda parte do código de barras.
Código do cedente | (011)<br/> Nosso número | (007)<br/> Filler | (002) = 00<br/> Código do banco cedente | (003) = 033<br/> Dígito verificador 1 | (001)<br/> Dígito verificador 2 | (001)<br/>
80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 |
# File 'lib/brcobranca/boleto/banespa.rb', line 80 def dv1 = campo_livre.modulo10 #dv 1 inicial dv2 = nil begin recalcular_dv2 = false valor_inicial = "#{campo_livre}#{dv1}" total = valor_inicial.multiplicador([2,3,4,5,6,7]) case total % 11 when 0 then dv2 = 0 when 1 then if dv1 == 9 dv1 = 0 else dv1 += 1 end recalcular_dv2 = true else dv2 = 11 - (total % 11) end end while(recalcular_dv2) return "#{campo_livre}#{dv1}#{dv2}" end |
#convenio=(valor) ⇒ String
Número do convênio/contrato do cliente junto ao banco.
32 33 34 |
# File 'lib/brcobranca/boleto/banespa.rb', line 32 def convenio=(valor) @convenio = valor.to_s.rjust(11,'0') unless valor.nil? end |
#nosso_numero ⇒ String
Agência + Número sequencial.
44 45 46 |
# File 'lib/brcobranca/boleto/banespa.rb', line 44 def nosso_numero "#{self.agencia}#{self.numero_documento}" end |
#nosso_numero_boleto ⇒ String
Nosso número para exibir no boleto.
58 59 60 |
# File 'lib/brcobranca/boleto/banespa.rb', line 58 def nosso_numero_boleto "#{self.nosso_numero.gsub(/^(.{3})(.{7})$/,'\1 \2')} #{self.nosso_numero_dv}" end |
#nosso_numero_dv ⇒ String
Dígito verificador do nosso número.
50 51 52 |
# File 'lib/brcobranca/boleto/banespa.rb', line 50 def nosso_numero_dv self.nosso_numero.modulo_10_banespa end |
#numero_documento=(valor) ⇒ String
Número seqüencial utilizado para identificar o boleto.
38 39 40 |
# File 'lib/brcobranca/boleto/banespa.rb', line 38 def numero_documento=(valor) @numero_documento = valor.to_s.rjust(7,'0') unless valor.nil? end |