teodoro 0.44.1 → 0.46.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/teodoro/arquivo_data.rb +10 -7
- data/lib/teodoro/arquivo_de_evento.rb +4 -0
- data/lib/teodoro/arquivo_de_evento_nao_periodico.rb +6 -6
- data/lib/teodoro/arquivo_de_origem.rb +3 -3
- data/lib/teodoro/arquivo_xml.rb +13 -0
- data/lib/teodoro/empresa/arquivo_de_dados_gerais.rb +55 -0
- data/lib/teodoro/empresa/contratos_de_emprego.rb +1 -1
- data/lib/teodoro/empresa/contratos_de_trabalho_sem_vinculo.rb +9 -5
- data/lib/teodoro/empresa.rb +21 -5
- data/lib/teodoro/leiaute/arquivo_s1000.rb +1 -1
- data/lib/teodoro/leiaute/arquivo_s1010.rb +9 -7
- data/lib/teodoro/leiaute/arquivo_s1298.rb +17 -0
- data/lib/teodoro/leiaute/arquivo_s1299.rb +17 -0
- data/lib/teodoro/leiaute/arquivo_s2200.rb +21 -8
- data/lib/teodoro/leiaute/arquivo_s2205.rb +12 -10
- data/lib/teodoro/leiaute/arquivo_s2206.rb +6 -1
- data/lib/teodoro/leiaute/arquivo_s2210.rb +75 -0
- data/lib/teodoro/leiaute/arquivo_s2220.rb +51 -0
- data/lib/teodoro/leiaute/arquivo_s2230.rb +4 -3
- data/lib/teodoro/leiaute/arquivo_s2240.rb +75 -0
- data/lib/teodoro/leiaute/arquivo_s2299.rb +1 -1
- data/lib/teodoro/leiaute/arquivo_s2300.rb +11 -6
- data/lib/teodoro/leiaute/arquivo_s2306.rb +14 -3
- data/lib/teodoro/leiaute/arquivo_s2399.rb +14 -3
- data/lib/teodoro/version.rb +1 -1
- metadata +10 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ea4d1b13c107ae118402e0785bbcc62d478e5436bf9530000a9d5f9f20097283
|
4
|
+
data.tar.gz: c42a7e350a34796f135f1be75d7e0617796b01655cd223d3cca6f01e6a95ac7b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ecf2fd67a2dc8cbe7f581fcb7c4e438b21e95a01159c02eff867348143b0bee302d8e3ee05a571eb14d05f9eb111d477962a4b1d8c163af78a41c472072a5daa
|
7
|
+
data.tar.gz: 03e6428ff9eba33b52afb10504b27277eb60d5e0ce8d5fefe0b7c0dab63a16accff1b1ec9f267aa2c5f55314e95391f64d0f464640d3350ffd93122fd1f8a6bf
|
data/lib/teodoro/arquivo_data.rb
CHANGED
@@ -21,8 +21,8 @@ module Teodoro
|
|
21
21
|
def criar
|
22
22
|
raise 'evento duplicado' if File.exist?(caminho)
|
23
23
|
|
24
|
-
File.open(caminho, 'w') do
|
25
|
-
|
24
|
+
File.open(caminho, 'w') do |file|
|
25
|
+
file.puts(conteudo_do_arquivo)
|
26
26
|
end
|
27
27
|
end
|
28
28
|
|
@@ -33,11 +33,14 @@ module Teodoro
|
|
33
33
|
end
|
34
34
|
|
35
35
|
def conteudo_do_arquivo
|
36
|
-
|
37
|
-
.map {
|
38
|
-
.
|
39
|
-
.
|
40
|
-
|
36
|
+
itens_de_conteudo_ajustados
|
37
|
+
.map { |chave, valor, formato, opcoes| [chave, Valor.new(valor, formato: formato), opcoes] }
|
38
|
+
.reject { |_chave, valor, opcoes| valor.vazio? && !opcoes[:manter_se_vazio] }
|
39
|
+
.map { |chave, valor| "#{chave}=#{valor}" }
|
40
|
+
end
|
41
|
+
|
42
|
+
def itens_de_conteudo_ajustados
|
43
|
+
itens_do_conteudo.map { [_1[0], _1[1], _1.size == 1 ? :vazio : _1[2], _1[3] || {}] }
|
41
44
|
end
|
42
45
|
|
43
46
|
class Caminho
|
@@ -37,6 +37,10 @@ module Teodoro
|
|
37
37
|
@tipo_de_inscricao_do_empregador ||= evento['ideEmpregador/tpInsc']
|
38
38
|
end
|
39
39
|
|
40
|
+
def numero_de_inscricao_do_empregador
|
41
|
+
@numero_de_inscricao_do_empregador ||= evento['ideEmpregador/nrInsc']
|
42
|
+
end
|
43
|
+
|
40
44
|
def numero_do_recibo
|
41
45
|
@numero_do_recibo ||= recibo['recibo/nrRecibo']
|
42
46
|
end
|
@@ -30,9 +30,9 @@ module Teodoro
|
|
30
30
|
end
|
31
31
|
|
32
32
|
def registrar_arquivos_data
|
33
|
-
arquivos_data.each do
|
33
|
+
arquivos_data.each do |arquivo_data|
|
34
34
|
empresa.arquivos_data.registrar(
|
35
|
-
nome:
|
35
|
+
nome: arquivo_data.nome,
|
36
36
|
recibo: numero_do_recibo
|
37
37
|
)
|
38
38
|
end
|
@@ -43,13 +43,13 @@ module Teodoro
|
|
43
43
|
end
|
44
44
|
|
45
45
|
def arquivos_data
|
46
|
-
@arquivos_data ||= dados_dos_arquivos_data.map
|
46
|
+
@arquivos_data ||= dados_dos_arquivos_data.map do |dados_do_arquivo_data|
|
47
47
|
ArquivoData.new(
|
48
48
|
diretorio: empresa.destino_dos_arquivos_data,
|
49
|
-
nome:
|
50
|
-
itens_do_conteudo:
|
49
|
+
nome: dados_do_arquivo_data.nome,
|
50
|
+
itens_do_conteudo: dados_do_arquivo_data.itens_do_conteudo
|
51
51
|
)
|
52
|
-
|
52
|
+
end
|
53
53
|
end
|
54
54
|
end
|
55
55
|
end
|
@@ -28,9 +28,9 @@ module Teodoro
|
|
28
28
|
private
|
29
29
|
|
30
30
|
def extrair(entrada)
|
31
|
-
File
|
32
|
-
|
33
|
-
|
31
|
+
File
|
32
|
+
.join(destino_dos_arquivos_xml, entrada.name)
|
33
|
+
.then { entrada.extract(_1) unless File.exist?(_1) }
|
34
34
|
end
|
35
35
|
end
|
36
36
|
end
|
data/lib/teodoro/arquivo_xml.rb
CHANGED
@@ -11,11 +11,16 @@ require_relative 'leiaute/arquivo_s1030'
|
|
11
11
|
require_relative 'leiaute/arquivo_s1040'
|
12
12
|
require_relative 'leiaute/arquivo_s1050'
|
13
13
|
require_relative 'leiaute/arquivo_s1070'
|
14
|
+
require_relative 'leiaute/arquivo_s1298'
|
15
|
+
require_relative 'leiaute/arquivo_s1299'
|
14
16
|
require_relative 'leiaute/arquivo_s2190'
|
15
17
|
require_relative 'leiaute/arquivo_s2200'
|
16
18
|
require_relative 'leiaute/arquivo_s2205'
|
17
19
|
require_relative 'leiaute/arquivo_s2206'
|
20
|
+
require_relative 'leiaute/arquivo_s2210'
|
21
|
+
require_relative 'leiaute/arquivo_s2220'
|
18
22
|
require_relative 'leiaute/arquivo_s2230'
|
23
|
+
require_relative 'leiaute/arquivo_s2240'
|
19
24
|
require_relative 'leiaute/arquivo_s2250'
|
20
25
|
require_relative 'leiaute/arquivo_s2299'
|
21
26
|
require_relative 'leiaute/arquivo_s2300'
|
@@ -36,11 +41,16 @@ module Teodoro
|
|
36
41
|
S1040
|
37
42
|
S1050
|
38
43
|
S1070
|
44
|
+
S1298
|
45
|
+
S1299
|
39
46
|
S2190
|
40
47
|
S2200
|
41
48
|
S2205
|
42
49
|
S2206
|
50
|
+
S2210
|
51
|
+
S2220
|
43
52
|
S2230
|
53
|
+
S2240
|
44
54
|
S2250
|
45
55
|
S2299
|
46
56
|
S2300
|
@@ -54,7 +64,10 @@ module Teodoro
|
|
54
64
|
S2200
|
55
65
|
S2205
|
56
66
|
S2206
|
67
|
+
S2210
|
68
|
+
S2220
|
57
69
|
S2230
|
70
|
+
S2240
|
58
71
|
S2250
|
59
72
|
S2299
|
60
73
|
S2300
|
@@ -0,0 +1,55 @@
|
|
1
|
+
module Teodoro
|
2
|
+
class Empresa
|
3
|
+
class ArquivoDeDadosGerais
|
4
|
+
def initialize(empresa:, destino:)
|
5
|
+
@empresa = empresa
|
6
|
+
@destino = destino
|
7
|
+
end
|
8
|
+
|
9
|
+
attr_reader :empresa, :destino
|
10
|
+
|
11
|
+
def gerar # rubocop:disable Metrics/MethodLength
|
12
|
+
ArquivoData.new(
|
13
|
+
diretorio: destino,
|
14
|
+
nome: 'DADOS_GERAIS',
|
15
|
+
itens_do_conteudo: [
|
16
|
+
[
|
17
|
+
'ULTIMA_COMPETENCIA_FECHADA',
|
18
|
+
ultima_competencia_fechada,
|
19
|
+
:mes_ano,
|
20
|
+
{ manter_se_vazio: true }
|
21
|
+
],
|
22
|
+
[
|
23
|
+
'ULTIMA_COMPETENCIA_FECHADA_DECIMO_TERCEIRO',
|
24
|
+
ultima_competencia_fechada_decimo_terceiro,
|
25
|
+
nil,
|
26
|
+
{ manter_se_vazio: true }
|
27
|
+
]
|
28
|
+
]
|
29
|
+
).criar
|
30
|
+
end
|
31
|
+
|
32
|
+
private
|
33
|
+
|
34
|
+
def ultima_competencia_fechada
|
35
|
+
meses_anos.max
|
36
|
+
end
|
37
|
+
|
38
|
+
def meses_anos
|
39
|
+
competencias_encerradas.grep(/^\d{4}-\d{2}$/)
|
40
|
+
end
|
41
|
+
|
42
|
+
def competencias_encerradas
|
43
|
+
empresa.competencias_encerradas
|
44
|
+
end
|
45
|
+
|
46
|
+
def ultima_competencia_fechada_decimo_terceiro
|
47
|
+
anos.max
|
48
|
+
end
|
49
|
+
|
50
|
+
def anos
|
51
|
+
competencias_encerradas.grep(/^\d{4}$/)
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
@@ -16,12 +16,15 @@ module Teodoro
|
|
16
16
|
trabalhadores << inicio_de_contrato.trabalhador
|
17
17
|
end
|
18
18
|
|
19
|
-
def [](cpf_do_trabalhador:, categoria_do_trabalhador:, data:)
|
19
|
+
def [](cpf_do_trabalhador:, matricula_do_trabalhador:, categoria_do_trabalhador:, data:)
|
20
|
+
return contratos.find { _1.matricula_do_trabalhador == matricula_do_trabalhador } if matricula_do_trabalhador
|
21
|
+
|
20
22
|
contratos
|
21
|
-
.select
|
22
|
-
|
23
|
-
|
24
|
-
|
23
|
+
.select do |contrato|
|
24
|
+
contrato.trabalhador.cpf == cpf_do_trabalhador &&
|
25
|
+
contrato.categoria_do_trabalhador == categoria_do_trabalhador &&
|
26
|
+
contrato.ativo?(data)
|
27
|
+
end
|
25
28
|
.max_by(&:data_de_inicio)
|
26
29
|
end
|
27
30
|
|
@@ -57,6 +60,7 @@ module Teodoro
|
|
57
60
|
|
58
61
|
def_delegators :inicio_de_contrato,
|
59
62
|
:trabalhador,
|
63
|
+
:matricula_do_trabalhador,
|
60
64
|
:categoria_do_trabalhador,
|
61
65
|
:data_de_inicio,
|
62
66
|
:recibo
|
data/lib/teodoro/empresa.rb
CHANGED
@@ -3,6 +3,7 @@ require_relative 'arquivo_xml'
|
|
3
3
|
require_relative 'empresa/arquivos_data'
|
4
4
|
require_relative 'empresa/arquivo_data_emp'
|
5
5
|
require_relative 'empresa/arquivo_data_rub'
|
6
|
+
require_relative 'empresa/arquivo_de_dados_gerais'
|
6
7
|
require_relative 'empresa/cargos_gerados'
|
7
8
|
require_relative 'empresa/contratos_de_emprego'
|
8
9
|
require_relative 'empresa/contratos_de_trabalho_sem_vinculo'
|
@@ -49,6 +50,7 @@ module Teodoro
|
|
49
50
|
classificar_arquivos_xml
|
50
51
|
ordenar_arquivos_xml
|
51
52
|
processar_arquivos_xml
|
53
|
+
gerar_arquivo_de_dados_gerais
|
52
54
|
processar_cargos_gerados
|
53
55
|
processar_funcoes_geradas
|
54
56
|
setar_proximo_identificador_de_tabela_de_rubricas_nos_arquivos_data_emp
|
@@ -63,6 +65,10 @@ module Teodoro
|
|
63
65
|
@arquivos_data ||= ArquivosData.new(destino_dos_arquivos_data)
|
64
66
|
end
|
65
67
|
|
68
|
+
def competencias_encerradas
|
69
|
+
@competencias_encerradas ||= []
|
70
|
+
end
|
71
|
+
|
66
72
|
def trabalhadores
|
67
73
|
@trabalhadores ||= Trabalhadores.new
|
68
74
|
end
|
@@ -159,6 +165,14 @@ module Teodoro
|
|
159
165
|
arquivos_xml.shift.processar while arquivos_xml.any?
|
160
166
|
end
|
161
167
|
|
168
|
+
def gerar_arquivo_de_dados_gerais
|
169
|
+
arquivo_de_dados_gerais.gerar
|
170
|
+
end
|
171
|
+
|
172
|
+
def arquivo_de_dados_gerais
|
173
|
+
ArquivoDeDadosGerais.new(empresa: self, destino: destino_dos_arquivos_data)
|
174
|
+
end
|
175
|
+
|
162
176
|
def processar_cargos_gerados
|
163
177
|
cargos_gerados.each(&:processar)
|
164
178
|
end
|
@@ -173,10 +187,12 @@ module Teodoro
|
|
173
187
|
|
174
188
|
def arquivos_data_emp
|
175
189
|
Dir[File.join(destino_dos_arquivos_data, 'EMP*.data')]
|
176
|
-
.map
|
177
|
-
|
178
|
-
|
179
|
-
|
190
|
+
.map do |caminho|
|
191
|
+
ArquivoDataEMP.new(
|
192
|
+
caminho: caminho,
|
193
|
+
proximo_identificador_de_tabela_de_rubricas: proximo_identificador_de_tabela_de_rubricas
|
194
|
+
)
|
195
|
+
end
|
180
196
|
end
|
181
197
|
|
182
198
|
def proximo_identificador_de_tabela_de_rubricas
|
@@ -208,7 +224,7 @@ module Teodoro
|
|
208
224
|
end
|
209
225
|
|
210
226
|
def caminhos_dos_arquivos_emp_data
|
211
|
-
Dir[File.join(destino_dos_arquivos_data, 'EMP*.data')]
|
227
|
+
Dir[File.join(destino_dos_arquivos_data, 'EMP*.data')].sort
|
212
228
|
end
|
213
229
|
|
214
230
|
def novo_caminho_do_ultimo_arquivo_emp_data
|
@@ -52,13 +52,15 @@ module Teodoro
|
|
52
52
|
[
|
53
53
|
[
|
54
54
|
'DadosRubrica_CodigoIncidenciaIR',
|
55
|
-
evento['infoRubrica/*/dadosRubrica/codIncIRRF'].then
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
55
|
+
evento['infoRubrica/*/dadosRubrica/codIncIRRF'].then do |valor|
|
56
|
+
{
|
57
|
+
'0' => '00',
|
58
|
+
'1' => '01',
|
59
|
+
'9' => '09',
|
60
|
+
'700' => '79',
|
61
|
+
'701' => '79'
|
62
|
+
}[valor] || valor
|
63
|
+
end
|
62
64
|
]
|
63
65
|
]
|
64
66
|
else
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Teodoro
|
2
|
+
module Leiaute
|
3
|
+
class ArquivoS1298
|
4
|
+
include ArquivoDeEvento
|
5
|
+
|
6
|
+
def processar
|
7
|
+
empresa.competencias_encerradas.delete(periodo_de_apuracao)
|
8
|
+
end
|
9
|
+
|
10
|
+
private
|
11
|
+
|
12
|
+
def periodo_de_apuracao
|
13
|
+
evento['ideEvento/perApur']
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Teodoro
|
2
|
+
module Leiaute
|
3
|
+
class ArquivoS1299
|
4
|
+
include ArquivoDeEvento
|
5
|
+
|
6
|
+
def processar
|
7
|
+
empresa.competencias_encerradas << periodo_de_apuracao
|
8
|
+
end
|
9
|
+
|
10
|
+
private
|
11
|
+
|
12
|
+
def periodo_de_apuracao
|
13
|
+
evento['ideEvento/perApur']
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -128,10 +128,12 @@ module Teodoro
|
|
128
128
|
end
|
129
129
|
|
130
130
|
def afastamento
|
131
|
-
evento['vinculo/afastamento']&.then
|
132
|
-
|
133
|
-
|
134
|
-
|
131
|
+
evento['vinculo/afastamento']&.then do |afastamento|
|
132
|
+
Obj.new(
|
133
|
+
data_de_inicio: afastamento['dtIniAfast'],
|
134
|
+
codigo_do_motivo: afastamento['codMotAfast']
|
135
|
+
)
|
136
|
+
end
|
135
137
|
end
|
136
138
|
|
137
139
|
def dados_dos_arquivos_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
@@ -274,7 +276,16 @@ module Teodoro
|
|
274
276
|
['EventoAdmissao_InfoVinculo_CodigoMotivoAfastamento', evento['vinculo/afastamento/codMotAfast']],
|
275
277
|
['EventoAdmissao_InfoVinculo_SucessaoVinculo_DataTransferencia', evento['vinculo/sucessaoVinc/dtTransf'], :data],
|
276
278
|
leiaute['EventoAdmissao_InfoVinculo_SucessaoVinculo_CnpjEmpregadorAnterior'],
|
277
|
-
['EventoAdmissao_InfoVinculo_SucessaoVinculo_MatriculaAnterior', evento['vinculo/sucessaoVinc/matricAnt']]
|
279
|
+
['EventoAdmissao_InfoVinculo_SucessaoVinculo_MatriculaAnterior', evento['vinculo/sucessaoVinc/matricAnt']],
|
280
|
+
*(
|
281
|
+
if leiaute_simplificado?
|
282
|
+
evento.*('vinculo/infoContrato/treiCap').map.with_index(1) do |treinamento_capacitacao, seq|
|
283
|
+
[
|
284
|
+
["treiCap_#{seq}_codTreiCap", treinamento_capacitacao['codTreiCap']]
|
285
|
+
]
|
286
|
+
end.sum([])
|
287
|
+
end
|
288
|
+
)
|
278
289
|
# rubocop:enable Layout/LineLength
|
279
290
|
]
|
280
291
|
)
|
@@ -308,7 +319,7 @@ module Teodoro
|
|
308
319
|
private
|
309
320
|
|
310
321
|
def dados_do_arquivo_data_por_chave
|
311
|
-
@dados_do_arquivo_data_por_chave ||= dados_do_arquivo_data.
|
322
|
+
@dados_do_arquivo_data_por_chave ||= dados_do_arquivo_data.to_h { |item| [item.first, item] }
|
312
323
|
end
|
313
324
|
end
|
314
325
|
|
@@ -394,8 +405,10 @@ module Teodoro
|
|
394
405
|
|
395
406
|
def condicao_de_ingresso_no_brasil_do_trabalhador
|
396
407
|
@condicao_de_ingresso_no_brasil_do_trabalhador ||=
|
397
|
-
evento['trabalhador/trabImig']&.then do
|
398
|
-
Teodoro::LeiauteSimplificado::TrabalhadorImigrante
|
408
|
+
evento['trabalhador/trabImig']&.then do |imigrante|
|
409
|
+
Teodoro::LeiauteSimplificado::TrabalhadorImigrante
|
410
|
+
.new(imigrante)
|
411
|
+
.condicao_de_ingresso_no_brasil_no_leiaute2
|
399
412
|
end
|
400
413
|
end
|
401
414
|
|
@@ -24,14 +24,16 @@ module Teodoro
|
|
24
24
|
pais_de_nacionalidade: pais_de_nacionalidade_do_trabalhador,
|
25
25
|
nascimento: Obj.new(
|
26
26
|
if leiaute_simplificado?
|
27
|
-
empresa.trabalhadores[cpf_do_trabalhador].nascimento.then
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
27
|
+
empresa.trabalhadores[cpf_do_trabalhador].nascimento.then do |nascimento|
|
28
|
+
{
|
29
|
+
data: nascimento.data,
|
30
|
+
pais: nascimento.pais,
|
31
|
+
codigo_do_municipio: nascimento.codigo_do_municipio,
|
32
|
+
uf: nascimento.uf,
|
33
|
+
nome_da_mae: nascimento.nome_da_mae,
|
34
|
+
nome_do_pai: nascimento.nome_do_pai
|
35
|
+
}
|
36
|
+
end
|
35
37
|
else
|
36
38
|
{
|
37
39
|
data: evento['alteracao/dadosTrabalhador/nascimento/dtNascto'],
|
@@ -121,8 +123,8 @@ module Teodoro
|
|
121
123
|
def leiaute
|
122
124
|
@leiaute ||= Obj.new(
|
123
125
|
condicao_de_ingresso_no_brasil: if leiaute_simplificado?
|
124
|
-
evento['alteracao/dadosTrabalhador/trabImig']&.then do
|
125
|
-
LeiauteSimplificado::TrabalhadorImigrante.new(
|
126
|
+
evento['alteracao/dadosTrabalhador/trabImig']&.then do |imigrante|
|
127
|
+
LeiauteSimplificado::TrabalhadorImigrante.new(imigrante)
|
126
128
|
.condicao_de_ingresso_no_brasil_no_leiaute2
|
127
129
|
end
|
128
130
|
else
|
@@ -192,7 +192,12 @@ module Teodoro
|
|
192
192
|
['InformacoesContrato_HorarioContratual_DescricaoTipoJornada', evento['altContratual/vinculo/infoContrato/horContratual/dscJorn']],
|
193
193
|
['InformacoesContrato_CodigoCargo', codigo_do_cargo],
|
194
194
|
['InformacoesContrato_CodigoFuncao', codigo_da_funcao],
|
195
|
-
['InformacoesContrato_DataTermino', evento['altContratual/vinculo/infoContrato/duracao/dtTerm'], :data]
|
195
|
+
['InformacoesContrato_DataTermino', evento['altContratual/vinculo/infoContrato/duracao/dtTerm'], :data],
|
196
|
+
*evento.*('altContratual/vinculo/infoContrato/treiCap').map.with_index(1) do |treinamento_capacitacao, seq|
|
197
|
+
[
|
198
|
+
["treiCap_#{seq}_codTreiCap", treinamento_capacitacao['codTreiCap']]
|
199
|
+
]
|
200
|
+
end.sum([])
|
196
201
|
# rubocop:enable Layout/LineLength
|
197
202
|
]
|
198
203
|
end
|
@@ -0,0 +1,75 @@
|
|
1
|
+
module Teodoro
|
2
|
+
module Leiaute
|
3
|
+
class ArquivoS2210
|
4
|
+
include ArquivoDeEventoNaoPeriodico
|
5
|
+
|
6
|
+
private
|
7
|
+
|
8
|
+
def dados_dos_arquivos_data
|
9
|
+
[
|
10
|
+
Obj.new(
|
11
|
+
nome: "CAT_#{numero_do_recibo}",
|
12
|
+
itens_do_conteudo: itens_do_conteudo
|
13
|
+
)
|
14
|
+
]
|
15
|
+
end
|
16
|
+
|
17
|
+
def itens_do_conteudo # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
|
18
|
+
[
|
19
|
+
['Id', id_do_evento],
|
20
|
+
['procEmi', processo_de_emissao_do_evento],
|
21
|
+
['verProc', versao_do_processo_de_emissao_do_evento],
|
22
|
+
['ideEmpregador/tpInsc', tipo_de_inscricao_do_empregador],
|
23
|
+
['ideEmpregador/nrInsc', numero_de_inscricao_do_empregador],
|
24
|
+
['cpfTrab', evento['ideVinculo/cpfTrab']],
|
25
|
+
['matricula', evento['ideVinculo/matricula']],
|
26
|
+
['codCateg', evento['ideVinculo/codCateg']],
|
27
|
+
['dtAcid', evento['cat/dtAcid']],
|
28
|
+
['tpAcid', evento['cat/tpAcid']],
|
29
|
+
['hrAcid', evento['cat/hrAcid']],
|
30
|
+
['hrsTrabAntesAcid', evento['cat/hrsTrabAntesAcid']],
|
31
|
+
['tpCat', evento['cat/tpCat']],
|
32
|
+
['indCatObito', evento['cat/indCatObito']],
|
33
|
+
['dtObito', evento['cat/dtObito']],
|
34
|
+
['indComunPolicia', evento['cat/indComunPolicia']],
|
35
|
+
['codSitGeradora', evento['cat/codSitGeradora']],
|
36
|
+
['iniciatCAT', evento['cat/iniciatCAT']],
|
37
|
+
['obsCAT', evento['cat/obsCAT']],
|
38
|
+
['tpLocal', evento['cat/localAcidente/tpLocal']],
|
39
|
+
['dscLocal', evento['cat/localAcidente/dscLocal']],
|
40
|
+
['tpLograd', evento['cat/localAcidente/tpLograd']],
|
41
|
+
['dscLograd', evento['cat/localAcidente/dscLograd']],
|
42
|
+
['nrLograd', evento['cat/localAcidente/nrLograd']],
|
43
|
+
['complemento', evento['cat/localAcidente/complemento']],
|
44
|
+
['bairro', evento['cat/localAcidente/bairro']],
|
45
|
+
['cep', evento['cat/localAcidente/cep']],
|
46
|
+
['codMunic', evento['cat/localAcidente/codMunic']],
|
47
|
+
['uf', evento['cat/localAcidente/uf']],
|
48
|
+
['pais', evento['cat/localAcidente/pais']],
|
49
|
+
['codPostal', evento['cat/localAcidente/codPostal']],
|
50
|
+
['ideLocalAcid/tpInsc', evento['cat/localAcidente/ideLocalAcid/tpInsc']],
|
51
|
+
['ideLocalAcid/nrInsc', evento['cat/localAcidente/ideLocalAcid/nrInsc']],
|
52
|
+
['codParteAting', evento['cat/parteAtingida/codParteAting']],
|
53
|
+
['lateralidade', evento['cat/parteAtingida/lateralidade']],
|
54
|
+
['codAgntCausador', evento['cat/agenteCausador/codAgntCausador']],
|
55
|
+
['dtAtendimento', evento['cat/atestado/dtAtendimento']],
|
56
|
+
['hrAtendimento', evento['cat/atestado/hrAtendimento']],
|
57
|
+
['indInternacao', evento['cat/atestado/indInternacao']],
|
58
|
+
['durTrat', evento['cat/atestado/durTrat']],
|
59
|
+
['indAfast', evento['cat/atestado/indAfast']],
|
60
|
+
['dscLesao', evento['cat/atestado/dscLesao']],
|
61
|
+
['dscCompLesao', evento['cat/atestado/dscCompLesao']],
|
62
|
+
['diagProvavel', evento['cat/atestado/diagProvavel']],
|
63
|
+
['codCID', evento['cat/atestado/codCID']],
|
64
|
+
['observacao', evento['cat/atestado/observacao']],
|
65
|
+
['nmEmit', evento['cat/atestado/emitente/nmEmit']],
|
66
|
+
['ideOC', evento['cat/atestado/emitente/ideOC']],
|
67
|
+
['nrOC', evento['cat/atestado/emitente/nrOC']],
|
68
|
+
['ufOC', evento['cat/atestado/emitente/ufOC']],
|
69
|
+
['nrRecCatOrig', evento['cat/catOrigem/nrRecCatOrig']],
|
70
|
+
['nrRecibo', numero_do_recibo]
|
71
|
+
]
|
72
|
+
end
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
@@ -0,0 +1,51 @@
|
|
1
|
+
module Teodoro
|
2
|
+
module Leiaute
|
3
|
+
class ArquivoS2220
|
4
|
+
include ArquivoDeEventoNaoPeriodico
|
5
|
+
|
6
|
+
private
|
7
|
+
|
8
|
+
def dados_dos_arquivos_data
|
9
|
+
[
|
10
|
+
Obj.new(
|
11
|
+
nome: "ASO_#{numero_do_recibo}",
|
12
|
+
itens_do_conteudo: itens_do_conteudo
|
13
|
+
)
|
14
|
+
]
|
15
|
+
end
|
16
|
+
|
17
|
+
def itens_do_conteudo # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
|
18
|
+
[
|
19
|
+
['Id', id_do_evento],
|
20
|
+
['procEmi', processo_de_emissao_do_evento],
|
21
|
+
['verProc', versao_do_processo_de_emissao_do_evento],
|
22
|
+
['ideEmpregador/tpInsc', tipo_de_inscricao_do_empregador],
|
23
|
+
['ideEmpregador/nrInsc', numero_de_inscricao_do_empregador],
|
24
|
+
['cpfTrab', evento['ideVinculo/cpfTrab']],
|
25
|
+
['matricula', evento['ideVinculo/matricula']],
|
26
|
+
['codCateg', evento['ideVinculo/codCateg']],
|
27
|
+
['tpExameOcup', evento['exMedOcup/tpExameOcup']],
|
28
|
+
['dtAso', evento['exMedOcup/aso/dtAso']],
|
29
|
+
['resAso', evento['exMedOcup/aso/resAso']],
|
30
|
+
*evento.*('exMedOcup/aso/exame').map.with_index(1) do |exame, seq|
|
31
|
+
[
|
32
|
+
["exame_#{seq}_dtExm", exame['dtExm']],
|
33
|
+
["exame_#{seq}_procRealizado", exame['procRealizado']],
|
34
|
+
["exame_#{seq}_obsProc", exame['obsProc']],
|
35
|
+
["exame_#{seq}_ordExame", exame['ordExame']],
|
36
|
+
["exame_#{seq}_indResult", exame['indResult']]
|
37
|
+
]
|
38
|
+
end.sum([]),
|
39
|
+
['medico/nmMed', evento['exMedOcup/aso/medico/nmMed']],
|
40
|
+
['medico/nrCRM', evento['exMedOcup/aso/medico/nrCRM']],
|
41
|
+
['medico/ufCRM', evento['exMedOcup/aso/medico/ufCRM']],
|
42
|
+
['respMonit/cpfResp', evento['exMedOcup/respMonit/cpfResp']],
|
43
|
+
['respMonit/nmResp', evento['exMedOcup/respMonit/nmResp']],
|
44
|
+
['respMonit/nrCRM', evento['exMedOcup/respMonit/nrCRM']],
|
45
|
+
['respMonit/ufCRM', evento['exMedOcup/respMonit/ufCRM']],
|
46
|
+
['nrRecibo', numero_do_recibo]
|
47
|
+
]
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
@@ -43,10 +43,10 @@ module Teodoro
|
|
43
43
|
if inicio_do_afastamento?
|
44
44
|
inicio_do_afastamento['dtIniAfast']
|
45
45
|
else
|
46
|
-
contrato_de_trabalho.afastamento.then do
|
47
|
-
raise 'término de afastamento sem início de afastamento' unless
|
46
|
+
contrato_de_trabalho.afastamento.then do |afastamento|
|
47
|
+
raise 'término de afastamento sem início de afastamento' unless afastamento
|
48
48
|
|
49
|
-
|
49
|
+
afastamento.data_de_inicio
|
50
50
|
end
|
51
51
|
end
|
52
52
|
end
|
@@ -83,6 +83,7 @@ module Teodoro
|
|
83
83
|
def contrato_de_trabalho_sem_vinculo
|
84
84
|
@contrato_de_trabalho_sem_vinculo ||= contratos_de_trabalho_sem_vinculo[
|
85
85
|
cpf_do_trabalhador: cpf_do_trabalhador,
|
86
|
+
matricula_do_trabalhador: matricula_do_trabalhador,
|
86
87
|
categoria_do_trabalhador: categoria_do_trabalhador,
|
87
88
|
data: inicio_do_afastamento? ? data_de_inicio_do_afastamento : data_de_termino_do_afastamento
|
88
89
|
]
|
@@ -0,0 +1,75 @@
|
|
1
|
+
module Teodoro
|
2
|
+
module Leiaute
|
3
|
+
class ArquivoS2240
|
4
|
+
include ArquivoDeEventoNaoPeriodico
|
5
|
+
|
6
|
+
private
|
7
|
+
|
8
|
+
def dados_dos_arquivos_data
|
9
|
+
[
|
10
|
+
Obj.new(
|
11
|
+
nome: "AMB_#{numero_do_recibo}",
|
12
|
+
itens_do_conteudo: itens_do_conteudo
|
13
|
+
)
|
14
|
+
]
|
15
|
+
end
|
16
|
+
|
17
|
+
def itens_do_conteudo # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
|
18
|
+
[
|
19
|
+
['Id', id_do_evento],
|
20
|
+
['procEmi', processo_de_emissao_do_evento],
|
21
|
+
['verProc', versao_do_processo_de_emissao_do_evento],
|
22
|
+
['ideEmpregador/tpInsc', tipo_de_inscricao_do_empregador],
|
23
|
+
['ideEmpregador/nrInsc', numero_de_inscricao_do_empregador],
|
24
|
+
['cpfTrab', evento['ideVinculo/cpfTrab']],
|
25
|
+
['matricula', evento['ideVinculo/matricula']],
|
26
|
+
['codCateg', evento['ideVinculo/codCateg']],
|
27
|
+
['dtIniCondicao', evento['infoExpRisco/dtIniCondicao']],
|
28
|
+
['localAmb', evento['infoExpRisco/infoAmb/localAmb']],
|
29
|
+
['dscSetor', evento['infoExpRisco/infoAmb/dscSetor']],
|
30
|
+
['infoAmb/tpInsc', evento['infoExpRisco/infoAmb/tpInsc']],
|
31
|
+
['infoAmb/nrInsc', evento['infoExpRisco/infoAmb/nrInsc']],
|
32
|
+
['dscAtivDes', evento['infoExpRisco/infoAtiv/dscAtivDes']],
|
33
|
+
*evento.*('infoExpRisco/agNoc').map.with_index(1) do |agente_nocivo, seq|
|
34
|
+
[
|
35
|
+
["agNoc_#{seq}_codAgNoc", agente_nocivo['codAgNoc']],
|
36
|
+
["agNoc_#{seq}_dscAgNoc", agente_nocivo['dscAgNoc']],
|
37
|
+
["agNoc_#{seq}_tpAval", agente_nocivo['tpAval']],
|
38
|
+
["agNoc_#{seq}_intConc", agente_nocivo['intConc']],
|
39
|
+
["agNoc_#{seq}_limTol", agente_nocivo['limTol']],
|
40
|
+
["agNoc_#{seq}_unMed", agente_nocivo['unMed']],
|
41
|
+
["agNoc_#{seq}_tecMedicao", agente_nocivo['tecMedicao']],
|
42
|
+
["agNoc_#{seq}_utilizEPC", agente_nocivo['epcEpi/utilizEPC']],
|
43
|
+
["agNoc_#{seq}_eficEpc", agente_nocivo['epcEpi/eficEpc']],
|
44
|
+
["agNoc_#{seq}_utilizEPI", agente_nocivo['epcEpi/utilizEPI']],
|
45
|
+
["agNoc_#{seq}_eficEpi", agente_nocivo['epcEpi/eficEpi']],
|
46
|
+
*agente_nocivo.*('epcEpi/epi').map.with_index(1) do |epi, epi_seq|
|
47
|
+
[
|
48
|
+
["agNoc_#{seq}_epi_#{epi_seq}_docAval", epi['docAval']],
|
49
|
+
["agNoc_#{seq}_epi_#{epi_seq}_dscEPI", epi['dscEPI']]
|
50
|
+
]
|
51
|
+
end.sum([]),
|
52
|
+
["agNoc_#{seq}_medProtecao", agente_nocivo['epcEpi/epiCompl/medProtecao']],
|
53
|
+
["agNoc_#{seq}_condFuncto", agente_nocivo['epcEpi/epiCompl/condFuncto']],
|
54
|
+
["agNoc_#{seq}_usoInint", agente_nocivo['epcEpi/epiCompl/usoInint']],
|
55
|
+
["agNoc_#{seq}_przValid", agente_nocivo['epcEpi/epiCompl/przValid']],
|
56
|
+
["agNoc_#{seq}_periodicTroca", agente_nocivo['epcEpi/epiCompl/periodicTroca']],
|
57
|
+
["agNoc_#{seq}_higienizacao", agente_nocivo['epcEpi/epiCompl/higienizacao']]
|
58
|
+
]
|
59
|
+
end.sum([]),
|
60
|
+
*evento.*('infoExpRisco/respReg').map.with_index(1) do |responsavel, seq|
|
61
|
+
[
|
62
|
+
["respReg_#{seq}_cpfResp", responsavel['cpfResp']],
|
63
|
+
["respReg_#{seq}_ideOC", responsavel['ideOC']],
|
64
|
+
["respReg_#{seq}_dscOC", responsavel['dscOC']],
|
65
|
+
["respReg_#{seq}_nrOC", responsavel['nrOC']],
|
66
|
+
["respReg_#{seq}_ufOC", responsavel['ufOC']]
|
67
|
+
]
|
68
|
+
end.sum([]),
|
69
|
+
['obsCompl', evento['infoExpRisco/obs/obsCompl']],
|
70
|
+
['nrRecibo', numero_do_recibo]
|
71
|
+
]
|
72
|
+
end
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
@@ -213,7 +213,7 @@ module Teodoro
|
|
213
213
|
2 => por_iniciativa_do_empregador? && duracao_do_aviso_previo < 30,
|
214
214
|
4 => %w[04 07 08 09].include?(motivo_do_desligamento),
|
215
215
|
6 => motivo_do_desligamento == '33'
|
216
|
-
}.find {
|
216
|
+
}.find { |_, condicao| condicao }&.first
|
217
217
|
end
|
218
218
|
|
219
219
|
def por_iniciativa_do_empregador?
|
@@ -25,6 +25,7 @@ module Teodoro
|
|
25
25
|
def inicio_de_contrato
|
26
26
|
@inicio_de_contrato ||= Obj.new(
|
27
27
|
trabalhador: trabalhador,
|
28
|
+
matricula_do_trabalhador: evento['infoTSVInicio/matricula'],
|
28
29
|
categoria_do_trabalhador: evento['infoTSVInicio/codCateg'],
|
29
30
|
data_de_inicio: evento['infoTSVInicio/dtInicio'],
|
30
31
|
matricula: evento['infoTSVInicio/matricula'],
|
@@ -119,10 +120,12 @@ module Teodoro
|
|
119
120
|
end
|
120
121
|
|
121
122
|
def afastamento
|
122
|
-
evento['infoTSVInicio/afastamento']&.then
|
123
|
-
|
124
|
-
|
125
|
-
|
123
|
+
evento['infoTSVInicio/afastamento']&.then do |afastamento|
|
124
|
+
Obj.new(
|
125
|
+
data_de_inicio: afastamento['dtIniAfast'],
|
126
|
+
codigo_do_motivo: afastamento['codMotAfast']
|
127
|
+
)
|
128
|
+
end
|
126
129
|
end
|
127
130
|
|
128
131
|
def dados_dos_arquivos_data # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
|
@@ -334,8 +337,10 @@ module Teodoro
|
|
334
337
|
|
335
338
|
def condicao_de_ingresso_no_brasil_do_trabalhador
|
336
339
|
@condicao_de_ingresso_no_brasil_do_trabalhador ||=
|
337
|
-
evento['trabalhador/trabImig']&.then do
|
338
|
-
Teodoro::LeiauteSimplificado::TrabalhadorImigrante
|
340
|
+
evento['trabalhador/trabImig']&.then do |imigrante|
|
341
|
+
Teodoro::LeiauteSimplificado::TrabalhadorImigrante
|
342
|
+
.new(imigrante)
|
343
|
+
.condicao_de_ingresso_no_brasil_no_leiaute2
|
339
344
|
end
|
340
345
|
end
|
341
346
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
module Teodoro
|
2
2
|
module Leiaute
|
3
|
-
class ArquivoS2306
|
3
|
+
class ArquivoS2306 # rubocop:disable Metrics/ClassLength
|
4
4
|
include ArquivoDeEventoNaoPeriodico
|
5
5
|
|
6
6
|
private
|
@@ -17,6 +17,7 @@ module Teodoro
|
|
17
17
|
itens_do_conteudo: [
|
18
18
|
# rubocop:disable Layout/LineLength
|
19
19
|
['ESX_CPF', cpf_do_trabalhador],
|
20
|
+
['matricula', matricula_do_trabalhador],
|
20
21
|
['ESX_CATEGORIA', categoria_do_trabalhador],
|
21
22
|
%w[ESX_SEMVINCULO 1],
|
22
23
|
['ESX_DATAADMISSAO', data_de_inicio, :data],
|
@@ -69,8 +70,17 @@ module Teodoro
|
|
69
70
|
@cpf_do_trabalhador ||= evento['ideTrabSemVinculo/cpfTrab']
|
70
71
|
end
|
71
72
|
|
73
|
+
def matricula_do_trabalhador
|
74
|
+
@matricula_do_trabalhador ||= evento['ideTrabSemVinculo/matricula']
|
75
|
+
end
|
76
|
+
|
72
77
|
def categoria_do_trabalhador
|
73
|
-
@categoria_do_trabalhador ||=
|
78
|
+
@categoria_do_trabalhador ||=
|
79
|
+
if matricula_do_trabalhador
|
80
|
+
contrato_de_trabalho.categoria_do_trabalhador
|
81
|
+
else
|
82
|
+
evento['ideTrabSemVinculo/codCateg']
|
83
|
+
end
|
74
84
|
end
|
75
85
|
|
76
86
|
def data_de_inicio
|
@@ -80,7 +90,8 @@ module Teodoro
|
|
80
90
|
def contrato_de_trabalho
|
81
91
|
contratos_de_trabalho_sem_vinculo[
|
82
92
|
cpf_do_trabalhador: cpf_do_trabalhador,
|
83
|
-
|
93
|
+
matricula_do_trabalhador: matricula_do_trabalhador,
|
94
|
+
categoria_do_trabalhador: (categoria_do_trabalhador unless matricula_do_trabalhador),
|
84
95
|
data: data_da_alteracao
|
85
96
|
]
|
86
97
|
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
module Teodoro
|
2
2
|
module Leiaute
|
3
|
-
class ArquivoS2399
|
3
|
+
class ArquivoS2399 # rubocop:disable Metrics/ClassLength
|
4
4
|
include ArquivoDeEventoNaoPeriodico
|
5
5
|
|
6
6
|
private
|
@@ -18,7 +18,8 @@ module Teodoro
|
|
18
18
|
def contrato_de_trabalho
|
19
19
|
@contrato_de_trabalho ||= contratos_de_trabalho_sem_vinculo[
|
20
20
|
cpf_do_trabalhador: cpf_do_trabalhador,
|
21
|
-
|
21
|
+
matricula_do_trabalhador: matricula_do_trabalhador,
|
22
|
+
categoria_do_trabalhador: (categoria_do_trabalhador unless matricula_do_trabalhador),
|
22
23
|
data: data_do_termino
|
23
24
|
]
|
24
25
|
end
|
@@ -31,12 +32,21 @@ module Teodoro
|
|
31
32
|
@data_do_termino ||= evento['infoTSVTermino/dtTerm']
|
32
33
|
end
|
33
34
|
|
35
|
+
def matricula_do_trabalhador
|
36
|
+
@matricula_do_trabalhador ||= evento['ideTrabSemVinculo/matricula']
|
37
|
+
end
|
38
|
+
|
34
39
|
def cpf_do_trabalhador
|
35
40
|
@cpf_do_trabalhador ||= evento['ideTrabSemVinculo/cpfTrab']
|
36
41
|
end
|
37
42
|
|
38
43
|
def categoria_do_trabalhador
|
39
|
-
@categoria_do_trabalhador ||=
|
44
|
+
@categoria_do_trabalhador ||=
|
45
|
+
if matricula_do_trabalhador
|
46
|
+
contrato_de_trabalho.categoria_do_trabalhador
|
47
|
+
else
|
48
|
+
evento['ideTrabSemVinculo/codCateg']
|
49
|
+
end
|
40
50
|
end
|
41
51
|
|
42
52
|
def dados_dos_arquivos_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
@@ -46,6 +56,7 @@ module Teodoro
|
|
46
56
|
itens_do_conteudo: [
|
47
57
|
# rubocop:disable Layout/LineLength
|
48
58
|
['ESX_CPF', cpf_do_trabalhador],
|
59
|
+
['matricula', matricula_do_trabalhador],
|
49
60
|
['ESX_CATEGORIA', categoria_do_trabalhador],
|
50
61
|
%w[ESX_SEMVINCULO 1],
|
51
62
|
['ESX_DATAADMISSAO', data_de_inicio],
|
data/lib/teodoro/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: teodoro
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.46.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Fortes Tecnologia
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-02-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: nokogiri
|
@@ -203,6 +203,7 @@ files:
|
|
203
203
|
- lib/teodoro/empresa.rb
|
204
204
|
- lib/teodoro/empresa/arquivo_data_emp.rb
|
205
205
|
- lib/teodoro/empresa/arquivo_data_rub.rb
|
206
|
+
- lib/teodoro/empresa/arquivo_de_dados_gerais.rb
|
206
207
|
- lib/teodoro/empresa/arquivos_data.rb
|
207
208
|
- lib/teodoro/empresa/cargos_gerados.rb
|
208
209
|
- lib/teodoro/empresa/contratos_de_emprego.rb
|
@@ -217,11 +218,16 @@ files:
|
|
217
218
|
- lib/teodoro/leiaute/arquivo_s1040.rb
|
218
219
|
- lib/teodoro/leiaute/arquivo_s1050.rb
|
219
220
|
- lib/teodoro/leiaute/arquivo_s1070.rb
|
221
|
+
- lib/teodoro/leiaute/arquivo_s1298.rb
|
222
|
+
- lib/teodoro/leiaute/arquivo_s1299.rb
|
220
223
|
- lib/teodoro/leiaute/arquivo_s2190.rb
|
221
224
|
- lib/teodoro/leiaute/arquivo_s2200.rb
|
222
225
|
- lib/teodoro/leiaute/arquivo_s2205.rb
|
223
226
|
- lib/teodoro/leiaute/arquivo_s2206.rb
|
227
|
+
- lib/teodoro/leiaute/arquivo_s2210.rb
|
228
|
+
- lib/teodoro/leiaute/arquivo_s2220.rb
|
224
229
|
- lib/teodoro/leiaute/arquivo_s2230.rb
|
230
|
+
- lib/teodoro/leiaute/arquivo_s2240.rb
|
225
231
|
- lib/teodoro/leiaute/arquivo_s2250.rb
|
226
232
|
- lib/teodoro/leiaute/arquivo_s2299.rb
|
227
233
|
- lib/teodoro/leiaute/arquivo_s2300.rb
|
@@ -235,7 +241,8 @@ files:
|
|
235
241
|
- lib/tipos_de_logradouro.json
|
236
242
|
homepage:
|
237
243
|
licenses: []
|
238
|
-
metadata:
|
244
|
+
metadata:
|
245
|
+
rubygems_mfa_required: 'true'
|
239
246
|
post_install_message:
|
240
247
|
rdoc_options: []
|
241
248
|
require_paths:
|