Class: Febraban150L
- Inherits:
-
FormatSection
- Object
- FormatSection
- Febraban150L
- Defined in:
- lib/formatos/febraban150/febraban_150_l.rb
Overview
Cronograma de Faturamento Contas/Tributos - Empresa
Instance Method Summary collapse
-
#get_data_faturamento ⇒ Object
——————————————————————- ——————————————————————- Getters.
- #get_data_remessa_banco ⇒ Object
- #get_data_remessa_fisica ⇒ Object
- #get_data_vencimento_fatura ⇒ Object
-
#initialize(master, versao = Febraban150::VERSAO) ⇒ Febraban150L
constructor
A new instance of Febraban150L.
-
#is_valid? ⇒ Boolean
——————————————————————- ——————————————————————- Validações.
-
#process_section(file) ⇒ Object
——————————————————————- ——————————————————————- Gerais.
-
#set_data_faturamento(data) ⇒ Object
——————————————————————- ——————————————————————- Setters.
- #set_data_remessa_banco(data) ⇒ Object
- #set_data_remessa_fisica(data) ⇒ Object
- #set_data_vencimento_fatura(data) ⇒ Object
- #set_reservado(reservado) ⇒ Object
Constructor Details
#initialize(master, versao = Febraban150::VERSAO) ⇒ Febraban150L
Returns a new instance of Febraban150L.
6 7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/formatos/febraban150/febraban_150_l.rb', line 6 def initialize(master, versao = Febraban150::VERSAO) super(master, false, true) @section = Section.new({ 0 => Position.new(1, 1, false, "L", true), # Código do Registro 1 => Position.new(2, 9, true), # Data do Faturamento das Contas 2 => Position.new(3, 9, true), # Data do Vencimento da Fatura 3 => Position.new(4, 9, true), # Data da Remessa do Arquivo 4 => Position.new(5, 9, true), # Data da Remessa das Contas 5 => Position.new(6, 104, false) # Reservado pelo Sistema }, true) end |
Instance Method Details
#get_data_faturamento ⇒ Object
Getters
43 44 45 46 |
# File 'lib/formatos/febraban150/febraban_150_l.rb', line 43 def get_data_faturamento data = self.set_section_value(1) Date.new(data[0..3].to_i, data[4..5].to_i, data[6..7].to_i) end |
#get_data_remessa_banco ⇒ Object
53 54 55 56 |
# File 'lib/formatos/febraban150/febraban_150_l.rb', line 53 def get_data_remessa_banco data = self.set_section_value(3) Date.new(data[0..3].to_i, data[4..5].to_i, data[6..7].to_i) end |
#get_data_remessa_fisica ⇒ Object
58 59 60 61 |
# File 'lib/formatos/febraban150/febraban_150_l.rb', line 58 def get_data_remessa_fisica data = self.set_section_value(4) Date.new(data[0..3].to_i, data[4..5].to_i, data[6..7].to_i) end |
#get_data_vencimento_fatura ⇒ Object
48 49 50 51 |
# File 'lib/formatos/febraban150/febraban_150_l.rb', line 48 def get_data_vencimento_fatura data = self.set_section_value(2) Date.new(data[0..3].to_i, data[4..5].to_i, data[6..7].to_i) end |
#is_valid? ⇒ Boolean
Validações
33 34 35 36 37 38 |
# File 'lib/formatos/febraban150/febraban_150_l.rb', line 33 def is_valid? result = (!self.get_id_cliente_empresa.nil? and !self.get_agencia_debito.nil? and !self.get_id_cliente_banco.nil? and !self.get_id_cliente.nil?) end |
#process_section(file) ⇒ Object
Gerais
22 23 24 25 26 27 28 |
# File 'lib/formatos/febraban150/febraban_150_l.rb', line 22 def process_section file self.set_data_faturamento file[1..8] self.set_data_vencimento_fatura file[9..16] self.set_data_remessa_banco file[17..24] self.set_data_remessa_fisica file[25..32] self.set_reservado file[33..149] end |
#set_data_faturamento(data) ⇒ Object
Setters
66 67 68 69 70 71 72 73 74 75 76 |
# File 'lib/formatos/febraban150/febraban_150_l.rb', line 66 def set_data_faturamento data data = Date.strptime(data, "%Y%m%d") if data.is_a?(String) real_data = data.strftime("%Y%m%d") if real_data.length == 8 self.set_section_value(1, real_data) else raise "#{self.get_id}: Data de Faturamento das Contas não pode estar vazia Valor: #{data}" end end |
#set_data_remessa_banco(data) ⇒ Object
90 91 92 93 94 95 96 97 98 99 100 |
# File 'lib/formatos/febraban150/febraban_150_l.rb', line 90 def set_data_remessa_banco data data = Date.strptime(data, "%Y%m%d") if data.is_a?(String) real_data = data.strftime("%Y%m%d") if real_data.length == 8 self.set_section_value(3, real_data) else raise "#{self.get_id}: Data de Remessa ao Banco não pode estar vazia Valor: #{data}" end end |
#set_data_remessa_fisica(data) ⇒ Object
102 103 104 105 106 107 108 109 110 111 112 |
# File 'lib/formatos/febraban150/febraban_150_l.rb', line 102 def set_data_remessa_fisica data data = Date.strptime(data, "%Y%m%d") if data.is_a?(String) real_data = data.strftime("%Y%m%d") if real_data.length == 8 self.set_section_value(4, real_data) else raise "#{self.get_id}: Data de Remessa Física não pode estar vazia Valor: #{data}" end end |
#set_data_vencimento_fatura(data) ⇒ Object
78 79 80 81 82 83 84 85 86 87 88 |
# File 'lib/formatos/febraban150/febraban_150_l.rb', line 78 def set_data_vencimento_fatura data data = Date.strptime(data, "%Y%m%d") if data.is_a?(String) real_data = data.strftime("%Y%m%d") if real_data.length == 8 self.set_section_value(2, real_data) else raise "#{self.get_id}: Data de Vencimento da Fatura não pode estar vazia Valor: #{data}" end end |
#set_reservado(reservado) ⇒ Object
114 115 116 117 |
# File 'lib/formatos/febraban150/febraban_150_l.rb', line 114 def set_reservado reservado reservado = reservado.to_s self.set_section_value(5, reservado) end |