teodoro 0.6.0 → 0.10.0
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 +1 -0
- data/lib/teodoro/arquivo_data.rb +87 -0
- data/lib/teodoro/arquivo_de_evento.rb +14 -2
- data/lib/teodoro/arquivo_de_evento_de_tabela.rb +29 -14
- data/lib/teodoro/arquivo_de_evento_nao_periodico.rb +38 -12
- data/lib/teodoro/arquivo_de_origem.rb +7 -7
- data/lib/teodoro/arquivo_xml.rb +46 -22
- data/lib/teodoro/console.rb +3 -1
- data/lib/teodoro/empresa.rb +179 -161
- data/lib/teodoro/leiaute/arquivo_s1000.rb +20 -24
- data/lib/teodoro/leiaute/arquivo_s1005.rb +12 -18
- data/lib/teodoro/leiaute/arquivo_s1010.rb +9 -13
- data/lib/teodoro/leiaute/arquivo_s1020.rb +6 -10
- data/lib/teodoro/leiaute/arquivo_s1030.rb +4 -8
- data/lib/teodoro/leiaute/arquivo_s1040.rb +3 -7
- data/lib/teodoro/leiaute/arquivo_s1050.rb +6 -12
- data/lib/teodoro/leiaute/arquivo_s1070.rb +9 -13
- data/lib/teodoro/leiaute/arquivo_s2190.rb +16 -17
- data/lib/teodoro/leiaute/arquivo_s2200.rb +161 -185
- data/lib/teodoro/leiaute/arquivo_s2205.rb +132 -167
- data/lib/teodoro/leiaute/arquivo_s2206.rb +72 -75
- data/lib/teodoro/leiaute/arquivo_s2230.rb +87 -91
- data/lib/teodoro/leiaute/arquivo_s2250.rb +36 -40
- data/lib/teodoro/leiaute/arquivo_s2299.rb +171 -169
- data/lib/teodoro/leiaute/arquivo_s2300.rb +135 -159
- data/lib/teodoro/leiaute/arquivo_s2306.rb +148 -151
- data/lib/teodoro/leiaute/arquivo_s2399.rb +123 -127
- data/lib/teodoro/leiaute/arquivo_s3000.rb +4 -8
- data/lib/teodoro/xml.rb +2 -2
- metadata +3 -5
- data/lib/teodoro/arquivo_de_evento_criador_de_arquivo_data.rb +0 -52
- data/lib/teodoro/arquivo_de_evento_processador_de_arquivo_data.rb +0 -30
- data/lib/teodoro/arquivo_de_evento_retificavel.rb +0 -23
@@ -1,27 +1,13 @@
|
|
1
1
|
module Teodoro
|
2
2
|
module Leiaute
|
3
|
-
class ArquivoS2205
|
4
|
-
include
|
5
|
-
include ArquivoDeEventoRetificavel
|
6
|
-
|
7
|
-
def processar
|
8
|
-
deletar_arquivos_data_originais if retificacao?
|
9
|
-
processar_contratos_de_trabalho
|
10
|
-
end
|
3
|
+
class ArquivoS2205 # rubocop:disable Metrics/ClassLength
|
4
|
+
include ArquivoDeEventoNaoPeriodico
|
11
5
|
|
12
6
|
private
|
13
7
|
|
14
|
-
def noh_principal_do_evento
|
15
|
-
'evtAltCadastral'
|
16
|
-
end
|
17
|
-
|
18
|
-
def processar_contratos_de_trabalho
|
19
|
-
contratos_de_trabalho.each(&:processar)
|
20
|
-
end
|
21
|
-
|
22
8
|
def contratos_de_trabalho
|
23
9
|
(contratos_de_emprego + contratos_de_trabalho_sem_vinculo)
|
24
|
-
.map { |classe, contrato| classe.new(
|
10
|
+
.map { |classe, contrato| classe.new(contrato) }
|
25
11
|
end
|
26
12
|
|
27
13
|
def contratos_de_emprego
|
@@ -37,156 +23,139 @@ module Teodoro
|
|
37
23
|
end
|
38
24
|
|
39
25
|
def cpf_do_trabalhador
|
40
|
-
@cpf_do_trabalhador ||= evento['
|
26
|
+
@cpf_do_trabalhador ||= evento['ideTrabalhador/cpfTrab']
|
41
27
|
end
|
42
28
|
|
43
29
|
def data_da_alteracao
|
44
|
-
@data_da_alteracao ||= evento['
|
30
|
+
@data_da_alteracao ||= evento['alteracao/dtAlteracao']
|
45
31
|
end
|
46
32
|
|
47
|
-
|
48
|
-
|
33
|
+
def dados_dos_arquivos_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
34
|
+
contratos_de_trabalho.map do |contrato_de_trabalho| # rubocop:disable Metrics/BlockLength
|
35
|
+
Obj.new(
|
36
|
+
nome: [
|
37
|
+
"TRA[#{cpf_do_trabalhador}]",
|
38
|
+
contrato_de_trabalho.nome_do_arquivo_data_identificacao_do_contrato,
|
39
|
+
"-ACA[#{data_da_alteracao.delete('-')}]"
|
40
|
+
].join,
|
41
|
+
itens_do_conteudo: [
|
42
|
+
# rubocop:disable Layout/LineLength
|
43
|
+
['ESX_CPF', cpf_do_trabalhador],
|
44
|
+
['ESX_MATRICULA', contrato_de_trabalho.matricula_do_contrato],
|
45
|
+
['ESX_CATEGORIA', contrato_de_trabalho.categoria_do_trabalhador],
|
46
|
+
%w[ESX_SEMVINCULO 0], # FIXME: Tales TC
|
47
|
+
['ESX_DATAADMISSAO', [contrato_de_trabalho.data_de_inicio, :data]],
|
48
|
+
['ESX_DATAALTERACAO', [data_da_alteracao, :data]],
|
49
|
+
['DataAlteracao', [data_da_alteracao, :data]],
|
50
|
+
['IdEventoXml', id_do_evento],
|
51
|
+
['NrReciboEventoOriginal', numero_do_recibo],
|
52
|
+
['RequestVerificationToken'],
|
53
|
+
['SomenteLeitura'],
|
54
|
+
['VisualizarDadosCadastrais'],
|
55
|
+
['UrlRetorno'],
|
56
|
+
['visualizar'],
|
57
|
+
['DescricaoProcEmi', processo_de_emissao_do_evento],
|
58
|
+
['VerProc', recibo['processamento/versaoAppProcessamento']],
|
59
|
+
['EventoAdmissao_TipoEventoEnviado'],
|
60
|
+
['EventoAdmissao_InfoTrabalhador_Cpf', cpf_do_trabalhador],
|
61
|
+
['EventoAdmissao_InfoTrabalhador_Nome', evento['alteracao/dadosTrabalhador/nmTrab']],
|
62
|
+
['EventoAdmissao_InfoTrabalhador_Nis', evento['alteracao/dadosTrabalhador/nisTrab']],
|
63
|
+
['EventoAdmissao_InfoTrabalhador_Sexo', evento['alteracao/dadosTrabalhador/sexo']],
|
64
|
+
['EventoAdmissao_InfoTrabalhador_Sexo_TEXT'],
|
65
|
+
['EventoAdmissao_InfoTrabalhador_RacaCor', evento['alteracao/dadosTrabalhador/racaCor']],
|
66
|
+
['EventoAdmissao_InfoTrabalhador_RacaCor_TEXT'],
|
67
|
+
['EventoAdmissao_InfoTrabalhador_EstadoCivil', evento['alteracao/dadosTrabalhador/estCiv']],
|
68
|
+
['EventoAdmissao_InfoTrabalhador_EstadoCivil_TEXT'],
|
69
|
+
['EventoAdmissao_InfoTrabalhador_GrauInstrucao', evento['alteracao/dadosTrabalhador/grauInstr']],
|
70
|
+
['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
|
71
|
+
['EventoAdmissao_InfoTrabalhador_NomeSocial', evento['alteracao/dadosTrabalhador/nmSoc']],
|
72
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio'],
|
73
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT'],
|
74
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', [evento['alteracao/dadosTrabalhador/nascimento/dtNascto'], :data]],
|
75
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae'],
|
76
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai'],
|
77
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', evento['alteracao/dadosTrabalhador/nascimento/paisNascto']],
|
78
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
|
79
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade', evento['alteracao/dadosTrabalhador/nascimento/paisNac']],
|
80
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
|
81
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf'],
|
82
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
|
83
|
+
['EventoAdmissao_EnderecoResidencialBR_Bairro', evento['alteracao/dadosTrabalhador/endereco/brasil/bairro']],
|
84
|
+
['EventoAdmissao_EnderecoResidencialBR_Cep', evento['alteracao/dadosTrabalhador/endereco/brasil/cep']],
|
85
|
+
['EventoAdmissao_EnderecoResidencialBR_CodigoMunicipio', evento['alteracao/dadosTrabalhador/endereco/brasil/codMunic']],
|
86
|
+
['EventoAdmissao_EnderecoResidencialBR_CodigoMunicipio_TEXT'],
|
87
|
+
['EventoAdmissao_EnderecoResidencialBR_Complemento', evento['alteracao/dadosTrabalhador/endereco/brasil/complemento']],
|
88
|
+
['EventoAdmissao_EnderecoResidencialBR_DescricaoLogradouro', evento['alteracao/dadosTrabalhador/endereco/brasil/dscLograd']],
|
89
|
+
['EventoAdmissao_EnderecoResidencialBR_NumeroLogradouro', evento['alteracao/dadosTrabalhador/endereco/brasil/nrLograd']],
|
90
|
+
['SemNumeroLogradouroEnderecoBR'],
|
91
|
+
['EventoAdmissao_EnderecoResidencialBR_TipoLogradouro', evento['alteracao/dadosTrabalhador/endereco/brasil/tpLograd']],
|
92
|
+
['EventoAdmissao_EnderecoResidencialBR_TipoLogradouro_TEXT'],
|
93
|
+
['EventoAdmissao_EnderecoResidencialBR_Uf', evento['alteracao/dadosTrabalhador/endereco/brasil/uf']],
|
94
|
+
['EventoAdmissao_EnderecoResidencialBR_Uf_TEXT'],
|
95
|
+
['ResideExterior'],
|
96
|
+
['SemNumeroLogradouroEnderecoEX'],
|
97
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro', evento['alteracao/dadosTrabalhador/trabEstrangeiro/casadoBr']],
|
98
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_DataChegada', [evento['alteracao/dadosTrabalhador/trabEstrangeiro/dtChegada'], :data]],
|
99
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_FilhosBrasileiros', evento['alteracao/dadosTrabalhador/trabEstrangeiro/filhosBr']],
|
100
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh', evento['alteracao/dadosTrabalhador/documentos/CNH/categoriaCnh']],
|
101
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh_TEXT'],
|
102
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataExpedicao', [evento['alteracao/dadosTrabalhador/documentos/CNH/dtExped'], :data]],
|
103
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataPrimeiraHabilitacao', [evento['alteracao/dadosTrabalhador/documentos/CNH/dtPriHab'], :data]],
|
104
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataValidade', [evento['alteracao/dadosTrabalhador/documentos/CNH/dtValid'], :data]],
|
105
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_NumeroCnh', evento['alteracao/dadosTrabalhador/documentos/CNH/nrRegCnh']],
|
106
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh', evento['alteracao/dadosTrabalhador/documentos/CNH/ufCnh']],
|
107
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh_TEXT'],
|
108
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_NumeroCtps', evento['alteracao/dadosTrabalhador/documentos/CTPS/nrCtps']],
|
109
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_SerieCtps', evento['alteracao/dadosTrabalhador/documentos/CTPS/serieCtps']],
|
110
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps', evento['alteracao/dadosTrabalhador/documentos/CTPS/ufCtps']],
|
111
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps_TEXT'],
|
112
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_DataExpedicao', [evento['alteracao/dadosTrabalhador/documentos/RG/dtExped'], :data]],
|
113
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_NumeroRg', evento['alteracao/dadosTrabalhador/documentos/RG/nrRg']],
|
114
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_OrgaoEmissor', evento['alteracao/dadosTrabalhador/documentos/RG/orgaoEmissor']],
|
115
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rne_DataExpedicao', [evento['alteracao/dadosTrabalhador/documentos/RNE/dtExped'], :data]],
|
116
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rne_NumerorRne', evento['alteracao/dadosTrabalhador/documentos/RNE/nrRne']],
|
117
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rne_OrgaoEmissor', evento['alteracao/dadosTrabalhador/documentos/RNE/orgaoEmissor']],
|
118
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaAuditiva', evento['alteracao/dadosTrabalhador/infoDeficiencia/defAuditiva']],
|
119
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaFisica', evento['alteracao/dadosTrabalhador/infoDeficiencia/defFisica']],
|
120
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaIntelectual', evento['alteracao/dadosTrabalhador/infoDeficiencia/defIntelectual']],
|
121
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaMental', evento['alteracao/dadosTrabalhador/infoDeficiencia/defMental']],
|
122
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaVisual', evento['alteracao/dadosTrabalhador/infoDeficiencia/defVisual']],
|
123
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_InfoCota', evento['alteracao/dadosTrabalhador/infoDeficiencia/infoCota']],
|
124
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_ReabilitadoOuReadaptado', evento['alteracao/dadosTrabalhador/infoDeficiencia/reabReadap']],
|
125
|
+
['EventoAdmissao_Contato_TelefonePrincipal', evento['alteracao/dadosTrabalhador/contato/fonePrinc']],
|
126
|
+
['EventoAdmissao_Contato_EmailPrincipal', evento['alteracao/dadosTrabalhador/contato/emailPrinc']],
|
127
|
+
['EventoAdmissao_Contato_TelefoneAlternativo', evento['alteracao/dadosTrabalhador/contato/foneAlternat']],
|
128
|
+
*evento.*('alteracao/dadosTrabalhador/dependente').map.with_index(1) do |dependente, seq|
|
129
|
+
[
|
130
|
+
["EventoAdmissao_Dependente_#{seq}_CPFDependente", dependente['cpfDep']],
|
131
|
+
["EventoAdmissao_Dependente_#{seq}_DataNascimento", [dependente['dtNascto'], :data]],
|
132
|
+
["EventoAdmissao_Dependente_#{seq}_DataNascimentoFormatada", [dependente['dtNascto'], :data]],
|
133
|
+
["EventoAdmissao_Dependente_#{seq}_DependenteIRRF", dependente['depIRRF']],
|
134
|
+
["EventoAdmissao_Dependente_#{seq}_DependenteSF", dependente['depSF']],
|
135
|
+
["EventoAdmissao_Dependente_#{seq}_IncapacidadeDependente", dependente['incTrab']],
|
136
|
+
["EventoAdmissao_Dependente_#{seq}_NomeDependente", dependente['nmDep']],
|
137
|
+
["EventoAdmissao_Dependente_#{seq}_TipoDependente", dependente['tpDep']]
|
138
|
+
]
|
139
|
+
end.sum([])
|
140
|
+
# rubocop:enable Layout/LineLength
|
141
|
+
]
|
142
|
+
)
|
143
|
+
end
|
144
|
+
end
|
49
145
|
|
146
|
+
module ContratoDeTrabalho
|
50
147
|
private
|
51
148
|
|
52
|
-
def initialize(contrato
|
53
|
-
super(**args)
|
54
|
-
|
149
|
+
def initialize(contrato)
|
55
150
|
@contrato = contrato
|
56
151
|
end
|
57
152
|
|
58
153
|
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, :data]],
|
88
|
-
['ESX_DATAALTERACAO', [data_da_alteracao, :data]],
|
89
|
-
['DataAlteracao', [data_da_alteracao, :data]],
|
90
|
-
['IdEventoXml', id_do_evento],
|
91
|
-
['NrReciboEventoOriginal', numero_do_recibo],
|
92
|
-
['RequestVerificationToken'],
|
93
|
-
['SomenteLeitura'],
|
94
|
-
['VisualizarDadosCadastrais'],
|
95
|
-
['UrlRetorno'],
|
96
|
-
['visualizar'],
|
97
|
-
['DescricaoProcEmi', processo_de_emissao_do_evento],
|
98
|
-
['VerProc', recibo['retornoEvento/processamento/versaoAppProcessamento']],
|
99
|
-
['EventoAdmissao_TipoEventoEnviado'],
|
100
|
-
['EventoAdmissao_InfoTrabalhador_Cpf', cpf_do_trabalhador],
|
101
|
-
['EventoAdmissao_InfoTrabalhador_Nome', evento['evtAltCadastral/alteracao/dadosTrabalhador/nmTrab']],
|
102
|
-
['EventoAdmissao_InfoTrabalhador_Nis', evento['evtAltCadastral/alteracao/dadosTrabalhador/nisTrab']],
|
103
|
-
['EventoAdmissao_InfoTrabalhador_Sexo', evento['evtAltCadastral/alteracao/dadosTrabalhador/sexo']],
|
104
|
-
['EventoAdmissao_InfoTrabalhador_Sexo_TEXT'],
|
105
|
-
['EventoAdmissao_InfoTrabalhador_RacaCor', evento['evtAltCadastral/alteracao/dadosTrabalhador/racaCor']],
|
106
|
-
['EventoAdmissao_InfoTrabalhador_RacaCor_TEXT'],
|
107
|
-
['EventoAdmissao_InfoTrabalhador_EstadoCivil', evento['evtAltCadastral/alteracao/dadosTrabalhador/estCiv']],
|
108
|
-
['EventoAdmissao_InfoTrabalhador_EstadoCivil_TEXT'],
|
109
|
-
['EventoAdmissao_InfoTrabalhador_GrauInstrucao', evento['evtAltCadastral/alteracao/dadosTrabalhador/grauInstr']],
|
110
|
-
['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
|
111
|
-
['EventoAdmissao_InfoTrabalhador_NomeSocial', evento['evtAltCadastral/alteracao/dadosTrabalhador/nmSoc']],
|
112
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio'],
|
113
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT'],
|
114
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', [evento['evtAltCadastral/alteracao/dadosTrabalhador/nascimento/dtNascto'], :data]],
|
115
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae'],
|
116
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai'],
|
117
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', evento['evtAltCadastral/alteracao/dadosTrabalhador/nascimento/paisNascto']],
|
118
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
|
119
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade', evento['evtAltCadastral/alteracao/dadosTrabalhador/nascimento/paisNac']],
|
120
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
|
121
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf'],
|
122
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
|
123
|
-
['EventoAdmissao_EnderecoResidencialBR_Bairro', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/brasil/bairro']],
|
124
|
-
['EventoAdmissao_EnderecoResidencialBR_Cep', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/brasil/cep']],
|
125
|
-
['EventoAdmissao_EnderecoResidencialBR_CodigoMunicipio', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/brasil/codMunic']],
|
126
|
-
['EventoAdmissao_EnderecoResidencialBR_CodigoMunicipio_TEXT'],
|
127
|
-
['EventoAdmissao_EnderecoResidencialBR_Complemento', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/brasil/complemento']],
|
128
|
-
['EventoAdmissao_EnderecoResidencialBR_DescricaoLogradouro', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/brasil/dscLograd']],
|
129
|
-
['EventoAdmissao_EnderecoResidencialBR_NumeroLogradouro', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/brasil/nrLograd']],
|
130
|
-
['SemNumeroLogradouroEnderecoBR'],
|
131
|
-
['EventoAdmissao_EnderecoResidencialBR_TipoLogradouro', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/brasil/tpLograd']],
|
132
|
-
['EventoAdmissao_EnderecoResidencialBR_TipoLogradouro_TEXT'],
|
133
|
-
['EventoAdmissao_EnderecoResidencialBR_Uf', evento['evtAltCadastral/alteracao/dadosTrabalhador/endereco/brasil/uf']],
|
134
|
-
['EventoAdmissao_EnderecoResidencialBR_Uf_TEXT'],
|
135
|
-
['ResideExterior'],
|
136
|
-
['SemNumeroLogradouroEnderecoEX'],
|
137
|
-
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro', evento['evtAltCadastral/alteracao/dadosTrabalhador/trabEstrangeiro/casadoBr']],
|
138
|
-
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_DataChegada', [evento['evtAltCadastral/alteracao/dadosTrabalhador/trabEstrangeiro/dtChegada'], :data]],
|
139
|
-
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_FilhosBrasileiros', evento['evtAltCadastral/alteracao/dadosTrabalhador/trabEstrangeiro/filhosBr']],
|
140
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/CNH/categoriaCnh']],
|
141
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh_TEXT'],
|
142
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataExpedicao', [evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/CNH/dtExped'], :data]],
|
143
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataPrimeiraHabilitacao', [evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/CNH/dtPriHab'], :data]],
|
144
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataValidade', [evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/CNH/dtValid'], :data]],
|
145
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_NumeroCnh', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/CNH/nrRegCnh']],
|
146
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/CNH/ufCnh']],
|
147
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh_TEXT'],
|
148
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_NumeroCtps', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/CTPS/nrCtps']],
|
149
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_SerieCtps', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/CTPS/serieCtps']],
|
150
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/CTPS/ufCtps']],
|
151
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps_TEXT'],
|
152
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_DataExpedicao', [evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/RG/dtExped'], :data]],
|
153
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_NumeroRg', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/RG/nrRg']],
|
154
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_OrgaoEmissor', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/RG/orgaoEmissor']],
|
155
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Rne_DataExpedicao', [evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/RNE/dtExped'], :data]],
|
156
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Rne_NumerorRne', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/RNE/nrRne']],
|
157
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Rne_OrgaoEmissor', evento['evtAltCadastral/alteracao/dadosTrabalhador/documentos/RNE/orgaoEmissor']],
|
158
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaAuditiva', evento['evtAltCadastral/alteracao/dadosTrabalhador/infoDeficiencia/defAuditiva']],
|
159
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaFisica', evento['evtAltCadastral/alteracao/dadosTrabalhador/infoDeficiencia/defFisica']],
|
160
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaIntelectual', evento['evtAltCadastral/alteracao/dadosTrabalhador/infoDeficiencia/defIntelectual']],
|
161
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaMental', evento['evtAltCadastral/alteracao/dadosTrabalhador/infoDeficiencia/defMental']],
|
162
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaVisual', evento['evtAltCadastral/alteracao/dadosTrabalhador/infoDeficiencia/defVisual']],
|
163
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_InfoCota', evento['evtAltCadastral/alteracao/dadosTrabalhador/infoDeficiencia/infoCota']],
|
164
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_ReabilitadoOuReadaptado', evento['evtAltCadastral/alteracao/dadosTrabalhador/infoDeficiencia/reabReadap']],
|
165
|
-
['EventoAdmissao_Contato_TelefonePrincipal', evento['evtAltCadastral/alteracao/dadosTrabalhador/contato/fonePrinc']],
|
166
|
-
['EventoAdmissao_Contato_EmailPrincipal', evento['evtAltCadastral/alteracao/dadosTrabalhador/contato/emailPrinc']],
|
167
|
-
['EventoAdmissao_Contato_TelefoneAlternativo', evento['evtAltCadastral/alteracao/dadosTrabalhador/contato/foneAlternat']],
|
168
|
-
*evento.*('evtAltCadastral/alteracao/dadosTrabalhador/dependente').map.with_index(1) do |dependente, seq|
|
169
|
-
[
|
170
|
-
["EventoAdmissao_Dependente_#{seq}_CPFDependente", dependente['cpfDep']],
|
171
|
-
["EventoAdmissao_Dependente_#{seq}_DataNascimento", [dependente['dtNascto'], :data]],
|
172
|
-
["EventoAdmissao_Dependente_#{seq}_DataNascimentoFormatada", [dependente['dtNascto'], :data]],
|
173
|
-
["EventoAdmissao_Dependente_#{seq}_DependenteIRRF", dependente['depIRRF']],
|
174
|
-
["EventoAdmissao_Dependente_#{seq}_DependenteSF", dependente['depSF']],
|
175
|
-
["EventoAdmissao_Dependente_#{seq}_IncapacidadeDependente", dependente['incTrab']],
|
176
|
-
["EventoAdmissao_Dependente_#{seq}_NomeDependente", dependente['nmDep']],
|
177
|
-
["EventoAdmissao_Dependente_#{seq}_TipoDependente", dependente['tpDep']]
|
178
|
-
]
|
179
|
-
end.sum([])
|
180
|
-
# rubocop:enable Layout/LineLength
|
181
|
-
]
|
182
|
-
end
|
183
154
|
end
|
184
155
|
|
185
156
|
class ContratoDeEmprego
|
186
157
|
include ContratoDeTrabalho
|
187
158
|
|
188
|
-
private
|
189
|
-
|
190
159
|
def nome_do_arquivo_data_identificacao_do_contrato
|
191
160
|
"[EPG_#{matricula_do_contrato}_#{data_de_admissao.delete('-')}]"
|
192
161
|
end
|
@@ -195,43 +164,39 @@ module Teodoro
|
|
195
164
|
contrato.matricula
|
196
165
|
end
|
197
166
|
|
198
|
-
def data_de_admissao
|
199
|
-
contrato.data_de_admissao
|
200
|
-
end
|
201
|
-
|
202
167
|
def categoria_do_trabalhador
|
203
168
|
contrato.categoria_do_trabalhador
|
204
169
|
end
|
205
170
|
|
206
|
-
def
|
171
|
+
def data_de_inicio
|
207
172
|
data_de_admissao
|
208
173
|
end
|
174
|
+
|
175
|
+
private
|
176
|
+
|
177
|
+
def data_de_admissao
|
178
|
+
contrato.data_de_admissao
|
179
|
+
end
|
209
180
|
end
|
210
181
|
|
211
182
|
class ContratoDeTrabalhoSemVinculo
|
212
183
|
include ContratoDeTrabalho
|
213
184
|
|
214
|
-
private
|
215
|
-
|
216
185
|
def nome_do_arquivo_data_identificacao_do_contrato
|
217
|
-
"[TSV_#{categoria_do_trabalhador}_#{
|
186
|
+
"[TSV_#{categoria_do_trabalhador}_#{data_de_inicio.delete('-')}]"
|
187
|
+
end
|
188
|
+
|
189
|
+
def matricula_do_contrato
|
190
|
+
nil
|
218
191
|
end
|
219
192
|
|
220
193
|
def categoria_do_trabalhador
|
221
194
|
contrato.categoria_do_trabalhador
|
222
195
|
end
|
223
196
|
|
224
|
-
def
|
197
|
+
def data_de_inicio
|
225
198
|
contrato.data_de_inicio
|
226
199
|
end
|
227
|
-
|
228
|
-
def matricula_do_contrato
|
229
|
-
nil
|
230
|
-
end
|
231
|
-
|
232
|
-
def data_de_inicio_do_contrato_de_trabalho
|
233
|
-
data_de_inicio_do_contrato_de_trabalho_sem_vinculo
|
234
|
-
end
|
235
200
|
end
|
236
201
|
end
|
237
202
|
end
|
@@ -5,25 +5,82 @@ module Teodoro
|
|
5
5
|
|
6
6
|
private
|
7
7
|
|
8
|
-
def
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
8
|
+
def dados_dos_arquivos_data # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
|
9
|
+
[
|
10
|
+
Obj.new(
|
11
|
+
nome: [
|
12
|
+
'TRA',
|
13
|
+
"[#{cpf_do_trabalhador}]",
|
14
|
+
"[EPG_#{matricula_do_trabalhador}_#{data_de_admissao.delete('-')}]",
|
15
|
+
"-ACO[#{data_da_alteracao.delete('-')}]"
|
16
|
+
].join,
|
17
|
+
itens_do_conteudo: [
|
18
|
+
# rubocop:disable Layout/LineLength
|
19
|
+
['ESX_CPF', cpf_do_trabalhador],
|
20
|
+
['ESX_MATRICULA', matricula_do_trabalhador],
|
21
|
+
%w[ESX_SEMVINCULO 0],
|
22
|
+
['ESX_DATAADMISSAO', [data_de_admissao, :data]],
|
23
|
+
['ESX_DATAALTERACAO', [data_da_alteracao, :data]],
|
24
|
+
['cpfTrabalhador', cpf_do_trabalhador],
|
25
|
+
%w[nomeTrabalhador nomeTrabalhador],
|
26
|
+
['IdentificacaoVinculo_Cpf', cpf_do_trabalhador],
|
27
|
+
['IdentificacaoVinculo_Matricula', matricula_do_trabalhador],
|
28
|
+
['TipoInscricaoEmpregador', tipo_de_inscricao_do_empregador],
|
29
|
+
['AlteracaoContratual_DataAlteracao', [data_da_alteracao, :data]],
|
30
|
+
['AlteracaoContratual_DataEfeito', [evento['altContratual/dtEf'], :data]],
|
31
|
+
['AlteracaoContratual_DescricaoAlteracao', evento['altContratual/dscAlt']],
|
32
|
+
['IdentificacaoVinculo_Nis', evento['ideVinculo/nisTrab']],
|
33
|
+
['IndicadorRetificacao'],
|
34
|
+
['IdEventoXml', id_do_evento],
|
35
|
+
['NrReciboEventoOriginal', numero_do_recibo],
|
36
|
+
['UrlRetorno'],
|
37
|
+
['idContrato'],
|
38
|
+
['SomenteLeitura'],
|
39
|
+
['IdEvento'],
|
40
|
+
['RequestVerificationToken'],
|
41
|
+
['IdContratoAlterado'],
|
42
|
+
['regTrab'],
|
43
|
+
['InformacoesContrato_CodigoCategoria', categoria_do_trabalhador],
|
44
|
+
['VinculoAlteracao_TipoRegimePrevidenciario', evento['altContratual/vinculo/tpRegPrev']],
|
45
|
+
['dataAdmissao', [data_de_admissao, :data]],
|
46
|
+
['InformacoesCeletista_TipoRegimeJornada', evento['altContratual/infoRegimeTrab/infoCeletista/tpRegJor']],
|
47
|
+
['InformacoesCeletista_NaturezaAtividade', evento['altContratual/infoRegimeTrab/infoCeletista/natAtividade']],
|
48
|
+
['FiltroCargo'],
|
49
|
+
['FiltroFuncao'],
|
50
|
+
['HorarioTela_Dia'],
|
51
|
+
['dataNomeacao'],
|
52
|
+
['DescricaoProcEmi', processo_de_emissao_do_evento],
|
53
|
+
['VerProc', recibo['processamento/versaoAppProcessamento']],
|
54
|
+
['FiltroEstabelecimentoLocalTrabalho'],
|
55
|
+
['NomeEstabelecimentoLocalTrabalho'],
|
56
|
+
['CodigoCBO'],
|
57
|
+
['InformacoesContrato_Remuneracao_UnidadeSalarioFixo', evento['altContratual/infoContrato/remuneracao/undSalFixo']],
|
58
|
+
['InformacoesContrato_TipoContrato', evento['altContratual/infoContrato/duracao/tpContr']],
|
59
|
+
['CodigoCNAE'],
|
60
|
+
*evento.*('altContratual/infoContrato/horContratual/horario').map.with_index(1) do |horario, seq|
|
61
|
+
[
|
62
|
+
["Horarios_#{seq}_CodigoHorarioContratual", horario['codHorContrat']],
|
63
|
+
["Horarios_#{seq}_Dia", horario['dia']]
|
64
|
+
]
|
65
|
+
end.sum([]),
|
66
|
+
*evento.*('altContratual/infoContrato/filiacaoSindical').map.with_index(1) do |filiacao, seq|
|
67
|
+
[
|
68
|
+
["InfoVinculo_InfoContrato_FiliacaoSindical_#{seq}_CnpjSindicatoTrabalhador", filiacao['cnpjSindTrab']]
|
69
|
+
]
|
70
|
+
end.sum([]),
|
71
|
+
['InformacoesContrato_Remuneracao_ValorSalarioFixo', evento['altContratual/infoContrato/remuneracao/vrSalFx']]
|
72
|
+
# rubocop:enable Layout/LineLength
|
73
|
+
]
|
74
|
+
)
|
75
|
+
]
|
19
76
|
end
|
20
77
|
|
21
78
|
def cpf_do_trabalhador
|
22
|
-
@cpf_do_trabalhador ||= evento['
|
79
|
+
@cpf_do_trabalhador ||= evento['ideVinculo/cpfTrab']
|
23
80
|
end
|
24
81
|
|
25
82
|
def matricula_do_trabalhador
|
26
|
-
@matricula_do_trabalhador ||= evento['
|
83
|
+
@matricula_do_trabalhador ||= evento['ideVinculo/matricula']
|
27
84
|
end
|
28
85
|
|
29
86
|
def data_de_admissao
|
@@ -39,71 +96,11 @@ module Teodoro
|
|
39
96
|
end
|
40
97
|
|
41
98
|
def data_da_alteracao
|
42
|
-
evento['
|
43
|
-
end
|
44
|
-
|
45
|
-
def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
|
46
|
-
[
|
47
|
-
# rubocop:disable Layout/LineLength
|
48
|
-
['ESX_CPF', cpf_do_trabalhador],
|
49
|
-
['ESX_MATRICULA', matricula_do_trabalhador],
|
50
|
-
%w[ESX_SEMVINCULO 0],
|
51
|
-
['ESX_DATAADMISSAO', [data_de_admissao, :data]],
|
52
|
-
['ESX_DATAALTERACAO', [data_da_alteracao, :data]],
|
53
|
-
['cpfTrabalhador', cpf_do_trabalhador],
|
54
|
-
%w[nomeTrabalhador nomeTrabalhador],
|
55
|
-
['IdentificacaoVinculo_Cpf', cpf_do_trabalhador],
|
56
|
-
['IdentificacaoVinculo_Matricula', matricula_do_trabalhador],
|
57
|
-
['TipoInscricaoEmpregador', tipo_de_inscricao_do_empregador],
|
58
|
-
['AlteracaoContratual_DataAlteracao', [data_da_alteracao, :data]],
|
59
|
-
['AlteracaoContratual_DataEfeito', [evento['evtAltContratual/altContratual/dtEf'], :data]],
|
60
|
-
['AlteracaoContratual_DescricaoAlteracao', evento['evtAltContratual/altContratual/dscAlt']],
|
61
|
-
['IdentificacaoVinculo_Nis', evento['evtAltContratual/ideVinculo/nisTrab']],
|
62
|
-
['IndicadorRetificacao'],
|
63
|
-
['IdEventoXml', id_do_evento],
|
64
|
-
['NrReciboEventoOriginal', numero_do_recibo],
|
65
|
-
['UrlRetorno'],
|
66
|
-
['idContrato'],
|
67
|
-
['SomenteLeitura'],
|
68
|
-
['IdEvento'],
|
69
|
-
['RequestVerificationToken'],
|
70
|
-
['IdContratoAlterado'],
|
71
|
-
['regTrab'],
|
72
|
-
['InformacoesContrato_CodigoCategoria', categoria_do_trabalhador],
|
73
|
-
['VinculoAlteracao_TipoRegimePrevidenciario', evento['evtAltContratual/altContratual/vinculo/tpRegPrev']],
|
74
|
-
['dataAdmissao', [data_de_admissao, :data]],
|
75
|
-
['InformacoesCeletista_TipoRegimeJornada', evento['evtAltContratual/altContratual/infoRegimeTrab/infoCeletista/tpRegJor']],
|
76
|
-
['InformacoesCeletista_NaturezaAtividade', evento['evtAltContratual/altContratual/infoRegimeTrab/infoCeletista/natAtividade']],
|
77
|
-
['FiltroCargo'],
|
78
|
-
['FiltroFuncao'],
|
79
|
-
['HorarioTela_Dia'],
|
80
|
-
['dataNomeacao'],
|
81
|
-
['DescricaoProcEmi', processo_de_emissao_do_evento],
|
82
|
-
['VerProc', recibo['retornoEvento/processamento/versaoAppProcessamento']],
|
83
|
-
['FiltroEstabelecimentoLocalTrabalho'],
|
84
|
-
['NomeEstabelecimentoLocalTrabalho'],
|
85
|
-
['CodigoCBO'],
|
86
|
-
['InformacoesContrato_Remuneracao_UnidadeSalarioFixo', evento['evtAltContratual/altContratual/infoContrato/remuneracao/undSalFixo']],
|
87
|
-
['InformacoesContrato_TipoContrato', evento['evtAltContratual/altContratual/infoContrato/duracao/tpContr']],
|
88
|
-
['CodigoCNAE'],
|
89
|
-
*evento.*('evtAltContratual/altContratual/infoContrato/horContratual/horario').map.with_index(1) do |horario, seq|
|
90
|
-
[
|
91
|
-
["Horarios_#{seq}_CodigoHorarioContratual", horario['codHorContrat']],
|
92
|
-
["Horarios_#{seq}_Dia", horario['dia']]
|
93
|
-
]
|
94
|
-
end.sum([]),
|
95
|
-
*evento.*('evtAltContratual/altContratual/infoContrato/filiacaoSindical').map.with_index(1) do |filiacao, seq|
|
96
|
-
[
|
97
|
-
["InfoVinculo_InfoContrato_FiliacaoSindical_#{seq}_CnpjSindicatoTrabalhador", filiacao['cnpjSindTrab']]
|
98
|
-
]
|
99
|
-
end.sum([]),
|
100
|
-
['InformacoesContrato_Remuneracao_ValorSalarioFixo', evento['evtAltContratual/altContratual/infoContrato/remuneracao/vrSalFx']]
|
101
|
-
# rubocop:enable Layout/LineLength
|
102
|
-
]
|
99
|
+
evento['altContratual/dtAlteracao']
|
103
100
|
end
|
104
101
|
|
105
102
|
def categoria_do_trabalhador
|
106
|
-
@categoria_do_trabalhador ||= evento['
|
103
|
+
@categoria_do_trabalhador ||= evento['altContratual/infoContrato/codCateg']
|
107
104
|
end
|
108
105
|
end
|
109
106
|
end
|