Class: Boletorb::Santander

Inherits:
Boleto
  • Object
show all
Defined in:
lib/boletorb/santander.rb

Instance Attribute Summary

Attributes inherited from Boleto

#aceite, #cedente, #data_processamento, #especie, #instrucao_1, #instrucao_2, #instrucao_3, #instrucao_4, #instrucao_5, #instrucao_6, #instrucao_7, #ios, #local_pagamento, #nosso_numero, #numero_documento, #sacado, #valor, #vencimento

Instance Method Summary collapse

Methods inherited from Boleto

#fator_vencimento, #formata_valor_para_inteiro, #initialize, #nosso_numero_formatado, #valor_nominal

Constructor Details

This class inherits a constructor from Boletorb::Boleto

Instance Method Details

#codigo_de_barrasObject



40
41
42
43
44
# File 'lib/boletorb/santander.rb', line 40

def codigo_de_barras
	dv_boleto = modulo_11("#{cedente.banco}9#{fator_vencimento}#{valor_nominal}9#{cedente.codigo_cedente}#{nosso_numero_formatado}#{ios}#{cedente.modalidade_carteira}")
	codigo = "#{cedente.banco}9#{dv_boleto}#{fator_vencimento}#{valor_nominal}9#{cedente.codigo_cedente}#{nosso_numero_formatado}#{ios}#{cedente.modalidade_carteira}"			
	codigo
end

#geraObject



10
11
12
13
# File 'lib/boletorb/santander.rb', line 10

def gera
	layout_processado = processa_layout
	layout_processado.generate
end

#gera_arquivo(nome_do_arquivo) ⇒ Object



15
16
17
18
# File 'lib/boletorb/santander.rb', line 15

def gera_arquivo(nome_do_arquivo)
	layout_processado = processa_layout	
	layout_processado.generate filename: nome_do_arquivo
end

#linha_digitavelObject



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/boletorb/santander.rb', line 20

def linha_digitavel
	campo_1 = "#{cedente.banco}99"
	campo_2 = "#{cedente.codigo_cedente[0..3]}"
	linha = "#{campo_1}.#{campo_2}"
	dv_primeiro_grupo = modulo_10("#{campo_1}#{campo_2}")

	campo_3 = "#{cedente.codigo_cedente[4..7]}"
	campo_4 = "#{nosso_numero_formatado[0..1]}.#{nosso_numero_formatado[2..6]}"
	dv_segundo_grupo = modulo_10("#{campo_3}#{campo_4}")

	restante_nosso_numero = "#{nosso_numero_formatado[7..11]}.#{nosso_numero_formatado[12..12]}"

	dv_terceiro_grupo = modulo_10("#{restante_nosso_numero}#{ios}#{cedente.modalidade_carteira}")

	dv_boleto = modulo_11("#{cedente.banco}9#{fator_vencimento}#{valor_nominal}9#{cedente.codigo_cedente}#{nosso_numero_formatado}#{ios}#{cedente.modalidade_carteira}")

	linha = "#{linha}#{dv_primeiro_grupo} #{campo_3}#{campo_4}#{dv_segundo_grupo} #{restante_nosso_numero}"
	linha = "#{linha}#{ios}#{cedente.modalidade_carteira}#{dv_terceiro_grupo} #{dv_boleto} #{fator_vencimento}#{valor_nominal}"
end