Class: Brcobranca::Remessa::Cnab240::Ailos
- Inherits:
-
Base
- Object
- Base
- Base
- Brcobranca::Remessa::Cnab240::Ailos
show all
- Defined in:
- lib/brcobranca/remessa/cnab240/ailos.rb
Instance Attribute Summary collapse
Attributes inherited from Base
#codigo_carteira, #convenio, #distribuicao_boleto, #emissao_boleto, #especie_titulo, #forma_cadastramento, #mensagem_1, #mensagem_2
Attributes inherited from Base
#aceite, #agencia, #carteira, #conta_corrente, #digito_conta, #documento_cedente, #empresa_mae, #pagamentos, #sequencial_remessa
Instance Method Summary
collapse
Methods inherited from Base
#codigo_desconto, #complemento_r, #data_geracao, #data_mora, #data_multa, #densidade_gravacao, #dv_agencia_cobradora, #exclusivo_servico, #gera_arquivo, #hora_geracao, #monta_header_arquivo, #monta_header_lote, #monta_lote, #monta_segmento_p, #monta_segmento_q, #monta_trailer_arquivo, #monta_trailer_lote, #numero
Methods inherited from Base
#quantidade_titulos_cobranca, #totaliza_valor_titulos, #valor_titulos_carteira
#errors, included, #invalid?, #valid?
Constructor Details
#initialize(campos = {}) ⇒ Ailos
Returns a new instance of Ailos.
15
16
17
18
19
20
21
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 15
def initialize(campos = {})
campos = { emissao_boleto: '2',
forma_cadastramento: '0',
distribuicao_boleto: '2',
especie_titulo: '02' }.merge!(campos)
super(campos)
end
|
Instance Attribute Details
#digito_agencia ⇒ Object
8
9
10
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 8
def digito_agencia
@digito_agencia
end
|
Instance Method Details
#agencia_conta_corrente ⇒ Object
73
74
75
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 73
def agencia_conta_corrente
"#{agencia.to_s.rjust(5, '0')}#{digito_agencia}#{conta_corrente.rjust(12, '0')}#{conta_corrente_dv}"
end
|
#agencia_conta_corrente_dv ⇒ Object
81
82
83
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 81
def agencia_conta_corrente_dv
' '
end
|
#ajusta_nosso_numero(pagamento) ⇒ Object
107
108
109
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 107
def ajusta_nosso_numero(pagamento)
"#{conta_corrente}#{conta_corrente_dv}#{pagamento.nosso_numero.to_s.rjust(9, '0')}".ljust(20, ' ')
end
|
#cod_banco ⇒ Object
31
32
33
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 31
def cod_banco
'085'
end
|
#codigo_baixa(_pagamento) ⇒ Object
146
147
148
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 146
def codigo_baixa(_pagamento)
'2'
end
|
#codigo_convenio ⇒ Object
47
48
49
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 47
def codigo_convenio
convenio.ljust(20, ' ')
end
|
85
86
87
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 85
def
''.rjust(29, ' ').to_s
end
|
#complemento_p(pagamento) ⇒ Object
97
98
99
100
101
102
103
104
105
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 97
def complemento_p(pagamento)
"#{conta_corrente.rjust(12,
'0')}#{conta_corrente_dv}#{agencia_conta_corrente_dv}#{ajusta_nosso_numero(pagamento)}"
end
|
#complemento_trailer ⇒ Object
89
90
91
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 89
def complemento_trailer
"#{''.rjust(69, '0')}#{''.rjust(148, ' ')}"
end
|
#conta_corrente=(valor) ⇒ Object
27
28
29
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 27
def conta_corrente=(valor)
@conta_corrente = valor.to_s.rjust(7, '0') if valor
end
|
#conta_corrente_dv ⇒ Object
77
78
79
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 77
def conta_corrente_dv
conta_corrente.modulo11(mapeamento: { 10 => 0 })
end
|
#convenio=(valor) ⇒ Object
23
24
25
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 23
def convenio=(valor)
@convenio = valor.to_s.rjust(6, '0') if valor
end
|
#convenio_lote ⇒ Object
59
60
61
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 59
def convenio_lote
codigo_convenio
end
|
#dias_baixa(_pagamento) ⇒ Object
150
151
152
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 150
def dias_baixa(_pagamento)
''.rjust(3, ' ')
end
|
#identificacao_titulo_empresa(pagamento) ⇒ Object
111
112
113
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 111
def identificacao_titulo_empresa(pagamento)
pagamento.documento_ou_numero.to_s.ljust(25, ' ')
end
|
#info_conta ⇒ Object
63
64
65
66
67
68
69
70
71
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 63
def info_conta
"#{agencia_conta_corrente}#{agencia_conta_corrente_dv}"
end
|
#monta_segmento_r(pagamento, nro_lote, contador) ⇒ Object
140
141
142
143
144
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 140
def monta_segmento_r(pagamento, nro_lote, contador)
return nil if pagamento.codigo_multa == '0'
super(pagamento, nro_lote, contador)
end
|
#nome_banco ⇒ Object
35
36
37
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 35
def nome_banco
'AILOS'.ljust(30, ' ')
end
|
#tipo_documento ⇒ Object
93
94
95
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 93
def tipo_documento
'1'
end
|
#total_segmentos(pagamentos) ⇒ Object
134
135
136
137
138
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 134
def total_segmentos(pagamentos)
pagamentos.inject(0) do |total, pagamento|
total + (pagamento.codigo_multa == '0' ? 2 : 3)
end
end
|
#uso_exclusivo_banco ⇒ Object
51
52
53
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 51
def uso_exclusivo_banco
''.rjust(20, ' ')
end
|
#uso_exclusivo_empresa ⇒ Object
55
56
57
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 55
def uso_exclusivo_empresa
''.ljust(20, ' ')
end
|
#versao_layout_arquivo ⇒ Object
39
40
41
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 39
def versao_layout_arquivo
'087'
end
|
#versao_layout_lote ⇒ Object
43
44
45
|
# File 'lib/brcobranca/remessa/cnab240/ailos.rb', line 43
def versao_layout_lote
'045'
end
|