teodoro 0.26.0 → 0.31.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/municipios.json +22262 -0
- data/lib/teodoro.rb +27 -7
- data/lib/teodoro/empresa.rb +7 -2
- data/lib/teodoro/empresa/contratos_de_emprego.rb +42 -3
- data/lib/teodoro/empresa/contratos_de_trabalho_sem_vinculo.rb +18 -3
- data/lib/teodoro/empresa/trabalhadores.rb +19 -0
- data/lib/teodoro/leiaute/arquivo_s2200.rb +209 -100
- data/lib/teodoro/leiaute/arquivo_s2205.rb +153 -68
- data/lib/teodoro/leiaute/arquivo_s2206.rb +77 -46
- data/lib/teodoro/leiaute/arquivo_s2230.rb +0 -2
- data/lib/teodoro/leiaute/arquivo_s2299.rb +76 -72
- data/lib/teodoro/leiaute/arquivo_s2300.rb +60 -39
- data/lib/teodoro/leiaute/arquivo_s2306.rb +1 -1
- data/lib/teodoro/leiaute/arquivo_s2399.rb +27 -23
- data/lib/tipos_de_logradouro.json +730 -0
- metadata +5 -2
@@ -137,8 +137,6 @@ module Teodoro
|
|
137
137
|
['CodMotivoAfastamentoRetif'],
|
138
138
|
['TipoEventoCadastro'],
|
139
139
|
['IdEventoAfastamento'],
|
140
|
-
(['DataFim', data_de_termino_do_afastamento, :data] if termino_do_afastamento?),
|
141
|
-
['DataInicio', data_de_inicio_do_afastamento, :data],
|
142
140
|
['CodigoMotivo', codigo_do_motivo_de_afastamento],
|
143
141
|
['Motivo'],
|
144
142
|
['ExibirBotoes'],
|
@@ -41,7 +41,7 @@ module Teodoro
|
|
41
41
|
@matricula_do_trabalhador ||= evento['ideVinculo/matricula']
|
42
42
|
end
|
43
43
|
|
44
|
-
def dados_dos_arquivos_data # rubocop:disable Metrics/MethodLength
|
44
|
+
def dados_dos_arquivos_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
45
45
|
[
|
46
46
|
Obj.new(
|
47
47
|
nome: "TRA[#{cpf_do_trabalhador}][EPG_#{matricula_do_trabalhador}_#{data_de_admissao.delete('-')}]-GER",
|
@@ -80,90 +80,90 @@ module Teodoro
|
|
80
80
|
['HorarioTela_Dia'],
|
81
81
|
['NomeEstabelecimentoLocalTrabalho'],
|
82
82
|
['EventoAdmissao_InfoTrabalhador_Cpf'],
|
83
|
-
['EventoAdmissao_InfoTrabalhador_Nome'],
|
84
|
-
['EventoAdmissao_InfoTrabalhador_Nis'],
|
85
|
-
['EventoAdmissao_InfoTrabalhador_Sexo'],
|
83
|
+
['EventoAdmissao_InfoTrabalhador_Nome', trabalhador.nome],
|
84
|
+
['EventoAdmissao_InfoTrabalhador_Nis', trabalhador.nis],
|
85
|
+
['EventoAdmissao_InfoTrabalhador_Sexo', trabalhador.sexo],
|
86
86
|
['EventoAdmissao_InfoTrabalhador_Sexo_TEXT'],
|
87
|
-
['EventoAdmissao_InfoTrabalhador_RacaCor'],
|
87
|
+
['EventoAdmissao_InfoTrabalhador_RacaCor', trabalhador.raca_cor],
|
88
88
|
['EventoAdmissao_InfoTrabalhador_RacaCor_TEXT'],
|
89
|
-
['EventoAdmissao_InfoTrabalhador_EstadoCivil'],
|
89
|
+
['EventoAdmissao_InfoTrabalhador_EstadoCivil', trabalhador.estado_civil],
|
90
90
|
['EventoAdmissao_InfoTrabalhador_EstadoCivil_TEXT'],
|
91
|
-
['EventoAdmissao_InfoTrabalhador_GrauInstrucao'],
|
91
|
+
['EventoAdmissao_InfoTrabalhador_GrauInstrucao', trabalhador.grau_de_instrucao],
|
92
92
|
['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
|
93
|
-
['EventoAdmissao_InfoTrabalhador_PrimeiroEmprego'],
|
94
|
-
['EventoAdmissao_InfoTrabalhador_NomeSocial'],
|
95
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio'],
|
96
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT'],
|
97
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento'],
|
98
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae'],
|
99
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai'],
|
100
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento'],
|
93
|
+
['EventoAdmissao_InfoTrabalhador_PrimeiroEmprego', contrato_de_emprego.primeiro_emprego_do_trabalhador],
|
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],
|
101
101
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
|
102
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade'],
|
102
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade', trabalhador.pais_de_nacionalidade],
|
103
103
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
|
104
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf'],
|
104
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.uf_de_nascimento],
|
105
105
|
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
|
106
|
-
['EventoAdmissao_EnderecoResidencialBR_Bairro'],
|
107
|
-
['EventoAdmissao_EnderecoResidencialBR_Cep'],
|
108
|
-
['EventoAdmissao_EnderecoResidencialBR_CodigoMunicipio'],
|
109
|
-
['EventoAdmissao_EnderecoResidencialBR_CodigoMunicipio_TEXT'],
|
110
|
-
['EventoAdmissao_EnderecoResidencialBR_Complemento'],
|
111
|
-
['EventoAdmissao_EnderecoResidencialBR_DescricaoLogradouro'],
|
112
|
-
['EventoAdmissao_EnderecoResidencialBR_NumeroLogradouro'],
|
106
|
+
['EventoAdmissao_EnderecoResidencialBR_Bairro', trabalhador.endereco.bairro],
|
107
|
+
['EventoAdmissao_EnderecoResidencialBR_Cep', trabalhador.endereco.cep],
|
108
|
+
['EventoAdmissao_EnderecoResidencialBR_CodigoMunicipio', trabalhador.endereco.codigo_do_municipio],
|
109
|
+
['EventoAdmissao_EnderecoResidencialBR_CodigoMunicipio_TEXT', Municipios[trabalhador.endereco.codigo_do_municipio]],
|
110
|
+
['EventoAdmissao_EnderecoResidencialBR_Complemento', trabalhador.endereco.complemento],
|
111
|
+
['EventoAdmissao_EnderecoResidencialBR_DescricaoLogradouro', trabalhador.endereco.logradouro],
|
112
|
+
['EventoAdmissao_EnderecoResidencialBR_NumeroLogradouro', trabalhador.endereco.numero],
|
113
113
|
['SemNumeroLogradouroEnderecoBR'],
|
114
|
-
['EventoAdmissao_EnderecoResidencialBR_TipoLogradouro'],
|
115
|
-
['EventoAdmissao_EnderecoResidencialBR_TipoLogradouro_TEXT'],
|
116
|
-
['EventoAdmissao_EnderecoResidencialBR_Uf'],
|
114
|
+
['EventoAdmissao_EnderecoResidencialBR_TipoLogradouro', trabalhador.endereco.tipo_de_logradouro],
|
115
|
+
['EventoAdmissao_EnderecoResidencialBR_TipoLogradouro_TEXT', trabalhador.endereco.tipo_de_logradouro.then { "#{_1} - #{TiposDeLogradouro[_1]}" }],
|
116
|
+
['EventoAdmissao_EnderecoResidencialBR_Uf', trabalhador.endereco.uf],
|
117
117
|
['EventoAdmissao_EnderecoResidencialBR_Uf_TEXT'],
|
118
|
-
['ResideExterior'],
|
118
|
+
['ResideExterior', trabalhador.reside_no_exterior?, :bool],
|
119
119
|
['SemNumeroLogradouroEnderecoEX'],
|
120
|
-
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro'],
|
121
|
-
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_DataChegada'],
|
122
|
-
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_FilhosBrasileiros'],
|
123
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh'],
|
120
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro', (trabalhador.casado_com_brasileiro if trabalhador.estrangeiro?)],
|
121
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_DataChegada', (trabalhador.data_de_chegada_ao_brasil if trabalhador.estrangeiro?), :data],
|
122
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_FilhosBrasileiros', (trabalhador.filhos_brasileiros if trabalhador.estrangeiro?)],
|
123
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh', trabalhador.cnh.categoria],
|
124
124
|
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh_TEXT'],
|
125
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataExpedicao'],
|
126
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataPrimeiraHabilitacao'],
|
127
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataValidade'],
|
128
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_NumeroCnh'],
|
129
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh'],
|
125
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataExpedicao', trabalhador.cnh.data_da_expedicao, :data],
|
126
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataPrimeiraHabilitacao', trabalhador.cnh.data_da_primeira_habilitacao, :data],
|
127
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataValidade', trabalhador.cnh.data_de_validade, :data],
|
128
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_NumeroCnh', trabalhador.cnh.numero_do_registro],
|
129
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh', trabalhador.cnh.uf_do_emissor],
|
130
130
|
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh_TEXT'],
|
131
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_NumeroCtps'],
|
132
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_SerieCtps'],
|
133
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps'],
|
131
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_NumeroCtps', trabalhador.ctps.numero],
|
132
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_SerieCtps', trabalhador.ctps.serie],
|
133
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps', trabalhador.ctps.uf],
|
134
134
|
['EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps_TEXT'],
|
135
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_DataExpedicao'],
|
136
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_NumeroOc'],
|
137
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_OrgaoEmissor'],
|
138
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_DataExpedicao'],
|
139
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_NumeroRg'],
|
140
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_OrgaoEmissor'],
|
141
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Ric_DataExpedicao'],
|
142
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Ric_NumeroRic'],
|
143
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Ric_OrgaoEmissor'],
|
144
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Rne_DataExpedicao'],
|
145
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Rne_NumerorRne'],
|
146
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Rne_OrgaoEmissor'],
|
147
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaAuditiva'],
|
148
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaFisica'],
|
149
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaIntelectual'],
|
150
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaMental'],
|
151
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaVisual'],
|
152
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_InfoCota'],
|
153
|
-
['EventoAdmissao_InfoTrabalhador_Deficiencia_ReabilitadoOuReadaptado'],
|
154
|
-
['EventoAdmissao_Contato_TelefonePrincipal'],
|
155
|
-
['EventoAdmissao_Contato_EmailPrincipal'],
|
156
|
-
['EventoAdmissao_Contato_TelefoneAlternativo'],
|
157
|
-
['EventoAdmissao_Contato_EmailAlternativo'],
|
135
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_DataExpedicao', trabalhador.oc.data_da_expedicao, :data],
|
136
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_NumeroOc', trabalhador.oc.numero],
|
137
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Oc_OrgaoEmissor', trabalhador.oc.orgao_emissor],
|
138
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_DataExpedicao', trabalhador.rg.data_da_expedicao, :data],
|
139
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_NumeroRg', trabalhador.rg.numero],
|
140
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rg_OrgaoEmissor', trabalhador.rg.orgao_emissor],
|
141
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ric_DataExpedicao', trabalhador.ric.data_da_expedicao, :data],
|
142
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ric_NumeroRic', trabalhador.ric.numero],
|
143
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Ric_OrgaoEmissor', trabalhador.ric.orgao_emissor],
|
144
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rne_DataExpedicao', trabalhador.rne.data_da_expedicao, :data],
|
145
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rne_NumerorRne', trabalhador.rne.numero],
|
146
|
+
['EventoAdmissao_InfoTrabalhador_Documentos_Rne_OrgaoEmissor', trabalhador.rne.orgao_emissor],
|
147
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaAuditiva', trabalhador.deficiencia.auditiva],
|
148
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaFisica', trabalhador.deficiencia.fisica],
|
149
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaIntelectual', trabalhador.deficiencia.intelectual],
|
150
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaMental', trabalhador.deficiencia.mental],
|
151
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaVisual', trabalhador.deficiencia.visual],
|
152
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_InfoCota', trabalhador.deficiencia.preenche_cota_de_pessoas_com_deficiencia],
|
153
|
+
['EventoAdmissao_InfoTrabalhador_Deficiencia_ReabilitadoOuReadaptado', trabalhador.deficiencia.reabilitado_ou_readaptado],
|
154
|
+
['EventoAdmissao_Contato_TelefonePrincipal', trabalhador.contato.fone_principal],
|
155
|
+
['EventoAdmissao_Contato_EmailPrincipal', trabalhador.contato.email_principal],
|
156
|
+
['EventoAdmissao_Contato_TelefoneAlternativo', trabalhador.contato.fone_alternativo],
|
157
|
+
['EventoAdmissao_Contato_EmailAlternativo', trabalhador.contato.email_alternativo],
|
158
158
|
['CodigoCBO'],
|
159
159
|
['CodigoCNAE'],
|
160
|
-
['InfoVinculo_Matricula'],
|
161
|
-
['InfoVinculo_TipoRegimeTrabalhista'],
|
162
|
-
['InfoVinculo_TipoRegimePrevidenciario'],
|
160
|
+
['InfoVinculo_Matricula', matricula_do_trabalhador],
|
161
|
+
['InfoVinculo_TipoRegimeTrabalhista', contrato_de_emprego.tipo_de_regime_trabalhista],
|
162
|
+
['InfoVinculo_TipoRegimePrevidenciario', contrato_de_emprego.tipo_de_regime_previdenciario],
|
163
163
|
['InfoVinculo_InfoContrato_CodigoCategoria', categoria_do_trabalhador],
|
164
164
|
['InfoVinculo_InfoContrato_CodigoCargo'],
|
165
165
|
['InfoVinculo_InfoContrato_CodigoFuncao'],
|
166
|
-
['InfoVinculo_InfoContrato_Duracao_TipoContrato'],
|
166
|
+
['InfoVinculo_InfoContrato_Duracao_TipoContrato', contrato_de_emprego.duracao.tipo_de_contrato],
|
167
167
|
['InfoVinculo_InfoContrato_Duracao_DataTermino'],
|
168
168
|
['InfoVinculo_DataInicioAfastamento'],
|
169
169
|
['InfoVinculo_CodigoMotivoAfastamento'],
|
@@ -180,11 +180,11 @@ module Teodoro
|
|
180
180
|
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_CnpjSindicatoCategoriaProfissional'],
|
181
181
|
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_DataAdmissao', data_de_admissao, :data],
|
182
182
|
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_DataBase'],
|
183
|
-
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_IndicativoAdmissao'],
|
184
|
-
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_InfoFgts_DataOpcaoFGTS'],
|
185
|
-
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_InfoFgts_OptanteFGTS'],
|
186
|
-
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_NaturezaAtividade'],
|
187
|
-
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TipoAdmissao'],
|
183
|
+
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_IndicativoAdmissao', contrato_de_emprego.indicativo_de_admissao],
|
184
|
+
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_InfoFgts_DataOpcaoFGTS', contrato_de_emprego.data_de_opcao_pelo_fgts, :data],
|
185
|
+
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_InfoFgts_OptanteFGTS', contrato_de_emprego.opcao_pelo_fgts],
|
186
|
+
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_NaturezaAtividade', contrato_de_emprego.natureza_da_atividade],
|
187
|
+
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TipoAdmissao', contrato_de_emprego.tipo_de_admissao],
|
188
188
|
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TipoRegimeJornada'],
|
189
189
|
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_DescricaoComplementar'],
|
190
190
|
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_NumeroInscricao'],
|
@@ -215,6 +215,10 @@ module Teodoro
|
|
215
215
|
@motivo_do_desligamento ||= evento['infoDeslig/mtvDeslig']
|
216
216
|
end
|
217
217
|
|
218
|
+
def trabalhador
|
219
|
+
@trabalhador ||= empresa.trabalhadores[cpf_do_trabalhador]
|
220
|
+
end
|
221
|
+
|
218
222
|
def categoria_do_trabalhador
|
219
223
|
contrato_de_emprego.categoria_do_trabalhador
|
220
224
|
end
|
@@ -13,12 +13,7 @@ module Teodoro
|
|
13
13
|
|
14
14
|
def registrar_inicio_de_contrato
|
15
15
|
contratos_de_trabalho_sem_vinculo.registrar_inicio_de_contrato(
|
16
|
-
inicio_de_contrato:
|
17
|
-
cpf_do_trabalhador: cpf_do_trabalhador,
|
18
|
-
categoria_do_trabalhador: categoria_do_trabalhador,
|
19
|
-
data_de_inicio: data_de_inicio,
|
20
|
-
recibo: numero_do_recibo
|
21
|
-
),
|
16
|
+
inicio_de_contrato: inicio_de_contrato,
|
22
17
|
afastamento: afastamento
|
23
18
|
)
|
24
19
|
end
|
@@ -27,16 +22,38 @@ module Teodoro
|
|
27
22
|
empresa.contratos_de_trabalho_sem_vinculo
|
28
23
|
end
|
29
24
|
|
30
|
-
def
|
31
|
-
@
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
25
|
+
def inicio_de_contrato
|
26
|
+
@inicio_de_contrato ||= Obj.new(
|
27
|
+
trabalhador: trabalhador,
|
28
|
+
categoria_do_trabalhador: evento['infoTSVInicio/codCateg'],
|
29
|
+
data_de_inicio: evento['infoTSVInicio/dtInicio'],
|
30
|
+
recibo: numero_do_recibo
|
31
|
+
)
|
36
32
|
end
|
37
33
|
|
38
|
-
def
|
39
|
-
@
|
34
|
+
def trabalhador # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
|
35
|
+
@trabalhador ||= Obj.new(
|
36
|
+
cpf: evento['trabalhador/cpfTrab'],
|
37
|
+
nis: evento['trabalhador/nisTrab'],
|
38
|
+
nome: evento['trabalhador/nmTrab'],
|
39
|
+
sexo: evento['trabalhador/sexo'],
|
40
|
+
raca_cor: evento['trabalhador/racaCor'],
|
41
|
+
estado_civil: evento['trabalhador/estCiv'],
|
42
|
+
grau_de_instrucao: evento['trabalhador/grauInstr'],
|
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
|
+
pais_de_nacionalidade: evento['trabalhador/nascimento/paisNac'],
|
49
|
+
nome_da_mae: evento['trabalhador/nascimento/nmMae'],
|
50
|
+
nome_do_pai: evento['trabalhador/nascimento/nmPai'],
|
51
|
+
reside_no_exterior?: evento['trabalhador/endereco/exterior'],
|
52
|
+
estrangeiro?: evento['trabalhador/trabEstrangeiro'],
|
53
|
+
data_de_chegada_ao_brasil: evento['trabalhador/trabEstrangeiro/dtChegada'],
|
54
|
+
casado_com_brasileiro: evento['trabalhador/trabEstrangeiro/casadoBr'],
|
55
|
+
filhos_brasileiros: evento['trabalhador/trabEstrangeiro/filhosBr']
|
56
|
+
)
|
40
57
|
end
|
41
58
|
|
42
59
|
def afastamento
|
@@ -49,18 +66,22 @@ module Teodoro
|
|
49
66
|
def dados_dos_arquivos_data # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
|
50
67
|
[
|
51
68
|
Obj.new(
|
52
|
-
nome:
|
69
|
+
nome: [
|
70
|
+
"TRA[#{trabalhador.cpf}]",
|
71
|
+
"[TSV_#{inicio_de_contrato.categoria_do_trabalhador}_#{inicio_de_contrato.data_de_inicio.delete('-')}]",
|
72
|
+
'-ADM'
|
73
|
+
].join,
|
53
74
|
itens_do_conteudo: [
|
54
75
|
# rubocop:disable Layout/LineLength
|
55
|
-
['ESX_CPF',
|
56
|
-
['ESX_CATEGORIA', categoria_do_trabalhador],
|
76
|
+
['ESX_CPF', trabalhador.cpf],
|
77
|
+
['ESX_CATEGORIA', inicio_de_contrato.categoria_do_trabalhador],
|
57
78
|
%w[ESX_SEMVINCULO 1],
|
58
|
-
['ESX_DATAADMISSAO', data_de_inicio, :data],
|
79
|
+
['ESX_DATAADMISSAO', inicio_de_contrato.data_de_inicio, :data],
|
59
80
|
['IdEventoXml', id_do_evento],
|
60
81
|
['NrReciboEventoOriginal'],
|
61
82
|
['EventoAdmissao_NrRecibo'],
|
62
83
|
['EventoAdmissao_InformacoesInicio_IndicativoCadastramentoInicial', evento['infoTSVInicio/cadIni']],
|
63
|
-
['EventoAdmissao_InformacoesInicio_DataInicio', data_de_inicio, :data],
|
84
|
+
['EventoAdmissao_InformacoesInicio_DataInicio', inicio_de_contrato.data_de_inicio, :data],
|
64
85
|
['SomenteLeitura'],
|
65
86
|
['UrlRetorno'],
|
66
87
|
['IdEvento'],
|
@@ -71,37 +92,37 @@ module Teodoro
|
|
71
92
|
['autocomplete_EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade'],
|
72
93
|
['DescricaoProcEmi', processo_de_emissao_do_evento],
|
73
94
|
['VerProc', versao_do_processo_de_emissao_do_evento],
|
74
|
-
['EventoAdmissao_InfoTrabalhador_Cpf',
|
75
|
-
['EventoAdmissao_InfoTrabalhador_Nome',
|
76
|
-
['EventoAdmissao_InfoTrabalhador_Nis',
|
77
|
-
['EventoAdmissao_InfoTrabalhador_Sexo',
|
95
|
+
['EventoAdmissao_InfoTrabalhador_Cpf', trabalhador.cpf],
|
96
|
+
['EventoAdmissao_InfoTrabalhador_Nome', trabalhador.nome],
|
97
|
+
['EventoAdmissao_InfoTrabalhador_Nis', trabalhador.nis],
|
98
|
+
['EventoAdmissao_InfoTrabalhador_Sexo', trabalhador.sexo],
|
78
99
|
['EventoAdmissao_InfoTrabalhador_Sexo_TEXT'],
|
79
|
-
['EventoAdmissao_InfoTrabalhador_RacaCor',
|
100
|
+
['EventoAdmissao_InfoTrabalhador_RacaCor', trabalhador.raca_cor],
|
80
101
|
['EventoAdmissao_InfoTrabalhador_RacaCor_TEXT'],
|
81
|
-
['EventoAdmissao_InfoTrabalhador_EstadoCivil',
|
102
|
+
['EventoAdmissao_InfoTrabalhador_EstadoCivil', trabalhador.estado_civil],
|
82
103
|
['EventoAdmissao_InfoTrabalhador_EstadoCivil_TEXT'],
|
83
|
-
['EventoAdmissao_InfoTrabalhador_GrauInstrucao',
|
104
|
+
['EventoAdmissao_InfoTrabalhador_GrauInstrucao', trabalhador.grau_de_instrucao],
|
84
105
|
['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
|
85
|
-
['EventoAdmissao_InfoTrabalhador_NomeSocial',
|
86
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio',
|
87
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT'],
|
88
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento',
|
89
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae',
|
90
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai',
|
91
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento',
|
106
|
+
['EventoAdmissao_InfoTrabalhador_NomeSocial', trabalhador.nome_social],
|
107
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio', trabalhador.codigo_do_municipio_de_nascimento],
|
108
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT', Municipios[trabalhador.codigo_do_municipio_de_nascimento]],
|
109
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', trabalhador.data_de_nascimento, :data],
|
110
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', trabalhador.nome_da_mae],
|
111
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai', trabalhador.nome_do_pai],
|
112
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', trabalhador.pais_de_nascimento],
|
92
113
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
|
93
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade',
|
114
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade', trabalhador.pais_de_nacionalidade],
|
94
115
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
|
95
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf',
|
116
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.uf_de_nascimento],
|
96
117
|
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
|
97
118
|
['SemNumeroLogradouroEnderecoBR'],
|
98
119
|
['ResideExterior', evento['trabalhador/endereco/exterior'], :bool],
|
99
120
|
['SemNumeroLogradouroEnderecoEX'],
|
100
|
-
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro',
|
121
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro', (trabalhador.casado_com_brasileiro if trabalhador.estrangeiro?)],
|
101
122
|
de_acordo_com_a_versao_do_leiaute['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao'],
|
102
123
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao_TEXT'],
|
103
|
-
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_DataChegada',
|
104
|
-
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_FilhosBrasileiros',
|
124
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_DataChegada', (trabalhador.data_de_chegada_ao_brasil if trabalhador.estrangeiro?), :data],
|
125
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_FilhosBrasileiros', (trabalhador.filhos_brasileiros if trabalhador.estrangeiro?)],
|
105
126
|
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh', evento['trabalhador/documentos/CNH/categoriaCnh']],
|
106
127
|
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh_TEXT'],
|
107
128
|
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataExpedicao', evento['trabalhador/documentos/CNH/dtExped'], :data],
|
@@ -163,7 +184,7 @@ module Teodoro
|
|
163
184
|
['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_NivelEstagio', evento['infoTSVInicio/infoComplementares/infoEstagiario/nivEstagio']],
|
164
185
|
['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_NrApoliceSeguro', evento['infoTSVInicio/infoComplementares/infoEstagiario/nrApol']],
|
165
186
|
['EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_ValorBolsa', evento['infoTSVInicio/infoComplementares/infoEstagiario/vlrBolsa'], :decimal],
|
166
|
-
['EventoAdmissao_InformacoesInicio_CodigoCategoria', categoria_do_trabalhador],
|
187
|
+
['EventoAdmissao_InformacoesInicio_CodigoCategoria', inicio_de_contrato.categoria_do_trabalhador],
|
167
188
|
['DescricaoProcEmi', processo_de_emissao_do_evento],
|
168
189
|
['IdEventoXml', id_do_evento],
|
169
190
|
['NrReciboEventoOriginal', numero_do_recibo],
|
@@ -65,7 +65,7 @@ module Teodoro
|
|
65
65
|
['InfoVinculo_Matricula'],
|
66
66
|
['InfoVinculo_TipoRegimeTrabalhista'],
|
67
67
|
['InfoVinculo_TipoRegimePrevidenciario'],
|
68
|
-
['InfoVinculo_InfoContrato_CodigoCategoria'],
|
68
|
+
['InfoVinculo_InfoContrato_CodigoCategoria', categoria_do_trabalhador],
|
69
69
|
de_acordo_com_a_versao_do_leiaute['InfoVinculo_InfoContrato_CodigoCargo'],
|
70
70
|
['InfoVinculo_InfoContrato_CodigoFuncao', evento['infoTSVAlteracao/infoComplementares/cargoFuncao/codFuncao']],
|
71
71
|
['InfoVinculo_InfoContrato_CodigoCarreira'],
|
@@ -16,7 +16,7 @@ module Teodoro
|
|
16
16
|
end
|
17
17
|
|
18
18
|
def contrato_de_trabalho
|
19
|
-
contratos_de_trabalho_sem_vinculo[
|
19
|
+
@contrato_de_trabalho ||= contratos_de_trabalho_sem_vinculo[
|
20
20
|
cpf_do_trabalhador: cpf_do_trabalhador,
|
21
21
|
categoria_do_trabalhador: categoria_do_trabalhador,
|
22
22
|
data: data_do_termino
|
@@ -39,7 +39,7 @@ module Teodoro
|
|
39
39
|
@categoria_do_trabalhador ||= evento['ideTrabSemVinculo/codCateg']
|
40
40
|
end
|
41
41
|
|
42
|
-
def dados_dos_arquivos_data # rubocop:disable Metrics/MethodLength
|
42
|
+
def dados_dos_arquivos_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
43
43
|
[
|
44
44
|
Obj.new(
|
45
45
|
nome: "TRA[#{cpf_do_trabalhador}][TSV_#{categoria_do_trabalhador}_#{data_de_inicio.delete('-')}]-GER",
|
@@ -56,7 +56,7 @@ module Teodoro
|
|
56
56
|
['EventoAdmissao_NrRecibo'],
|
57
57
|
['EventoAdmissao_DataAlteracaoCadastral'],
|
58
58
|
['EventoAdmissao_InformacoesInicio_IndicativoCadastramentoInicial'],
|
59
|
-
['EventoAdmissao_InformacoesInicio_DataInicio'],
|
59
|
+
['EventoAdmissao_InformacoesInicio_DataInicio', data_de_inicio, :data],
|
60
60
|
['EventoAdmissao_DataAlteracaoContratual'],
|
61
61
|
['SomenteLeitura'],
|
62
62
|
['UrlRetorno'],
|
@@ -70,37 +70,37 @@ module Teodoro
|
|
70
70
|
['EhAlteracaoContratual'],
|
71
71
|
['DescricaoProcEmi', processo_de_emissao_do_evento],
|
72
72
|
['VerProc', versao_do_processo_de_emissao_do_evento],
|
73
|
-
['EventoAdmissao_InfoTrabalhador_Cpf'],
|
74
|
-
['EventoAdmissao_InfoTrabalhador_Nome'],
|
75
|
-
['EventoAdmissao_InfoTrabalhador_Nis'],
|
76
|
-
['EventoAdmissao_InfoTrabalhador_Sexo'],
|
73
|
+
['EventoAdmissao_InfoTrabalhador_Cpf', cpf_do_trabalhador],
|
74
|
+
['EventoAdmissao_InfoTrabalhador_Nome', trabalhador.nome],
|
75
|
+
['EventoAdmissao_InfoTrabalhador_Nis', trabalhador.nis],
|
76
|
+
['EventoAdmissao_InfoTrabalhador_Sexo', trabalhador.sexo],
|
77
77
|
['EventoAdmissao_InfoTrabalhador_Sexo_TEXT'],
|
78
|
-
['EventoAdmissao_InfoTrabalhador_RacaCor'],
|
78
|
+
['EventoAdmissao_InfoTrabalhador_RacaCor', trabalhador.raca_cor],
|
79
79
|
['EventoAdmissao_InfoTrabalhador_RacaCor_TEXT'],
|
80
|
-
['EventoAdmissao_InfoTrabalhador_EstadoCivil'],
|
80
|
+
['EventoAdmissao_InfoTrabalhador_EstadoCivil', trabalhador.estado_civil],
|
81
81
|
['EventoAdmissao_InfoTrabalhador_EstadoCivil_TEXT'],
|
82
|
-
['EventoAdmissao_InfoTrabalhador_GrauInstrucao'],
|
82
|
+
['EventoAdmissao_InfoTrabalhador_GrauInstrucao', trabalhador.grau_de_instrucao],
|
83
83
|
['EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT'],
|
84
|
-
['EventoAdmissao_InfoTrabalhador_NomeSocial'],
|
85
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio'],
|
86
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT'],
|
87
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento'],
|
88
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae'],
|
89
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_NomePai'],
|
90
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento'],
|
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],
|
91
91
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
|
92
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade'],
|
92
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade', trabalhador.pais_de_nacionalidade],
|
93
93
|
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
|
94
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf'],
|
94
|
+
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf', trabalhador.uf_de_nascimento],
|
95
95
|
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT'],
|
96
96
|
['SemNumeroLogradouroEnderecoBR'],
|
97
|
-
['ResideExterior'],
|
97
|
+
['ResideExterior', trabalhador.reside_no_exterior?, :bool],
|
98
98
|
['SemNumeroLogradouroEnderecoEX'],
|
99
|
-
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro'],
|
99
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro', (trabalhador.casado_com_brasileiro if trabalhador.estrangeiro?)],
|
100
100
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao'],
|
101
101
|
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao_TEXT'],
|
102
|
-
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_DataChegada'],
|
103
|
-
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_FilhosBrasileiros'],
|
102
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_DataChegada', (trabalhador.data_de_chegada_ao_brasil if trabalhador.estrangeiro?), :data],
|
103
|
+
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_FilhosBrasileiros', (trabalhador.filhos_brasileiros if trabalhador.estrangeiro?)],
|
104
104
|
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh'],
|
105
105
|
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh_TEXT'],
|
106
106
|
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataExpedicao'],
|
@@ -159,6 +159,10 @@ module Teodoro
|
|
159
159
|
def data_de_inicio
|
160
160
|
contrato_de_trabalho.data_de_inicio
|
161
161
|
end
|
162
|
+
|
163
|
+
def trabalhador
|
164
|
+
@trabalhador ||= empresa.trabalhadores[cpf_do_trabalhador]
|
165
|
+
end
|
162
166
|
end
|
163
167
|
end
|
164
168
|
end
|