teodoro 0.0.12 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/teodoro.rb +11 -5
- data/lib/teodoro/arquivo_de_evento.rb +13 -18
- data/lib/teodoro/{arquivo_de_evento_exceto_de_exclusao.rb → arquivo_de_evento_criador_de_arquivo_data.rb} +2 -6
- data/lib/teodoro/arquivo_de_evento_de_tabela.rb +2 -2
- data/lib/teodoro/arquivo_de_evento_nao_periodico.rb +9 -33
- data/lib/teodoro/arquivo_de_evento_processador_de_arquivo_data.rb +30 -0
- data/lib/teodoro/arquivo_de_evento_retificavel.rb +23 -0
- data/lib/teodoro/arquivo_xml.rb +7 -2
- data/lib/teodoro/empresa.rb +78 -10
- data/lib/teodoro/leiaute/arquivo_s1000.rb +6 -8
- data/lib/teodoro/leiaute/arquivo_s1005.rb +3 -3
- data/lib/teodoro/leiaute/arquivo_s1010.rb +1 -3
- data/lib/teodoro/leiaute/arquivo_s1020.rb +3 -3
- data/lib/teodoro/leiaute/arquivo_s1030.rb +3 -3
- data/lib/teodoro/leiaute/arquivo_s1040.rb +1 -3
- data/lib/teodoro/leiaute/arquivo_s1050.rb +3 -3
- data/lib/teodoro/leiaute/arquivo_s1070.rb +1 -3
- data/lib/teodoro/leiaute/arquivo_s2190.rb +1 -1
- data/lib/teodoro/leiaute/arquivo_s2200.rb +116 -37
- data/lib/teodoro/leiaute/arquivo_s2205.rb +241 -134
- data/lib/teodoro/leiaute/arquivo_s2206.rb +17 -6
- data/lib/teodoro/leiaute/arquivo_s2230.rb +55 -11
- data/lib/teodoro/leiaute/arquivo_s2250.rb +23 -7
- data/lib/teodoro/leiaute/arquivo_s2299.rb +22 -19
- data/lib/teodoro/leiaute/arquivo_s2300.rb +16 -8
- data/lib/teodoro/leiaute/arquivo_s2306.rb +26 -6
- data/lib/teodoro/leiaute/arquivo_s2399.rb +10 -7
- data/lib/teodoro/leiaute/arquivo_s3000.rb +6 -14
- metadata +19 -3
@@ -29,8 +29,7 @@ module Teodoro
|
|
29
29
|
@codigo ||= evento['evtTabRubrica/infoRubrica/*/ideRubrica/codRubr']
|
30
30
|
end
|
31
31
|
|
32
|
-
# rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
33
|
-
def itens_do_conteudo_do_arquivo_data
|
32
|
+
def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
34
33
|
[
|
35
34
|
['RequestVerificationToken'],
|
36
35
|
['SomenteVisualizacao'],
|
@@ -59,7 +58,6 @@ module Teodoro
|
|
59
58
|
['hd_ProcessoSindicato']
|
60
59
|
]
|
61
60
|
end
|
62
|
-
# rubocop:enable Metrics/MethodLength, Metrics/AbcSize
|
63
61
|
end
|
64
62
|
end
|
65
63
|
end
|
@@ -25,9 +25,9 @@ module Teodoro
|
|
25
25
|
@codigo_da_lotacao_tributaria ||= evento['evtTabLotacao/infoLotacao/*/ideLotacao/codLotacao']
|
26
26
|
end
|
27
27
|
|
28
|
-
# rubocop:disable Metrics/MethodLength,
|
29
|
-
def itens_do_conteudo_do_arquivo_data
|
28
|
+
def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
30
29
|
[
|
30
|
+
# rubocop:disable Layout/LineLength
|
31
31
|
['RequestVerificationToken'],
|
32
32
|
['SomenteVisualizacao'],
|
33
33
|
['BloquearCodigo'],
|
@@ -60,9 +60,9 @@ module Teodoro
|
|
60
60
|
['VerProc', versao_do_aplicativo_de_processamento_do_evento],
|
61
61
|
['idEdicaoProcesso'],
|
62
62
|
['ExibirContribuicaoPatronal']
|
63
|
+
# rubocop:enable Layout/LineLength
|
63
64
|
]
|
64
65
|
end
|
65
|
-
# rubocop:enable Metrics/MethodLength, Layout/LineLength, Metrics/AbcSize
|
66
66
|
end
|
67
67
|
end
|
68
68
|
end
|
@@ -25,9 +25,9 @@ module Teodoro
|
|
25
25
|
@codigo_do_cargo ||= evento['evtTabCargo/infoCargo/*/ideCargo/codCargo']
|
26
26
|
end
|
27
27
|
|
28
|
-
# rubocop:disable Metrics/MethodLength,
|
29
|
-
def itens_do_conteudo_do_arquivo_data
|
28
|
+
def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
30
29
|
[
|
30
|
+
# rubocop:disable Layout/LineLength
|
31
31
|
['RequestVerificationToken'],
|
32
32
|
['SomenteVisualizacao'],
|
33
33
|
['BloquearCodigo'],
|
@@ -51,9 +51,9 @@ module Teodoro
|
|
51
51
|
['NrReciboEventoOriginal'],
|
52
52
|
['DescricaoProcEmi'],
|
53
53
|
['VerProc', versao_do_aplicativo_de_processamento_do_evento]
|
54
|
+
# rubocop:enable Layout/LineLength
|
54
55
|
]
|
55
56
|
end
|
56
|
-
# rubocop:enable Metrics/MethodLength, Layout/LineLength, Metrics/AbcSize
|
57
57
|
end
|
58
58
|
end
|
59
59
|
end
|
@@ -23,8 +23,7 @@ module Teodoro
|
|
23
23
|
@codigo_da_funcao ||= evento['evtTabFuncao/infoFuncao/*/ideFuncao/codFuncao']
|
24
24
|
end
|
25
25
|
|
26
|
-
# rubocop:disable Metrics/MethodLength
|
27
|
-
def itens_do_conteudo_do_arquivo_data
|
26
|
+
def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/MethodLength
|
28
27
|
[
|
29
28
|
['RequestVerificationToken'],
|
30
29
|
['SomenteVisualizacao'],
|
@@ -43,7 +42,6 @@ module Teodoro
|
|
43
42
|
['VerProc', versao_do_aplicativo_de_processamento_do_evento]
|
44
43
|
]
|
45
44
|
end
|
46
|
-
# rubocop:enable Metrics/MethodLength
|
47
45
|
end
|
48
46
|
end
|
49
47
|
end
|
@@ -25,9 +25,9 @@ module Teodoro
|
|
25
25
|
@codigo_do_horario ||= evento['evtTabHorTur/infoHorContratual/*/ideHorContratual/codHorContrat']
|
26
26
|
end
|
27
27
|
|
28
|
-
# rubocop:disable Metrics/MethodLength,
|
29
|
-
def itens_do_conteudo_do_arquivo_data
|
28
|
+
def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
30
29
|
[
|
30
|
+
# rubocop:disable Layout/LineLength
|
31
31
|
['RequestVerificationToken'],
|
32
32
|
['SomenteVisualizacao'],
|
33
33
|
['BloquearCodigo'],
|
@@ -60,9 +60,9 @@ module Teodoro
|
|
60
60
|
["DadosHorario_ListaHorarioIntervalo_#{seq}_DuracaoIntervalo", intervalo['durInterv']]
|
61
61
|
]
|
62
62
|
end.sum([])
|
63
|
+
# rubocop:enable Layout/LineLength
|
63
64
|
]
|
64
65
|
end
|
65
|
-
# rubocop:enable Metrics/MethodLength, Layout/LineLength, Metrics/AbcSize
|
66
66
|
end
|
67
67
|
end
|
68
68
|
end
|
@@ -25,8 +25,7 @@ module Teodoro
|
|
25
25
|
@numero_do_processo ||= evento['evtTabProcesso/infoProcesso/*/ideProcesso/nrProc']
|
26
26
|
end
|
27
27
|
|
28
|
-
# rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
29
|
-
def itens_do_conteudo_do_arquivo_data
|
28
|
+
def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
30
29
|
[
|
31
30
|
['RequestVerificationToken'],
|
32
31
|
['SomenteVisualizacao'],
|
@@ -69,7 +68,6 @@ module Teodoro
|
|
69
68
|
end.sum([])
|
70
69
|
]
|
71
70
|
end
|
72
|
-
# rubocop:enable Metrics/MethodLength, Metrics/AbcSize
|
73
71
|
end
|
74
72
|
end
|
75
73
|
end
|
@@ -4,22 +4,31 @@ module Teodoro
|
|
4
4
|
include ArquivoDeEventoNaoPeriodico
|
5
5
|
|
6
6
|
def processar
|
7
|
+
remover_registro_do_contrato_de_emprego if retificacao?
|
8
|
+
|
7
9
|
super
|
8
10
|
|
9
|
-
|
11
|
+
registrar_contrato_de_emprego
|
10
12
|
end
|
11
13
|
|
12
14
|
private
|
13
15
|
|
14
|
-
def
|
15
|
-
|
16
|
-
|
17
|
-
|
16
|
+
def remover_registro_do_contrato_de_emprego
|
17
|
+
contratos_de_emprego.remover(numero_do_recibo_a_retificar)
|
18
|
+
end
|
19
|
+
|
20
|
+
def registrar_contrato_de_emprego
|
21
|
+
contratos_de_emprego << Obj.new(
|
22
|
+
matricula: matricula_do_trabalhador,
|
23
|
+
data_de_admissao: data_de_admissao,
|
24
|
+
categoria_do_trabalhador: categoria_do_trabalhador,
|
25
|
+
cpf_do_trabalhador: cpf_do_trabalhador,
|
26
|
+
recibo: numero_do_recibo
|
18
27
|
)
|
19
28
|
end
|
20
29
|
|
21
|
-
def
|
22
|
-
empresa.
|
30
|
+
def contratos_de_emprego
|
31
|
+
empresa.contratos_de_emprego
|
23
32
|
end
|
24
33
|
|
25
34
|
def data_de_admissao
|
@@ -47,9 +56,9 @@ module Teodoro
|
|
47
56
|
@matricula_do_trabalhador ||= evento['evtAdmissao/vinculo/matricula']
|
48
57
|
end
|
49
58
|
|
50
|
-
# rubocop:disable Metrics/MethodLength,
|
51
|
-
def itens_do_conteudo_do_arquivo_data
|
59
|
+
def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
52
60
|
[
|
61
|
+
# rubocop:disable Layout/LineLength
|
53
62
|
['ESX_CPF', cpf_do_trabalhador],
|
54
63
|
['ESX_MATRICULA', matricula_do_trabalhador],
|
55
64
|
['ESX_CATEGORIA', categoria_do_trabalhador],
|
@@ -158,7 +167,7 @@ module Teodoro
|
|
158
167
|
['EventoAdmissao_EnderecoResidencialEX_PaisResidencia_TEXT'],
|
159
168
|
['SemNumeroLogradouroEnderecoEX'],
|
160
169
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro', evento['evtAdmissao/trabalhador/trabEstrangeiro/casadoBr']],
|
161
|
-
|
170
|
+
item_do_conteudo_do_arquivo_data('EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao'),
|
162
171
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao_TEXT'],
|
163
172
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_DataChegada', evento['evtAdmissao/trabalhador/trabEstrangeiro/dtChegada']],
|
164
173
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_FilhosBrasileiros', evento['evtAdmissao/trabalhador/trabEstrangeiro/filhosBr']],
|
@@ -251,19 +260,19 @@ module Teodoro
|
|
251
260
|
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_DescricaoComplementar', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabGeral/descComp']],
|
252
261
|
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_NumeroInscricao', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabGeral/nrInsc']],
|
253
262
|
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_TipoInscricao', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabGeral/tpInsc']],
|
254
|
-
|
255
|
-
|
263
|
+
item_do_conteudo_do_arquivo_data('InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Uf'),
|
264
|
+
item_do_conteudo_do_arquivo_data('InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_TipoLogradouro'),
|
256
265
|
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_TipoLogradouro_TEXT'],
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
266
|
+
item_do_conteudo_do_arquivo_data('InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_NumeroLogradouro'),
|
267
|
+
item_do_conteudo_do_arquivo_data('InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_DescricaoLogradouro'),
|
268
|
+
item_do_conteudo_do_arquivo_data('InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Complemento'),
|
269
|
+
item_do_conteudo_do_arquivo_data('InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_CodigoMunicipio'),
|
270
|
+
item_do_conteudo_do_arquivo_data('InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Cep'),
|
271
|
+
item_do_conteudo_do_arquivo_data('InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Bairro'),
|
263
272
|
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_EmpresaContratante_NumeroInscricao', evento['evtAdmissao/vinculo/infoRegimeTrab/infoCeletista/trabTemporario/ideTomadorServ/nrInsc']],
|
264
273
|
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_EmpresaContratante_TipoInscricao', evento['evtAdmissao/vinculo/infoRegimeTrab/infoCeletista/trabTemporario/ideTomadorServ/tpInsc']],
|
265
|
-
|
266
|
-
|
274
|
+
item_do_conteudo_do_arquivo_data('InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_EmpresaContratante_EstabelecimentoVinculadoTemporario_NumeroInscricao'),
|
275
|
+
item_do_conteudo_do_arquivo_data('InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_EmpresaContratante_EstabelecimentoVinculadoTemporario_TipoInscricao'),
|
267
276
|
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_HipoteseLegal', evento['evtAdmissao/vinculo/infoRegimeTrab/infoCeletista/trabTemporario/hipLeg']],
|
268
277
|
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_JustificaHipoteseLegal', evento['evtAdmissao/vinculo/infoRegimeTrab/infoCeletista/trabTemporario/justContr']],
|
269
278
|
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_TipoInclusaoContrato', evento['evtAdmissao/vinculo/infoRegimeTrab/infoCeletista/trabTemporario/tpInclContr']],
|
@@ -309,29 +318,99 @@ module Teodoro
|
|
309
318
|
["InfoVinculo_InfoContrato_FiliacaoSindical_#{seq}_CnpjSindicatoTrabalhador", filiacao['cnpjSindTrab']]
|
310
319
|
]
|
311
320
|
end.sum([])
|
321
|
+
# rubocop:enable Layout/LineLength
|
312
322
|
]
|
313
323
|
end
|
314
|
-
# rubocop:enable Metrics/MethodLength, Layout/LineLength, Metrics/AbcSize
|
315
324
|
|
316
|
-
def
|
317
|
-
|
318
|
-
|
319
|
-
|
320
|
-
|
321
|
-
|
322
|
-
|
323
|
-
|
324
|
-
|
325
|
+
def item_do_conteudo_do_arquivo_data(chave)
|
326
|
+
chaves_valores_de_acordo_com_a_versao_do_leiaute[chave]
|
327
|
+
end
|
328
|
+
|
329
|
+
def chaves_valores_de_acordo_com_a_versao_do_leiaute
|
330
|
+
@chaves_valores_de_acordo_com_a_versao_do_leiaute ||=
|
331
|
+
(leiaute_simplificado? ? ChavesValoresDoLeiauteSimplificado : ChavesValoresDoLeiaute2).new(evento)
|
332
|
+
end
|
333
|
+
|
334
|
+
module ChavesValores
|
335
|
+
private
|
336
|
+
|
337
|
+
def initialize(evento)
|
338
|
+
@evento = evento
|
339
|
+
end
|
340
|
+
|
341
|
+
attr_reader :evento
|
342
|
+
|
343
|
+
public
|
344
|
+
|
345
|
+
def [](chave)
|
346
|
+
de_chave_para_chave_valor[chave]
|
347
|
+
end
|
348
|
+
|
349
|
+
private
|
350
|
+
|
351
|
+
def de_chave_para_chave_valor
|
352
|
+
@de_chave_para_chave_valor ||=
|
353
|
+
itens_do_conteudo_do_arquivo_data.map { |chave, valor| [chave, [chave, valor]] }.to_h
|
354
|
+
end
|
355
|
+
end
|
356
|
+
|
357
|
+
class ChavesValoresDoLeiaute2
|
358
|
+
include ChavesValores
|
359
|
+
|
360
|
+
private
|
361
|
+
|
362
|
+
def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
363
|
+
[
|
364
|
+
# rubocop:disable Layout/LineLength
|
365
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao', evento['evtAdmissao/trabalhador/trabEstrangeiro/classTrabEstrang']],
|
366
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Uf', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabDom/uf']],
|
367
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_TipoLogradouro', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabDom/tpLograd']],
|
368
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_NumeroLogradouro', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabDom/nrLograd']],
|
369
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_DescricaoLogradouro', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabDom/dscLograd']],
|
370
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Complemento', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabDom/complemento']],
|
371
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_CodigoMunicipio', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabDom/codMunic']],
|
372
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Cep', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabDom/cep']],
|
373
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Bairro', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabDom/bairro']],
|
374
|
+
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_EmpresaContratante_EstabelecimentoVinculadoTemporario_NumeroInscricao', evento['evtAdmissao/vinculo/infoRegimeTrab/infoCeletista/trabTemporario/ideTomadorServ/ideEstabVinc/nrInsc']],
|
375
|
+
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_EmpresaContratante_EstabelecimentoVinculadoTemporario_TipoInscricao', evento['evtAdmissao/vinculo/infoRegimeTrab/infoCeletista/trabTemporario/ideTomadorServ/ideEstabVinc/tpInsc']]
|
376
|
+
# rubocop:enable Layout/LineLength
|
377
|
+
]
|
325
378
|
end
|
326
379
|
end
|
327
380
|
|
328
|
-
|
329
|
-
|
330
|
-
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
381
|
+
class ChavesValoresDoLeiauteSimplificado
|
382
|
+
include ChavesValores
|
383
|
+
|
384
|
+
private
|
385
|
+
|
386
|
+
def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
387
|
+
[
|
388
|
+
# rubocop:disable Layout/LineLength
|
389
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao', condicao_de_ingresso_do_trabalhador_imigrante],
|
390
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Uf', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTempDom/uf']],
|
391
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_TipoLogradouro', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTempDom/tpLograd']],
|
392
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_NumeroLogradouro', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTempDom/nrLograd']],
|
393
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_DescricaoLogradouro', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTempDom/dscLograd']],
|
394
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Complemento', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTempDom/complemento']],
|
395
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_CodigoMunicipio', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTempDom/codMunic']],
|
396
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Cep', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTempDom/cep']],
|
397
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Bairro', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTempDom/bairro']],
|
398
|
+
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_EmpresaContratante_EstabelecimentoVinculadoTemporario_NumeroInscricao', evento['evtAdmissao/vinculo/infoRegimeTrab/infoCeletista/trabTemporario/ideEstabVinc/nrInsc']],
|
399
|
+
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_EmpresaContratante_EstabelecimentoVinculadoTemporario_TipoInscricao', evento['evtAdmissao/vinculo/infoRegimeTrab/infoCeletista/trabTemporario/ideEstabVinc/tpInsc']]
|
400
|
+
# rubocop:enable Layout/LineLength
|
401
|
+
]
|
402
|
+
end
|
403
|
+
|
404
|
+
def condicao_de_ingresso_do_trabalhador_imigrante
|
405
|
+
{
|
406
|
+
'1' => 4,
|
407
|
+
'2' => 5,
|
408
|
+
'4' => 10,
|
409
|
+
'5' => 11,
|
410
|
+
'6' => 12
|
411
|
+
}[evento['evtAdmissao/trabalhador/trabImig/condIng']] || evento['evtAdmissao/trabalhador/trabImig/tmpResid']
|
412
|
+
end
|
413
|
+
end
|
335
414
|
end
|
336
415
|
end
|
337
416
|
end
|
@@ -1,7 +1,13 @@
|
|
1
1
|
module Teodoro
|
2
2
|
module Leiaute
|
3
|
-
class ArquivoS2205
|
4
|
-
include
|
3
|
+
class ArquivoS2205
|
4
|
+
include ArquivoDeEventoProcessadorDeArquivoData
|
5
|
+
include ArquivoDeEventoRetificavel
|
6
|
+
|
7
|
+
def processar
|
8
|
+
deletar_arquivos_data_originais if retificacao?
|
9
|
+
processar_contratos_de_trabalho
|
10
|
+
end
|
5
11
|
|
6
12
|
private
|
7
13
|
|
@@ -9,10 +15,25 @@ module Teodoro
|
|
9
15
|
'evtAltCadastral'
|
10
16
|
end
|
11
17
|
|
12
|
-
def
|
13
|
-
|
14
|
-
|
15
|
-
|
18
|
+
def processar_contratos_de_trabalho
|
19
|
+
contratos_de_trabalho.each(&:processar)
|
20
|
+
end
|
21
|
+
|
22
|
+
def contratos_de_trabalho
|
23
|
+
(contratos_de_emprego + contratos_de_trabalho_sem_vinculo)
|
24
|
+
.map { |classe, contrato| classe.new(empresa: empresa, arquivo_xml: arquivo_xml, contrato: contrato) }
|
25
|
+
end
|
26
|
+
|
27
|
+
def contratos_de_emprego
|
28
|
+
empresa.contratos_de_emprego
|
29
|
+
.*(cpf_do_trabalhador: cpf_do_trabalhador, data: data_da_alteracao)
|
30
|
+
.map { [ContratoDeEmprego, _1] }
|
31
|
+
end
|
32
|
+
|
33
|
+
def contratos_de_trabalho_sem_vinculo
|
34
|
+
empresa.contratos_de_trabalho_sem_vinculo
|
35
|
+
.*(cpf_do_trabalhador: cpf_do_trabalhador, data: data_da_alteracao)
|
36
|
+
.map { [ContratoDeTrabalhoSemVinculo, _1] }
|
16
37
|
end
|
17
38
|
|
18
39
|
def cpf_do_trabalhador
|
@@ -23,135 +44,221 @@ module Teodoro
|
|
23
44
|
@data_da_alteracao ||= evento['evtAltCadastral/alteracao/dtAlteracao']
|
24
45
|
end
|
25
46
|
|
26
|
-
# rubocop:disable Metrics/
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
[
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
[
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
]
|
151
|
-
|
152
|
-
|
47
|
+
module ContratoDeTrabalho # rubocop:disable Metrics/ModuleLength
|
48
|
+
include ArquivoDeEventoNaoPeriodico
|
49
|
+
|
50
|
+
private
|
51
|
+
|
52
|
+
def initialize(contrato:, **args)
|
53
|
+
super(**args)
|
54
|
+
|
55
|
+
@contrato = contrato
|
56
|
+
end
|
57
|
+
|
58
|
+
attr_reader :contrato
|
59
|
+
|
60
|
+
def noh_principal_do_evento
|
61
|
+
'evtAltCadastral'
|
62
|
+
end
|
63
|
+
|
64
|
+
def nome_do_arquivo_data
|
65
|
+
@nome_do_arquivo_data ||= [
|
66
|
+
"TRA[#{cpf_do_trabalhador}]",
|
67
|
+
nome_do_arquivo_data_identificacao_do_contrato,
|
68
|
+
"-ACA[#{data_da_alteracao.delete('-')}]"
|
69
|
+
].join
|
70
|
+
end
|
71
|
+
|
72
|
+
def cpf_do_trabalhador
|
73
|
+
@cpf_do_trabalhador ||= evento['evtAltCadastral/ideTrabalhador/cpfTrab']
|
74
|
+
end
|
75
|
+
|
76
|
+
def data_da_alteracao
|
77
|
+
@data_da_alteracao ||= evento['evtAltCadastral/alteracao/dtAlteracao']
|
78
|
+
end
|
79
|
+
|
80
|
+
def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
|
81
|
+
[
|
82
|
+
# rubocop:disable Layout/LineLength
|
83
|
+
['ESX_CPF', cpf_do_trabalhador],
|
84
|
+
['ESX_MATRICULA', matricula_do_contrato],
|
85
|
+
['ESX_CATEGORIA', categoria_do_trabalhador],
|
86
|
+
%w[ESX_SEMVINCULO 0], # FIXME: Tales TC
|
87
|
+
['ESX_DATAADMISSAO', data_de_inicio_do_contrato_de_trabalho],
|
88
|
+
['ESX_DATAALTERACAO', data_da_alteracao],
|
89
|
+
['DataAlteracao', data_da_alteracao],
|
90
|
+
['IdEventoXml'],
|
91
|
+
['NrReciboEventoOriginal'],
|
92
|
+
['RequestVerificationToken'],
|
93
|
+
['SomenteLeitura'],
|
94
|
+
['VisualizarDadosCadastrais'],
|
95
|
+
['UrlRetorno'],
|
96
|
+
['visualizar'],
|
97
|
+
['DescricaoProcEmi', processo_de_emissao_do_evento],
|
98
|
+
['VerProc', recibo['retornoEvento/processamento/versaoAppProcessamento']],
|
99
|
+
['IdEdicaoDependente'],
|
100
|
+
['commandArgument'],
|
101
|
+
['EventoAdmissao_TipoEventoEnviado'],
|
102
|
+
['HiddenCurrentUrl'],
|
103
|
+
['ehCodigoAcesso'],
|
104
|
+
['ExibirTrocarPerfil'],
|
105
|
+
['EventoAdmissao_InfoTrabalhador_Cpf', cpf_do_trabalhador],
|
106
|
+
['EventoAdmissao_InfoTrabalhador_Nome', evento['evtAltCadastral/alteracao/dadosTrabalhador/nmTrab']],
|
107
|
+
['EventoAdmissao_InfoTrabalhador_Nis', evento['evtAltCadastral/alteracao/dadosTrabalhador/nisTrab']],
|
108
|
+
['EventoAdmissao_InfoTrabalhador_Sexo', evento['evtAltCadastral/alteracao/dadosTrabalhador/sexo']],
|
109
|
+
['EventoAdmissao_InfoTrabalhador_Sexo_TEXT'],
|
110
|
+
['EventoAdmissao_InfoTrabalhador_RacaCor', evento['evtAltCadastral/alteracao/dadosTrabalhador/racaCor']],
|
111
|
+
['EventoAdmissao_InfoTrabalhador_RacaCor_TEXT'],
|
112
|
+
['EventoAdmissao_InfoTrabalhador_EstadoCivil', evento['evtAltCadastral/alteracao/dadosTrabalhador/estCiv']],
|
113
|
+
['EventoAdmissao_InfoTrabalhador_EstadoCivil_TEXT'],
|
114
|
+
['EventoAdmissao_InfoTrabalhador_GrauInstrucao', evento['evtAltCadastral/alteracao/dadosTrabalhador/grauInstr']],
|
115
|
+
['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
|
116
|
+
['EventoAdmissao_InfoTrabalhador_PrimeiroEmprego'],
|
117
|
+
['EventoAdmissao_InfoTrabalhador_NomeSocial', evento['evtAltCadastral/alteracao/dadosTrabalhador/nmSoc']],
|
118
|
+
['EventoAdmissao_Aposentadoria_TrabalhadorAposentado', evento['evtAltCadastral/alteracao/dadosTrabalhador/aposentadoria/trabAposent']],
|
119
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio'],
|
120
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT'],
|
121
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento'],
|
122
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae'],
|
123
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai'],
|
124
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento'],
|
125
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
|
126
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade'],
|
127
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
|
128
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf'],
|
129
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
|
130
|
+
['EventoAdmissao_EnderecoResidencialBR_Bairro', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/brasil/bairro']],
|
131
|
+
['EventoAdmissao_EnderecoResidencialBR_Cep', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/brasil/cep']],
|
132
|
+
['EventoAdmissao_EnderecoResidencialBR_CodigoMunicipio', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/brasil/codMunic']],
|
133
|
+
['EventoAdmissao_EnderecoResidencialBR_CodigoMunicipio_TEXT'],
|
134
|
+
['EventoAdmissao_EnderecoResidencialBR_Complemento', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/brasil/complemento']],
|
135
|
+
['EventoAdmissao_EnderecoResidencialBR_DescricaoLogradouro', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/brasil/dscLograd']],
|
136
|
+
['EventoAdmissao_EnderecoResidencialBR_NumeroLogradouro', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/brasil/nrLograd']],
|
137
|
+
['SemNumeroLogradouroEnderecoBR'],
|
138
|
+
['EventoAdmissao_EnderecoResidencialBR_TipoLogradouro', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/brasil/tpLograd']],
|
139
|
+
['EventoAdmissao_EnderecoResidencialBR_TipoLogradouro_TEXT'],
|
140
|
+
['EventoAdmissao_EnderecoResidencialBR_Uf', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/brasil/uf']],
|
141
|
+
['EventoAdmissao_EnderecoResidencialBR_Uf_TEXT'],
|
142
|
+
['EventoAdmissao_EnderecoResidencialEX_Bairro', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/exterior/bairro']],
|
143
|
+
['EventoAdmissao_EnderecoResidencialEX_CodigoPostal', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/exterior/codPostal']],
|
144
|
+
['EventoAdmissao_EnderecoResidencialEX_Complemento', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/exterior/complemento']],
|
145
|
+
['EventoAdmissao_EnderecoResidencialEX_DescricaoLogradouro', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/exterior/dscLograd']],
|
146
|
+
['EventoAdmissao_EnderecoResidencialEX_NomeCidade', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/exterior/nmCid']],
|
147
|
+
['EventoAdmissao_EnderecoResidencialEX_NumeroLogradouro', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/exterior/nrLograd']],
|
148
|
+
['ResideExterior'],
|
149
|
+
['EventoAdmissao_EnderecoResidencialEX_PaisResidencia', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/exterior/paisResid']],
|
150
|
+
['EventoAdmissao_EnderecoResidencialEX_PaisResidencia_TEXT'],
|
151
|
+
['SemNumeroLogradouroEnderecoEX'],
|
152
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro', evento['evtAltCadastral/alteracao/dadosTrabalhador/trabEstrangeiro/casadoBr']],
|
153
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao', evento['evtAltCadastral/alteracao/dadosTrabalhador/trabEstrangeiro/classTrabEstrang']],
|
154
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao_TEXT'],
|
155
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_DataChegada', evento['evtAltCadastral/alteracao/dadosTrabalhador/trabEstrangeiro/dtChegada']],
|
156
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_FilhosBrasileiros', evento['evtAltCadastral/alteracao/dadosTrabalhador/trabEstrangeiro/filhosBr']],
|
157
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/CNH/categoriaCnh']],
|
158
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh_TEXT'],
|
159
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataExpedicao', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/CNH/dtExped']],
|
160
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataPrimeiraHabilitacao', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/CNH/dtPriHab']],
|
161
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataValidade', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/CNH/dtValid']],
|
162
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_NumeroCnh', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/CNH/nrRegCnh']],
|
163
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/CNH/ufCnh']],
|
164
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh_TEXT'],
|
165
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_NumeroCtps', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/CTPS/nrCtps']],
|
166
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_SerieCtps', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/CTPS/serieCtps']],
|
167
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/CTPS/ufCtps']],
|
168
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps_TEXT'],
|
169
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_DataExpedicao', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/OC/dtExped']],
|
170
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_DataValidade', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/OC/dtValid']],
|
171
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_NumeroOc', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/OC/nrOc']],
|
172
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_OrgaoEmissor', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/OC/orgaoEmissor']],
|
173
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_DataExpedicao', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/RG/dtExped']],
|
174
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_NumeroRg', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/RG/nrRg']],
|
175
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_OrgaoEmissor', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/RG/orgaoEmissor']],
|
176
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ric_DataExpedicao', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/RIC/dtExped']],
|
177
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ric_NumeroRic', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/RIC/nrRic']],
|
178
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ric_OrgaoEmissor', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/RIC/orgaoEmissor']],
|
179
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rne_DataExpedicao', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/RNE/dtExped']],
|
180
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rne_NumerorRne', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/RNE/nrRne']],
|
181
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rne_OrgaoEmissor', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/RNE/orgaoEmissor']],
|
182
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaAuditiva', evento['evtAltCadastral/alteracao/dadosTrabalhador/infoDeficiencia/defAuditiva']],
|
183
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaFisica', evento['evtAltCadastral/alteracao/dadosTrabalhador/infoDeficiencia/defFisica']],
|
184
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaIntelectual', evento['evtAltCadastral/alteracao/dadosTrabalhador/infoDeficiencia/defIntelectual']],
|
185
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaMental', evento['evtAltCadastral/alteracao/dadosTrabalhador/infoDeficiencia/defMental']],
|
186
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaVisual', evento['evtAltCadastral/alteracao/dadosTrabalhador/infoDeficiencia/defVisual']],
|
187
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_InfoCota', evento['evtAltCadastral/alteracao/dadosTrabalhador/infoDeficiencia/infoCota']],
|
188
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_Observacao', evento['evtAltCadastral/alteracao/dadosTrabalhador/infoDeficiencia/observacao']],
|
189
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_ReabilitadoOuReadaptado', evento['evtAltCadastral/alteracao/dadosTrabalhador/infoDeficiencia/reabReadap']],
|
190
|
+
['EventoAdmissao_Contato_TelefonePrincipal', evento['evtAltCadastral/alteracao/dadosTrabalhador/contato/fonePrinc']],
|
191
|
+
['EventoAdmissao_Contato_EmailPrincipal', evento['evtAltCadastral/alteracao/dadosTrabalhador/contato/emailPrinc']],
|
192
|
+
['EventoAdmissao_Contato_TelefoneAlternativo', evento['evtAltCadastral/alteracao/dadosTrabalhador/contato/foneAlternat']],
|
193
|
+
['EventoAdmissao_Contato_EmailAlternativo', evento['evtAltCadastral/alteracao/dadosTrabalhador/contato/emailAlternat']],
|
194
|
+
*evento.*('evtAltCadastral/alteracao/dadosTrabalhador/dependente').map.with_index(1) do |dependente, seq|
|
195
|
+
[
|
196
|
+
["EventoAdmissao_Dependente_#{seq}_CPFDependente", dependente['cpfDep']],
|
197
|
+
["EventoAdmissao_Dependente_#{seq}_DataNascimento", dependente['dtNascto']],
|
198
|
+
["EventoAdmissao_Dependente_#{seq}_DataNascimentoFormatada"],
|
199
|
+
["EventoAdmissao_Dependente_#{seq}_DependenteIRRF", dependente['depIRRF']],
|
200
|
+
["EventoAdmissao_Dependente_#{seq}_DependenteSF", dependente['depSF']],
|
201
|
+
["EventoAdmissao_Dependente_#{seq}_IncapacidadeDependente", dependente['incTrab']],
|
202
|
+
["EventoAdmissao_Dependente_#{seq}_NomeDependente", dependente['nmDep']],
|
203
|
+
["EventoAdmissao_Dependente_#{seq}_TipoDependente", dependente['tpDep']]
|
204
|
+
]
|
205
|
+
end.sum([])
|
206
|
+
# rubocop:enable Layout/LineLength
|
207
|
+
]
|
208
|
+
end
|
209
|
+
end
|
210
|
+
|
211
|
+
class ContratoDeEmprego
|
212
|
+
include ContratoDeTrabalho
|
213
|
+
|
214
|
+
private
|
215
|
+
|
216
|
+
def nome_do_arquivo_data_identificacao_do_contrato
|
217
|
+
"[EPG_#{matricula_do_contrato}_#{data_de_admissao.delete('-')}]"
|
218
|
+
end
|
219
|
+
|
220
|
+
def matricula_do_contrato
|
221
|
+
contrato.matricula
|
222
|
+
end
|
223
|
+
|
224
|
+
def data_de_admissao
|
225
|
+
contrato.data_de_admissao
|
226
|
+
end
|
227
|
+
|
228
|
+
def categoria_do_trabalhador
|
229
|
+
contrato.categoria_do_trabalhador
|
230
|
+
end
|
231
|
+
|
232
|
+
def data_de_inicio_do_contrato_de_trabalho
|
233
|
+
data_de_admissao
|
234
|
+
end
|
235
|
+
end
|
236
|
+
|
237
|
+
class ContratoDeTrabalhoSemVinculo
|
238
|
+
include ContratoDeTrabalho
|
239
|
+
|
240
|
+
private
|
241
|
+
|
242
|
+
def nome_do_arquivo_data_identificacao_do_contrato
|
243
|
+
"[TSV_#{categoria_do_trabalhador}_#{data_de_inicio_do_contrato_de_trabalho_sem_vinculo.delete('-')}]"
|
244
|
+
end
|
245
|
+
|
246
|
+
def categoria_do_trabalhador
|
247
|
+
contrato.categoria_do_trabalhador
|
248
|
+
end
|
249
|
+
|
250
|
+
def data_de_inicio_do_contrato_de_trabalho_sem_vinculo
|
251
|
+
contrato.data_de_inicio
|
252
|
+
end
|
253
|
+
|
254
|
+
def matricula_do_contrato
|
255
|
+
nil
|
256
|
+
end
|
257
|
+
|
258
|
+
def data_de_inicio_do_contrato_de_trabalho
|
259
|
+
data_de_inicio_do_contrato_de_trabalho_sem_vinculo
|
260
|
+
end
|
153
261
|
end
|
154
|
-
# rubocop:enable Metrics/AbcSize, Metrics/MethodLength, Layout/LineLength
|
155
262
|
end
|
156
263
|
end
|
157
264
|
end
|