teodoro 0.32.0 → 0.36.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: af2634267636872bdf7b90c11efabccb8a0349e044af6ae8e819ef3b7d9283cb
4
- data.tar.gz: fb86f02e7aaa5cba5a68f684e74bdeb185a10f076645d5bfd7d25a760a4020cd
3
+ metadata.gz: 79ec1e112d7f46a5d67b3901df31001a93695487678bc96e68583b503b22a2a2
4
+ data.tar.gz: 406a9b18e28f9d8e2088ee4065ab2b3cdad6c43441b545be49cafaf357b78eca
5
5
  SHA512:
6
- metadata.gz: 0123ebb895e40eb8d3b67c81cc7d1cbb370fd099b727e8a0f6636db1a4ec4a712e9f223a4720651847ec184094e5a174489d48dadac1f35a6f04feb175493942
7
- data.tar.gz: 5ecd588330dac32441ffdbfcd6159b022d7b3b9902352f967ad55d78bbbfd56390909c6ebc810eb77a36e15d336e2f93e0f0848ca422a73f33995f04ae2ec3de
6
+ metadata.gz: 9c5d25fb03cf824a0a5cda8ed6edac3e14966bd200b8666c8727a5d76f2d38fb46bb5ef4f28d65928ddc4c1503a29aeb1bfb28af6d08f51adcd9540115e47602
7
+ data.tar.gz: 579fa7c154ab3e965681cade11d40df8e80a024af9f2560e00aae32c72feb9171742aeaefaff285cfddfa30eb6cd757778cd48ab48d4a0d5edb7205798f1d975
data/lib/teodoro.rb CHANGED
@@ -12,7 +12,7 @@ require_relative 'teodoro/empresa'
12
12
  require_relative 'teodoro/obj'
13
13
 
14
14
  module Teodoro
15
- VERSION = '0.32.0'.freeze
15
+ VERSION = '0.36.0'.freeze
16
16
 
17
17
  CBOs = __FILE__
18
18
  .then { File.dirname(_1) }
@@ -11,8 +11,8 @@ module Teodoro
11
11
  nome: "PRE[#{cpf_do_trabalhador}]",
12
12
  itens_do_conteudo: [
13
13
  ['NrRecibo', recibo['recibo/nrRecibo']],
14
- ['CPF', evento['infoRegPrelim/cpfTrab']],
15
- ['Nome'],
14
+ ['CPF', cpf_do_trabalhador],
15
+ ['Nome', cpf_do_trabalhador.then { "#{_1[0..2]}.#{_1[3..5]}.#{_1[6..8]}-#{_1[9..10]}" }],
16
16
  ['DataNascimento', evento['infoRegPrelim/dtNascto'], :data],
17
17
  ['DataAdmissao', evento['infoRegPrelim/dtAdm'], :data],
18
18
  ['IdEvento', id_do_evento]
@@ -22,7 +22,7 @@ module Teodoro
22
22
  end
23
23
 
24
24
  def cpf_do_trabalhador
25
- evento['infoRegPrelim/cpfTrab']
25
+ @cpf_do_trabalhador ||= evento['infoRegPrelim/cpfTrab']
26
26
  end
27
27
  end
28
28
  end
@@ -47,13 +47,15 @@ module Teodoro
47
47
  estado_civil: evento['trabalhador/estCiv'],
48
48
  grau_de_instrucao: evento['trabalhador/grauInstr'],
49
49
  nome_social: evento['trabalhador/nmSoc'],
50
- data_de_nascimento: evento['trabalhador/nascimento/dtNascto'],
51
- pais_de_nascimento: evento['trabalhador/nascimento/paisNascto'],
52
50
  pais_de_nacionalidade: evento['trabalhador/nascimento/paisNac'],
53
- codigo_do_municipio_de_nascimento: evento['trabalhador/nascimento/codMunic'],
54
- uf_de_nascimento: evento['trabalhador/nascimento/uf'],
55
- nome_da_mae: evento['trabalhador/nascimento/nmMae'],
56
- nome_do_pai: evento['trabalhador/nascimento/nmPai'],
51
+ nascimento: Obj.new(
52
+ data: evento['trabalhador/nascimento/dtNascto'],
53
+ pais: evento['trabalhador/nascimento/paisNascto'],
54
+ codigo_do_municipio: evento['trabalhador/nascimento/codMunic'],
55
+ uf: evento['trabalhador/nascimento/uf'],
56
+ nome_da_mae: evento['trabalhador/nascimento/nmMae'],
57
+ nome_do_pai: evento['trabalhador/nascimento/nmPai']
58
+ ),
57
59
  reside_no_exterior?: evento['trabalhador/endereco/exterior'],
58
60
  endereco: Obj.new(
59
61
  tipo_de_logradouro: evento['trabalhador/endereco/brasil/tpLograd'],
@@ -180,16 +182,16 @@ module Teodoro
180
182
  ['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
181
183
  ['EventoAdmissao_InfoTrabalhador_PrimeiroEmprego', evento['trabalhador/indPriEmpr']],
182
184
  ['EventoAdmissao_InfoTrabalhador_NomeSocial', trabalhador.nome_social],
183
- ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.codigo_do_municipio_de_nascimento],
184
- ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.codigo_do_municipio_de_nascimento]],
185
- ['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.data_de_nascimento, :data],
186
- ['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nome_da_mae],
187
- ['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nome_do_pai],
188
- ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.pais_de_nascimento],
185
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.nascimento.codigo_do_municipio],
186
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.nascimento.codigo_do_municipio]],
187
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.nascimento.data, :data],
188
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nascimento.nome_da_mae],
189
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nascimento.nome_do_pai],
190
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.nascimento.pais],
189
191
  ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
190
192
  ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade', trabalhador.pais_de_nacionalidade],
191
193
  ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
192
- ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.uf_de_nascimento],
194
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.nascimento.uf],
193
195
  ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
194
196
  ['EventoAdmissao_EnderecoResidencialBR_Bairro', trabalhador.endereco.bairro],
195
197
  ['EventoAdmissao_EnderecoResidencialBR_Cep', trabalhador.endereco.cep],
@@ -13,7 +13,7 @@ module Teodoro
13
13
 
14
14
  def trabalhador # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
15
15
  @trabalhador ||= Obj.new(
16
- cpf: evento['ideTrabalhador/cpfTrab'],
16
+ cpf: cpf_do_trabalhador,
17
17
  nis: evento['alteracao/dadosTrabalhador/nisTrab'],
18
18
  nome: evento['alteracao/dadosTrabalhador/nmTrab'],
19
19
  sexo: evento['alteracao/dadosTrabalhador/sexo'],
@@ -21,13 +21,28 @@ module Teodoro
21
21
  estado_civil: evento['alteracao/dadosTrabalhador/estCiv'],
22
22
  grau_de_instrucao: evento['alteracao/dadosTrabalhador/grauInstr'],
23
23
  nome_social: evento['alteracao/dadosTrabalhador/nmSoc'],
24
- data_de_nascimento: evento['alteracao/dadosTrabalhador/nascimento/dtNascto'],
25
- pais_de_nascimento: evento['alteracao/dadosTrabalhador/nascimento/paisNascto'],
26
- pais_de_nacionalidade: evento["alteracao/dadosTrabalhador/#{'nascimento' unless leiaute_simplificado?}/paisNac"], # rubocop:disable Layout/LineLength
27
- codigo_do_municipio_de_nascimento: evento['alteracao/dadosTrabalhador/nascimento/codMunic'],
28
- uf_de_nascimento: evento['alteracao/dadosTrabalhador/nascimento/uf'],
29
- nome_da_mae: evento['alteracao/dadosTrabalhador/nascimento/nmMae'],
30
- nome_do_pai: evento['alteracao/dadosTrabalhador/nascimento/nmPai'],
24
+ pais_de_nacionalidade: pais_de_nacionalidade_do_trabalhador,
25
+ nascimento: Obj.new(
26
+ if leiaute_simplificado?
27
+ empresa.trabalhadores[cpf_do_trabalhador].nascimento.then { {
28
+ data: _1.data,
29
+ pais: _1.pais,
30
+ codigo_do_municipio: _1.codigo_do_municipio,
31
+ uf: _1.uf,
32
+ nome_da_mae: _1.nome_da_mae,
33
+ nome_do_pai: _1.nome_do_pai
34
+ } }
35
+ else
36
+ {
37
+ data: evento['alteracao/dadosTrabalhador/nascimento/dtNascto'],
38
+ pais: evento['alteracao/dadosTrabalhador/nascimento/paisNascto'],
39
+ codigo_do_municipio: evento['alteracao/dadosTrabalhador/nascimento/codMunic'],
40
+ uf: evento['alteracao/dadosTrabalhador/nascimento/uf'],
41
+ nome_da_mae: evento['alteracao/dadosTrabalhador/nascimento/nmMae'],
42
+ nome_do_pai: evento['alteracao/dadosTrabalhador/nascimento/nmPai']
43
+ }
44
+ end
45
+ ),
31
46
  reside_no_exterior?: evento['alteracao/dadosTrabalhador/endereco/exterior'],
32
47
  endereco: Obj.new(
33
48
  tipo_de_logradouro: evento['alteracao/dadosTrabalhador/endereco/brasil/tpLograd'],
@@ -95,6 +110,14 @@ module Teodoro
95
110
  )
96
111
  end
97
112
 
113
+ def cpf_do_trabalhador
114
+ @cpf_do_trabalhador ||= evento['ideTrabalhador/cpfTrab']
115
+ end
116
+
117
+ def pais_de_nacionalidade_do_trabalhador
118
+ evento["alteracao/dadosTrabalhador/#{'nascimento' unless leiaute_simplificado?}/paisNac"]
119
+ end
120
+
98
121
  def leiaute
99
122
  @leiaute ||= Obj.new(
100
123
  condicao_de_ingresso_no_brasil: if leiaute_simplificado?
@@ -121,7 +144,7 @@ module Teodoro
121
144
  ['ESX_CPF', trabalhador.cpf],
122
145
  ['ESX_MATRICULA', contrato_de_trabalho.matricula_do_trabalhador],
123
146
  ['ESX_CATEGORIA', contrato_de_trabalho.categoria_do_trabalhador],
124
- %w[ESX_SEMVINCULO 0], # FIXME: Tales TC
147
+ %w[ESX_SEMVINCULO 0],
125
148
  ['ESX_DATAADMISSAO', contrato_de_trabalho.data_de_inicio, :data],
126
149
  ['ESX_DATAALTERACAO', data_da_alteracao, :data],
127
150
  ['DataAlteracao', data_da_alteracao, :data],
@@ -147,16 +170,16 @@ module Teodoro
147
170
  ['EventoAdmissao_InfoTrabalhador_GrauInstrucao', trabalhador.grau_de_instrucao],
148
171
  ['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
149
172
  ['EventoAdmissao_InfoTrabalhador_NomeSocial', trabalhador.nome_social],
150
- ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.codigo_do_municipio_de_nascimento],
151
- ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.codigo_do_municipio_de_nascimento]],
152
- ['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.data_de_nascimento, :data],
153
- ['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nome_da_mae],
154
- ['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nome_do_pai],
155
- ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.pais_de_nascimento],
173
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.nascimento.codigo_do_municipio],
174
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.nascimento.codigo_do_municipio]],
175
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.nascimento.data, :data],
176
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nascimento.nome_da_mae],
177
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nascimento.nome_do_pai],
178
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.nascimento.pais],
156
179
  ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
157
180
  ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade', trabalhador.pais_de_nacionalidade],
158
181
  ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
159
- ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.uf_de_nascimento],
182
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.nascimento.uf],
160
183
  ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
161
184
  ['EventoAdmissao_EnderecoResidencialBR_Bairro', trabalhador.endereco.bairro],
162
185
  ['EventoAdmissao_EnderecoResidencialBR_Cep', trabalhador.endereco.cep],
@@ -92,16 +92,16 @@ module Teodoro
92
92
  ['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
93
93
  ['EventoAdmissao_InfoTrabalhador_PrimeiroEmprego', contrato_de_emprego.primeiro_emprego_do_trabalhador],
94
94
  ['EventoAdmissao_InfoTrabalhador_NomeSocial', trabalhador.nome_social],
95
- ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.codigo_do_municipio_de_nascimento],
96
- ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.codigo_do_municipio_de_nascimento]],
97
- ['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.data_de_nascimento, :data],
98
- ['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nome_da_mae],
99
- ['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nome_do_pai],
100
- ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.pais_de_nascimento],
95
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.nascimento.codigo_do_municipio],
96
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.nascimento.codigo_do_municipio]],
97
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.nascimento.data, :data],
98
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nascimento.nome_da_mae],
99
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nascimento.nome_do_pai],
100
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.nascimento.pais],
101
101
  ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
102
102
  ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade', trabalhador.pais_de_nacionalidade],
103
103
  ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
104
- ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.uf_de_nascimento],
104
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.nascimento.uf],
105
105
  ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
106
106
  ['EventoAdmissao_EnderecoResidencialBR_Bairro', trabalhador.endereco.bairro],
107
107
  ['EventoAdmissao_EnderecoResidencialBR_Cep', trabalhador.endereco.cep],
@@ -41,20 +41,31 @@ module Teodoro
41
41
  estado_civil: evento['trabalhador/estCiv'],
42
42
  grau_de_instrucao: evento['trabalhador/grauInstr'],
43
43
  nome_social: evento['trabalhador/nmSoc'],
44
- data_de_nascimento: evento['trabalhador/nascimento/dtNascto'],
45
- codigo_do_municipio_de_nascimento: evento['trabalhador/nascimento/codMunic'],
46
- uf_de_nascimento: evento['trabalhador/nascimento/uf'],
47
- pais_de_nascimento: evento['trabalhador/nascimento/paisNascto'],
48
44
  pais_de_nacionalidade: evento['trabalhador/nascimento/paisNac'],
49
- nome_da_mae: evento['trabalhador/nascimento/nmMae'],
50
- nome_do_pai: evento['trabalhador/nascimento/nmPai'],
45
+ nascimento: Obj.new(
46
+ data: evento['trabalhador/nascimento/dtNascto'],
47
+ codigo_do_municipio: evento['trabalhador/nascimento/codMunic'],
48
+ uf: evento['trabalhador/nascimento/uf'],
49
+ pais: evento['trabalhador/nascimento/paisNascto'],
50
+ nome_da_mae: evento['trabalhador/nascimento/nmMae'],
51
+ nome_do_pai: evento['trabalhador/nascimento/nmPai']
52
+ ),
51
53
  reside_no_exterior?: evento['trabalhador/endereco/exterior'],
52
54
  estrangeiro?: evento['trabalhador/trabEstrangeiro'],
53
55
  data_de_chegada_ao_brasil: evento['trabalhador/trabEstrangeiro/dtChegada'],
54
56
  condicao_de_ingresso_no_brasil: leiaute.condicao_de_ingresso_no_brasil_do_trabalhador,
55
57
  casado_com_brasileiro: evento['trabalhador/trabEstrangeiro/casadoBr'],
56
58
  filhos_brasileiros: evento['trabalhador/trabEstrangeiro/filhosBr'],
57
- endereco: OpenStruct.new({}),
59
+ endereco: Obj.new(
60
+ tipo_de_logradouro: evento['trabalhador/endereco/brasil/tpLograd'],
61
+ logradouro: evento['trabalhador/endereco/brasil/dscLograd'],
62
+ numero: evento['trabalhador/endereco/brasil/nrLograd'],
63
+ complemento: evento['trabalhador/endereco/brasil/complemento'],
64
+ bairro: evento['trabalhador/endereco/brasil/bairro'],
65
+ cep: evento['trabalhador/endereco/brasil/cep'],
66
+ codigo_do_municipio: evento['trabalhador/endereco/brasil/codMunic'],
67
+ uf: evento['trabalhador/endereco/brasil/uf']
68
+ ),
58
69
  ctps: Obj.new(
59
70
  numero: evento['trabalhador/documentos/CTPS/nrCtps'],
60
71
  serie: evento['trabalhador/documentos/CTPS/serieCtps'],
@@ -65,8 +76,16 @@ module Teodoro
65
76
  orgao_emissor: evento['trabalhador/documentos/RG/orgaoEmissor'],
66
77
  data_da_expedicao: evento['trabalhador/documentos/RG/dtExped']
67
78
  ),
68
- rne: OpenStruct.new({}),
69
- ric: OpenStruct.new({}),
79
+ rne: Obj.new(
80
+ numero: evento['trabalhador/documentos/RNE/nrRne'],
81
+ orgao_emissor: evento['trabalhador/documentos/RNE/orgaoEmissor'],
82
+ data_da_expedicao: evento['trabalhador/documentos/RNE/dtExped']
83
+ ),
84
+ ric: Obj.new(
85
+ numero: evento['trabalhador/documentos/RIC/nrRic'],
86
+ orgao_emissor: evento['trabalhador/documentos/RIC/orgaoEmissor'],
87
+ data_da_expedicao: evento['trabalhador/documentos/RIC/dtExped']
88
+ ),
70
89
  oc: Obj.new(
71
90
  numero: evento['trabalhador/documentos/OC/nrOc'],
72
91
  orgao_emissor: evento['trabalhador/documentos/OC/orgaoEmissor'],
@@ -89,7 +108,12 @@ module Teodoro
89
108
  reabilitado_ou_readaptado: evento['trabalhador/infoDeficiencia/reabReadap'],
90
109
  preenche_cota_de_pessoas_com_deficiencia: nil
91
110
  ),
92
- contato: OpenStruct.new({})
111
+ contato: Obj.new(
112
+ fone_principal: evento['trabalhador/contato/fonePrinc'],
113
+ fone_alternativo: evento['trabalhador/contato/foneAlternat'],
114
+ email_principal: evento['trabalhador/contato/emailPrinc'],
115
+ email_alternativo: evento['trabalhador/contato/emailAlternat']
116
+ )
93
117
  )
94
118
  end
95
119
 
@@ -115,7 +139,7 @@ module Teodoro
115
139
  %w[ESX_SEMVINCULO 1],
116
140
  ['ESX_DATAADMISSAO', inicio_de_contrato.data_de_inicio, :data],
117
141
  ['IdEventoXml', id_do_evento],
118
- ['NrReciboEventoOriginal'],
142
+ ['NrReciboEventoOriginal', numero_do_recibo],
119
143
  ['EventoAdmissao_NrRecibo'],
120
144
  ['EventoAdmissao_InformacoesInicio_IndicativoCadastramentoInicial', evento['infoTSVInicio/cadIni']],
121
145
  ['EventoAdmissao_InformacoesInicio_DataInicio', inicio_de_contrato.data_de_inicio, :data],
@@ -141,16 +165,16 @@ module Teodoro
141
165
  ['EventoAdmissao_InfoTrabalhador_GrauInstrucao', trabalhador.grau_de_instrucao],
142
166
  ['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
143
167
  ['EventoAdmissao_InfoTrabalhador_NomeSocial', trabalhador.nome_social],
144
- ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.codigo_do_municipio_de_nascimento],
145
- ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.codigo_do_municipio_de_nascimento]],
146
- ['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.data_de_nascimento, :data],
147
- ['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nome_da_mae],
148
- ['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nome_do_pai],
149
- ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.pais_de_nascimento],
168
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.nascimento.codigo_do_municipio],
169
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.nascimento.codigo_do_municipio]],
170
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.nascimento.data, :data],
171
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nascimento.nome_da_mae],
172
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nascimento.nome_do_pai],
173
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.nascimento.pais],
150
174
  ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
151
175
  ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade', trabalhador.pais_de_nacionalidade],
152
176
  ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
153
- ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.uf_de_nascimento],
177
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.nascimento.uf],
154
178
  ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
155
179
  ['SemNumeroLogradouroEnderecoBR'],
156
180
  ['ResideExterior', evento['trabalhador/endereco/exterior'], :bool],
@@ -224,15 +248,14 @@ module Teodoro
224
248
  ['EventoAdmissao_InformacoesInicio_CodigoCategoria', inicio_de_contrato.categoria_do_trabalhador],
225
249
  ['DescricaoProcEmi', processo_de_emissao_do_evento],
226
250
  ['IdEventoXml', id_do_evento],
227
- ['NrReciboEventoOriginal', numero_do_recibo],
228
- ['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Bairro', evento['trabalhador/endereco/brasil/bairro']],
229
- ['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Cep', evento['trabalhador/endereco/brasil/cep']],
230
- ['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_CodigoMunicipio', evento['trabalhador/endereco/brasil/codMunic']],
231
- ['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Complemento', evento['trabalhador/endereco/brasil/complemento']],
232
- ['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_DescricaoLogradouro', evento['trabalhador/endereco/brasil/dscLograd']],
233
- ['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_NumeroLogradouro', evento['trabalhador/endereco/brasil/nrLograd']],
234
- ['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_TipoLogradouro', evento['trabalhador/endereco/brasil/tpLograd']],
235
- ['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Uf', evento['trabalhador/endereco/brasil/uf']],
251
+ ['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Bairro', trabalhador.endereco.bairro],
252
+ ['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Cep', trabalhador.endereco.cep],
253
+ ['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_CodigoMunicipio', trabalhador.endereco.codigo_do_municipio],
254
+ ['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Complemento', trabalhador.endereco.complemento],
255
+ ['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_DescricaoLogradouro', trabalhador.endereco.logradouro],
256
+ ['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_NumeroLogradouro', trabalhador.endereco.numero],
257
+ ['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_TipoLogradouro', trabalhador.endereco.tipo_de_logradouro],
258
+ ['EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Uf', trabalhador.endereco.uf],
236
259
  leiaute['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoCargoFuncao_CodigoCargo'],
237
260
  leiaute['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoFgts_OptanteFGTS'],
238
261
  leiaute['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoFgts_DataOpcaoFGTS'],
@@ -25,7 +25,7 @@ module Teodoro
25
25
  ['cpfTrabalhador'],
26
26
  ['nomeTrabalhador'],
27
27
  ['TipoInscricaoEmpregador', recibo['ideEmpregador/tpInsc']],
28
- ['AlteracaoContratual_DataAlteracao'],
28
+ ['AlteracaoContratual_DataAlteracao', data_da_alteracao, :data],
29
29
  ['AlteracaoContratual_DataEfeito'],
30
30
  ['AlteracaoContratual_DescricaoAlteracao'],
31
31
  ['IdentificacaoVinculo_Nis', evento['ideTrabSemVinculo/nisTrab']],
@@ -115,6 +115,10 @@ module Teodoro
115
115
  ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_HipoteseLegal'],
116
116
  ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_JustificaHipoteseLegal'],
117
117
  ['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TrabalhoTemporario_TipoInclusaoContrato'],
118
+ ['EventoAdmissao_DataAlteracaoContratual', data_da_alteracao, :data],
119
+ ['EventoAdmissao_InfoTrabalhador_Cpf', cpf_do_trabalhador],
120
+ ['EventoAdmissao_InformacoesInicio_CodigoCategoria', categoria_do_trabalhador],
121
+ leiaute['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoCargoFuncao_CodigoCargo'],
118
122
  ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoTrabalhadorCedido_CategoriaOrigem'],
119
123
  ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoTrabalhadorCedido_CnpjEmpresaCedente'],
120
124
  ['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoTrabalhadorCedido_DataAdmissaoEmpresaCedente'],
@@ -183,24 +187,25 @@ module Teodoro
183
187
  def leiaute # rubocop:disable Metrics/MethodLength
184
188
  @leiaute ||=
185
189
  (
186
- if leiaute_simplificado?
190
+ codigo_do_cargo =
191
+ if leiaute_simplificado?
192
+ empresa.cargos_gerados[
193
+ nome: evento['infoTSVAlteracao/infoComplementares/cargoFuncao/nmCargo'],
194
+ cbo: evento['infoTSVAlteracao/infoComplementares/cargoFuncao/CBOCargo']
195
+ ]&.codigo
196
+ else
197
+ evento['infoTSVAlteracao/infoComplementares/cargoFuncao/codCargo']
198
+ end
199
+ [
187
200
  [
188
- [
189
- 'InfoVinculo_InfoContrato_CodigoCargo',
190
- empresa.cargos_gerados[
191
- nome: evento['infoTSVAlteracao/infoComplementares/cargoFuncao/nmCargo'],
192
- cbo: evento['infoTSVAlteracao/infoComplementares/cargoFuncao/CBOCargo']
193
- ]&.codigo
194
- ]
195
- ]
196
- else
201
+ 'InfoVinculo_InfoContrato_CodigoCargo',
202
+ codigo_do_cargo
203
+ ],
197
204
  [
198
- [
199
- 'InfoVinculo_InfoContrato_CodigoCargo',
200
- evento['infoTSVAlteracao/infoComplementares/cargoFuncao/codCargo']
201
- ]
205
+ 'EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoCargoFuncao_CodigoCargo',
206
+ codigo_do_cargo
202
207
  ]
203
- end
208
+ ]
204
209
  ).map { [_1.first, _1] }.to_h
205
210
  end
206
211
  end
@@ -82,16 +82,16 @@ module Teodoro
82
82
  ['EventoAdmissao_InfoTrabalhador_GrauInstrucao', trabalhador.grau_de_instrucao],
83
83
  ['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
84
84
  ['EventoAdmissao_InfoTrabalhador_NomeSocial', trabalhador.nome_social],
85
- ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.codigo_do_municipio_de_nascimento],
86
- ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.codigo_do_municipio_de_nascimento]],
87
- ['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.data_de_nascimento, :data],
88
- ['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nome_da_mae],
89
- ['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nome_do_pai],
90
- ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.pais_de_nascimento],
85
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.nascimento.codigo_do_municipio],
86
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.nascimento.codigo_do_municipio]],
87
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.nascimento.data, :data],
88
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nascimento.nome_da_mae],
89
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nascimento.nome_do_pai],
90
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.nascimento.pais],
91
91
  ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
92
92
  ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade', trabalhador.pais_de_nacionalidade],
93
93
  ['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
94
- ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.uf_de_nascimento],
94
+ ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.nascimento.uf],
95
95
  ['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
96
96
  ['SemNumeroLogradouroEnderecoBR'],
97
97
  ['ResideExterior', trabalhador.reside_no_exterior?, :bool],
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.32.0
4
+ version: 0.36.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-05-11 00:00:00.000000000 Z
11
+ date: 2021-05-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: nokogiri