teodoro 0.3.1 → 0.7.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.
@@ -5,10 +5,6 @@ module Teodoro
5
5
 
6
6
  private
7
7
 
8
- def noh_principal_do_evento
9
- 'evtTSVAltContr'
10
- end
11
-
12
8
  def nome_do_arquivo_data
13
9
  @nome_do_arquivo_data ||= [
14
10
  'TRA',
@@ -19,11 +15,11 @@ module Teodoro
19
15
  end
20
16
 
21
17
  def cpf_do_trabalhador
22
- evento['evtTSVAltContr/ideTrabSemVinculo/cpfTrab']
18
+ @cpf_do_trabalhador ||= evento['evtTSVAltContr/ideTrabSemVinculo/cpfTrab']
23
19
  end
24
20
 
25
21
  def categoria_do_trabalhador
26
- evento['evtTSVAltContr/ideTrabSemVinculo/codCateg']
22
+ @categoria_do_trabalhador ||= evento['evtTSVAltContr/ideTrabSemVinculo/codCateg']
27
23
  end
28
24
 
29
25
  def data_de_inicio
@@ -43,18 +39,18 @@ module Teodoro
43
39
  end
44
40
 
45
41
  def data_da_alteracao
46
- evento['evtTSVAltContr/infoTSVAlteracao/dtAlteracao']
42
+ @data_da_alteracao ||= evento['evtTSVAltContr/infoTSVAlteracao/dtAlteracao']
47
43
  end
48
44
 
49
45
  def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
50
46
  [
51
47
  # rubocop:disable Layout/LineLength
52
- ['ESX_CPF', evento['evtTSVAltContr/ideTrabSemVinculo/cpfTrab']],
48
+ ['ESX_CPF', cpf_do_trabalhador],
53
49
  ['ESX_MATRICULA'],
54
- ['ESX_CATEGORIA', evento['evtTSVAltContr/ideTrabSemVinculo/codCateg']],
50
+ ['ESX_CATEGORIA', categoria_do_trabalhador],
55
51
  %w[ESX_SEMVINCULO 1],
56
- ['ESX_DATAADMISSAO', data_de_inicio],
57
- ['ESX_DATAALTERACAO', evento['evtTSVAltContr/infoTSVAlteracao/dtAlteracao']],
52
+ ['ESX_DATAADMISSAO', [data_de_inicio, :data]],
53
+ ['ESX_DATAALTERACAO', [data_da_alteracao, :data]],
58
54
  ['cpfTrabalhador'],
59
55
  ['nomeTrabalhador'],
60
56
  ['TipoInscricaoEmpregador', recibo['retornoEvento/ideEmpregador/tpInsc']],
@@ -156,7 +152,7 @@ module Teodoro
156
152
  ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoTrabalhadorCedido_TipoRegimePrevidenciario'],
157
153
  ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoTrabalhadorCedido_TipoRegimeTrabalhista'],
158
154
  ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_AreaAtuacao', evento['evtTSVAltContr/infoTSVAlteracao/infoComplementares/infoEstagiario/areaAtuacao']],
159
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_DtPrevistaTermino', evento['evtTSVAltContr/infoTSVAlteracao/infoComplementares/infoEstagiario/dtPrevTerm']],
155
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_DtPrevistaTermino', [evento['evtTSVAltContr/infoTSVAlteracao/infoComplementares/infoEstagiario/dtPrevTerm'], :data]],
160
156
  ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_Bairro', evento['evtTSVAltContr/infoTSVAlteracao/infoComplementares/infoEstagiario/ageIntegracao/bairro']],
161
157
  ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_Cep', evento['evtTSVAltContr/infoTSVAlteracao/infoComplementares/infoEstagiario/ageIntegracao/cep']],
162
158
  ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_Cnpj', evento['evtTSVAltContr/infoTSVAlteracao/infoComplementares/infoEstagiario/ageIntegracao/cnpjAgntInteg']],
@@ -56,41 +56,20 @@ module Teodoro
56
56
  [
57
57
  # rubocop:disable Layout/LineLength
58
58
  ['ESX_CPF', cpf_do_trabalhador],
59
- ['ESX_MATRICULA'],
60
59
  ['ESX_CATEGORIA', categoria_do_trabalhador],
61
60
  ['ESX_SEMVINCULO'],
62
61
  ['ESX_DATAADMISSAO', data_de_inicio],
63
62
  ['ESX_DATADESLIGAMENTO', data_do_termino],
64
- ['ESX_INFOWEB_RESCISAO_IDEDMDEV'],
65
63
  ['ESX_INFOWEB_RESCISAO_RECIBO', numero_do_recibo],
66
- ['ESX_INFOWEB_RESCISAO_MOTIVO'],
67
- ['ESX_INFOWEB_RESCISAO_MOTIVO_TEXT'],
68
64
  ['IdEventoXml'],
69
65
  ['NrReciboEventoOriginal'],
70
- ['EventoAdmissao_TipoEventoEnviado'],
71
- ['TipoInscricaoEmpregador'],
72
66
  ['EventoAdmissao_NrRecibo'],
73
67
  ['EventoAdmissao_DataAlteracaoCadastral'],
74
68
  ['EventoAdmissao_InformacoesInicio_IndicativoCadastramentoInicial'],
75
69
  ['EventoAdmissao_InformacoesInicio_DataInicio'],
76
70
  ['EventoAdmissao_DataAlteracaoContratual'],
77
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoDirigenteSindical_CategoriaOrigem'],
78
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoDirigenteSindical_CnpjOrigem'],
79
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoDirigenteSindical_DataAdmissaoOrigem'],
80
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoDirigenteSindical_MatriculaOrigem'],
81
- ['ehEmpregadorGrande'],
82
- ['filtro'],
83
- ['idContratoSelecionado'],
84
- ['idTrabalhador'],
85
- ['tsv'],
86
- ['EhListagemContratosSemVinculo'],
87
- ['RequestVerificationToken'],
88
71
  ['SomenteLeitura'],
89
- ['VisualizarDadosCadastrais'],
90
72
  ['UrlRetorno'],
91
- ['visualizar'],
92
- ['EhVisualizacao'],
93
- ['idContrato'],
94
73
  ['IdEvento'],
95
74
  ['FiltroCargo'],
96
75
  ['FiltroFuncao'],
@@ -98,27 +77,9 @@ module Teodoro
98
77
  ['EhAlteracaoCadastral'],
99
78
  ['autocomplete_EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento'],
100
79
  ['autocomplete_EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade'],
101
- ['autocomplete_EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialEX_PaisResidencia'],
102
80
  ['EhAlteracaoContratual'],
103
- ['autocomplete_EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoDirigenteSindical_CategoriaOrigem'],
104
- ['autocomplete_EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoTrabalhadorCedido_CategoriaOrigem'],
105
- ['autocomplete_EventoAdmissao_InformacoesInicio_InfoAfastamento_CodigoMotivoAfastamento'],
106
- ['CnpjPodeEnviarEvento'],
107
- ['InformacoesTrabalhador_Cpf'],
108
- ['InformacoesTrabalhador_Nome'],
109
- ['FiltroHorario'],
110
- ['HorarioTela_CodigoHorarioContratual'],
111
- ['valorFoiSelecionado'],
112
- ['idEdicaoHorario'],
113
81
  ['DescricaoProcEmi', processo_de_emissao_do_evento],
114
82
  ['VerProc'],
115
- ['IdEdicaoDependente'],
116
- ['commandArgument'],
117
- ['cpfTrabalhador'],
118
- ['nomeTrabalhador'],
119
- ['TipoRegistroAdmissao'],
120
- ['HorarioTela_Dia'],
121
- ['NomeEstabelecimentoLocalTrabalho'],
122
83
  ['EventoAdmissao_InfoTrabalhador_Cpf'],
123
84
  ['EventoAdmissao_InfoTrabalhador_Nome'],
124
85
  ['EventoAdmissao_InfoTrabalhador_Nis'],
@@ -130,9 +91,7 @@ module Teodoro
130
91
  ['EventoAdmissao_InfoTrabalhador_EstadoCivil_TEXT'],
131
92
  ['EventoAdmissao_InfoTrabalhador_GrauInstrucao'],
132
93
  ['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
133
- ['EventoAdmissao_InfoTrabalhador_PrimeiroEmprego'],
134
94
  ['EventoAdmissao_InfoTrabalhador_NomeSocial'],
135
- ['EventoAdmissao_Aposentadoria_TrabalhadorAposentado'],
136
95
  ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio'],
137
96
  ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT'],
138
97
  ['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento'],
@@ -144,27 +103,8 @@ module Teodoro
144
103
  ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
145
104
  ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf'],
146
105
  ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
147
- ['EventoAdmissao_EnderecoResidencialBR_Bairro'],
148
- ['EventoAdmissao_EnderecoResidencialBR_Cep'],
149
- ['EventoAdmissao_EnderecoResidencialBR_CodigoMunicipio'],
150
- ['EventoAdmissao_EnderecoResidencialBR_CodigoMunicipio_TEXT'],
151
- ['EventoAdmissao_EnderecoResidencialBR_Complemento'],
152
- ['EventoAdmissao_EnderecoResidencialBR_DescricaoLogradouro'],
153
- ['EventoAdmissao_EnderecoResidencialBR_NumeroLogradouro'],
154
106
  ['SemNumeroLogradouroEnderecoBR'],
155
- ['EventoAdmissao_EnderecoResidencialBR_TipoLogradouro'],
156
- ['EventoAdmissao_EnderecoResidencialBR_TipoLogradouro_TEXT'],
157
- ['EventoAdmissao_EnderecoResidencialBR_Uf'],
158
- ['EventoAdmissao_EnderecoResidencialBR_Uf_TEXT'],
159
- ['EventoAdmissao_EnderecoResidencialEX_Bairro'],
160
- ['EventoAdmissao_EnderecoResidencialEX_CodigoPostal'],
161
- ['EventoAdmissao_EnderecoResidencialEX_Complemento'],
162
- ['EventoAdmissao_EnderecoResidencialEX_DescricaoLogradouro'],
163
- ['EventoAdmissao_EnderecoResidencialEX_NomeCidade'],
164
- ['EventoAdmissao_EnderecoResidencialEX_NumeroLogradouro'],
165
107
  ['ResideExterior'],
166
- ['EventoAdmissao_EnderecoResidencialEX_PaisResidencia'],
167
- ['EventoAdmissao_EnderecoResidencialEX_PaisResidencia_TEXT'],
168
108
  ['SemNumeroLogradouroEnderecoEX'],
169
109
  ['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro'],
170
110
  ['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao'],
@@ -184,101 +124,18 @@ module Teodoro
184
124
  ['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps'],
185
125
  ['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps_TEXT'],
186
126
  ['EventoAdmissao_InfoTrabalhador_Documentos_Oc_DataExpedicao'],
187
- ['EventoAdmissao_InfoTrabalhador_Documentos_Oc_DataValidade'],
188
127
  ['EventoAdmissao_InfoTrabalhador_Documentos_Oc_NumeroOc'],
189
128
  ['EventoAdmissao_InfoTrabalhador_Documentos_Oc_OrgaoEmissor'],
190
129
  ['EventoAdmissao_InfoTrabalhador_Documentos_Rg_DataExpedicao'],
191
130
  ['EventoAdmissao_InfoTrabalhador_Documentos_Rg_NumeroRg'],
192
131
  ['EventoAdmissao_InfoTrabalhador_Documentos_Rg_OrgaoEmissor'],
193
- ['EventoAdmissao_InfoTrabalhador_Documentos_Ric_DataExpedicao'],
194
- ['EventoAdmissao_InfoTrabalhador_Documentos_Ric_NumeroRic'],
195
- ['EventoAdmissao_InfoTrabalhador_Documentos_Ric_OrgaoEmissor'],
196
- ['EventoAdmissao_InfoTrabalhador_Documentos_Rne_DataExpedicao'],
197
- ['EventoAdmissao_InfoTrabalhador_Documentos_Rne_NumerorRne'],
198
- ['EventoAdmissao_InfoTrabalhador_Documentos_Rne_OrgaoEmissor'],
199
132
  ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaAuditiva'],
200
133
  ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaFisica'],
201
134
  ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaIntelectual'],
202
135
  ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaMental'],
203
136
  ['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaVisual'],
204
- ['EventoAdmissao_InfoTrabalhador_Deficiencia_InfoCota'],
205
- ['EventoAdmissao_InfoTrabalhador_Deficiencia_Observacao'],
206
137
  ['EventoAdmissao_InfoTrabalhador_Deficiencia_ReabilitadoOuReadaptado'],
207
- ['EventoAdmissao_Contato_TelefonePrincipal'],
208
- ['EventoAdmissao_Contato_EmailPrincipal'],
209
- ['EventoAdmissao_Contato_TelefoneAlternativo'],
210
- ['EventoAdmissao_Contato_EmailAlternativo'],
211
- ['EventoAdmissao_Dependente_#_CPFDependente'],
212
- ['EventoAdmissao_Dependente_#_DataNascimento'],
213
- ['EventoAdmissao_Dependente_#_DataNascimentoFormatada'],
214
- ['EventoAdmissao_Dependente_#_DependenteIRRF'],
215
- ['EventoAdmissao_Dependente_#_DependenteSF'],
216
- ['EventoAdmissao_Dependente_#_IncapacidadeDependente'],
217
- ['EventoAdmissao_Dependente_#_NomeDependente'],
218
- ['EventoAdmissao_Dependente_#_TipoDependente'],
219
138
  ['CodigoCBO'],
220
- ['CodigoCNAE'],
221
- ['InfoVinculo_InfoContrato_AlvaraJudicial_NumeroProcessoJudicial'],
222
- ['InfoVinculo_Matricula'],
223
- ['InfoVinculo_TipoRegimeTrabalhista'],
224
- ['InfoVinculo_TipoRegimePrevidenciario'],
225
- ['InfoVinculo_InfoContrato_CodigoCategoria'],
226
- ['InfoVinculo_InfoContrato_CodigoCargo'],
227
- ['InfoVinculo_InfoContrato_CodigoFuncao'],
228
- ['InfoVinculo_InfoContrato_CodigoCarreira'],
229
- ['InfoVinculo_InfoContrato_DataIngressoCarreira'],
230
- ['InfoVinculo_InfoContrato_Duracao_TipoContrato'],
231
- ['InfoVinculo_InfoContrato_Duracao_DataTermino'],
232
- ['InfoVinculo_DataInicioAfastamento'],
233
- ['InfoVinculo_CodigoMotivoAfastamento'],
234
- ['InfoVinculo_InfoContrato_Remuneracao_UnidadeSalarioFixo'],
235
- ['InfoVinculo_InfoContrato_Remuneracao_ValorSalarioFixo'],
236
- ['InfoVinculo_InfoContrato_Remuneracao_DescricaoSalarioVariavel'],
237
- ['InfoVinculo_InfoContrato_HorarioContratual_DescricaoTipoJornada'],
238
- ['InfoVinculo_InfoContrato_HorarioContratual_JornadaTempoParcial'],
239
- ['InfoVinculo_InfoContrato_HorarioContratual_QuantidadedHorasSemanal'],
240
- ['InfoVinculo_InfoContrato_HorarioContratual_TipoJornada'],
241
- ['InfoVinculo_SucessaoVinculo_DataInicioVinculo'],
242
- ['InfoVinculo_SucessaoVinculo_CnpjEmpregadorAnterior'],
243
- ['InfoVinculo_SucessaoVinculo_MatriculaAnterior'],
244
- ['InfoVinculo_SucessaoVinculo_Observacao'],
245
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_CnpjSindicatoCategoriaProfissional'],
246
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_DataAdmissao'],
247
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_DataBase'],
248
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_IndicativoAdmissao'],
249
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_InfoAprend_NumeroInscricao'],
250
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_InfoAprend_TipoInscricao'],
251
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_InfoFgts_DataOpcaoFGTS'],
252
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_InfoFgts_OptanteFGTS'],
253
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_NaturezaAtividade'],
254
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TipoAdmissao'],
255
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TipoRegimeJornada'],
256
- ['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_DescricaoComplementar'],
257
- ['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_NumeroInscricao'],
258
- ['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_TipoInscricao'],
259
- ['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Uf'],
260
- ['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_TipoLogradouro'],
261
- ['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_TipoLogradouro_TEXT'],
262
- ['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_NumeroLogradouro'],
263
- ['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_DescricaoLogradouro'],
264
- ['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Complemento'],
265
- ['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_CodigoMunicipio'],
266
- ['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Cep'],
267
- ['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoDomestico_Bairro'],
268
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_EmpresaContratante_NumeroInscricao'],
269
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_EmpresaContratante_TipoInscricao'],
270
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_EmpresaContratante_EstabelecimentoVinculadoTemporario_NumeroInscricao'],
271
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_EmpresaContratante_EstabelecimentoVinculadoTemporario_TipoInscricao'],
272
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_HipoteseLegal'],
273
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_JustificaHipoteseLegal'],
274
- ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_TipoInclusaoContrato'],
275
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoTrabalhadorCedido_CategoriaOrigem'],
276
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoTrabalhadorCedido_CnpjEmpresaCedente'],
277
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoTrabalhadorCedido_DataAdmissaoEmpresaCedente'],
278
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoTrabalhadorCedido_InfoOnus'],
279
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoTrabalhadorCedido_MatriculaEmpresaCedente'],
280
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoTrabalhadorCedido_TipoRegimePrevidenciario'],
281
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoTrabalhadorCedido_TipoRegimeTrabalhista'],
282
139
  ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_AreaAtuacao'],
283
140
  ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_DtPrevistaTermino'],
284
141
  ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_Bairro'],
@@ -302,10 +159,7 @@ module Teodoro
302
159
  ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_NaturezaEstagio'],
303
160
  ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_NivelEstagio'],
304
161
  ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_NrApoliceSeguro'],
305
- ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_ValorBolsa'],
306
- ['Horarios_#_CodigoHorarioContratual'],
307
- ['Horarios_#_Dia'],
308
- ['InfoVinculo_InfoContrato_FiliacaoSindical_#_CnpjSindicatoTrabalhador']
162
+ ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_ValorBolsa']
309
163
  # rubocop:enable Layout/LineLength
310
164
  ]
311
165
  end
@@ -3,10 +3,10 @@ module Teodoro
3
3
  class ArquivoS3000
4
4
  include ArquivoDeEventoProcessadorDeArquivoData
5
5
 
6
- # FIXME: Tales aspectos em empresa
7
-
8
6
  def processar
9
7
  excluir_arquivos_data if tipo_de_evento_processavel?
8
+ excluir_admissao if exclusao_de_admissao?
9
+ excluir_inicio_de_tsv if exclusao_de_inicio_de_tsv?
10
10
  end
11
11
 
12
12
  private
@@ -16,7 +16,7 @@ module Teodoro
16
16
  end
17
17
 
18
18
  def tipo_de_evento
19
- evento['evtExclusao/infoExclusao/tpEvento'].delete('-')
19
+ @tipo_de_evento ||= evento['evtExclusao/infoExclusao/tpEvento'].delete('-')
20
20
  end
21
21
 
22
22
  def excluir_arquivos_data
@@ -28,7 +28,31 @@ module Teodoro
28
28
  end
29
29
 
30
30
  def numero_de_recibo_do_evento_a_excluir
31
- evento['evtExclusao/infoExclusao/nrRecEvt']
31
+ @numero_de_recibo_do_evento_a_excluir ||= evento['evtExclusao/infoExclusao/nrRecEvt']
32
+ end
33
+
34
+ def exclusao_de_admissao?
35
+ tipo_de_evento == 'S2200'
36
+ end
37
+
38
+ def excluir_admissao
39
+ contratos_de_emprego.remover(numero_de_recibo_do_evento_a_excluir)
40
+ end
41
+
42
+ def contratos_de_emprego
43
+ empresa.contratos_de_emprego
44
+ end
45
+
46
+ def exclusao_de_inicio_de_tsv?
47
+ tipo_de_evento == 'S2300'
48
+ end
49
+
50
+ def excluir_inicio_de_tsv
51
+ contratos_de_trabalho_sem_vinculo.remover(numero_de_recibo_do_evento_a_excluir)
52
+ end
53
+
54
+ def contratos_de_trabalho_sem_vinculo
55
+ empresa.contratos_de_trabalho_sem_vinculo
32
56
  end
33
57
  end
34
58
  end
data/lib/teodoro/xml.rb CHANGED
@@ -10,6 +10,8 @@ module Teodoro
10
10
 
11
11
  public
12
12
 
13
+ extend Forwardable
14
+
13
15
  def [](*path)
14
16
  node_set = xml.css("*/#{path.join('/')}")
15
17
 
@@ -27,5 +29,9 @@ module Teodoro
27
29
  def *(path) # rubocop:disable Naming/BinaryOperatorParameterName
28
30
  xml.css("*/#{path}").map { |node| self.class.new(Nokogiri::XML(node.to_s)) }
29
31
  end
32
+
33
+ def css(path)
34
+ xml.css(path)
35
+ end
30
36
  end
31
37
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: teodoro
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Clavius Tales
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-04-16 00:00:00.000000000 Z
11
+ date: 2021-04-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: nokogiri