teodoro 0.7.0 → 0.11.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.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/lib/teodoro.rb +8 -2
  3. data/lib/teodoro/arquivo_data.rb +81 -0
  4. data/lib/teodoro/arquivo_de_evento.rb +14 -2
  5. data/lib/teodoro/arquivo_de_evento_de_tabela.rb +32 -14
  6. data/lib/teodoro/arquivo_de_evento_nao_periodico.rb +36 -13
  7. data/lib/teodoro/arquivo_de_origem.rb +7 -7
  8. data/lib/teodoro/arquivo_xml.rb +29 -22
  9. data/lib/teodoro/console.rb +3 -1
  10. data/lib/teodoro/empresa.rb +15 -17
  11. data/lib/teodoro/leiaute/arquivo_s1000.rb +24 -30
  12. data/lib/teodoro/leiaute/arquivo_s1005.rb +14 -20
  13. data/lib/teodoro/leiaute/arquivo_s1010.rb +11 -15
  14. data/lib/teodoro/leiaute/arquivo_s1020.rb +8 -12
  15. data/lib/teodoro/leiaute/arquivo_s1030.rb +6 -10
  16. data/lib/teodoro/leiaute/arquivo_s1040.rb +5 -9
  17. data/lib/teodoro/leiaute/arquivo_s1050.rb +8 -14
  18. data/lib/teodoro/leiaute/arquivo_s1070.rb +12 -16
  19. data/lib/teodoro/leiaute/arquivo_s2190.rb +15 -14
  20. data/lib/teodoro/leiaute/arquivo_s2200.rb +152 -156
  21. data/lib/teodoro/leiaute/arquivo_s2205.rb +132 -166
  22. data/lib/teodoro/leiaute/arquivo_s2206.rb +72 -75
  23. data/lib/teodoro/leiaute/arquivo_s2230.rb +87 -90
  24. data/lib/teodoro/leiaute/arquivo_s2250.rb +36 -40
  25. data/lib/teodoro/leiaute/arquivo_s2299.rb +171 -169
  26. data/lib/teodoro/leiaute/arquivo_s2300.rb +127 -131
  27. data/lib/teodoro/leiaute/arquivo_s2306.rb +148 -147
  28. data/lib/teodoro/leiaute/arquivo_s2399.rb +123 -127
  29. data/lib/teodoro/leiaute/arquivo_s3000.rb +4 -8
  30. data/lib/teodoro/xml.rb +2 -2
  31. metadata +3 -5
  32. data/lib/teodoro/arquivo_de_evento_criador_de_arquivo_data.rb +0 -52
  33. data/lib/teodoro/arquivo_de_evento_processador_de_arquivo_data.rb +0 -30
  34. data/lib/teodoro/arquivo_de_evento_retificavel.rb +0 -23
@@ -3,14 +3,15 @@ module Teodoro
3
3
  class ArquivoS2299 # rubocop:disable Metrics/ClassLength
4
4
  include ArquivoDeEventoNaoPeriodico
5
5
 
6
- def processar
6
+ private
7
+
8
+ def criar_arquivos_data
7
9
  super
8
10
 
9
11
  registrar_desligamento
12
+ avisar_que_tem_mais_de_um_demonstrativo if mais_de_um_demontrativo?
10
13
  end
11
14
 
12
- private
13
-
14
15
  def registrar_desligamento
15
16
  contrato_de_emprego.data_de_desligamento = data_de_desligamento
16
17
  end
@@ -24,188 +25,189 @@ module Teodoro
24
25
  end
25
26
 
26
27
  def data_de_desligamento
27
- @data_de_desligamento ||= evento['evtDeslig/infoDeslig/dtDeslig']
28
+ @data_de_desligamento ||= evento['infoDeslig/dtDeslig']
28
29
  end
29
30
 
30
- def noh_principal_do_evento
31
- 'evtDeslig'
31
+ def avisar_que_tem_mais_de_um_demonstrativo
32
+ puts "\n #{Rainbow('mais de um demonstrativo (considerado apenas o primeiro)').yellow}"
32
33
  end
33
34
 
34
- def nome_do_arquivo_data
35
- @nome_do_arquivo_data ||=
36
- "TRA[#{cpf_do_trabalhador}][EPG_#{matricula_do_trabalhador}_#{data_de_admissao.delete('-')}]-GER"
35
+ def mais_de_um_demontrativo?
36
+ identificadores_de_demonstrativo.size > 1
37
37
  end
38
38
 
39
- def cpf_do_trabalhador
40
- @cpf_do_trabalhador ||= evento['evtDeslig/ideVinculo/cpfTrab']
39
+ def matricula_do_trabalhador
40
+ @matricula_do_trabalhador ||= evento['ideVinculo/matricula']
41
41
  end
42
42
 
43
- def matricula_do_trabalhador
44
- @matricula_do_trabalhador ||= evento['evtDeslig/ideVinculo/matricula']
43
+ def dados_dos_arquivos_data # rubocop:disable Metrics/MethodLength
44
+ [
45
+ Obj.new(
46
+ nome: "TRA[#{cpf_do_trabalhador}][EPG_#{matricula_do_trabalhador}_#{data_de_admissao.delete('-')}]-GER",
47
+ itens_do_conteudo: [
48
+ # rubocop:disable Layout/LineLength
49
+ ['ESX_CPF', cpf_do_trabalhador],
50
+ ['ESX_MATRICULA', matricula_do_trabalhador],
51
+ %w[ESX_SEMVINCULO 0],
52
+ ['ESX_DATAADMISSAO'],
53
+ ['ESX_DATADESLIGAMENTO', data_de_desligamento, :data],
54
+ ['ESX_INFOWEB_RESCISAO_IDEDMDEV', identificador_do_demonstrativo],
55
+ ['ESX_INFOWEB_RESCISAO_RECIBO', numero_do_recibo],
56
+ ['ESX_INFOWEB_RESCISAO_MOTIVO', evento['infoDeslig/mtvDeslig']],
57
+ ['ESX_INFOWEB_RESCISAO_MOTIVO_TEXT'],
58
+ ['IdEventoXml'],
59
+ ['NrReciboEventoOriginal'],
60
+ ['EventoAdmissao_TipoEventoEnviado'],
61
+ ['TipoInscricaoEmpregador', tipo_de_inscricao_do_empregador],
62
+ ['RequestVerificationToken'],
63
+ ['SomenteLeitura'],
64
+ ['VisualizarDadosCadastrais'],
65
+ ['UrlRetorno'],
66
+ ['visualizar'],
67
+ ['EhVisualizacao'],
68
+ ['idContrato'],
69
+ ['IdEvento'],
70
+ ['FiltroCargo'],
71
+ ['FiltroFuncao'],
72
+ ['FiltroHorario'],
73
+ ['HorarioTela_CodigoHorarioContratual'],
74
+ ['DescricaoProcEmi', processo_de_emissao_do_evento],
75
+ ['VerProc', versao_do_aplicativo_de_processamento_do_evento],
76
+ ['cpfTrabalhador'],
77
+ ['nomeTrabalhador'],
78
+ ['TipoRegistroAdmissao'],
79
+ ['HorarioTela_Dia'],
80
+ ['NomeEstabelecimentoLocalTrabalho'],
81
+ ['EventoAdmissao_InfoTrabalhador_Cpf'],
82
+ ['EventoAdmissao_InfoTrabalhador_Nome'],
83
+ ['EventoAdmissao_InfoTrabalhador_Nis'],
84
+ ['EventoAdmissao_InfoTrabalhador_Sexo'],
85
+ ['EventoAdmissao_InfoTrabalhador_Sexo_TEXT'],
86
+ ['EventoAdmissao_InfoTrabalhador_RacaCor'],
87
+ ['EventoAdmissao_InfoTrabalhador_RacaCor_TEXT'],
88
+ ['EventoAdmissao_InfoTrabalhador_EstadoCivil'],
89
+ ['EventoAdmissao_InfoTrabalhador_EstadoCivil_TEXT'],
90
+ ['EventoAdmissao_InfoTrabalhador_GrauInstrucao'],
91
+ ['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
92
+ ['EventoAdmissao_InfoTrabalhador_PrimeiroEmprego'],
93
+ ['EventoAdmissao_InfoTrabalhador_NomeSocial'],
94
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio'],
95
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT'],
96
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento'],
97
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae'],
98
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai'],
99
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento'],
100
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
101
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade'],
102
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
103
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf'],
104
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
105
+ ['EventoAdmissao_EnderecoResidencialBR_Bairro'],
106
+ ['EventoAdmissao_EnderecoResidencialBR_Cep'],
107
+ ['EventoAdmissao_EnderecoResidencialBR_CodigoMunicipio'],
108
+ ['EventoAdmissao_EnderecoResidencialBR_CodigoMunicipio_TEXT'],
109
+ ['EventoAdmissao_EnderecoResidencialBR_Complemento'],
110
+ ['EventoAdmissao_EnderecoResidencialBR_DescricaoLogradouro'],
111
+ ['EventoAdmissao_EnderecoResidencialBR_NumeroLogradouro'],
112
+ ['SemNumeroLogradouroEnderecoBR'],
113
+ ['EventoAdmissao_EnderecoResidencialBR_TipoLogradouro'],
114
+ ['EventoAdmissao_EnderecoResidencialBR_TipoLogradouro_TEXT'],
115
+ ['EventoAdmissao_EnderecoResidencialBR_Uf'],
116
+ ['EventoAdmissao_EnderecoResidencialBR_Uf_TEXT'],
117
+ ['ResideExterior'],
118
+ ['SemNumeroLogradouroEnderecoEX'],
119
+ ['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro'],
120
+ ['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_DataChegada'],
121
+ ['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_FilhosBrasileiros'],
122
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh'],
123
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh_TEXT'],
124
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataExpedicao'],
125
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataPrimeiraHabilitacao'],
126
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataValidade'],
127
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_NumeroCnh'],
128
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh'],
129
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh_TEXT'],
130
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_NumeroCtps'],
131
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_SerieCtps'],
132
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps'],
133
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps_TEXT'],
134
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Oc_DataExpedicao'],
135
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Oc_NumeroOc'],
136
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Oc_OrgaoEmissor'],
137
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Rg_DataExpedicao'],
138
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Rg_NumeroRg'],
139
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Rg_OrgaoEmissor'],
140
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Ric_DataExpedicao'],
141
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Ric_NumeroRic'],
142
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Ric_OrgaoEmissor'],
143
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Rne_DataExpedicao'],
144
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Rne_NumerorRne'],
145
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Rne_OrgaoEmissor'],
146
+ ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaAuditiva'],
147
+ ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaFisica'],
148
+ ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaIntelectual'],
149
+ ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaMental'],
150
+ ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaVisual'],
151
+ ['EventoAdmissao_InfoTrabalhador_Deficiencia_InfoCota'],
152
+ ['EventoAdmissao_InfoTrabalhador_Deficiencia_ReabilitadoOuReadaptado'],
153
+ ['EventoAdmissao_Contato_TelefonePrincipal'],
154
+ ['EventoAdmissao_Contato_EmailPrincipal'],
155
+ ['EventoAdmissao_Contato_TelefoneAlternativo'],
156
+ ['EventoAdmissao_Contato_EmailAlternativo'],
157
+ ['CodigoCBO'],
158
+ ['CodigoCNAE'],
159
+ ['InfoVinculo_Matricula'],
160
+ ['InfoVinculo_TipoRegimeTrabalhista'],
161
+ ['InfoVinculo_TipoRegimePrevidenciario'],
162
+ ['InfoVinculo_InfoContrato_CodigoCategoria', categoria_do_trabalhador],
163
+ ['InfoVinculo_InfoContrato_CodigoCargo'],
164
+ ['InfoVinculo_InfoContrato_CodigoFuncao'],
165
+ ['InfoVinculo_InfoContrato_Duracao_TipoContrato'],
166
+ ['InfoVinculo_InfoContrato_Duracao_DataTermino'],
167
+ ['InfoVinculo_DataInicioAfastamento'],
168
+ ['InfoVinculo_CodigoMotivoAfastamento'],
169
+ ['InfoVinculo_InfoContrato_Remuneracao_UnidadeSalarioFixo'],
170
+ ['InfoVinculo_InfoContrato_Remuneracao_ValorSalarioFixo'],
171
+ ['InfoVinculo_InfoContrato_Remuneracao_DescricaoSalarioVariavel'],
172
+ ['InfoVinculo_InfoContrato_HorarioContratual_DescricaoTipoJornada'],
173
+ ['InfoVinculo_InfoContrato_HorarioContratual_JornadaTempoParcial'],
174
+ ['InfoVinculo_InfoContrato_HorarioContratual_QuantidadedHorasSemanal'],
175
+ ['InfoVinculo_InfoContrato_HorarioContratual_TipoJornada'],
176
+ ['InfoVinculo_SucessaoVinculo_CnpjEmpregadorAnterior'],
177
+ ['InfoVinculo_SucessaoVinculo_MatriculaAnterior'],
178
+ ['InfoVinculo_SucessaoVinculo_Observacao'],
179
+ ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_CnpjSindicatoCategoriaProfissional'],
180
+ ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_DataAdmissao', data_de_admissao, :data],
181
+ ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_DataBase'],
182
+ ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_IndicativoAdmissao'],
183
+ ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_InfoFgts_DataOpcaoFGTS'],
184
+ ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_InfoFgts_OptanteFGTS'],
185
+ ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_NaturezaAtividade'],
186
+ ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TipoAdmissao'],
187
+ ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TipoRegimeJornada'],
188
+ ['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_DescricaoComplementar'],
189
+ ['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_NumeroInscricao'],
190
+ ['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_TipoInscricao']
191
+ # rubocop:enable Layout/LineLength
192
+ ]
193
+ )
194
+ ]
195
+ end
196
+
197
+ def cpf_do_trabalhador
198
+ @cpf_do_trabalhador ||= evento['ideVinculo/cpfTrab']
45
199
  end
46
200
 
47
201
  def data_de_admissao
48
202
  contrato_de_emprego.data_de_admissao
49
203
  end
50
204
 
51
- def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/MethodLength
52
- [
53
- # rubocop:disable Layout/LineLength
54
- ['ESX_CPF', cpf_do_trabalhador],
55
- ['ESX_MATRICULA', matricula_do_trabalhador],
56
- %w[ESX_SEMVINCULO 0],
57
- ['ESX_DATAADMISSAO'],
58
- ['ESX_DATADESLIGAMENTO', [data_de_desligamento, :data]],
59
- ['ESX_INFOWEB_RESCISAO_IDEDMDEV', identificador_do_demonstrativo],
60
- ['ESX_INFOWEB_RESCISAO_RECIBO', numero_do_recibo],
61
- ['ESX_INFOWEB_RESCISAO_MOTIVO', evento['evtDeslig/infoDeslig/mtvDeslig']],
62
- ['ESX_INFOWEB_RESCISAO_MOTIVO_TEXT'],
63
- ['IdEventoXml'],
64
- ['NrReciboEventoOriginal'],
65
- ['EventoAdmissao_TipoEventoEnviado'],
66
- ['TipoInscricaoEmpregador', tipo_de_inscricao_do_empregador],
67
- ['RequestVerificationToken'],
68
- ['SomenteLeitura'],
69
- ['VisualizarDadosCadastrais'],
70
- ['UrlRetorno'],
71
- ['visualizar'],
72
- ['EhVisualizacao'],
73
- ['idContrato'],
74
- ['IdEvento'],
75
- ['FiltroCargo'],
76
- ['FiltroFuncao'],
77
- ['FiltroHorario'],
78
- ['HorarioTela_CodigoHorarioContratual'],
79
- ['DescricaoProcEmi', processo_de_emissao_do_evento],
80
- ['VerProc', versao_do_aplicativo_de_processamento_do_evento],
81
- ['cpfTrabalhador'],
82
- ['nomeTrabalhador'],
83
- ['TipoRegistroAdmissao'],
84
- ['HorarioTela_Dia'],
85
- ['NomeEstabelecimentoLocalTrabalho'],
86
- ['EventoAdmissao_InfoTrabalhador_Cpf'],
87
- ['EventoAdmissao_InfoTrabalhador_Nome'],
88
- ['EventoAdmissao_InfoTrabalhador_Nis'],
89
- ['EventoAdmissao_InfoTrabalhador_Sexo'],
90
- ['EventoAdmissao_InfoTrabalhador_Sexo_TEXT'],
91
- ['EventoAdmissao_InfoTrabalhador_RacaCor'],
92
- ['EventoAdmissao_InfoTrabalhador_RacaCor_TEXT'],
93
- ['EventoAdmissao_InfoTrabalhador_EstadoCivil'],
94
- ['EventoAdmissao_InfoTrabalhador_EstadoCivil_TEXT'],
95
- ['EventoAdmissao_InfoTrabalhador_GrauInstrucao'],
96
- ['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
97
- ['EventoAdmissao_InfoTrabalhador_PrimeiroEmprego'],
98
- ['EventoAdmissao_InfoTrabalhador_NomeSocial'],
99
- ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio'],
100
- ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT'],
101
- ['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento'],
102
- ['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae'],
103
- ['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai'],
104
- ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento'],
105
- ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
106
- ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade'],
107
- ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
108
- ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf'],
109
- ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
110
- ['EventoAdmissao_EnderecoResidencialBR_Bairro'],
111
- ['EventoAdmissao_EnderecoResidencialBR_Cep'],
112
- ['EventoAdmissao_EnderecoResidencialBR_CodigoMunicipio'],
113
- ['EventoAdmissao_EnderecoResidencialBR_CodigoMunicipio_TEXT'],
114
- ['EventoAdmissao_EnderecoResidencialBR_Complemento'],
115
- ['EventoAdmissao_EnderecoResidencialBR_DescricaoLogradouro'],
116
- ['EventoAdmissao_EnderecoResidencialBR_NumeroLogradouro'],
117
- ['SemNumeroLogradouroEnderecoBR'],
118
- ['EventoAdmissao_EnderecoResidencialBR_TipoLogradouro'],
119
- ['EventoAdmissao_EnderecoResidencialBR_TipoLogradouro_TEXT'],
120
- ['EventoAdmissao_EnderecoResidencialBR_Uf'],
121
- ['EventoAdmissao_EnderecoResidencialBR_Uf_TEXT'],
122
- ['ResideExterior'],
123
- ['SemNumeroLogradouroEnderecoEX'],
124
- ['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro'],
125
- ['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_DataChegada'],
126
- ['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_FilhosBrasileiros'],
127
- ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh'],
128
- ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh_TEXT'],
129
- ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataExpedicao'],
130
- ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataPrimeiraHabilitacao'],
131
- ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataValidade'],
132
- ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_NumeroCnh'],
133
- ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh'],
134
- ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh_TEXT'],
135
- ['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_NumeroCtps'],
136
- ['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_SerieCtps'],
137
- ['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps'],
138
- ['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps_TEXT'],
139
- ['EventoAdmissao_InfoTrabalhador_Documentos_Oc_DataExpedicao'],
140
- ['EventoAdmissao_InfoTrabalhador_Documentos_Oc_NumeroOc'],
141
- ['EventoAdmissao_InfoTrabalhador_Documentos_Oc_OrgaoEmissor'],
142
- ['EventoAdmissao_InfoTrabalhador_Documentos_Rg_DataExpedicao'],
143
- ['EventoAdmissao_InfoTrabalhador_Documentos_Rg_NumeroRg'],
144
- ['EventoAdmissao_InfoTrabalhador_Documentos_Rg_OrgaoEmissor'],
145
- ['EventoAdmissao_InfoTrabalhador_Documentos_Ric_DataExpedicao'],
146
- ['EventoAdmissao_InfoTrabalhador_Documentos_Ric_NumeroRic'],
147
- ['EventoAdmissao_InfoTrabalhador_Documentos_Ric_OrgaoEmissor'],
148
- ['EventoAdmissao_InfoTrabalhador_Documentos_Rne_DataExpedicao'],
149
- ['EventoAdmissao_InfoTrabalhador_Documentos_Rne_NumerorRne'],
150
- ['EventoAdmissao_InfoTrabalhador_Documentos_Rne_OrgaoEmissor'],
151
- ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaAuditiva'],
152
- ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaFisica'],
153
- ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaIntelectual'],
154
- ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaMental'],
155
- ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaVisual'],
156
- ['EventoAdmissao_InfoTrabalhador_Deficiencia_InfoCota'],
157
- ['EventoAdmissao_InfoTrabalhador_Deficiencia_ReabilitadoOuReadaptado'],
158
- ['EventoAdmissao_Contato_TelefonePrincipal'],
159
- ['EventoAdmissao_Contato_EmailPrincipal'],
160
- ['EventoAdmissao_Contato_TelefoneAlternativo'],
161
- ['EventoAdmissao_Contato_EmailAlternativo'],
162
- ['CodigoCBO'],
163
- ['CodigoCNAE'],
164
- ['InfoVinculo_Matricula'],
165
- ['InfoVinculo_TipoRegimeTrabalhista'],
166
- ['InfoVinculo_TipoRegimePrevidenciario'],
167
- ['InfoVinculo_InfoContrato_CodigoCategoria', categoria_do_trabalhador],
168
- ['InfoVinculo_InfoContrato_CodigoCargo'],
169
- ['InfoVinculo_InfoContrato_CodigoFuncao'],
170
- ['InfoVinculo_InfoContrato_Duracao_TipoContrato'],
171
- ['InfoVinculo_InfoContrato_Duracao_DataTermino'],
172
- ['InfoVinculo_DataInicioAfastamento'],
173
- ['InfoVinculo_CodigoMotivoAfastamento'],
174
- ['InfoVinculo_InfoContrato_Remuneracao_UnidadeSalarioFixo'],
175
- ['InfoVinculo_InfoContrato_Remuneracao_ValorSalarioFixo'],
176
- ['InfoVinculo_InfoContrato_Remuneracao_DescricaoSalarioVariavel'],
177
- ['InfoVinculo_InfoContrato_HorarioContratual_DescricaoTipoJornada'],
178
- ['InfoVinculo_InfoContrato_HorarioContratual_JornadaTempoParcial'],
179
- ['InfoVinculo_InfoContrato_HorarioContratual_QuantidadedHorasSemanal'],
180
- ['InfoVinculo_InfoContrato_HorarioContratual_TipoJornada'],
181
- ['InfoVinculo_SucessaoVinculo_CnpjEmpregadorAnterior'],
182
- ['InfoVinculo_SucessaoVinculo_MatriculaAnterior'],
183
- ['InfoVinculo_SucessaoVinculo_Observacao'],
184
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_CnpjSindicatoCategoriaProfissional'],
185
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_DataAdmissao', [data_de_admissao, :data]],
186
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_DataBase'],
187
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_IndicativoAdmissao'],
188
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_InfoFgts_DataOpcaoFGTS'],
189
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_InfoFgts_OptanteFGTS'],
190
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_NaturezaAtividade'],
191
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TipoAdmissao'],
192
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TipoRegimeJornada'],
193
- ['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_DescricaoComplementar'],
194
- ['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_NumeroInscricao'],
195
- ['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_TipoInscricao']
196
- # rubocop:enable Layout/LineLength
197
- ]
205
+ def identificador_do_demonstrativo
206
+ @identificador_do_demonstrativo ||= identificadores_de_demonstrativo.first
198
207
  end
199
208
 
200
- def identificador_do_demonstrativo
201
- evento['evtDeslig/infoDeslig/verbasResc']&.then do |verbas|
202
- verbas.*('dmDev').then do |demonstrativos|
203
- puts "\n #{Rainbow('mais de um demonstrativo (considerado apenas o primeiro)').yellow}" if
204
- demonstrativos.size > 1 # yellow
205
-
206
- demonstrativos[0]['ideDmDev']
207
- end
208
- end
209
+ def identificadores_de_demonstrativo
210
+ @identificadores_de_demonstrativo ||= evento.*('infoDeslig/verbasResc/dmDev').map { _1['ideDmDev'] }
209
211
  end
210
212
 
211
213
  def categoria_do_trabalhador
@@ -5,7 +5,7 @@ module Teodoro
5
5
 
6
6
  private
7
7
 
8
- def criar_arquivo_data
8
+ def criar_arquivos_data
9
9
  super
10
10
 
11
11
  registrar_inicio_de_contrato
@@ -28,152 +28,148 @@ module Teodoro
28
28
  end
29
29
 
30
30
  def cpf_do_trabalhador
31
- @cpf_do_trabalhador ||= evento['evtTSVInicio/trabalhador/cpfTrab']
31
+ @cpf_do_trabalhador ||= evento['trabalhador/cpfTrab']
32
32
  end
33
33
 
34
34
  def categoria_do_trabalhador
35
- @categoria_do_trabalhador ||= evento['evtTSVInicio/infoTSVInicio/codCateg']
35
+ @categoria_do_trabalhador ||= evento['infoTSVInicio/codCateg']
36
36
  end
37
37
 
38
38
  def data_de_inicio
39
- @data_de_inicio ||= evento['evtTSVInicio/infoTSVInicio/dtInicio']
39
+ @data_de_inicio ||= evento['infoTSVInicio/dtInicio']
40
40
  end
41
41
 
42
42
  def afastamento
43
- evento['evtTSVInicio/infoTSVInicio/afastamento']&.then { Obj.new(
43
+ evento['infoTSVInicio/afastamento']&.then { Obj.new(
44
44
  data_de_inicio: _1['dtIniAfast'],
45
45
  codigo_do_motivo: _1['codMotAfast']
46
46
  ) }
47
47
  end
48
48
 
49
- def noh_principal_do_evento
50
- 'evtTSVInicio'
51
- end
52
-
53
- def nome_do_arquivo_data
54
- @nome_do_arquivo_data ||=
55
- "TRA[#{cpf_do_trabalhador}][TSV_#{categoria_do_trabalhador}_#{data_de_inicio.delete('-')}]-ADM"
56
- end
57
-
58
- def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
49
+ def dados_dos_arquivos_data # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
59
50
  [
60
- # rubocop:disable Layout/LineLength
61
- ['ESX_CPF', cpf_do_trabalhador],
62
- ['ESX_CATEGORIA', categoria_do_trabalhador],
63
- %w[ESX_SEMVINCULO 1],
64
- ['ESX_DATAADMISSAO', [data_de_inicio, :data]],
65
- ['IdEventoXml'],
66
- ['NrReciboEventoOriginal'],
67
- ['EventoAdmissao_NrRecibo'],
68
- ['EventoAdmissao_InformacoesInicio_IndicativoCadastramentoInicial', evento['evtTSVInicio/infoTSVInicio/cadIni']],
69
- ['EventoAdmissao_InformacoesInicio_DataInicio', [data_de_inicio, :data]],
70
- ['SomenteLeitura'],
71
- ['UrlRetorno'],
72
- ['IdEvento'],
73
- ['FiltroCargo'],
74
- ['FiltroFuncao'],
75
- ['IdContratoReferenciado'],
76
- ['autocomplete_EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento'],
77
- ['autocomplete_EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade'],
78
- ['DescricaoProcEmi'],
79
- ['VerProc', recibo['retornoEvento/processamento/versaoAppProcessamento']],
80
- ['EventoAdmissao_InfoTrabalhador_Cpf', cpf_do_trabalhador],
81
- ['EventoAdmissao_InfoTrabalhador_Nome', evento['evtTSVInicio/trabalhador/nmTrab']],
82
- ['EventoAdmissao_InfoTrabalhador_Nis', evento['evtTSVInicio/trabalhador/nisTrab']],
83
- ['EventoAdmissao_InfoTrabalhador_Sexo', evento['evtTSVInicio/trabalhador/sexo']],
84
- ['EventoAdmissao_InfoTrabalhador_Sexo_TEXT'],
85
- ['EventoAdmissao_InfoTrabalhador_RacaCor', evento['evtTSVInicio/trabalhador/racaCor']],
86
- ['EventoAdmissao_InfoTrabalhador_RacaCor_TEXT'],
87
- ['EventoAdmissao_InfoTrabalhador_EstadoCivil', evento['evtTSVInicio/trabalhador/estCiv']],
88
- ['EventoAdmissao_InfoTrabalhador_EstadoCivil_TEXT'],
89
- ['EventoAdmissao_InfoTrabalhador_GrauInstrucao', evento['evtTSVInicio/trabalhador/grauInstr']],
90
- ['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
91
- ['EventoAdmissao_InfoTrabalhador_NomeSocial', evento['evtTSVInicio/trabalhador/nmSoc']],
92
- ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', evento['evtTSVInicio/trabalhador/nascimento/codMunic']],
93
- ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT'],
94
- ['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', [evento['evtTSVInicio/trabalhador/nascimento/dtNascto'], :data]],
95
- ['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', evento['evtTSVInicio/trabalhador/nascimento/nmMae']],
96
- ['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', evento['evtTSVInicio/trabalhador/nascimento/nmPai']],
97
- ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', evento['evtTSVInicio/trabalhador/nascimento/paisNascto']],
98
- ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
99
- ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade', evento['evtTSVInicio/trabalhador/nascimento/paisNac']],
100
- ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
101
- ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', evento['evtTSVInicio/trabalhador/nascimento/uf']],
102
- ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
103
- ['SemNumeroLogradouroEnderecoBR'],
104
- ['ResideExterior'],
105
- ['SemNumeroLogradouroEnderecoEX'],
106
- ['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro', evento['evtTSVInicio/trabalhador/trabEstrangeiro/casadoBr']],
107
- ['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao', evento['evtTSVInicio/trabalhador/trabEstrangeiro/classTrabEstrang']],
108
- ['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao_TEXT'],
109
- ['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_DataChegada', [evento['evtTSVInicio/trabalhador/trabEstrangeiro/dtChegada'], :data]],
110
- ['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_FilhosBrasileiros', evento['evtTSVInicio/trabalhador/trabEstrangeiro/filhosBr']],
111
- ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh', evento['evtTSVInicio/trabalhador/documentos/CNH/categoriaCnh']],
112
- ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh_TEXT'],
113
- ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataExpedicao', [evento['evtTSVInicio/trabalhador/documentos/CNH/dtExped'], :data]],
114
- ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataPrimeiraHabilitacao', [evento['evtTSVInicio/trabalhador/documentos/CNH/dtPriHab'], :data]],
115
- ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataValidade', [evento['evtTSVInicio/trabalhador/documentos/CNH/dtValid'], :data]],
116
- ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_NumeroCnh', evento['evtTSVInicio/trabalhador/documentos/CNH/nrRegCnh']],
117
- ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh', evento['evtTSVInicio/trabalhador/documentos/CNH/ufCnh']],
118
- ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh_TEXT'],
119
- ['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_NumeroCtps', evento['evtTSVInicio/trabalhador/documentos/CTPS/nrCtps']],
120
- ['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_SerieCtps', evento['evtTSVInicio/trabalhador/documentos/CTPS/serieCtps']],
121
- ['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps', evento['evtTSVInicio/trabalhador/documentos/CTPS/ufCtps']],
122
- ['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps_TEXT'],
123
- ['EventoAdmissao_InfoTrabalhador_Documentos_Oc_DataExpedicao', [evento['evtTSVInicio/trabalhador/documentos/OC/dtExped'], :data]],
124
- ['EventoAdmissao_InfoTrabalhador_Documentos_Oc_NumeroOc', evento['evtTSVInicio/trabalhador/documentos/OC/nrOc']],
125
- ['EventoAdmissao_InfoTrabalhador_Documentos_Oc_OrgaoEmissor', evento['evtTSVInicio/trabalhador/documentos/OC/orgaoEmissor']],
126
- ['EventoAdmissao_InfoTrabalhador_Documentos_Rg_DataExpedicao', [evento['evtTSVInicio/trabalhador/documentos/RG/dtExped'], :data]],
127
- ['EventoAdmissao_InfoTrabalhador_Documentos_Rg_NumeroRg', evento['evtTSVInicio/trabalhador/documentos/RG/nrRg']],
128
- ['EventoAdmissao_InfoTrabalhador_Documentos_Rg_OrgaoEmissor', evento['evtTSVInicio/trabalhador/documentos/RG/orgaoEmissor']],
129
- ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaAuditiva', evento['evtTSVInicio/trabalhador/infoDeficiencia/defAuditiva']],
130
- ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaFisica', evento['evtTSVInicio/trabalhador/infoDeficiencia/defFisica']],
131
- ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaIntelectual', evento['evtTSVInicio/trabalhador/infoDeficiencia/defIntelectual']],
132
- ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaMental', evento['evtTSVInicio/trabalhador/infoDeficiencia/defMental']],
133
- ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaVisual', evento['evtTSVInicio/trabalhador/infoDeficiencia/defVisual']],
134
- ['EventoAdmissao_InfoTrabalhador_Deficiencia_ReabilitadoOuReadaptado', evento['evtTSVInicio/trabalhador/infoDeficiencia/reabReadap']],
135
- *evento.*('evtTSVInicio/trabalhador/dependente').map.with_index(1) do |dependente, seq|
136
- [
137
- ["EventoAdmissao_Dependente_#{seq}_CPFDependente", dependente['cpfDep']],
138
- ["EventoAdmissao_Dependente_#{seq}_DataNascimento", [dependente['dtNascto'], :data]],
139
- ["EventoAdmissao_Dependente_#{seq}_DataNascimentoFormatada"],
140
- ["EventoAdmissao_Dependente_#{seq}_DependenteIRRF", dependente['depIRRF']],
141
- ["EventoAdmissao_Dependente_#{seq}_DependenteSF", dependente['depSF']],
142
- ["EventoAdmissao_Dependente_#{seq}_IncapacidadeDependente", dependente['incTrab']],
143
- ["EventoAdmissao_Dependente_#{seq}_NomeDependente", dependente['nmDep']],
144
- ["EventoAdmissao_Dependente_#{seq}_TipoDependente", dependente['tpDep']]
51
+ Obj.new(
52
+ nome: "TRA[#{cpf_do_trabalhador}][TSV_#{categoria_do_trabalhador}_#{data_de_inicio.delete('-')}]-ADM",
53
+ itens_do_conteudo: [
54
+ # rubocop:disable Layout/LineLength
55
+ ['ESX_CPF', cpf_do_trabalhador],
56
+ ['ESX_CATEGORIA', categoria_do_trabalhador],
57
+ %w[ESX_SEMVINCULO 1],
58
+ ['ESX_DATAADMISSAO', data_de_inicio, :data],
59
+ ['IdEventoXml'],
60
+ ['NrReciboEventoOriginal'],
61
+ ['EventoAdmissao_NrRecibo'],
62
+ ['EventoAdmissao_InformacoesInicio_IndicativoCadastramentoInicial', evento['infoTSVInicio/cadIni']],
63
+ ['EventoAdmissao_InformacoesInicio_DataInicio', data_de_inicio, :data],
64
+ ['SomenteLeitura'],
65
+ ['UrlRetorno'],
66
+ ['IdEvento'],
67
+ ['FiltroCargo'],
68
+ ['FiltroFuncao'],
69
+ ['IdContratoReferenciado'],
70
+ ['autocomplete_EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento'],
71
+ ['autocomplete_EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade'],
72
+ ['DescricaoProcEmi'],
73
+ ['VerProc', recibo['processamento/versaoAppProcessamento']],
74
+ ['EventoAdmissao_InfoTrabalhador_Cpf', cpf_do_trabalhador],
75
+ ['EventoAdmissao_InfoTrabalhador_Nome', evento['trabalhador/nmTrab']],
76
+ ['EventoAdmissao_InfoTrabalhador_Nis', evento['trabalhador/nisTrab']],
77
+ ['EventoAdmissao_InfoTrabalhador_Sexo', evento['trabalhador/sexo']],
78
+ ['EventoAdmissao_InfoTrabalhador_Sexo_TEXT'],
79
+ ['EventoAdmissao_InfoTrabalhador_RacaCor', evento['trabalhador/racaCor']],
80
+ ['EventoAdmissao_InfoTrabalhador_RacaCor_TEXT'],
81
+ ['EventoAdmissao_InfoTrabalhador_EstadoCivil', evento['trabalhador/estCiv']],
82
+ ['EventoAdmissao_InfoTrabalhador_EstadoCivil_TEXT'],
83
+ ['EventoAdmissao_InfoTrabalhador_GrauInstrucao', evento['trabalhador/grauInstr']],
84
+ ['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
85
+ ['EventoAdmissao_InfoTrabalhador_NomeSocial', evento['trabalhador/nmSoc']],
86
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', evento['trabalhador/nascimento/codMunic']],
87
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT'],
88
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', evento['trabalhador/nascimento/dtNascto'], :data],
89
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', evento['trabalhador/nascimento/nmMae']],
90
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', evento['trabalhador/nascimento/nmPai']],
91
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', evento['trabalhador/nascimento/paisNascto']],
92
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
93
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade', evento['trabalhador/nascimento/paisNac']],
94
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
95
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', evento['trabalhador/nascimento/uf']],
96
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
97
+ ['SemNumeroLogradouroEnderecoBR'],
98
+ ['ResideExterior'],
99
+ ['SemNumeroLogradouroEnderecoEX'],
100
+ ['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro', evento['trabalhador/trabEstrangeiro/casadoBr']],
101
+ ['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao', evento['trabalhador/trabEstrangeiro/classTrabEstrang']],
102
+ ['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao_TEXT'],
103
+ ['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_DataChegada', evento['trabalhador/trabEstrangeiro/dtChegada'], :data],
104
+ ['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_FilhosBrasileiros', evento['trabalhador/trabEstrangeiro/filhosBr']],
105
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh', evento['trabalhador/documentos/CNH/categoriaCnh']],
106
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh_TEXT'],
107
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataExpedicao', evento['trabalhador/documentos/CNH/dtExped'], :data],
108
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataPrimeiraHabilitacao', evento['trabalhador/documentos/CNH/dtPriHab'], :data],
109
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataValidade', evento['trabalhador/documentos/CNH/dtValid'], :data],
110
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_NumeroCnh', evento['trabalhador/documentos/CNH/nrRegCnh']],
111
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh', evento['trabalhador/documentos/CNH/ufCnh']],
112
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh_TEXT'],
113
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_NumeroCtps', evento['trabalhador/documentos/CTPS/nrCtps']],
114
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_SerieCtps', evento['trabalhador/documentos/CTPS/serieCtps']],
115
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps', evento['trabalhador/documentos/CTPS/ufCtps']],
116
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps_TEXT'],
117
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Oc_DataExpedicao', evento['trabalhador/documentos/OC/dtExped'], :data],
118
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Oc_NumeroOc', evento['trabalhador/documentos/OC/nrOc']],
119
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Oc_OrgaoEmissor', evento['trabalhador/documentos/OC/orgaoEmissor']],
120
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Rg_DataExpedicao', evento['trabalhador/documentos/RG/dtExped'], :data],
121
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Rg_NumeroRg', evento['trabalhador/documentos/RG/nrRg']],
122
+ ['EventoAdmissao_InfoTrabalhador_Documentos_Rg_OrgaoEmissor', evento['trabalhador/documentos/RG/orgaoEmissor']],
123
+ ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaAuditiva', evento['trabalhador/infoDeficiencia/defAuditiva']],
124
+ ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaFisica', evento['trabalhador/infoDeficiencia/defFisica']],
125
+ ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaIntelectual', evento['trabalhador/infoDeficiencia/defIntelectual']],
126
+ ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaMental', evento['trabalhador/infoDeficiencia/defMental']],
127
+ ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaVisual', evento['trabalhador/infoDeficiencia/defVisual']],
128
+ ['EventoAdmissao_InfoTrabalhador_Deficiencia_ReabilitadoOuReadaptado', evento['trabalhador/infoDeficiencia/reabReadap']],
129
+ *evento.*('trabalhador/dependente').map.with_index(1) do |dependente, seq|
130
+ [
131
+ ["EventoAdmissao_Dependente_#{seq}_CPFDependente", dependente['cpfDep']],
132
+ ["EventoAdmissao_Dependente_#{seq}_DataNascimento", dependente['dtNascto'], :data],
133
+ ["EventoAdmissao_Dependente_#{seq}_DataNascimentoFormatada"],
134
+ ["EventoAdmissao_Dependente_#{seq}_DependenteIRRF", dependente['depIRRF']],
135
+ ["EventoAdmissao_Dependente_#{seq}_DependenteSF", dependente['depSF']],
136
+ ["EventoAdmissao_Dependente_#{seq}_IncapacidadeDependente", dependente['incTrab']],
137
+ ["EventoAdmissao_Dependente_#{seq}_NomeDependente", dependente['nmDep']],
138
+ ["EventoAdmissao_Dependente_#{seq}_TipoDependente", dependente['tpDep']]
139
+ ]
140
+ end.sum([]),
141
+ ['CodigoCBO'],
142
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_AreaAtuacao', evento['infoTSVInicio/infoComplementares/infoEstagiario/areaAtuacao']],
143
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_DtPrevistaTermino', evento['infoTSVInicio/infoComplementares/infoEstagiario/dtPrevTerm'], :data],
144
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_Bairro', evento['infoTSVInicio/infoComplementares/infoEstagiario/ageIntegracao/bairro']],
145
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_Cep', evento['infoTSVInicio/infoComplementares/infoEstagiario/ageIntegracao/cep']],
146
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_Cnpj', evento['infoTSVInicio/infoComplementares/infoEstagiario/ageIntegracao/cnpjAgntInteg']],
147
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_CodigoMunicipio', evento['infoTSVInicio/infoComplementares/infoEstagiario/ageIntegracao/codMunic']],
148
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_DescricaoLogradouro', evento['infoTSVInicio/infoComplementares/infoEstagiario/ageIntegracao/dscLograd']],
149
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_NumeroLogradouro', evento['infoTSVInicio/infoComplementares/infoEstagiario/ageIntegracao/nrLograd']],
150
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_RazaoSocial', evento['infoTSVInicio/infoComplementares/infoEstagiario/ageIntegracao/nmRazao']],
151
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_Uf', evento['infoTSVInicio/infoComplementares/infoEstagiario/ageIntegracao/uf']],
152
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_Bairro', evento['infoTSVInicio/infoComplementares/infoEstagiario/instEnsino/bairro']],
153
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_Cep', evento['infoTSVInicio/infoComplementares/infoEstagiario/instEnsino/cep']],
154
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_Cnpj', evento['infoTSVInicio/infoComplementares/infoEstagiario/instEnsino/cnpjInstEnsino']],
155
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_CodigoMunicipio', evento['infoTSVInicio/infoComplementares/infoEstagiario/instEnsino/codMunic']],
156
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_DescricaoLogradouro', evento['infoTSVInicio/infoComplementares/infoEstagiario/instEnsino/dscLograd']],
157
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_NumeroLogradouro', evento['infoTSVInicio/infoComplementares/infoEstagiario/instEnsino/nrLograd']],
158
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_RazaoSocial', evento['infoTSVInicio/infoComplementares/infoEstagiario/instEnsino/nmRazao']],
159
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_Uf', evento['infoTSVInicio/infoComplementares/infoEstagiario/instEnsino/uf']],
160
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoSupervisorEstagio_Cpf', evento['infoTSVInicio/infoComplementares/infoEstagiario/supervisorEstagio/cpfSupervisor']],
161
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoSupervisorEstagio_Nome', evento['infoTSVInicio/infoComplementares/infoEstagiario/supervisorEstagio/nmSuperv']],
162
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_NaturezaEstagio', evento['infoTSVInicio/infoComplementares/infoEstagiario/natEstagio']],
163
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_NivelEstagio', evento['infoTSVInicio/infoComplementares/infoEstagiario/nivEstagio']],
164
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_NrApoliceSeguro', evento['infoTSVInicio/infoComplementares/infoEstagiario/nrApol']],
165
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_ValorBolsa', evento['infoTSVInicio/infoComplementares/infoEstagiario/vlrBolsa'], :decimal],
166
+ ['EventoAdmissao_InformacoesInicio_CodigoCategoria', categoria_do_trabalhador],
167
+ ['DescricaoProcEmi', processo_de_emissao_do_evento],
168
+ ['IdEventoXml', id_do_evento],
169
+ ['NrReciboEventoOriginal', numero_do_recibo]
170
+ # rubocop:enable Layout/LineLength
145
171
  ]
146
- end.sum([]),
147
- ['CodigoCBO'],
148
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_AreaAtuacao', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/areaAtuacao']],
149
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_DtPrevistaTermino', [evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/dtPrevTerm'], :data]],
150
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_Bairro', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/ageIntegracao/bairro']],
151
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_Cep', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/ageIntegracao/cep']],
152
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_Cnpj', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/ageIntegracao/cnpjAgntInteg']],
153
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_CodigoMunicipio', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/ageIntegracao/codMunic']],
154
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_DescricaoLogradouro', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/ageIntegracao/dscLograd']],
155
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_NumeroLogradouro', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/ageIntegracao/nrLograd']],
156
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_RazaoSocial', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/ageIntegracao/nmRazao']],
157
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_Uf', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/ageIntegracao/uf']],
158
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_Bairro', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/instEnsino/bairro']],
159
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_Cep', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/instEnsino/cep']],
160
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_Cnpj', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/instEnsino/cnpjInstEnsino']],
161
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_CodigoMunicipio', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/instEnsino/codMunic']],
162
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_DescricaoLogradouro', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/instEnsino/dscLograd']],
163
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_NumeroLogradouro', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/instEnsino/nrLograd']],
164
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_RazaoSocial', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/instEnsino/nmRazao']],
165
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_Uf', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/instEnsino/uf']],
166
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoSupervisorEstagio_Cpf', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/supervisorEstagio/cpfSupervisor']],
167
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoSupervisorEstagio_Nome', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/supervisorEstagio/nmSuperv']],
168
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_NaturezaEstagio', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/natEstagio']],
169
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_NivelEstagio', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/nivEstagio']],
170
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_NrApoliceSeguro', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/nrApol']],
171
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_ValorBolsa', evento['evtTSVInicio/infoTSVInicio/infoComplementares/infoEstagiario/vlrBolsa']],
172
- ['EventoAdmissao_InformacoesInicio_CodigoCategoria', categoria_do_trabalhador],
173
- ['DescricaoProcEmi', processo_de_emissao_do_evento],
174
- ['IdEventoXml', id_do_evento],
175
- ['NrReciboEventoOriginal', numero_do_recibo]
176
- # rubocop:enable Layout/LineLength
172
+ )
177
173
  ]
178
174
  end
179
175
  end