teodoro 0.0.12 → 0.0.13
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_de_evento_de_tabela.rb +1 -1
- data/lib/teodoro/empresa.rb +1 -1
- data/lib/teodoro/leiaute/arquivo_s1000.rb +2 -2
- data/lib/teodoro/leiaute/arquivo_s2190.rb +1 -1
- data/lib/teodoro/leiaute/arquivo_s2200.rb +100 -30
- data/lib/teodoro/leiaute/arquivo_s2206.rb +14 -3
- data/lib/teodoro/leiaute/arquivo_s2250.rb +23 -7
- data/lib/teodoro/leiaute/arquivo_s2299.rb +14 -14
- data/lib/teodoro/leiaute/arquivo_s2300.rb +5 -4
- data/lib/teodoro/leiaute/arquivo_s2306.rb +26 -6
- data/lib/teodoro/leiaute/arquivo_s2399.rb +5 -4
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d13e1befb47f42baadda75f5ee3fbab43f2903ad4853c22d9f8a5dc2d3e5b484
|
4
|
+
data.tar.gz: 7d200caa9e141f52a9a486b033247d4f49c3c158839dd808985e38f9480d2f86
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7cb73aef9770bc0de0c95d311257d470166d852509d03977dc8e7aedb77236aca8e1eb7b127ce7d6ddcefc932b4a2ecb7e7b8e80de77068ea2e6a497187956f4
|
7
|
+
data.tar.gz: 6d3c6f76c54af41cdde69b54fc2a6d9245dec8e258fada8b22a8162d587b46cdf36c8bfac99bc47af2a13f63614b52f81fab74ba25efa10b27743d9ca6c9dc3d
|
data/lib/teodoro/empresa.rb
CHANGED
@@ -85,7 +85,7 @@ module Teodoro
|
|
85
85
|
destino_dos_arquivos_data: destino_dos_arquivos_data,
|
86
86
|
de_recibo_para_nome_do_arquivo_data: {},
|
87
87
|
admissoes_por_matricula: {},
|
88
|
-
|
88
|
+
contratos_de_trabalhado_sem_vinculo: ContratosDeTrabalhadorSemVinculo.new
|
89
89
|
)
|
90
90
|
end
|
91
91
|
|
@@ -84,8 +84,8 @@ module Teodoro
|
|
84
84
|
['ExibeModoCompleto'],
|
85
85
|
['InicioValidade', inicio_da_validade],
|
86
86
|
['FimValidade', fim_da_validade],
|
87
|
-
['NovaValidade_InicioValidade'],
|
88
|
-
['NovaValidade_FimValidade'],
|
87
|
+
['NovaValidade_InicioValidade'],
|
88
|
+
['NovaValidade_FimValidade'],
|
89
89
|
['NomeRazaoSocial', evento['evtInfoEmpregador/infoEmpregador/*/infoCadastro/nmRazao']],
|
90
90
|
['ClassificacaoTributaria', evento['evtInfoEmpregador/infoEmpregador/*/infoCadastro/classTrib']],
|
91
91
|
['NaturezaJuridica', evento['evtInfoEmpregador/infoEmpregador/*/infoCadastro/natJurid']],
|
@@ -47,9 +47,9 @@ module Teodoro
|
|
47
47
|
@matricula_do_trabalhador ||= evento['evtAdmissao/vinculo/matricula']
|
48
48
|
end
|
49
49
|
|
50
|
-
# rubocop:disable Metrics/MethodLength,
|
51
|
-
def itens_do_conteudo_do_arquivo_data
|
50
|
+
def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
52
51
|
[
|
52
|
+
# rubocop:disable Layout/LineLength
|
53
53
|
['ESX_CPF', cpf_do_trabalhador],
|
54
54
|
['ESX_MATRICULA', matricula_do_trabalhador],
|
55
55
|
['ESX_CATEGORIA', categoria_do_trabalhador],
|
@@ -158,7 +158,7 @@ module Teodoro
|
|
158
158
|
['EventoAdmissao_EnderecoResidencialEX_PaisResidencia_TEXT'],
|
159
159
|
['SemNumeroLogradouroEnderecoEX'],
|
160
160
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro', evento['evtAdmissao/trabalhador/trabEstrangeiro/casadoBr']],
|
161
|
-
|
161
|
+
item_do_conteudo_do_arquivo_data('EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao'),
|
162
162
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao_TEXT'],
|
163
163
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_DataChegada', evento['evtAdmissao/trabalhador/trabEstrangeiro/dtChegada']],
|
164
164
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_FilhosBrasileiros', evento['evtAdmissao/trabalhador/trabEstrangeiro/filhosBr']],
|
@@ -251,19 +251,19 @@ module Teodoro
|
|
251
251
|
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_DescricaoComplementar', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabGeral/descComp']],
|
252
252
|
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_NumeroInscricao', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabGeral/nrInsc']],
|
253
253
|
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_TipoInscricao', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabGeral/tpInsc']],
|
254
|
-
|
255
|
-
|
254
|
+
item_do_conteudo_do_arquivo_data('InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Uf'),
|
255
|
+
item_do_conteudo_do_arquivo_data('InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_TipoLogradouro'),
|
256
256
|
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_TipoLogradouro_TEXT'],
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
257
|
+
item_do_conteudo_do_arquivo_data('InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_NumeroLogradouro'),
|
258
|
+
item_do_conteudo_do_arquivo_data('InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_DescricaoLogradouro'),
|
259
|
+
item_do_conteudo_do_arquivo_data('InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Complemento'),
|
260
|
+
item_do_conteudo_do_arquivo_data('InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_CodigoMunicipio'),
|
261
|
+
item_do_conteudo_do_arquivo_data('InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Cep'),
|
262
|
+
item_do_conteudo_do_arquivo_data('InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Bairro'),
|
263
263
|
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_EmpresaContratante_NumeroInscricao', evento['evtAdmissao/vinculo/infoRegimeTrab/infoCeletista/trabTemporario/ideTomadorServ/nrInsc']],
|
264
264
|
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_EmpresaContratante_TipoInscricao', evento['evtAdmissao/vinculo/infoRegimeTrab/infoCeletista/trabTemporario/ideTomadorServ/tpInsc']],
|
265
|
-
|
266
|
-
|
265
|
+
item_do_conteudo_do_arquivo_data('InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_EmpresaContratante_EstabelecimentoVinculadoTemporario_NumeroInscricao'),
|
266
|
+
item_do_conteudo_do_arquivo_data('InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_EmpresaContratante_EstabelecimentoVinculadoTemporario_TipoInscricao'),
|
267
267
|
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_HipoteseLegal', evento['evtAdmissao/vinculo/infoRegimeTrab/infoCeletista/trabTemporario/hipLeg']],
|
268
268
|
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_JustificaHipoteseLegal', evento['evtAdmissao/vinculo/infoRegimeTrab/infoCeletista/trabTemporario/justContr']],
|
269
269
|
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_TipoInclusaoContrato', evento['evtAdmissao/vinculo/infoRegimeTrab/infoCeletista/trabTemporario/tpInclContr']],
|
@@ -309,29 +309,99 @@ module Teodoro
|
|
309
309
|
["InfoVinculo_InfoContrato_FiliacaoSindical_#{seq}_CnpjSindicatoTrabalhador", filiacao['cnpjSindTrab']]
|
310
310
|
]
|
311
311
|
end.sum([])
|
312
|
+
# rubocop:enable Layout/LineLength
|
312
313
|
]
|
313
314
|
end
|
314
|
-
# rubocop:enable Metrics/MethodLength, Layout/LineLength, Metrics/AbcSize
|
315
315
|
|
316
|
-
def
|
317
|
-
|
318
|
-
|
319
|
-
|
320
|
-
|
321
|
-
|
322
|
-
|
323
|
-
|
324
|
-
|
316
|
+
def item_do_conteudo_do_arquivo_data(chave)
|
317
|
+
chaves_valores_de_acordo_com_a_versao_do_leiaute[chave]
|
318
|
+
end
|
319
|
+
|
320
|
+
def chaves_valores_de_acordo_com_a_versao_do_leiaute
|
321
|
+
@chaves_valores_de_acordo_com_a_versao_do_leiaute ||=
|
322
|
+
(leiaute_simplificado? ? ChavesValoresDoLeiauteSimplificado : ChavesValoresDoLeiaute2).new(evento)
|
323
|
+
end
|
324
|
+
|
325
|
+
module ChavesValores
|
326
|
+
private
|
327
|
+
|
328
|
+
def initialize(evento)
|
329
|
+
@evento = evento
|
330
|
+
end
|
331
|
+
|
332
|
+
attr_reader :evento
|
333
|
+
|
334
|
+
public
|
335
|
+
|
336
|
+
def [](chave)
|
337
|
+
de_chave_para_chave_valor[chave]
|
338
|
+
end
|
339
|
+
|
340
|
+
private
|
341
|
+
|
342
|
+
def de_chave_para_chave_valor
|
343
|
+
@de_chave_para_chave_valor ||=
|
344
|
+
itens_do_conteudo_do_arquivo_data.map { |chave, valor| [chave, [chave, valor]] }.to_h
|
325
345
|
end
|
326
346
|
end
|
327
347
|
|
328
|
-
|
329
|
-
|
330
|
-
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
348
|
+
class ChavesValoresDoLeiaute2
|
349
|
+
include ChavesValores
|
350
|
+
|
351
|
+
private
|
352
|
+
|
353
|
+
def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
354
|
+
[
|
355
|
+
# rubocop:disable Layout/LineLength
|
356
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao', evento['evtAdmissao/trabalhador/trabEstrangeiro/classTrabEstrang']],
|
357
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Uf', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabDom/uf']],
|
358
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_TipoLogradouro', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabDom/tpLograd']],
|
359
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_NumeroLogradouro', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabDom/nrLograd']],
|
360
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_DescricaoLogradouro', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabDom/dscLograd']],
|
361
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Complemento', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabDom/complemento']],
|
362
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_CodigoMunicipio', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabDom/codMunic']],
|
363
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Cep', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabDom/cep']],
|
364
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Bairro', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTrabDom/bairro']],
|
365
|
+
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_EmpresaContratante_EstabelecimentoVinculadoTemporario_NumeroInscricao', evento['evtAdmissao/vinculo/infoRegimeTrab/infoCeletista/trabTemporario/ideTomadorServ/ideEstabVinc/nrInsc']],
|
366
|
+
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_EmpresaContratante_EstabelecimentoVinculadoTemporario_TipoInscricao', evento['evtAdmissao/vinculo/infoRegimeTrab/infoCeletista/trabTemporario/ideTomadorServ/ideEstabVinc/tpInsc']]
|
367
|
+
# rubocop:enable Layout/LineLength
|
368
|
+
]
|
369
|
+
end
|
370
|
+
end
|
371
|
+
|
372
|
+
class ChavesValoresDoLeiauteSimplificado
|
373
|
+
include ChavesValores
|
374
|
+
|
375
|
+
private
|
376
|
+
|
377
|
+
def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
378
|
+
[
|
379
|
+
# rubocop:disable Layout/LineLength
|
380
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao', condicao_de_ingresso_do_trabalhador_imigrante],
|
381
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Uf', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTempDom/uf']],
|
382
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_TipoLogradouro', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTempDom/tpLograd']],
|
383
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_NumeroLogradouro', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTempDom/nrLograd']],
|
384
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_DescricaoLogradouro', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTempDom/dscLograd']],
|
385
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Complemento', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTempDom/complemento']],
|
386
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_CodigoMunicipio', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTempDom/codMunic']],
|
387
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Cep', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTempDom/cep']],
|
388
|
+
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Bairro', evento['evtAdmissao/vinculo/infoContrato/localTrabalho/localTempDom/bairro']],
|
389
|
+
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_EmpresaContratante_EstabelecimentoVinculadoTemporario_NumeroInscricao', evento['evtAdmissao/vinculo/infoRegimeTrab/infoCeletista/trabTemporario/ideEstabVinc/nrInsc']],
|
390
|
+
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_EmpresaContratante_EstabelecimentoVinculadoTemporario_TipoInscricao', evento['evtAdmissao/vinculo/infoRegimeTrab/infoCeletista/trabTemporario/ideEstabVinc/tpInsc']]
|
391
|
+
# rubocop:enable Layout/LineLength
|
392
|
+
]
|
393
|
+
end
|
394
|
+
|
395
|
+
def condicao_de_ingresso_do_trabalhador_imigrante
|
396
|
+
{
|
397
|
+
'1' => 4,
|
398
|
+
'2' => 5,
|
399
|
+
'4' => 10,
|
400
|
+
'5' => 11,
|
401
|
+
'6' => 12
|
402
|
+
}[evento['evtAdmissao/trabalhador/trabImig/condIng']] || evento['evtAdmissao/trabalhador/trabImig/tmpResid']
|
403
|
+
end
|
404
|
+
end
|
335
405
|
end
|
336
406
|
end
|
337
407
|
end
|
@@ -10,11 +10,10 @@ module Teodoro
|
|
10
10
|
end
|
11
11
|
|
12
12
|
def nome_do_arquivo_data
|
13
|
-
# FIXME: Tales dataDeAdmissao
|
14
13
|
@nome_do_arquivo_data ||= [
|
15
14
|
'TRA',
|
16
15
|
"[#{cpf_do_trabalhador}]",
|
17
|
-
"[EPG_#{matricula_do_trabalhador}
|
16
|
+
"[EPG_#{matricula_do_trabalhador}_#{data_de_admissao.delete('-')}]",
|
18
17
|
"-ACO[#{data_da_alteracao.delete('-')}]"
|
19
18
|
].join
|
20
19
|
end
|
@@ -27,6 +26,18 @@ module Teodoro
|
|
27
26
|
@matricula_do_trabalhador ||= evento['evtAltContratual/ideVinculo/matricula']
|
28
27
|
end
|
29
28
|
|
29
|
+
def data_de_admissao
|
30
|
+
admissao.data
|
31
|
+
end
|
32
|
+
|
33
|
+
def admissao
|
34
|
+
@admissao ||= admissoes_por_matricula[matricula_do_trabalhador]
|
35
|
+
end
|
36
|
+
|
37
|
+
def admissoes_por_matricula
|
38
|
+
empresa.admissoes_por_matricula
|
39
|
+
end
|
40
|
+
|
30
41
|
def data_da_alteracao
|
31
42
|
evento['evtAltContratual/altContratual/dtAlteracao']
|
32
43
|
end
|
@@ -38,7 +49,7 @@ module Teodoro
|
|
38
49
|
['ESX_MATRICULA', matricula_do_trabalhador],
|
39
50
|
['ESX_CATEGORIA', categoria_do_trabalhador],
|
40
51
|
%w[ESX_SEMVINCULO 0],
|
41
|
-
['ESX_DATAADMISSAO'],
|
52
|
+
['ESX_DATAADMISSAO', data_de_admissao],
|
42
53
|
['ESX_DATAALTERACAO', data_da_alteracao],
|
43
54
|
['cpfTrabalhador', cpf_do_trabalhador],
|
44
55
|
['nomeTrabalhador'],
|
@@ -10,8 +10,8 @@ module Teodoro
|
|
10
10
|
end
|
11
11
|
|
12
12
|
def nome_do_arquivo_data
|
13
|
-
|
14
|
-
|
13
|
+
@nome_do_arquivo_data ||=
|
14
|
+
"TRA[#{cpf_do_trabalhador}][EPG_#{matricula_do_trabalhador}_#{data_de_admissao.delete('-')}]-AVI"
|
15
15
|
end
|
16
16
|
|
17
17
|
def cpf_do_trabalhador
|
@@ -22,14 +22,26 @@ module Teodoro
|
|
22
22
|
@matricula_do_trabalhador ||= evento['evtAvPrevio/ideVinculo/matricula']
|
23
23
|
end
|
24
24
|
|
25
|
-
|
26
|
-
|
25
|
+
def data_de_admissao
|
26
|
+
admissao.data
|
27
|
+
end
|
28
|
+
|
29
|
+
def admissao
|
30
|
+
@admissao ||= admissoes_por_matricula[matricula_do_trabalhador]
|
31
|
+
end
|
32
|
+
|
33
|
+
def admissoes_por_matricula
|
34
|
+
empresa.admissoes_por_matricula
|
35
|
+
end
|
36
|
+
|
37
|
+
def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
|
27
38
|
[
|
39
|
+
# rubocop:disable Layout/LineLength
|
28
40
|
['ESX_CPF', cpf_do_trabalhador],
|
29
41
|
['ESX_MATRICULA', matricula_do_trabalhador],
|
30
|
-
['ESX_CATEGORIA'],
|
42
|
+
['ESX_CATEGORIA', categoria_do_trabalhador],
|
31
43
|
%w[ESX_SEMVINCULO 0],
|
32
|
-
['ESX_DATAADMISSAO'],
|
44
|
+
['ESX_DATAADMISSAO', data_de_admissao],
|
33
45
|
['OperacaoAvisoPrevio'],
|
34
46
|
['MostrarCancelamento'],
|
35
47
|
['MostrarAvisoPrevio'],
|
@@ -54,9 +66,13 @@ module Teodoro
|
|
54
66
|
['RequestVerificationToken'],
|
55
67
|
['DescricaoProcEmi', processo_de_emissao_do_evento],
|
56
68
|
['VerProc', recibo['retornoEvento/processamento/versaoAppProcessamento']]
|
69
|
+
# rubocop:enable Layout/LineLength
|
57
70
|
]
|
58
71
|
end
|
59
|
-
|
72
|
+
|
73
|
+
def categoria_do_trabalhador
|
74
|
+
admissao.categoria_do_trabalhador
|
75
|
+
end
|
60
76
|
end
|
61
77
|
end
|
62
78
|
end
|
@@ -10,8 +10,8 @@ module Teodoro
|
|
10
10
|
end
|
11
11
|
|
12
12
|
def nome_do_arquivo_data
|
13
|
-
|
14
|
-
|
13
|
+
@nome_do_arquivo_data ||=
|
14
|
+
"TRA[#{cpf_do_trabalhador}][EPG_#{matricula_do_trabalhador}_#{data_de_admissao.delete('-')}]-GER"
|
15
15
|
end
|
16
16
|
|
17
17
|
def cpf_do_trabalhador
|
@@ -22,6 +22,18 @@ module Teodoro
|
|
22
22
|
@matricula_do_trabalhador ||= evento['evtDeslig/ideVinculo/matricula']
|
23
23
|
end
|
24
24
|
|
25
|
+
def data_de_admissao
|
26
|
+
admissao.data
|
27
|
+
end
|
28
|
+
|
29
|
+
def admissao
|
30
|
+
@admissao ||= admissoes_por_matricula[matricula_do_trabalhador]
|
31
|
+
end
|
32
|
+
|
33
|
+
def admissoes_por_matricula
|
34
|
+
empresa.admissoes_por_matricula
|
35
|
+
end
|
36
|
+
|
25
37
|
# rubocop:disable Metrics/MethodLength, Layout/LineLength
|
26
38
|
def itens_do_conteudo_do_arquivo_data
|
27
39
|
[
|
@@ -293,18 +305,6 @@ module Teodoro
|
|
293
305
|
def categoria_do_trabalhador
|
294
306
|
admissao.categoria_do_trabalhador
|
295
307
|
end
|
296
|
-
|
297
|
-
def admissao
|
298
|
-
@admissao ||= admissoes_por_matricula[matricula_do_trabalhador]
|
299
|
-
end
|
300
|
-
|
301
|
-
def admissoes_por_matricula
|
302
|
-
empresa.admissoes_por_matricula
|
303
|
-
end
|
304
|
-
|
305
|
-
def data_de_admissao
|
306
|
-
admissao.data
|
307
|
-
end
|
308
308
|
end
|
309
309
|
end
|
310
310
|
end
|
@@ -12,15 +12,15 @@ module Teodoro
|
|
12
12
|
private
|
13
13
|
|
14
14
|
def registrar_contrato_de_trabalhador_sem_vinculo
|
15
|
-
|
15
|
+
contratos_de_trabalhado_sem_vinculo << Obj.new(
|
16
16
|
cpf_do_trabalhador: cpf_do_trabalhador,
|
17
17
|
categoria_do_trabalhador: categoria_do_trabalhador,
|
18
18
|
data_de_inicio: data_de_inicio
|
19
19
|
)
|
20
20
|
end
|
21
21
|
|
22
|
-
def
|
23
|
-
empresa.
|
22
|
+
def contratos_de_trabalhado_sem_vinculo
|
23
|
+
empresa.contratos_de_trabalhado_sem_vinculo
|
24
24
|
end
|
25
25
|
|
26
26
|
def noh_principal_do_evento
|
@@ -28,7 +28,8 @@ module Teodoro
|
|
28
28
|
end
|
29
29
|
|
30
30
|
def nome_do_arquivo_data
|
31
|
-
|
31
|
+
@nome_do_arquivo_data ||=
|
32
|
+
"TRA[#{cpf_do_trabalhador}][TSV_#{categoria_do_trabalhador}_#{data_de_inicio.delete('-')}]-ADM"
|
32
33
|
end
|
33
34
|
|
34
35
|
def cpf_do_trabalhador
|
@@ -10,8 +10,12 @@ module Teodoro
|
|
10
10
|
end
|
11
11
|
|
12
12
|
def nome_do_arquivo_data
|
13
|
-
|
14
|
-
|
13
|
+
@nome_do_arquivo_data ||= [
|
14
|
+
'TRA',
|
15
|
+
"[#{cpf_do_trabalhador}]",
|
16
|
+
"[TSV_#{categoria_do_trabalhador}_#{data_de_inicio.delete('-')}]",
|
17
|
+
"-ACO[#{data_da_alteracao.delete('-')}]"
|
18
|
+
].join
|
15
19
|
end
|
16
20
|
|
17
21
|
def cpf_do_trabalhador
|
@@ -22,18 +26,34 @@ module Teodoro
|
|
22
26
|
evento['evtTSVAltContr/ideTrabSemVinculo/codCateg']
|
23
27
|
end
|
24
28
|
|
29
|
+
def data_de_inicio
|
30
|
+
contrato_de_trabalho.data_de_inicio
|
31
|
+
end
|
32
|
+
|
33
|
+
def contrato_de_trabalho
|
34
|
+
contratos_de_trabalhado_sem_vinculo[
|
35
|
+
cpf_do_trabalhador: cpf_do_trabalhador,
|
36
|
+
categoria_do_trabalhador: categoria_do_trabalhador,
|
37
|
+
data: data_da_alteracao
|
38
|
+
]
|
39
|
+
end
|
40
|
+
|
41
|
+
def contratos_de_trabalhado_sem_vinculo
|
42
|
+
empresa.contratos_de_trabalhado_sem_vinculo
|
43
|
+
end
|
44
|
+
|
25
45
|
def data_da_alteracao
|
26
46
|
evento['evtTSVAltContr/infoTSVAlteracao/dtAlteracao']
|
27
47
|
end
|
28
48
|
|
29
|
-
# rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
30
|
-
def itens_do_conteudo_do_arquivo_data
|
49
|
+
def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
31
50
|
[
|
51
|
+
# rubocop:disable Layout/LineLength
|
32
52
|
['ESX_CPF', evento['evtTSVAltContr/ideTrabSemVinculo/cpfTrab']],
|
33
53
|
['ESX_MATRICULA'],
|
34
54
|
['ESX_CATEGORIA', evento['evtTSVAltContr/ideTrabSemVinculo/codCateg']],
|
35
55
|
%w[ESX_SEMVINCULO 1],
|
36
|
-
['ESX_DATAADMISSAO'],
|
56
|
+
['ESX_DATAADMISSAO', data_de_inicio],
|
37
57
|
['ESX_DATAALTERACAO', evento['evtTSVAltContr/infoTSVAlteracao/dtAlteracao']],
|
38
58
|
['cpfTrabalhador'],
|
39
59
|
['nomeTrabalhador'],
|
@@ -159,9 +179,9 @@ module Teodoro
|
|
159
179
|
['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_NivelEstagio', evento['evtTSVAltContr/infoTSVAlteracao/infoComplementares/infoEstagiario/nivEstagio']],
|
160
180
|
['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_NrApoliceSeguro', evento['evtTSVAltContr/infoTSVAlteracao/infoComplementares/infoEstagiario/nrApol']],
|
161
181
|
['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_ValorBolsa', evento['evtTSVAltContr/infoTSVAlteracao/infoComplementares/infoEstagiario/vlrBolsa']]
|
182
|
+
# rubocop:enable Layout/LineLength
|
162
183
|
]
|
163
184
|
end
|
164
|
-
# rubocop:enable Metrics/MethodLength, Metrics/AbcSize, Layout/LineLength
|
165
185
|
end
|
166
186
|
end
|
167
187
|
end
|
@@ -10,7 +10,8 @@ module Teodoro
|
|
10
10
|
end
|
11
11
|
|
12
12
|
def nome_do_arquivo_data
|
13
|
-
|
13
|
+
@nome_do_arquivo_data ||=
|
14
|
+
"TRA[#{cpf_do_trabalhador}][TSV_#{categoria_do_trabalhador}_#{data_de_inicio.delete('-')}]-GER"
|
14
15
|
end
|
15
16
|
|
16
17
|
def cpf_do_trabalhador
|
@@ -26,15 +27,15 @@ module Teodoro
|
|
26
27
|
end
|
27
28
|
|
28
29
|
def contrato_de_trabalho
|
29
|
-
|
30
|
+
contratos_de_trabalhado_sem_vinculo[
|
30
31
|
cpf_do_trabalhador: cpf_do_trabalhador,
|
31
32
|
categoria_do_trabalhador: categoria_do_trabalhador,
|
32
33
|
data: data_do_termino
|
33
34
|
]
|
34
35
|
end
|
35
36
|
|
36
|
-
def
|
37
|
-
empresa.
|
37
|
+
def contratos_de_trabalhado_sem_vinculo
|
38
|
+
empresa.contratos_de_trabalhado_sem_vinculo
|
38
39
|
end
|
39
40
|
|
40
41
|
def data_do_termino
|