teodoro 0.31.0 → 0.34.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/teodoro.rb +1 -1
- data/lib/teodoro/arquivo_xml.rb +1 -0
- data/lib/teodoro/leiaute/arquivo_s1010.rb +3 -3
- data/lib/teodoro/leiaute/arquivo_s2190.rb +3 -3
- data/lib/teodoro/leiaute/arquivo_s2200.rb +41 -35
- data/lib/teodoro/leiaute/arquivo_s2205.rb +53 -16
- data/lib/teodoro/leiaute/arquivo_s2299.rb +7 -7
- data/lib/teodoro/leiaute/arquivo_s2300.rb +131 -59
- data/lib/teodoro/leiaute/arquivo_s2306.rb +5 -4
- data/lib/teodoro/leiaute/arquivo_s2399.rb +29 -29
- data/lib/teodoro/leiaute_simplificado.rb +27 -0
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 362bd430629bbdfd7dcac333707b1e63d9cdf8c70e94d158736ec15f632747a5
|
4
|
+
data.tar.gz: 8c9e1e6786b99817a96071d1eb18afa06ca218f791b946a88c2c24876efa3786
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 16f6481ca7a99b5620ce232c5f01585184768a8128c8997474a3dc445547fab9a3017a4b69b304bc3300bfbaf51d2c2c4a08d68e2ffae6ec66b5cf5836bd32c2
|
7
|
+
data.tar.gz: c9b526568684505334a02652de60ca1d8ae777a4fd72335a226a8802ea3d2a8a381eff706c067e47e2e83ba49f0cbf1b992ab578ddacd707482a51602d1ec479
|
data/lib/teodoro.rb
CHANGED
data/lib/teodoro/arquivo_xml.rb
CHANGED
@@ -22,6 +22,7 @@ require_relative 'leiaute/arquivo_s2300'
|
|
22
22
|
require_relative 'leiaute/arquivo_s2306'
|
23
23
|
require_relative 'leiaute/arquivo_s2399'
|
24
24
|
require_relative 'leiaute/arquivo_s3000'
|
25
|
+
require_relative 'leiaute_simplificado'
|
25
26
|
require_relative 'xml'
|
26
27
|
|
27
28
|
module Teodoro
|
@@ -41,7 +41,7 @@ module Teodoro
|
|
41
41
|
['DadosRubrica_Natureza', evento['infoRubrica/*/dadosRubrica/natRubr']],
|
42
42
|
['DadosRubrica_TipoRubrica', evento['infoRubrica/*/dadosRubrica/tpRubr']],
|
43
43
|
['DadosRubrica_CodigoIncidenciaPrevidencia', evento['infoRubrica/*/dadosRubrica/codIncCP']],
|
44
|
-
|
44
|
+
leiaute['DadosRubrica_CodigoIncidenciaIR'],
|
45
45
|
['DadosRubrica_CodigoIncidenciaFGTS', evento['infoRubrica/*/dadosRubrica/codIncFGTS']],
|
46
46
|
['DadosRubrica_CodigoIncidenciaSindical', evento['infoRubrica/*/dadosRubrica/codIncSIND']],
|
47
47
|
['IdEventoXml', id_do_evento],
|
@@ -55,8 +55,8 @@ module Teodoro
|
|
55
55
|
]
|
56
56
|
end
|
57
57
|
|
58
|
-
def
|
59
|
-
@
|
58
|
+
def leiaute # rubocop:disable Metrics/MethodLength
|
59
|
+
@leiaute ||=
|
60
60
|
(
|
61
61
|
if leiaute_simplificado?
|
62
62
|
[
|
@@ -11,8 +11,8 @@ module Teodoro
|
|
11
11
|
nome: "PRE[#{cpf_do_trabalhador}]",
|
12
12
|
itens_do_conteudo: [
|
13
13
|
['NrRecibo', recibo['recibo/nrRecibo']],
|
14
|
-
['CPF',
|
15
|
-
['Nome'],
|
14
|
+
['CPF', cpf_do_trabalhador],
|
15
|
+
['Nome', cpf_do_trabalhador.then { "#{_1[0..2]}.#{_1[3..5]}.#{_1[6..8]}-#{_1[9..10]}" }],
|
16
16
|
['DataNascimento', evento['infoRegPrelim/dtNascto'], :data],
|
17
17
|
['DataAdmissao', evento['infoRegPrelim/dtAdm'], :data],
|
18
18
|
['IdEvento', id_do_evento]
|
@@ -22,7 +22,7 @@ module Teodoro
|
|
22
22
|
end
|
23
23
|
|
24
24
|
def cpf_do_trabalhador
|
25
|
-
evento['infoRegPrelim/cpfTrab']
|
25
|
+
@cpf_do_trabalhador ||= evento['infoRegPrelim/cpfTrab']
|
26
26
|
end
|
27
27
|
end
|
28
28
|
end
|
@@ -29,8 +29,8 @@ module Teodoro
|
|
29
29
|
tipo_de_admissao: evento['vinculo/infoRegimeTrab/infoCeletista/tpAdmissao'],
|
30
30
|
indicativo_de_admissao: evento['vinculo/infoRegimeTrab/infoCeletista/indAdmissao'],
|
31
31
|
natureza_da_atividade: evento['vinculo/infoRegimeTrab/infoCeletista/natAtividade'],
|
32
|
-
opcao_pelo_fgts:
|
33
|
-
data_de_opcao_pelo_fgts:
|
32
|
+
opcao_pelo_fgts: leiaute.opcao_pelo_fgts,
|
33
|
+
data_de_opcao_pelo_fgts: leiaute.data_de_opcao_pelo_fgts,
|
34
34
|
categoria_do_trabalhador: evento['vinculo/infoContrato/codCateg'],
|
35
35
|
duracao: Obj.new(tipo_de_contrato: evento['vinculo/infoContrato/duracao/tpContr']),
|
36
36
|
recibo: numero_do_recibo
|
@@ -47,13 +47,15 @@ module Teodoro
|
|
47
47
|
estado_civil: evento['trabalhador/estCiv'],
|
48
48
|
grau_de_instrucao: evento['trabalhador/grauInstr'],
|
49
49
|
nome_social: evento['trabalhador/nmSoc'],
|
50
|
-
data_de_nascimento: evento['trabalhador/nascimento/dtNascto'],
|
51
|
-
pais_de_nascimento: evento['trabalhador/nascimento/paisNascto'],
|
52
50
|
pais_de_nacionalidade: evento['trabalhador/nascimento/paisNac'],
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
51
|
+
nascimento: Obj.new(
|
52
|
+
data: evento['trabalhador/nascimento/dtNascto'],
|
53
|
+
pais: evento['trabalhador/nascimento/paisNascto'],
|
54
|
+
codigo_do_municipio: evento['trabalhador/nascimento/codMunic'],
|
55
|
+
uf: evento['trabalhador/nascimento/uf'],
|
56
|
+
nome_da_mae: evento['trabalhador/nascimento/nmMae'],
|
57
|
+
nome_do_pai: evento['trabalhador/nascimento/nmPai']
|
58
|
+
),
|
57
59
|
reside_no_exterior?: evento['trabalhador/endereco/exterior'],
|
58
60
|
endereco: Obj.new(
|
59
61
|
tipo_de_logradouro: evento['trabalhador/endereco/brasil/tpLograd'],
|
@@ -66,8 +68,9 @@ module Teodoro
|
|
66
68
|
uf: evento['trabalhador/endereco/brasil/uf']
|
67
69
|
),
|
68
70
|
estrangeiro?: evento['trabalhador/trabEstrangeiro'],
|
69
|
-
casado_com_brasileiro: evento['trabalhador/trabEstrangeiro/casadoBr'],
|
70
71
|
data_de_chegada_ao_brasil: evento['trabalhador/trabEstrangeiro/dtChegada'],
|
72
|
+
condicao_de_ingresso_no_brasil: leiaute.condicao_de_ingresso_no_brasil_do_trabalhador,
|
73
|
+
casado_com_brasileiro: evento['trabalhador/trabEstrangeiro/casadoBr'],
|
71
74
|
filhos_brasileiros: evento['trabalhador/trabEstrangeiro/filhosBr'],
|
72
75
|
ctps: Obj.new(
|
73
76
|
numero: evento['trabalhador/documentos/CTPS/nrCtps'],
|
@@ -179,16 +182,16 @@ module Teodoro
|
|
179
182
|
['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
|
180
183
|
['EventoAdmissao_InfoTrabalhador_PrimeiroEmprego', evento['trabalhador/indPriEmpr']],
|
181
184
|
['EventoAdmissao_InfoTrabalhador_NomeSocial', trabalhador.nome_social],
|
182
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.
|
183
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.
|
184
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.
|
185
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nome_da_mae],
|
186
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nome_do_pai],
|
187
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.
|
185
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.nascimento.codigo_do_municipio],
|
186
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.nascimento.codigo_do_municipio]],
|
187
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.nascimento.data, :data],
|
188
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nascimento.nome_da_mae],
|
189
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nascimento.nome_do_pai],
|
190
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.nascimento.pais],
|
188
191
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
|
189
192
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade', trabalhador.pais_de_nacionalidade],
|
190
193
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
|
191
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.
|
194
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.nascimento.uf],
|
192
195
|
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
|
193
196
|
['EventoAdmissao_EnderecoResidencialBR_Bairro', trabalhador.endereco.bairro],
|
194
197
|
['EventoAdmissao_EnderecoResidencialBR_Cep', trabalhador.endereco.cep],
|
@@ -207,7 +210,7 @@ module Teodoro
|
|
207
210
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro', trabalhador.casado_com_brasileiro],
|
208
211
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_DataChegada', trabalhador.data_de_chegada_ao_brasil, :data],
|
209
212
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_FilhosBrasileiros', trabalhador.filhos_brasileiros],
|
210
|
-
|
213
|
+
leiaute['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao'],
|
211
214
|
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh', trabalhador.cnh.categoria],
|
212
215
|
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh_TEXT'],
|
213
216
|
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataExpedicao', trabalhador.cnh.data_da_expedicao, :data],
|
@@ -281,22 +284,22 @@ module Teodoro
|
|
281
284
|
['EventoAdmissao_InfoVinculo_Matricula', evento['vinculo/matricula']],
|
282
285
|
['EventoAdmissao_InfoVinculo_TipoRegimePrevidenciario', admissao.tipo_de_regime_previdenciario],
|
283
286
|
['EventoAdmissao_InfoVinculo_TipoRegimeTrabalhista', admissao.tipo_de_regime_trabalhista],
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
+
leiaute['EventoAdmissao_InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_InfoFgts_OptanteFGTS'],
|
288
|
+
leiaute['EventoAdmissao_InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_InfoFgts_DataOpcaoFGTS'],
|
289
|
+
leiaute['EventoAdmissao_InfoVinculo_InfoContrato_CodigoCargo'],
|
287
290
|
['EventoAdmissao_InfoVinculo_InfoContrato_Duracao_DataTermino', evento['vinculo/infoContrato/duracao/dtTerm'], :data],
|
288
291
|
['EventoAdmissao_InfoVinculo_InfoContrato_Duracao_ClausulaAssecuratoria', evento['vinculo/infoContrato/duracao/clauAssec']],
|
289
292
|
['EventoAdmissao_InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_TipoInscricao', evento['vinculo/infoContrato/localTrabalho/localTrabGeral/tpInsc']],
|
290
293
|
['EventoAdmissao_InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_NumeroInscricao', evento['vinculo/infoContrato/localTrabalho/localTrabGeral/nrInsc']],
|
291
294
|
['EventoAdmissao_InfoVinculo_InfoContrato_HorarioContratual_QuantidadedHorasSemanal', evento['vinculo/infoContrato/horContratual/qtdHrsSem'], :decimal],
|
292
|
-
|
293
|
-
|
295
|
+
leiaute['EventoAdmissao_InfoVinculo_InfoContrato_HorarioContratual_TipoJornada'],
|
296
|
+
leiaute['EventoAdmissao_InfoVinculo_InfoContrato_HorarioContratual_DescricaoTipoJornada'],
|
294
297
|
['EventoAdmissao_InfoVinculo_InfoContrato_HorarioContratual_JornadaTempoParcial', evento['vinculo/infoContrato/horContratual/tmpParc']],
|
295
298
|
*([['HorarioNoturno', evento['vinculo/infoContrato/horContratual/horNoturno']]] if leiaute_simplificado?),
|
296
299
|
['EventoAdmissao_InfoVinculo_DataInicioAfastamento', evento['vinculo/afastamento/dtIniAfast'], :data],
|
297
300
|
['EventoAdmissao_InfoVinculo_CodigoMotivoAfastamento', evento['vinculo/afastamento/codMotAfast']],
|
298
301
|
['EventoAdmissao_InfoVinculo_SucessaoVinculo_DataTransferencia', evento['vinculo/sucessaoVinc/dtTransf'], :data],
|
299
|
-
|
302
|
+
leiaute['EventoAdmissao_InfoVinculo_SucessaoVinculo_CnpjEmpregadorAnterior'],
|
300
303
|
['EventoAdmissao_InfoVinculo_SucessaoVinculo_MatriculaAnterior', evento['vinculo/sucessaoVinc/matricAnt']]
|
301
304
|
# rubocop:enable Layout/LineLength
|
302
305
|
]
|
@@ -308,8 +311,8 @@ module Teodoro
|
|
308
311
|
@indicativo_de_cadastramento_inicial ||= evento['vinculo/cadIni']
|
309
312
|
end
|
310
313
|
|
311
|
-
def
|
312
|
-
@
|
314
|
+
def leiaute
|
315
|
+
@leiaute ||=
|
313
316
|
if leiaute_simplificado?
|
314
317
|
LeiauteSimplificado.new(empresa: empresa, evento: evento)
|
315
318
|
else
|
@@ -346,6 +349,10 @@ module Teodoro
|
|
346
349
|
|
347
350
|
public
|
348
351
|
|
352
|
+
def condicao_de_ingresso_no_brasil_do_trabalhador
|
353
|
+
@condicao_de_ingresso_no_brasil_do_trabalhador ||= evento['trabalhador/trabEstrangeiro/classTrabEstrang']
|
354
|
+
end
|
355
|
+
|
349
356
|
def opcao_pelo_fgts
|
350
357
|
@opcao_pelo_fgts ||= evento['vinculo/infoRegimeTrab/infoCeletista/FGTS/opcFGTS']
|
351
358
|
end
|
@@ -361,7 +368,7 @@ module Teodoro
|
|
361
368
|
# rubocop:disable Layout/LineLength
|
362
369
|
[
|
363
370
|
'EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao',
|
364
|
-
|
371
|
+
condicao_de_ingresso_no_brasil_do_trabalhador
|
365
372
|
],
|
366
373
|
[
|
367
374
|
'EventoAdmissao_InfoVinculo_InfoContrato_HorarioContratual_TipoJornada',
|
@@ -407,6 +414,13 @@ module Teodoro
|
|
407
414
|
|
408
415
|
public
|
409
416
|
|
417
|
+
def condicao_de_ingresso_no_brasil_do_trabalhador
|
418
|
+
@condicao_de_ingresso_no_brasil_do_trabalhador ||=
|
419
|
+
evento['trabalhador/trabImig']&.then do
|
420
|
+
Teodoro::LeiauteSimplificado::TrabalhadorImigrante.new(_1).condicao_de_ingresso_no_brasil_no_leiaute2
|
421
|
+
end
|
422
|
+
end
|
423
|
+
|
410
424
|
def opcao_pelo_fgts
|
411
425
|
@opcao_pelo_fgts ||= evento['vinculo/infoRegimeTrab/infoCeletista/FGTS'] ? 1 : 2
|
412
426
|
end
|
@@ -422,15 +436,7 @@ module Teodoro
|
|
422
436
|
# rubocop:disable Layout/LineLength
|
423
437
|
[
|
424
438
|
'EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao',
|
425
|
-
|
426
|
-
'1' => 4,
|
427
|
-
'2' => 5,
|
428
|
-
'3' => 9,
|
429
|
-
'4' => 10,
|
430
|
-
'5' => 11,
|
431
|
-
'6' => 12,
|
432
|
-
'7' => evento['trabalhador/trabImig/tmpResid']
|
433
|
-
}[evento['trabalhador/trabImig/condIng']]
|
439
|
+
condicao_de_ingresso_no_brasil_do_trabalhador
|
434
440
|
],
|
435
441
|
[
|
436
442
|
'EventoAdmissao_InfoVinculo_InfoContrato_HorarioContratual_TipoJornada',
|
@@ -13,7 +13,7 @@ module Teodoro
|
|
13
13
|
|
14
14
|
def trabalhador # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
|
15
15
|
@trabalhador ||= Obj.new(
|
16
|
-
cpf:
|
16
|
+
cpf: cpf_do_trabalhador,
|
17
17
|
nis: evento['alteracao/dadosTrabalhador/nisTrab'],
|
18
18
|
nome: evento['alteracao/dadosTrabalhador/nmTrab'],
|
19
19
|
sexo: evento['alteracao/dadosTrabalhador/sexo'],
|
@@ -21,13 +21,28 @@ module Teodoro
|
|
21
21
|
estado_civil: evento['alteracao/dadosTrabalhador/estCiv'],
|
22
22
|
grau_de_instrucao: evento['alteracao/dadosTrabalhador/grauInstr'],
|
23
23
|
nome_social: evento['alteracao/dadosTrabalhador/nmSoc'],
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
24
|
+
pais_de_nacionalidade: pais_de_nacionalidade_do_trabalhador,
|
25
|
+
nascimento: Obj.new(
|
26
|
+
if leiaute_simplificado?
|
27
|
+
empresa.trabalhadores[cpf_do_trabalhador].nascimento.then { {
|
28
|
+
data: _1.data,
|
29
|
+
pais: _1.pais,
|
30
|
+
codigo_do_municipio: _1.codigo_do_municipio,
|
31
|
+
uf: _1.uf,
|
32
|
+
nome_da_mae: _1.nome_da_mae,
|
33
|
+
nome_do_pai: _1.nome_do_pai
|
34
|
+
} }
|
35
|
+
else
|
36
|
+
{
|
37
|
+
data: evento['alteracao/dadosTrabalhador/nascimento/dtNascto'],
|
38
|
+
pais: evento['alteracao/dadosTrabalhador/nascimento/paisNascto'],
|
39
|
+
codigo_do_municipio: evento['alteracao/dadosTrabalhador/nascimento/codMunic'],
|
40
|
+
uf: evento['alteracao/dadosTrabalhador/nascimento/uf'],
|
41
|
+
nome_da_mae: evento['alteracao/dadosTrabalhador/nascimento/nmMae'],
|
42
|
+
nome_do_pai: evento['alteracao/dadosTrabalhador/nascimento/nmPai']
|
43
|
+
}
|
44
|
+
end
|
45
|
+
),
|
31
46
|
reside_no_exterior?: evento['alteracao/dadosTrabalhador/endereco/exterior'],
|
32
47
|
endereco: Obj.new(
|
33
48
|
tipo_de_logradouro: evento['alteracao/dadosTrabalhador/endereco/brasil/tpLograd'],
|
@@ -41,6 +56,7 @@ module Teodoro
|
|
41
56
|
),
|
42
57
|
estrangeiro?: evento['alteracao/dadosTrabalhador/trabEstrangeiro'],
|
43
58
|
casado_com_brasileiro: evento['alteracao/dadosTrabalhador/trabEstrangeiro/casadoBr'],
|
59
|
+
condicao_de_ingresso_no_brasil: leiaute.condicao_de_ingresso_no_brasil,
|
44
60
|
data_de_chegada_ao_brasil: evento['alteracao/dadosTrabalhador/trabEstrangeiro/dtChegada'],
|
45
61
|
filhos_brasileiros: evento['alteracao/dadosTrabalhador/trabEstrangeiro/filhosBr'],
|
46
62
|
ctps: Obj.new(
|
@@ -94,6 +110,27 @@ module Teodoro
|
|
94
110
|
)
|
95
111
|
end
|
96
112
|
|
113
|
+
def cpf_do_trabalhador
|
114
|
+
@cpf_do_trabalhador ||= evento['ideTrabalhador/cpfTrab']
|
115
|
+
end
|
116
|
+
|
117
|
+
def pais_de_nacionalidade_do_trabalhador
|
118
|
+
evento["alteracao/dadosTrabalhador/#{'nascimento' unless leiaute_simplificado?}/paisNac"]
|
119
|
+
end
|
120
|
+
|
121
|
+
def leiaute
|
122
|
+
@leiaute ||= Obj.new(
|
123
|
+
condicao_de_ingresso_no_brasil: if leiaute_simplificado?
|
124
|
+
evento['alteracao/dadosTrabalhador/trabImig']&.then do
|
125
|
+
LeiauteSimplificado::TrabalhadorImigrante.new(_1)
|
126
|
+
.condicao_de_ingresso_no_brasil_no_leiaute2
|
127
|
+
end
|
128
|
+
else
|
129
|
+
evento['alteracao/dadosTrabalhador/trabEstrangeiro/classTrabEstrang']
|
130
|
+
end
|
131
|
+
)
|
132
|
+
end
|
133
|
+
|
97
134
|
def dados_dos_arquivos_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
98
135
|
contratos_de_trabalho.map do |contrato_de_trabalho| # rubocop:disable Metrics/BlockLength
|
99
136
|
Obj.new(
|
@@ -107,7 +144,7 @@ module Teodoro
|
|
107
144
|
['ESX_CPF', trabalhador.cpf],
|
108
145
|
['ESX_MATRICULA', contrato_de_trabalho.matricula_do_trabalhador],
|
109
146
|
['ESX_CATEGORIA', contrato_de_trabalho.categoria_do_trabalhador],
|
110
|
-
%w[ESX_SEMVINCULO 0],
|
147
|
+
%w[ESX_SEMVINCULO 0],
|
111
148
|
['ESX_DATAADMISSAO', contrato_de_trabalho.data_de_inicio, :data],
|
112
149
|
['ESX_DATAALTERACAO', data_da_alteracao, :data],
|
113
150
|
['DataAlteracao', data_da_alteracao, :data],
|
@@ -133,16 +170,16 @@ module Teodoro
|
|
133
170
|
['EventoAdmissao_InfoTrabalhador_GrauInstrucao', trabalhador.grau_de_instrucao],
|
134
171
|
['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
|
135
172
|
['EventoAdmissao_InfoTrabalhador_NomeSocial', trabalhador.nome_social],
|
136
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.
|
137
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.
|
138
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.
|
139
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nome_da_mae],
|
140
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nome_do_pai],
|
141
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.
|
173
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.nascimento.codigo_do_municipio],
|
174
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.nascimento.codigo_do_municipio]],
|
175
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.nascimento.data, :data],
|
176
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nascimento.nome_da_mae],
|
177
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nascimento.nome_do_pai],
|
178
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.nascimento.pais],
|
142
179
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
|
143
180
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade', trabalhador.pais_de_nacionalidade],
|
144
181
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
|
145
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.
|
182
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.nascimento.uf],
|
146
183
|
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
|
147
184
|
['EventoAdmissao_EnderecoResidencialBR_Bairro', trabalhador.endereco.bairro],
|
148
185
|
['EventoAdmissao_EnderecoResidencialBR_Cep', trabalhador.endereco.cep],
|
@@ -92,16 +92,16 @@ module Teodoro
|
|
92
92
|
['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
|
93
93
|
['EventoAdmissao_InfoTrabalhador_PrimeiroEmprego', contrato_de_emprego.primeiro_emprego_do_trabalhador],
|
94
94
|
['EventoAdmissao_InfoTrabalhador_NomeSocial', trabalhador.nome_social],
|
95
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.
|
96
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.
|
97
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.
|
98
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nome_da_mae],
|
99
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nome_do_pai],
|
100
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.
|
95
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.nascimento.codigo_do_municipio],
|
96
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.nascimento.codigo_do_municipio]],
|
97
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.nascimento.data, :data],
|
98
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nascimento.nome_da_mae],
|
99
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nascimento.nome_do_pai],
|
100
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.nascimento.pais],
|
101
101
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
|
102
102
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade', trabalhador.pais_de_nacionalidade],
|
103
103
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
|
104
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.
|
104
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.nascimento.uf],
|
105
105
|
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
|
106
106
|
['EventoAdmissao_EnderecoResidencialBR_Bairro', trabalhador.endereco.bairro],
|
107
107
|
['EventoAdmissao_EnderecoResidencialBR_Cep', trabalhador.endereco.cep],
|
@@ -41,18 +41,79 @@ module Teodoro
|
|
41
41
|
estado_civil: evento['trabalhador/estCiv'],
|
42
42
|
grau_de_instrucao: evento['trabalhador/grauInstr'],
|
43
43
|
nome_social: evento['trabalhador/nmSoc'],
|
44
|
-
data_de_nascimento: evento['trabalhador/nascimento/dtNascto'],
|
45
|
-
codigo_do_municipio_de_nascimento: evento['trabalhador/nascimento/codMunic'],
|
46
|
-
uf_de_nascimento: evento['trabalhador/nascimento/uf'],
|
47
|
-
pais_de_nascimento: evento['trabalhador/nascimento/paisNascto'],
|
48
44
|
pais_de_nacionalidade: evento['trabalhador/nascimento/paisNac'],
|
49
|
-
|
50
|
-
|
45
|
+
nascimento: Obj.new(
|
46
|
+
data: evento['trabalhador/nascimento/dtNascto'],
|
47
|
+
codigo_do_municipio: evento['trabalhador/nascimento/codMunic'],
|
48
|
+
uf: evento['trabalhador/nascimento/uf'],
|
49
|
+
pais: evento['trabalhador/nascimento/paisNascto'],
|
50
|
+
nome_da_mae: evento['trabalhador/nascimento/nmMae'],
|
51
|
+
nome_do_pai: evento['trabalhador/nascimento/nmPai']
|
52
|
+
),
|
51
53
|
reside_no_exterior?: evento['trabalhador/endereco/exterior'],
|
52
54
|
estrangeiro?: evento['trabalhador/trabEstrangeiro'],
|
53
55
|
data_de_chegada_ao_brasil: evento['trabalhador/trabEstrangeiro/dtChegada'],
|
56
|
+
condicao_de_ingresso_no_brasil: leiaute.condicao_de_ingresso_no_brasil_do_trabalhador,
|
54
57
|
casado_com_brasileiro: evento['trabalhador/trabEstrangeiro/casadoBr'],
|
55
|
-
filhos_brasileiros: evento['trabalhador/trabEstrangeiro/filhosBr']
|
58
|
+
filhos_brasileiros: evento['trabalhador/trabEstrangeiro/filhosBr'],
|
59
|
+
endereco: Obj.new(
|
60
|
+
tipo_de_logradouro: evento['trabalhador/endereco/brasil/tpLograd'],
|
61
|
+
logradouro: evento['trabalhador/endereco/brasil/dscLograd'],
|
62
|
+
numero: evento['trabalhador/endereco/brasil/nrLograd'],
|
63
|
+
complemento: evento['trabalhador/endereco/brasil/complemento'],
|
64
|
+
bairro: evento['trabalhador/endereco/brasil/bairro'],
|
65
|
+
cep: evento['trabalhador/endereco/brasil/cep'],
|
66
|
+
codigo_do_municipio: evento['trabalhador/endereco/brasil/codMunic'],
|
67
|
+
uf: evento['trabalhador/endereco/brasil/uf']
|
68
|
+
),
|
69
|
+
ctps: Obj.new(
|
70
|
+
numero: evento['trabalhador/documentos/CTPS/nrCtps'],
|
71
|
+
serie: evento['trabalhador/documentos/CTPS/serieCtps'],
|
72
|
+
uf: evento['trabalhador/documentos/CTPS/ufCtps']
|
73
|
+
),
|
74
|
+
rg: Obj.new(
|
75
|
+
numero: evento['trabalhador/documentos/RG/nrRg'],
|
76
|
+
orgao_emissor: evento['trabalhador/documentos/RG/orgaoEmissor'],
|
77
|
+
data_da_expedicao: evento['trabalhador/documentos/RG/dtExped']
|
78
|
+
),
|
79
|
+
rne: Obj.new(
|
80
|
+
numero: evento['trabalhador/documentos/RNE/nrRne'],
|
81
|
+
orgao_emissor: evento['trabalhador/documentos/RNE/orgaoEmissor'],
|
82
|
+
data_da_expedicao: evento['trabalhador/documentos/RNE/dtExped']
|
83
|
+
),
|
84
|
+
ric: Obj.new(
|
85
|
+
numero: evento['trabalhador/documentos/RIC/nrRic'],
|
86
|
+
orgao_emissor: evento['trabalhador/documentos/RIC/orgaoEmissor'],
|
87
|
+
data_da_expedicao: evento['trabalhador/documentos/RIC/dtExped']
|
88
|
+
),
|
89
|
+
oc: Obj.new(
|
90
|
+
numero: evento['trabalhador/documentos/OC/nrOc'],
|
91
|
+
orgao_emissor: evento['trabalhador/documentos/OC/orgaoEmissor'],
|
92
|
+
data_da_expedicao: evento['trabalhador/documentos/OC/dtExped']
|
93
|
+
),
|
94
|
+
cnh: Obj.new(
|
95
|
+
numero_do_registro: evento['trabalhador/documentos/CNH/nrRegCnh'],
|
96
|
+
data_da_primeira_habilitacao: evento['trabalhador/documentos/CNH/dtPriHab'],
|
97
|
+
data_da_expedicao: evento['trabalhador/documentos/CNH/dtExped'],
|
98
|
+
data_de_validade: evento['trabalhador/documentos/CNH/dtValid'],
|
99
|
+
categoria: evento['trabalhador/documentos/CNH/categoriaCnh'],
|
100
|
+
uf_do_emissor: evento['trabalhador/documentos/CNH/ufCnh']
|
101
|
+
),
|
102
|
+
deficiencia: Obj.new(
|
103
|
+
fisica: evento['trabalhador/infoDeficiencia/defFisica'],
|
104
|
+
visual: evento['trabalhador/infoDeficiencia/defVisual'],
|
105
|
+
auditiva: evento['trabalhador/infoDeficiencia/defAuditiva'],
|
106
|
+
mental: evento['trabalhador/infoDeficiencia/defMental'],
|
107
|
+
intelectual: evento['trabalhador/infoDeficiencia/defIntelectual'],
|
108
|
+
reabilitado_ou_readaptado: evento['trabalhador/infoDeficiencia/reabReadap'],
|
109
|
+
preenche_cota_de_pessoas_com_deficiencia: nil
|
110
|
+
),
|
111
|
+
contato: Obj.new(
|
112
|
+
fone_principal: evento['trabalhador/contato/fonePrinc'],
|
113
|
+
fone_alternativo: evento['trabalhador/contato/foneAlternat'],
|
114
|
+
email_principal: evento['trabalhador/contato/emailPrinc'],
|
115
|
+
email_alternativo: evento['trabalhador/contato/emailAlternat']
|
116
|
+
)
|
56
117
|
)
|
57
118
|
end
|
58
119
|
|
@@ -104,49 +165,49 @@ module Teodoro
|
|
104
165
|
['EventoAdmissao_InfoTrabalhador_GrauInstrucao', trabalhador.grau_de_instrucao],
|
105
166
|
['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
|
106
167
|
['EventoAdmissao_InfoTrabalhador_NomeSocial', trabalhador.nome_social],
|
107
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.
|
108
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.
|
109
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.
|
110
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nome_da_mae],
|
111
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nome_do_pai],
|
112
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.
|
168
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.nascimento.codigo_do_municipio],
|
169
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.nascimento.codigo_do_municipio]],
|
170
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.nascimento.data, :data],
|
171
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nascimento.nome_da_mae],
|
172
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nascimento.nome_do_pai],
|
173
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.nascimento.pais],
|
113
174
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
|
114
175
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade', trabalhador.pais_de_nacionalidade],
|
115
176
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
|
116
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.
|
177
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.nascimento.uf],
|
117
178
|
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
|
118
179
|
['SemNumeroLogradouroEnderecoBR'],
|
119
180
|
['ResideExterior', evento['trabalhador/endereco/exterior'], :bool],
|
120
181
|
['SemNumeroLogradouroEnderecoEX'],
|
121
182
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro', (trabalhador.casado_com_brasileiro if trabalhador.estrangeiro?)],
|
122
|
-
|
183
|
+
leiaute['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao'],
|
123
184
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao_TEXT'],
|
124
185
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_DataChegada', (trabalhador.data_de_chegada_ao_brasil if trabalhador.estrangeiro?), :data],
|
125
186
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_FilhosBrasileiros', (trabalhador.filhos_brasileiros if trabalhador.estrangeiro?)],
|
126
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh',
|
187
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh', trabalhador.cnh.categoria],
|
127
188
|
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh_TEXT'],
|
128
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataExpedicao',
|
129
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataPrimeiraHabilitacao',
|
130
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataValidade',
|
131
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_NumeroCnh',
|
132
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh',
|
189
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataExpedicao', trabalhador.cnh.data_da_expedicao, :data],
|
190
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataPrimeiraHabilitacao', trabalhador.cnh.data_da_primeira_habilitacao, :data],
|
191
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataValidade', trabalhador.cnh.data_de_validade, :data],
|
192
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_NumeroCnh', trabalhador.cnh.numero_do_registro],
|
193
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh', trabalhador.cnh.uf_do_emissor],
|
133
194
|
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh_TEXT'],
|
134
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_NumeroCtps',
|
135
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_SerieCtps',
|
136
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps',
|
195
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_NumeroCtps', trabalhador.ctps.numero],
|
196
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_SerieCtps', trabalhador.ctps.serie],
|
197
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps', trabalhador.ctps.uf],
|
137
198
|
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps_TEXT'],
|
138
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_DataExpedicao',
|
139
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_NumeroOc',
|
140
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_OrgaoEmissor',
|
141
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_DataExpedicao',
|
142
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_NumeroRg',
|
143
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_OrgaoEmissor',
|
144
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaAuditiva',
|
145
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaFisica',
|
146
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaIntelectual',
|
147
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaMental',
|
148
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaVisual',
|
149
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_ReabilitadoOuReadaptado',
|
199
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_DataExpedicao', trabalhador.oc.data_da_expedicao, :data],
|
200
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_NumeroOc', trabalhador.oc.numero],
|
201
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_OrgaoEmissor', trabalhador.oc.orgao_emissor],
|
202
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_DataExpedicao', trabalhador.rg.data_da_expedicao, :data],
|
203
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_NumeroRg', trabalhador.rg.numero],
|
204
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_OrgaoEmissor', trabalhador.rg.orgao_emissor],
|
205
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaAuditiva', trabalhador.deficiencia.auditiva],
|
206
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaFisica', trabalhador.deficiencia.fisica],
|
207
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaIntelectual', trabalhador.deficiencia.intelectual],
|
208
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaMental', trabalhador.deficiencia.mental],
|
209
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaVisual', trabalhador.deficiencia.visual],
|
210
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_ReabilitadoOuReadaptado', trabalhador.deficiencia.reabilitado_ou_readaptado],
|
150
211
|
*evento.*('trabalhador/dependente').map.with_index(1) do |dependente, seq|
|
151
212
|
[
|
152
213
|
["EventoAdmissao_Dependente_#{seq}_CPFDependente", dependente['cpfDep']],
|
@@ -188,17 +249,17 @@ module Teodoro
|
|
188
249
|
['DescricaoProcEmi', processo_de_emissao_do_evento],
|
189
250
|
['IdEventoXml', id_do_evento],
|
190
251
|
['NrReciboEventoOriginal', numero_do_recibo],
|
191
|
-
['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Bairro',
|
192
|
-
['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Cep',
|
193
|
-
['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_CodigoMunicipio',
|
194
|
-
['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Complemento',
|
195
|
-
['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_DescricaoLogradouro',
|
196
|
-
['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_NumeroLogradouro',
|
197
|
-
['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_TipoLogradouro',
|
198
|
-
['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Uf',
|
199
|
-
|
200
|
-
|
201
|
-
|
252
|
+
['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Bairro', trabalhador.endereco.bairro],
|
253
|
+
['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Cep', trabalhador.endereco.cep],
|
254
|
+
['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_CodigoMunicipio', trabalhador.endereco.codigo_do_municipio],
|
255
|
+
['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Complemento', trabalhador.endereco.complemento],
|
256
|
+
['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_DescricaoLogradouro', trabalhador.endereco.logradouro],
|
257
|
+
['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_NumeroLogradouro', trabalhador.endereco.numero],
|
258
|
+
['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_TipoLogradouro', trabalhador.endereco.tipo_de_logradouro],
|
259
|
+
['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Uf', trabalhador.endereco.uf],
|
260
|
+
leiaute['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoCargoFuncao_CodigoCargo'],
|
261
|
+
leiaute['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoFgts_OptanteFGTS'],
|
262
|
+
leiaute['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoFgts_DataOpcaoFGTS'],
|
202
263
|
['EventoAdmissao_InformacoesInicio_InformacoesComplementares_Remuneracao_UnidadeSalarioFixo', evento['infoTSVInicio/infoComplementares/remuneracao/undSalFixo']],
|
203
264
|
['EventoAdmissao_InformacoesInicio_InformacoesComplementares_Remuneracao_ValorSalarioFixo', evento['infoTSVInicio/infoComplementares/remuneracao/vrSalFx'], :decimal],
|
204
265
|
['EventoAdmissao_InformacoesInicio_NaturezaAtividade', evento['infoTSVInicio/natAtividade']]
|
@@ -208,8 +269,8 @@ module Teodoro
|
|
208
269
|
]
|
209
270
|
end
|
210
271
|
|
211
|
-
def
|
212
|
-
@
|
272
|
+
def leiaute
|
273
|
+
@leiaute ||=
|
213
274
|
if leiaute_simplificado?
|
214
275
|
LeiauteSimplificado.new(empresa: empresa, evento: evento)
|
215
276
|
else
|
@@ -244,11 +305,19 @@ module Teodoro
|
|
244
305
|
@evento = evento
|
245
306
|
end
|
246
307
|
|
308
|
+
public
|
309
|
+
|
310
|
+
def condicao_de_ingresso_no_brasil_do_trabalhador
|
311
|
+
@condicao_de_ingresso_no_brasil_do_trabalhador ||= evento['trabalhador/trabEstrangeiro/classTrabEstrang']
|
312
|
+
end
|
313
|
+
|
314
|
+
private
|
315
|
+
|
247
316
|
def chaves_valores # rubocop:disable Metrics/MethodLength
|
248
317
|
[
|
249
318
|
[
|
250
319
|
'EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao',
|
251
|
-
|
320
|
+
condicao_de_ingresso_no_brasil_do_trabalhador
|
252
321
|
],
|
253
322
|
[
|
254
323
|
'EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoFgts_OptanteFGTS',
|
@@ -279,19 +348,22 @@ module Teodoro
|
|
279
348
|
|
280
349
|
attr_reader :empresa
|
281
350
|
|
351
|
+
public
|
352
|
+
|
353
|
+
def condicao_de_ingresso_no_brasil_do_trabalhador
|
354
|
+
@condicao_de_ingresso_no_brasil_do_trabalhador ||=
|
355
|
+
evento['trabalhador/trabImig']&.then do
|
356
|
+
Teodoro::LeiauteSimplificado::TrabalhadorImigrante.new(_1).condicao_de_ingresso_no_brasil_no_leiaute2
|
357
|
+
end
|
358
|
+
end
|
359
|
+
|
360
|
+
private
|
361
|
+
|
282
362
|
def chaves_valores # rubocop:disable Metrics/MethodLength
|
283
363
|
[
|
284
364
|
[
|
285
365
|
'EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao',
|
286
|
-
|
287
|
-
'1' => 4,
|
288
|
-
'2' => 5,
|
289
|
-
'3' => 9,
|
290
|
-
'4' => 10,
|
291
|
-
'5' => 11,
|
292
|
-
'6' => 12,
|
293
|
-
'7' => evento['trabalhador/trabImig/tmpResid']
|
294
|
-
}[evento['trabalhador/trabImig/condIng']]
|
366
|
+
condicao_de_ingresso_no_brasil_do_trabalhador
|
295
367
|
],
|
296
368
|
[
|
297
369
|
'EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoFgts_OptanteFGTS',
|
@@ -25,7 +25,7 @@ module Teodoro
|
|
25
25
|
['cpfTrabalhador'],
|
26
26
|
['nomeTrabalhador'],
|
27
27
|
['TipoInscricaoEmpregador', recibo['ideEmpregador/tpInsc']],
|
28
|
-
['AlteracaoContratual_DataAlteracao'],
|
28
|
+
['AlteracaoContratual_DataAlteracao', data_da_alteracao, :data],
|
29
29
|
['AlteracaoContratual_DataEfeito'],
|
30
30
|
['AlteracaoContratual_DescricaoAlteracao'],
|
31
31
|
['IdentificacaoVinculo_Nis', evento['ideTrabSemVinculo/nisTrab']],
|
@@ -66,7 +66,7 @@ module Teodoro
|
|
66
66
|
['InfoVinculo_TipoRegimeTrabalhista'],
|
67
67
|
['InfoVinculo_TipoRegimePrevidenciario'],
|
68
68
|
['InfoVinculo_InfoContrato_CodigoCategoria', categoria_do_trabalhador],
|
69
|
-
|
69
|
+
leiaute['InfoVinculo_InfoContrato_CodigoCargo'],
|
70
70
|
['InfoVinculo_InfoContrato_CodigoFuncao', evento['infoTSVAlteracao/infoComplementares/cargoFuncao/codFuncao']],
|
71
71
|
['InfoVinculo_InfoContrato_CodigoCarreira'],
|
72
72
|
['InfoVinculo_InfoContrato_DataIngressoCarreira'],
|
@@ -115,6 +115,7 @@ module Teodoro
|
|
115
115
|
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_HipoteseLegal'],
|
116
116
|
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_JustificaHipoteseLegal'],
|
117
117
|
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_TipoInclusaoContrato'],
|
118
|
+
['EventoAdmissao_DataAlteracaoContratual', data_da_alteracao, :data],
|
118
119
|
['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoTrabalhadorCedido_CategoriaOrigem'],
|
119
120
|
['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoTrabalhadorCedido_CnpjEmpresaCedente'],
|
120
121
|
['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoTrabalhadorCedido_DataAdmissaoEmpresaCedente'],
|
@@ -180,8 +181,8 @@ module Teodoro
|
|
180
181
|
@data_da_alteracao ||= evento['infoTSVAlteracao/dtAlteracao']
|
181
182
|
end
|
182
183
|
|
183
|
-
def
|
184
|
-
@
|
184
|
+
def leiaute # rubocop:disable Metrics/MethodLength
|
185
|
+
@leiaute ||=
|
185
186
|
(
|
186
187
|
if leiaute_simplificado?
|
187
188
|
[
|
@@ -82,49 +82,49 @@ module Teodoro
|
|
82
82
|
['EventoAdmissao_InfoTrabalhador_GrauInstrucao', trabalhador.grau_de_instrucao],
|
83
83
|
['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
|
84
84
|
['EventoAdmissao_InfoTrabalhador_NomeSocial', trabalhador.nome_social],
|
85
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.
|
86
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.
|
87
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.
|
88
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nome_da_mae],
|
89
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nome_do_pai],
|
90
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.
|
85
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.nascimento.codigo_do_municipio],
|
86
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.nascimento.codigo_do_municipio]],
|
87
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.nascimento.data, :data],
|
88
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nascimento.nome_da_mae],
|
89
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nascimento.nome_do_pai],
|
90
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.nascimento.pais],
|
91
91
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
|
92
92
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade', trabalhador.pais_de_nacionalidade],
|
93
93
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
|
94
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.
|
94
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.nascimento.uf],
|
95
95
|
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
|
96
96
|
['SemNumeroLogradouroEnderecoBR'],
|
97
97
|
['ResideExterior', trabalhador.reside_no_exterior?, :bool],
|
98
98
|
['SemNumeroLogradouroEnderecoEX'],
|
99
99
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro', (trabalhador.casado_com_brasileiro if trabalhador.estrangeiro?)],
|
100
|
-
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao'],
|
100
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao', (trabalhador.condicao_de_ingresso_no_brasil if trabalhador.estrangeiro?)],
|
101
101
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao_TEXT'],
|
102
102
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_DataChegada', (trabalhador.data_de_chegada_ao_brasil if trabalhador.estrangeiro?), :data],
|
103
103
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_FilhosBrasileiros', (trabalhador.filhos_brasileiros if trabalhador.estrangeiro?)],
|
104
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh'],
|
104
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh', trabalhador.cnh.categoria],
|
105
105
|
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh_TEXT'],
|
106
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataExpedicao'],
|
107
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataPrimeiraHabilitacao'],
|
108
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataValidade'],
|
109
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_NumeroCnh'],
|
110
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh'],
|
106
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataExpedicao', trabalhador.cnh.data_da_expedicao, :data],
|
107
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataPrimeiraHabilitacao', trabalhador.cnh.data_da_primeira_habilitacao, :data],
|
108
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataValidade', trabalhador.cnh.data_de_validade, :data],
|
109
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_NumeroCnh', trabalhador.cnh.numero_do_registro],
|
110
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh', trabalhador.cnh.uf_do_emissor],
|
111
111
|
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh_TEXT'],
|
112
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_NumeroCtps'],
|
113
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_SerieCtps'],
|
114
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps'],
|
112
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_NumeroCtps', trabalhador.ctps.numero],
|
113
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_SerieCtps', trabalhador.ctps.serie],
|
114
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps', trabalhador.ctps.uf],
|
115
115
|
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps_TEXT'],
|
116
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_DataExpedicao'],
|
117
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_NumeroOc'],
|
118
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_OrgaoEmissor'],
|
119
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_DataExpedicao'],
|
120
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_NumeroRg'],
|
121
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_OrgaoEmissor'],
|
122
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaAuditiva'],
|
123
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaFisica'],
|
124
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaIntelectual'],
|
125
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaMental'],
|
126
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaVisual'],
|
127
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_ReabilitadoOuReadaptado'],
|
116
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_DataExpedicao', trabalhador.oc.data_da_expedicao, :data],
|
117
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_NumeroOc', trabalhador.oc.numero],
|
118
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_OrgaoEmissor', trabalhador.oc.orgao_emissor],
|
119
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_DataExpedicao', trabalhador.rg.data_da_expedicao, :data],
|
120
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_NumeroRg', trabalhador.rg.numero],
|
121
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_OrgaoEmissor', trabalhador.rg.orgao_emissor],
|
122
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaAuditiva', trabalhador.deficiencia.auditiva],
|
123
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaFisica', trabalhador.deficiencia.fisica],
|
124
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaIntelectual', trabalhador.deficiencia.intelectual],
|
125
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaMental', trabalhador.deficiencia.mental],
|
126
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaVisual', trabalhador.deficiencia.visual],
|
127
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_ReabilitadoOuReadaptado', trabalhador.deficiencia.reabilitado_ou_readaptado],
|
128
128
|
['CodigoCBO'],
|
129
129
|
['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_AreaAtuacao'],
|
130
130
|
['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_DtPrevistaTermino'],
|
@@ -0,0 +1,27 @@
|
|
1
|
+
module Teodoro
|
2
|
+
module LeiauteSimplificado
|
3
|
+
class TrabalhadorImigrante
|
4
|
+
private
|
5
|
+
|
6
|
+
def initialize(xml)
|
7
|
+
@xml = xml
|
8
|
+
end
|
9
|
+
|
10
|
+
attr_reader :xml
|
11
|
+
|
12
|
+
public
|
13
|
+
|
14
|
+
def condicao_de_ingresso_no_brasil_no_leiaute2
|
15
|
+
{
|
16
|
+
'1' => 4,
|
17
|
+
'2' => 5,
|
18
|
+
'3' => 9,
|
19
|
+
'4' => 10,
|
20
|
+
'5' => 11,
|
21
|
+
'6' => 12,
|
22
|
+
'7' => xml['tmpResid']
|
23
|
+
}[xml['condIng']]
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
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.34.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Clavius Tales
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-05-
|
11
|
+
date: 2021-05-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: nokogiri
|
@@ -226,6 +226,7 @@ files:
|
|
226
226
|
- lib/teodoro/leiaute/arquivo_s2306.rb
|
227
227
|
- lib/teodoro/leiaute/arquivo_s2399.rb
|
228
228
|
- lib/teodoro/leiaute/arquivo_s3000.rb
|
229
|
+
- lib/teodoro/leiaute_simplificado.rb
|
229
230
|
- lib/teodoro/obj.rb
|
230
231
|
- lib/teodoro/xml.rb
|
231
232
|
- lib/tipos_de_logradouro.json
|