teodoro 0.8.0 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/teodoro.rb +8 -2
- data/lib/teodoro/arquivo_data.rb +81 -0
- data/lib/teodoro/arquivo_de_evento.rb +12 -0
- data/lib/teodoro/arquivo_de_evento_de_tabela.rb +27 -9
- data/lib/teodoro/arquivo_de_evento_nao_periodico.rb +36 -13
- data/lib/teodoro/arquivo_xml.rb +10 -7
- data/lib/teodoro/empresa.rb +4 -2
- data/lib/teodoro/leiaute/arquivo_s1000.rb +5 -7
- data/lib/teodoro/leiaute/arquivo_s1005.rb +4 -4
- data/lib/teodoro/leiaute/arquivo_s1010.rb +2 -2
- data/lib/teodoro/leiaute/arquivo_s1020.rb +2 -2
- data/lib/teodoro/leiaute/arquivo_s1030.rb +3 -3
- data/lib/teodoro/leiaute/arquivo_s1040.rb +2 -2
- data/lib/teodoro/leiaute/arquivo_s1050.rb +3 -3
- data/lib/teodoro/leiaute/arquivo_s1070.rb +3 -3
- data/lib/teodoro/leiaute/arquivo_s2190.rb +14 -13
- data/lib/teodoro/leiaute/arquivo_s2200.rb +163 -146
- data/lib/teodoro/leiaute/arquivo_s2205.rb +130 -160
- data/lib/teodoro/leiaute/arquivo_s2206.rb +76 -67
- data/lib/teodoro/leiaute/arquivo_s2230.rb +85 -84
- data/lib/teodoro/leiaute/arquivo_s2250.rb +34 -34
- data/lib/teodoro/leiaute/arquivo_s2299.rb +170 -164
- data/lib/teodoro/leiaute/arquivo_s2300.rb +137 -123
- data/lib/teodoro/leiaute/arquivo_s2306.rb +145 -144
- data/lib/teodoro/leiaute/arquivo_s2399.rb +120 -120
- data/lib/teodoro/leiaute/arquivo_s3000.rb +2 -6
- metadata +3 -5
- data/lib/teodoro/arquivo_de_evento_criador_de_arquivo_data.rb +0 -52
- data/lib/teodoro/arquivo_de_evento_processador_de_arquivo_data.rb +0 -30
- data/lib/teodoro/arquivo_de_evento_retificavel.rb +0 -23
@@ -5,13 +5,82 @@ module Teodoro
|
|
5
5
|
|
6
6
|
private
|
7
7
|
|
8
|
-
def
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
8
|
+
def dados_dos_arquivos_data # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
|
9
|
+
[
|
10
|
+
Obj.new(
|
11
|
+
nome: [
|
12
|
+
'TRA',
|
13
|
+
"[#{cpf_do_trabalhador}]",
|
14
|
+
"[EPG_#{matricula_do_trabalhador}_#{data_de_admissao.delete('-')}]",
|
15
|
+
"-ACO[#{data_da_alteracao.delete('-')}]"
|
16
|
+
].join,
|
17
|
+
itens_do_conteudo: [
|
18
|
+
# rubocop:disable Layout/LineLength
|
19
|
+
['ESX_CPF', cpf_do_trabalhador],
|
20
|
+
['ESX_MATRICULA', matricula_do_trabalhador],
|
21
|
+
%w[ESX_SEMVINCULO 0],
|
22
|
+
['ESX_DATAADMISSAO', data_de_admissao, :data],
|
23
|
+
['ESX_DATAALTERACAO', data_da_alteracao, :data],
|
24
|
+
['cpfTrabalhador', cpf_do_trabalhador],
|
25
|
+
%w[nomeTrabalhador nomeTrabalhador],
|
26
|
+
['IdentificacaoVinculo_Cpf', cpf_do_trabalhador],
|
27
|
+
['IdentificacaoVinculo_Matricula', matricula_do_trabalhador],
|
28
|
+
['TipoInscricaoEmpregador', tipo_de_inscricao_do_empregador],
|
29
|
+
['AlteracaoContratual_DataAlteracao', data_da_alteracao, :data],
|
30
|
+
['AlteracaoContratual_DataEfeito', evento['altContratual/dtEf'], :data],
|
31
|
+
['AlteracaoContratual_DescricaoAlteracao', evento['altContratual/dscAlt']],
|
32
|
+
['IdentificacaoVinculo_Nis', evento['ideVinculo/nisTrab']],
|
33
|
+
['IndicadorRetificacao'],
|
34
|
+
['IdEventoXml', id_do_evento],
|
35
|
+
['NrReciboEventoOriginal', numero_do_recibo],
|
36
|
+
['UrlRetorno'],
|
37
|
+
['idContrato'],
|
38
|
+
['SomenteLeitura'],
|
39
|
+
['IdEvento'],
|
40
|
+
['RequestVerificationToken'],
|
41
|
+
['IdContratoAlterado'],
|
42
|
+
['regTrab'],
|
43
|
+
['InformacoesContrato_CodigoCategoria', categoria_do_trabalhador],
|
44
|
+
['VinculoAlteracao_TipoRegimePrevidenciario', evento['altContratual/vinculo/tpRegPrev']],
|
45
|
+
['dataAdmissao', data_de_admissao, :data],
|
46
|
+
['InformacoesCeletista_TipoRegimeJornada', evento['altContratual/infoRegimeTrab/infoCeletista/tpRegJor']],
|
47
|
+
['InformacoesCeletista_NaturezaAtividade', evento['altContratual/infoRegimeTrab/infoCeletista/natAtividade']],
|
48
|
+
['FiltroCargo'],
|
49
|
+
['FiltroFuncao'],
|
50
|
+
['HorarioTela_Dia'],
|
51
|
+
['dataNomeacao'],
|
52
|
+
['DescricaoProcEmi', processo_de_emissao_do_evento],
|
53
|
+
['VerProc', recibo['processamento/versaoAppProcessamento']],
|
54
|
+
['FiltroEstabelecimentoLocalTrabalho'],
|
55
|
+
['NomeEstabelecimentoLocalTrabalho'],
|
56
|
+
['CodigoCBO'],
|
57
|
+
['InformacoesContrato_Remuneracao_UnidadeSalarioFixo', evento['altContratual/infoContrato/remuneracao/undSalFixo']],
|
58
|
+
['InformacoesContrato_TipoContrato', evento['altContratual/infoContrato/duracao/tpContr']],
|
59
|
+
['CodigoCNAE'],
|
60
|
+
*evento.*('altContratual/infoContrato/horContratual/horario').map.with_index(1) do |horario, seq|
|
61
|
+
[
|
62
|
+
["Horarios_#{seq}_CodigoHorarioContratual", horario['codHorContrat']],
|
63
|
+
["Horarios_#{seq}_Dia", horario['dia']]
|
64
|
+
]
|
65
|
+
end.sum([]),
|
66
|
+
*evento.*('altContratual/infoContrato/filiacaoSindical').map.with_index(1) do |filiacao, seq|
|
67
|
+
[
|
68
|
+
["InfoVinculo_InfoContrato_FiliacaoSindical_#{seq}_CnpjSindicatoTrabalhador", filiacao['cnpjSindTrab']]
|
69
|
+
]
|
70
|
+
end.sum([]),
|
71
|
+
['InformacoesContrato_Remuneracao_ValorSalarioFixo', evento['altContratual/infoContrato/remuneracao/vrSalFx'], :decimal],
|
72
|
+
['InformacoesContrato_LocalTrabalho_LocalTrabalhoGeral_TipoInscricao', evento['altContratual/infoContrato/localTrabalho/localTrabGeral/tpInsc']],
|
73
|
+
['InformacoesContrato_LocalTrabalho_LocalTrabalhoGeral_NumeroInscricao', evento['altContratual/infoContrato/localTrabalho/localTrabGeral/nrInsc']],
|
74
|
+
['InformacoesContrato_HorarioContratual_TipoJornada', evento['altContratual/infoContrato/horContratual/tpJornada']],
|
75
|
+
['InformacoesContrato_HorarioContratual_JornadaTempoParcial', evento['altContratual/infoContrato/horContratual/tmpParc']],
|
76
|
+
['InformacoesContrato_HorarioContratual_QuantidadedHorasSemanal', evento['altContratual/infoContrato/horContratual/qtdHrsSem'], :decimal],
|
77
|
+
['InformacoesContrato_HorarioContratual_DescricaoTipoJornada', evento['altContratual/infoContrato/horContratual/dscTpJorn']],
|
78
|
+
['InformacoesContrato_CodigoCargo', evento['altContratual/infoContrato/codCargo']],
|
79
|
+
['InformacoesContrato_DataTermino', evento['altContratual/infoContrato/duracao/dtTerm'], :data]
|
80
|
+
# rubocop:enable Layout/LineLength
|
81
|
+
]
|
82
|
+
)
|
83
|
+
]
|
15
84
|
end
|
16
85
|
|
17
86
|
def cpf_do_trabalhador
|
@@ -38,66 +107,6 @@ module Teodoro
|
|
38
107
|
evento['altContratual/dtAlteracao']
|
39
108
|
end
|
40
109
|
|
41
|
-
def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
|
42
|
-
[
|
43
|
-
# rubocop:disable Layout/LineLength
|
44
|
-
['ESX_CPF', cpf_do_trabalhador],
|
45
|
-
['ESX_MATRICULA', matricula_do_trabalhador],
|
46
|
-
%w[ESX_SEMVINCULO 0],
|
47
|
-
['ESX_DATAADMISSAO', [data_de_admissao, :data]],
|
48
|
-
['ESX_DATAALTERACAO', [data_da_alteracao, :data]],
|
49
|
-
['cpfTrabalhador', cpf_do_trabalhador],
|
50
|
-
%w[nomeTrabalhador nomeTrabalhador],
|
51
|
-
['IdentificacaoVinculo_Cpf', cpf_do_trabalhador],
|
52
|
-
['IdentificacaoVinculo_Matricula', matricula_do_trabalhador],
|
53
|
-
['TipoInscricaoEmpregador', tipo_de_inscricao_do_empregador],
|
54
|
-
['AlteracaoContratual_DataAlteracao', [data_da_alteracao, :data]],
|
55
|
-
['AlteracaoContratual_DataEfeito', [evento['altContratual/dtEf'], :data]],
|
56
|
-
['AlteracaoContratual_DescricaoAlteracao', evento['altContratual/dscAlt']],
|
57
|
-
['IdentificacaoVinculo_Nis', evento['ideVinculo/nisTrab']],
|
58
|
-
['IndicadorRetificacao'],
|
59
|
-
['IdEventoXml', id_do_evento],
|
60
|
-
['NrReciboEventoOriginal', numero_do_recibo],
|
61
|
-
['UrlRetorno'],
|
62
|
-
['idContrato'],
|
63
|
-
['SomenteLeitura'],
|
64
|
-
['IdEvento'],
|
65
|
-
['RequestVerificationToken'],
|
66
|
-
['IdContratoAlterado'],
|
67
|
-
['regTrab'],
|
68
|
-
['InformacoesContrato_CodigoCategoria', categoria_do_trabalhador],
|
69
|
-
['VinculoAlteracao_TipoRegimePrevidenciario', evento['altContratual/vinculo/tpRegPrev']],
|
70
|
-
['dataAdmissao', [data_de_admissao, :data]],
|
71
|
-
['InformacoesCeletista_TipoRegimeJornada', evento['altContratual/infoRegimeTrab/infoCeletista/tpRegJor']],
|
72
|
-
['InformacoesCeletista_NaturezaAtividade', evento['altContratual/infoRegimeTrab/infoCeletista/natAtividade']],
|
73
|
-
['FiltroCargo'],
|
74
|
-
['FiltroFuncao'],
|
75
|
-
['HorarioTela_Dia'],
|
76
|
-
['dataNomeacao'],
|
77
|
-
['DescricaoProcEmi', processo_de_emissao_do_evento],
|
78
|
-
['VerProc', recibo['processamento/versaoAppProcessamento']],
|
79
|
-
['FiltroEstabelecimentoLocalTrabalho'],
|
80
|
-
['NomeEstabelecimentoLocalTrabalho'],
|
81
|
-
['CodigoCBO'],
|
82
|
-
['InformacoesContrato_Remuneracao_UnidadeSalarioFixo', evento['altContratual/infoContrato/remuneracao/undSalFixo']],
|
83
|
-
['InformacoesContrato_TipoContrato', evento['altContratual/infoContrato/duracao/tpContr']],
|
84
|
-
['CodigoCNAE'],
|
85
|
-
*evento.*('altContratual/infoContrato/horContratual/horario').map.with_index(1) do |horario, seq|
|
86
|
-
[
|
87
|
-
["Horarios_#{seq}_CodigoHorarioContratual", horario['codHorContrat']],
|
88
|
-
["Horarios_#{seq}_Dia", horario['dia']]
|
89
|
-
]
|
90
|
-
end.sum([]),
|
91
|
-
*evento.*('altContratual/infoContrato/filiacaoSindical').map.with_index(1) do |filiacao, seq|
|
92
|
-
[
|
93
|
-
["InfoVinculo_InfoContrato_FiliacaoSindical_#{seq}_CnpjSindicatoTrabalhador", filiacao['cnpjSindTrab']]
|
94
|
-
]
|
95
|
-
end.sum([]),
|
96
|
-
['InformacoesContrato_Remuneracao_ValorSalarioFixo', evento['altContratual/infoContrato/remuneracao/vrSalFx']]
|
97
|
-
# rubocop:enable Layout/LineLength
|
98
|
-
]
|
99
|
-
end
|
100
|
-
|
101
110
|
def categoria_do_trabalhador
|
102
111
|
@categoria_do_trabalhador ||= evento['altContratual/infoContrato/codCateg']
|
103
112
|
end
|
@@ -3,14 +3,14 @@ module Teodoro
|
|
3
3
|
class ArquivoS2230 # rubocop:disable Metrics/ClassLength
|
4
4
|
include ArquivoDeEventoNaoPeriodico
|
5
5
|
|
6
|
-
|
6
|
+
private
|
7
|
+
|
8
|
+
def criar_arquivos_data
|
7
9
|
super
|
8
10
|
|
9
11
|
registrar_inicio_do_afastamento if somente_inicio_do_afastamento?
|
10
12
|
end
|
11
13
|
|
12
|
-
private
|
13
|
-
|
14
14
|
def somente_inicio_do_afastamento?
|
15
15
|
inicio_do_afastamento? && !termino_do_afastamento?
|
16
16
|
end
|
@@ -88,23 +88,92 @@ module Teodoro
|
|
88
88
|
empresa.contratos_de_trabalho_sem_vinculo
|
89
89
|
end
|
90
90
|
|
91
|
-
def nome_do_arquivo_data
|
92
|
-
@nome_do_arquivo_data ||= [
|
93
|
-
"TRA[#{cpf_do_trabalhador}]",
|
94
|
-
"[#{empregado? ? nome_do_arquivo_data_identif_do_empregado : nome_do_arquivo_data_identif_do_tsv}]-",
|
95
|
-
termino_do_afastamento? ? 'TAF' : 'IAF',
|
96
|
-
'[',
|
97
|
-
inicio_do_afastamento? ? data_de_inicio_do_afastamento.delete('-') : 'SemIni',
|
98
|
-
'_',
|
99
|
-
termino_do_afastamento? ? data_de_termino_do_afastamento.delete('-') : 'SemFim',
|
100
|
-
']'
|
101
|
-
].join
|
102
|
-
end
|
103
|
-
|
104
91
|
def cpf_do_trabalhador
|
105
92
|
@cpf_do_trabalhador ||= evento['ideVinculo/cpfTrab']
|
106
93
|
end
|
107
94
|
|
95
|
+
def categoria_do_trabalhador
|
96
|
+
@categoria_do_trabalhador ||= evento['ideVinculo/codCateg']
|
97
|
+
end
|
98
|
+
|
99
|
+
def data_de_termino_do_afastamento
|
100
|
+
@data_de_termino_do_afastamento ||= termino_do_afastamento['dtTermAfast']
|
101
|
+
end
|
102
|
+
|
103
|
+
def dados_dos_arquivos_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize, Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity
|
104
|
+
[
|
105
|
+
Obj.new(
|
106
|
+
nome: [
|
107
|
+
"TRA[#{cpf_do_trabalhador}]",
|
108
|
+
"[#{empregado? ? nome_do_arquivo_data_identif_do_empregado : nome_do_arquivo_data_identif_do_tsv}]-",
|
109
|
+
termino_do_afastamento? ? 'TAF' : 'IAF',
|
110
|
+
'[',
|
111
|
+
inicio_do_afastamento? ? data_de_inicio_do_afastamento.delete('-') : 'SemIni',
|
112
|
+
'_',
|
113
|
+
termino_do_afastamento? ? data_de_termino_do_afastamento.delete('-') : 'SemFim',
|
114
|
+
']'
|
115
|
+
].join,
|
116
|
+
itens_do_conteudo: [
|
117
|
+
# rubocop:disable Layout/LineLength
|
118
|
+
['ESX_CPF', cpf_do_trabalhador],
|
119
|
+
['ESX_MATRICULA', matricula_do_trabalhador],
|
120
|
+
['ESX_DATAADMISSAO'],
|
121
|
+
%w[ESX_SEMVINCULO 0],
|
122
|
+
['ESX_INICIO', data_de_inicio_do_afastamento, :data_aaaammdd],
|
123
|
+
(['ESX_TERMINO', data_de_termino_do_afastamento, :data_aaaammdd] if termino_do_afastamento?),
|
124
|
+
['IniAfastamento_DataInicioAfastamento', (data_de_inicio_do_afastamento if inicio_do_afastamento?), :data],
|
125
|
+
(['FimAfastamento_DataTerminoAfastamento', data_de_termino_do_afastamento, :data] if termino_do_afastamento?),
|
126
|
+
['IniAfastamento_CodMotivoAfastamento', codigo_do_motivo_de_afastamento],
|
127
|
+
['IniAfastamento_CodMotivoAfastamento_TEXT'],
|
128
|
+
['IniAfastamento_InfoMesmoMotivo', evento['infoAfastamento/iniAfastamento/infoMesmoMtv']],
|
129
|
+
['IniAfastamento_TipoAcidenteTransito', evento['infoAfastamento/iniAfastamento/tpAcidTransito']],
|
130
|
+
['IniAfastamento_TipoAcidenteTransito_TEXT'],
|
131
|
+
['IniAfastamento_Observacao', evento['infoAfastamento/iniAfastamento/observacao']],
|
132
|
+
['IdEventoXml', id_do_evento],
|
133
|
+
['NrReciboEventoOriginal', numero_do_recibo],
|
134
|
+
['IndicadorRetificacao', evento['ideEvento/indRetif']],
|
135
|
+
['DataTerminoAfastamentoInformada', termino_do_afastamento?, :bool],
|
136
|
+
['ContratoSemVinculo'],
|
137
|
+
['CodMotivoAfastamentoRetif'],
|
138
|
+
['TipoEventoCadastro'],
|
139
|
+
['IdEventoAfastamento'],
|
140
|
+
(['DataFim'] if termino_do_afastamento?),
|
141
|
+
['DataInicio'],
|
142
|
+
['CodigoMotivo', codigo_do_motivo_de_afastamento],
|
143
|
+
['Motivo'],
|
144
|
+
['ExibirBotoes'],
|
145
|
+
['CheckPreencherAcidenteTransito'],
|
146
|
+
['DesejaIncluirInfoAtestado'],
|
147
|
+
['DescricaoProcEmi', processo_de_emissao_do_evento],
|
148
|
+
['VerProc', recibo['processamento/versaoAppProcessamento']],
|
149
|
+
['IdContrato'],
|
150
|
+
['PreencherCID'],
|
151
|
+
['PreencherAcidenteTransito'],
|
152
|
+
['PreencherEmpregadoCedido'],
|
153
|
+
['PreencherMandatoSindical'],
|
154
|
+
['SomenteLeitura'],
|
155
|
+
['UrlRetorno'],
|
156
|
+
['RequestVerificationToken'],
|
157
|
+
(['PreencherDataFimAfastamento'] if termino_do_afastamento?),
|
158
|
+
['checkbox_preencher_grupo0'],
|
159
|
+
*evento.*('infoAfastamento/iniAfastamento/infoAtestado').map.with_index(1) do |atestado, seq|
|
160
|
+
[
|
161
|
+
["IniAfastamento_ListaInfoAtestado_#{seq}_CodigoCID", atestado['codCID']],
|
162
|
+
["IniAfastamento_ListaInfoAtestado_#{seq}_DescricaoCID"],
|
163
|
+
["IniAfastamento_ListaInfoAtestado_#{seq}_QuantidadeDiasAfastados", atestado['qtdDiasAfast']],
|
164
|
+
["IniAfastamento_ListaInfoAtestado_#{seq}_Emitente_NomeEmitente", atestado['emitente/nmEmit']],
|
165
|
+
["IniAfastamento_ListaInfoAtestado_#{seq}_Emitente_IdOrgaoClasse", atestado['emitente/ideOC']],
|
166
|
+
["IniAfastamento_ListaInfoAtestado_#{seq}_Emitente_NumeroOrgaoClasse", atestado['emitente/nrOc']],
|
167
|
+
["IniAfastamento_ListaInfoAtestado_#{seq}_Emitente_UFOrgaoClasse", atestado['emitente/ufOC']],
|
168
|
+
["IniAfastamento_ListaInfoAtestado_#{seq}_Emitente_DescricaoOrgaoClasse"]
|
169
|
+
]
|
170
|
+
end.sum([])
|
171
|
+
# rubocop:enable Layout/LineLength
|
172
|
+
].compact
|
173
|
+
)
|
174
|
+
]
|
175
|
+
end
|
176
|
+
|
108
177
|
def nome_do_arquivo_data_identif_do_empregado
|
109
178
|
"EPG_#{matricula_do_trabalhador}_#{data_de_admissao.delete('-')}"
|
110
179
|
end
|
@@ -117,77 +186,9 @@ module Teodoro
|
|
117
186
|
"TSV_#{categoria_do_trabalhador}_#{data_de_inicio_do_contrato_de_trabalho.delete('-')}"
|
118
187
|
end
|
119
188
|
|
120
|
-
def categoria_do_trabalhador
|
121
|
-
@categoria_do_trabalhador ||= evento['ideVinculo/codCateg']
|
122
|
-
end
|
123
|
-
|
124
189
|
def data_de_inicio_do_contrato_de_trabalho
|
125
190
|
contrato_de_trabalho_sem_vinculo.data_de_inicio
|
126
191
|
end
|
127
|
-
|
128
|
-
def data_de_termino_do_afastamento
|
129
|
-
@data_de_termino_do_afastamento ||= termino_do_afastamento['dtTermAfast']
|
130
|
-
end
|
131
|
-
|
132
|
-
def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
133
|
-
[
|
134
|
-
# rubocop:disable Layout/LineLength
|
135
|
-
['ESX_CPF', cpf_do_trabalhador],
|
136
|
-
['ESX_MATRICULA', matricula_do_trabalhador],
|
137
|
-
['ESX_DATAADMISSAO'],
|
138
|
-
%w[ESX_SEMVINCULO 0],
|
139
|
-
['ESX_INICIO', [data_de_inicio_do_afastamento, :data_aaaammdd]],
|
140
|
-
(['ESX_TERMINO', [data_de_termino_do_afastamento, :data_aaaammdd]] if termino_do_afastamento?),
|
141
|
-
['IniAfastamento_DataInicioAfastamento', ([data_de_inicio_do_afastamento, :data] if inicio_do_afastamento?)],
|
142
|
-
(['FimAfastamento_DataTerminoAfastamento', [data_de_termino_do_afastamento, :data]] if termino_do_afastamento?),
|
143
|
-
['IniAfastamento_CodMotivoAfastamento', codigo_do_motivo_de_afastamento],
|
144
|
-
['IniAfastamento_CodMotivoAfastamento_TEXT'],
|
145
|
-
['IniAfastamento_InfoMesmoMotivo', evento['infoAfastamento/iniAfastamento/infoMesmoMtv']],
|
146
|
-
['IniAfastamento_TipoAcidenteTransito', evento['infoAfastamento/iniAfastamento/tpAcidTransito']],
|
147
|
-
['IniAfastamento_TipoAcidenteTransito_TEXT'],
|
148
|
-
['IniAfastamento_Observacao', evento['infoAfastamento/iniAfastamento/observacao']],
|
149
|
-
['IdEventoXml', id_do_evento],
|
150
|
-
['NrReciboEventoOriginal', numero_do_recibo],
|
151
|
-
['IndicadorRetificacao', evento['ideEvento/indRetif']],
|
152
|
-
['DataTerminoAfastamentoInformada', [termino_do_afastamento?, :bool]],
|
153
|
-
['ContratoSemVinculo'],
|
154
|
-
['CodMotivoAfastamentoRetif'],
|
155
|
-
['TipoEventoCadastro'],
|
156
|
-
['IdEventoAfastamento'],
|
157
|
-
(['DataFim'] if termino_do_afastamento?),
|
158
|
-
['DataInicio'],
|
159
|
-
['CodigoMotivo', codigo_do_motivo_de_afastamento],
|
160
|
-
['Motivo'],
|
161
|
-
['ExibirBotoes'],
|
162
|
-
['CheckPreencherAcidenteTransito'],
|
163
|
-
['DesejaIncluirInfoAtestado'],
|
164
|
-
['DescricaoProcEmi', processo_de_emissao_do_evento],
|
165
|
-
['VerProc', recibo['processamento/versaoAppProcessamento']],
|
166
|
-
['IdContrato'],
|
167
|
-
['PreencherCID'],
|
168
|
-
['PreencherAcidenteTransito'],
|
169
|
-
['PreencherEmpregadoCedido'],
|
170
|
-
['PreencherMandatoSindical'],
|
171
|
-
['SomenteLeitura'],
|
172
|
-
['UrlRetorno'],
|
173
|
-
['RequestVerificationToken'],
|
174
|
-
(['PreencherDataFimAfastamento'] if termino_do_afastamento?),
|
175
|
-
['checkbox_preencher_grupo0'],
|
176
|
-
*evento.*('infoAfastamento/iniAfastamento/infoAtestado').map.with_index(1) do |atestado, seq|
|
177
|
-
[
|
178
|
-
["IniAfastamento_ListaInfoAtestado_#{seq}_CodigoCID", atestado['codCID']],
|
179
|
-
["IniAfastamento_ListaInfoAtestado_#{seq}_DescricaoCID"],
|
180
|
-
["IniAfastamento_ListaInfoAtestado_#{seq}_QuantidadeDiasAfastados", atestado['qtdDiasAfast']],
|
181
|
-
["IniAfastamento_ListaInfoAtestado_#{seq}_Emitente_NomeEmitente", atestado['emitente/nmEmit']],
|
182
|
-
["IniAfastamento_ListaInfoAtestado_#{seq}_Emitente_IdOrgaoClasse", atestado['emitente/ideOC']],
|
183
|
-
["IniAfastamento_ListaInfoAtestado_#{seq}_Emitente_NumeroOrgaoClasse", atestado['emitente/nrOc']],
|
184
|
-
["IniAfastamento_ListaInfoAtestado_#{seq}_Emitente_UFOrgaoClasse", atestado['emitente/ufOC']],
|
185
|
-
["IniAfastamento_ListaInfoAtestado_#{seq}_Emitente_DescricaoOrgaoClasse"]
|
186
|
-
]
|
187
|
-
end.sum([])
|
188
|
-
# rubocop:enable Layout/LineLength
|
189
|
-
].compact
|
190
|
-
end
|
191
192
|
end
|
192
193
|
end
|
193
194
|
end
|
@@ -5,9 +5,40 @@ module Teodoro
|
|
5
5
|
|
6
6
|
private
|
7
7
|
|
8
|
-
def
|
9
|
-
|
10
|
-
|
8
|
+
def dados_dos_arquivos_data # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
9
|
+
[
|
10
|
+
Obj.new(
|
11
|
+
nome: "TRA[#{cpf_do_trabalhador}][EPG_#{matricula_do_trabalhador}_#{data_de_admissao.delete('-')}]-AVI",
|
12
|
+
itens_do_conteudo: [
|
13
|
+
# rubocop:disable Layout/LineLength
|
14
|
+
['ESX_CPF', cpf_do_trabalhador],
|
15
|
+
['ESX_MATRICULA', matricula_do_trabalhador],
|
16
|
+
%w[ESX_SEMVINCULO 0],
|
17
|
+
['ESX_DATAADMISSAO', data_de_admissao, :data],
|
18
|
+
['OperacaoAvisoPrevio'],
|
19
|
+
['MostrarCancelamento'],
|
20
|
+
['MostrarAvisoPrevio'],
|
21
|
+
['IdContrato'],
|
22
|
+
['IdCancelamentoAvisoPrevio'],
|
23
|
+
['BloquearCodigo'],
|
24
|
+
['BloquearAntigoPeriodoValidade'],
|
25
|
+
['IdeVinculo_Cpf'],
|
26
|
+
['NomeTrabalhador'],
|
27
|
+
['IdeVinculo_Matricula', matricula_do_trabalhador],
|
28
|
+
['InfoAvisoPrevio_DetalhamentoAvisoPrevio_TipoAvisoPrevio', evento['infoAvPrevio/detAvPrevio/tpAvPrevio']],
|
29
|
+
['InfoAvisoPrevio_DetalhamentoAvisoPrevio_TipoAvisoPrevio_TEXT'],
|
30
|
+
['InfoAvisoPrevio_DetalhamentoAvisoPrevio_DataAvisoPrevio', evento['infoAvPrevio/detAvPrevio/dtAvPrv'], :data],
|
31
|
+
['InfoAvisoPrevio_DetalhamentoAvisoPrevio_DataPrevistaDesligamento', evento['infoAvPrevio/detAvPrevio/dtPrevDeslig'], :data],
|
32
|
+
['InfoAvisoPrevio_DetalhamentoAvisoPrevio_Observacao', evento['infoAvPrevio/detAvPrevio/observacao']],
|
33
|
+
['IdEventoXml', id_do_evento],
|
34
|
+
['NrReciboEventoOriginal', numero_do_recibo],
|
35
|
+
['RequestVerificationToken'],
|
36
|
+
['DescricaoProcEmi', processo_de_emissao_do_evento],
|
37
|
+
['VerProc', recibo['processamento/versaoAppProcessamento']]
|
38
|
+
# rubocop:enable Layout/LineLength
|
39
|
+
]
|
40
|
+
)
|
41
|
+
]
|
11
42
|
end
|
12
43
|
|
13
44
|
def cpf_do_trabalhador
|
@@ -29,37 +60,6 @@ module Teodoro
|
|
29
60
|
def contratos_de_emprego
|
30
61
|
empresa.contratos_de_emprego
|
31
62
|
end
|
32
|
-
|
33
|
-
def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/MethodLength
|
34
|
-
[
|
35
|
-
# rubocop:disable Layout/LineLength
|
36
|
-
['ESX_CPF', cpf_do_trabalhador],
|
37
|
-
['ESX_MATRICULA', matricula_do_trabalhador],
|
38
|
-
%w[ESX_SEMVINCULO 0],
|
39
|
-
['ESX_DATAADMISSAO', [data_de_admissao, :data]],
|
40
|
-
['OperacaoAvisoPrevio'],
|
41
|
-
['MostrarCancelamento'],
|
42
|
-
['MostrarAvisoPrevio'],
|
43
|
-
['IdContrato'],
|
44
|
-
['IdCancelamentoAvisoPrevio'],
|
45
|
-
['BloquearCodigo'],
|
46
|
-
['BloquearAntigoPeriodoValidade'],
|
47
|
-
['IdeVinculo_Cpf'],
|
48
|
-
['NomeTrabalhador'],
|
49
|
-
['IdeVinculo_Matricula', matricula_do_trabalhador],
|
50
|
-
['InfoAvisoPrevio_DetalhamentoAvisoPrevio_TipoAvisoPrevio', evento['infoAvPrevio/detAvPrevio/tpAvPrevio']],
|
51
|
-
['InfoAvisoPrevio_DetalhamentoAvisoPrevio_TipoAvisoPrevio_TEXT'],
|
52
|
-
['InfoAvisoPrevio_DetalhamentoAvisoPrevio_DataAvisoPrevio', [evento['infoAvPrevio/detAvPrevio/dtAvPrv'], :data]],
|
53
|
-
['InfoAvisoPrevio_DetalhamentoAvisoPrevio_DataPrevistaDesligamento', [evento['infoAvPrevio/detAvPrevio/dtPrevDeslig'], :data]],
|
54
|
-
['InfoAvisoPrevio_DetalhamentoAvisoPrevio_Observacao', evento['infoAvPrevio/detAvPrevio/observacao']],
|
55
|
-
['IdEventoXml', id_do_evento],
|
56
|
-
['NrReciboEventoOriginal', numero_do_recibo],
|
57
|
-
['RequestVerificationToken'],
|
58
|
-
['DescricaoProcEmi', processo_de_emissao_do_evento],
|
59
|
-
['VerProc', recibo['processamento/versaoAppProcessamento']]
|
60
|
-
# rubocop:enable Layout/LineLength
|
61
|
-
]
|
62
|
-
end
|
63
63
|
end
|
64
64
|
end
|
65
65
|
end
|
@@ -3,14 +3,15 @@ module Teodoro
|
|
3
3
|
class ArquivoS2299 # rubocop:disable Metrics/ClassLength
|
4
4
|
include ArquivoDeEventoNaoPeriodico
|
5
5
|
|
6
|
-
|
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
|
@@ -27,181 +28,186 @@ module Teodoro
|
|
27
28
|
@data_de_desligamento ||= evento['infoDeslig/dtDeslig']
|
28
29
|
end
|
29
30
|
|
30
|
-
def
|
31
|
-
|
32
|
-
"TRA[#{cpf_do_trabalhador}][EPG_#{matricula_do_trabalhador}_#{data_de_admissao.delete('-')}]-GER"
|
31
|
+
def avisar_que_tem_mais_de_um_demonstrativo
|
32
|
+
puts "\n #{Rainbow('mais de um demonstrativo (considerado apenas o primeiro)').yellow}"
|
33
33
|
end
|
34
34
|
|
35
|
-
def
|
36
|
-
|
35
|
+
def mais_de_um_demontrativo?
|
36
|
+
identificadores_de_demonstrativo.size > 1
|
37
37
|
end
|
38
38
|
|
39
39
|
def matricula_do_trabalhador
|
40
40
|
@matricula_do_trabalhador ||= evento['ideVinculo/matricula']
|
41
41
|
end
|
42
42
|
|
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']
|
199
|
+
end
|
200
|
+
|
43
201
|
def data_de_admissao
|
44
202
|
contrato_de_emprego.data_de_admissao
|
45
203
|
end
|
46
204
|
|
47
|
-
def
|
48
|
-
|
49
|
-
# rubocop:disable Layout/LineLength
|
50
|
-
['ESX_CPF', cpf_do_trabalhador],
|
51
|
-
['ESX_MATRICULA', matricula_do_trabalhador],
|
52
|
-
%w[ESX_SEMVINCULO 0],
|
53
|
-
['ESX_DATAADMISSAO'],
|
54
|
-
['ESX_DATADESLIGAMENTO', [data_de_desligamento, :data]],
|
55
|
-
['ESX_INFOWEB_RESCISAO_IDEDMDEV', identificador_do_demonstrativo],
|
56
|
-
['ESX_INFOWEB_RESCISAO_RECIBO', numero_do_recibo],
|
57
|
-
['ESX_INFOWEB_RESCISAO_MOTIVO', evento['infoDeslig/mtvDeslig']],
|
58
|
-
['ESX_INFOWEB_RESCISAO_MOTIVO_TEXT'],
|
59
|
-
['IdEventoXml'],
|
60
|
-
['NrReciboEventoOriginal'],
|
61
|
-
['EventoAdmissao_TipoEventoEnviado'],
|
62
|
-
['TipoInscricaoEmpregador', tipo_de_inscricao_do_empregador],
|
63
|
-
['RequestVerificationToken'],
|
64
|
-
['SomenteLeitura'],
|
65
|
-
['VisualizarDadosCadastrais'],
|
66
|
-
['UrlRetorno'],
|
67
|
-
['visualizar'],
|
68
|
-
['EhVisualizacao'],
|
69
|
-
['idContrato'],
|
70
|
-
['IdEvento'],
|
71
|
-
['FiltroCargo'],
|
72
|
-
['FiltroFuncao'],
|
73
|
-
['FiltroHorario'],
|
74
|
-
['HorarioTela_CodigoHorarioContratual'],
|
75
|
-
['DescricaoProcEmi', processo_de_emissao_do_evento],
|
76
|
-
['VerProc', versao_do_aplicativo_de_processamento_do_evento],
|
77
|
-
['cpfTrabalhador'],
|
78
|
-
['nomeTrabalhador'],
|
79
|
-
['TipoRegistroAdmissao'],
|
80
|
-
['HorarioTela_Dia'],
|
81
|
-
['NomeEstabelecimentoLocalTrabalho'],
|
82
|
-
['EventoAdmissao_InfoTrabalhador_Cpf'],
|
83
|
-
['EventoAdmissao_InfoTrabalhador_Nome'],
|
84
|
-
['EventoAdmissao_InfoTrabalhador_Nis'],
|
85
|
-
['EventoAdmissao_InfoTrabalhador_Sexo'],
|
86
|
-
['EventoAdmissao_InfoTrabalhador_Sexo_TEXT'],
|
87
|
-
['EventoAdmissao_InfoTrabalhador_RacaCor'],
|
88
|
-
['EventoAdmissao_InfoTrabalhador_RacaCor_TEXT'],
|
89
|
-
['EventoAdmissao_InfoTrabalhador_EstadoCivil'],
|
90
|
-
['EventoAdmissao_InfoTrabalhador_EstadoCivil_TEXT'],
|
91
|
-
['EventoAdmissao_InfoTrabalhador_GrauInstrucao'],
|
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'],
|
101
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT'],
|
102
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade'],
|
103
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT'],
|
104
|
-
['EventoAdmissao_InfoTrabalhador_Nascimento_Uf'],
|
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'],
|
113
|
-
['SemNumeroLogradouroEnderecoBR'],
|
114
|
-
['EventoAdmissao_EnderecoResidencialBR_TipoLogradouro'],
|
115
|
-
['EventoAdmissao_EnderecoResidencialBR_TipoLogradouro_TEXT'],
|
116
|
-
['EventoAdmissao_EnderecoResidencialBR_Uf'],
|
117
|
-
['EventoAdmissao_EnderecoResidencialBR_Uf_TEXT'],
|
118
|
-
['ResideExterior'],
|
119
|
-
['SemNumeroLogradouroEnderecoEX'],
|
120
|
-
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro'],
|
121
|
-
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_DataChegada'],
|
122
|
-
['EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_FilhosBrasileiros'],
|
123
|
-
['EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh'],
|
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'],
|
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'],
|
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'],
|
158
|
-
['CodigoCBO'],
|
159
|
-
['CodigoCNAE'],
|
160
|
-
['InfoVinculo_Matricula'],
|
161
|
-
['InfoVinculo_TipoRegimeTrabalhista'],
|
162
|
-
['InfoVinculo_TipoRegimePrevidenciario'],
|
163
|
-
['InfoVinculo_InfoContrato_CodigoCategoria', categoria_do_trabalhador],
|
164
|
-
['InfoVinculo_InfoContrato_CodigoCargo'],
|
165
|
-
['InfoVinculo_InfoContrato_CodigoFuncao'],
|
166
|
-
['InfoVinculo_InfoContrato_Duracao_TipoContrato'],
|
167
|
-
['InfoVinculo_InfoContrato_Duracao_DataTermino'],
|
168
|
-
['InfoVinculo_DataInicioAfastamento'],
|
169
|
-
['InfoVinculo_CodigoMotivoAfastamento'],
|
170
|
-
['InfoVinculo_InfoContrato_Remuneracao_UnidadeSalarioFixo'],
|
171
|
-
['InfoVinculo_InfoContrato_Remuneracao_ValorSalarioFixo'],
|
172
|
-
['InfoVinculo_InfoContrato_Remuneracao_DescricaoSalarioVariavel'],
|
173
|
-
['InfoVinculo_InfoContrato_HorarioContratual_DescricaoTipoJornada'],
|
174
|
-
['InfoVinculo_InfoContrato_HorarioContratual_JornadaTempoParcial'],
|
175
|
-
['InfoVinculo_InfoContrato_HorarioContratual_QuantidadedHorasSemanal'],
|
176
|
-
['InfoVinculo_InfoContrato_HorarioContratual_TipoJornada'],
|
177
|
-
['InfoVinculo_SucessaoVinculo_CnpjEmpregadorAnterior'],
|
178
|
-
['InfoVinculo_SucessaoVinculo_MatriculaAnterior'],
|
179
|
-
['InfoVinculo_SucessaoVinculo_Observacao'],
|
180
|
-
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_CnpjSindicatoCategoriaProfissional'],
|
181
|
-
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_DataAdmissao', [data_de_admissao, :data]],
|
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'],
|
188
|
-
['InfoVinculo_InformacoesRegimeTrabalhista_InformacoesTrabalhadorCeletista_TipoRegimeJornada'],
|
189
|
-
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_DescricaoComplementar'],
|
190
|
-
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_NumeroInscricao'],
|
191
|
-
['InfoVinculo_InfoContrato_LocalTrabalho_LocalTrabalhoGeral_TipoInscricao']
|
192
|
-
# rubocop:enable Layout/LineLength
|
193
|
-
]
|
205
|
+
def identificador_do_demonstrativo
|
206
|
+
@identificador_do_demonstrativo ||= identificadores_de_demonstrativo.first
|
194
207
|
end
|
195
208
|
|
196
|
-
def
|
197
|
-
evento
|
198
|
-
verbas.*('dmDev').then do |demonstrativos|
|
199
|
-
puts "\n #{Rainbow('mais de um demonstrativo (considerado apenas o primeiro)').yellow}" if
|
200
|
-
demonstrativos.size > 1 # yellow
|
201
|
-
|
202
|
-
demonstrativos[0]['ideDmDev']
|
203
|
-
end
|
204
|
-
end
|
209
|
+
def identificadores_de_demonstrativo
|
210
|
+
@identificadores_de_demonstrativo ||= evento.*('infoDeslig/verbasResc/dmDev').map { _1['ideDmDev'] }
|
205
211
|
end
|
206
212
|
|
207
213
|
def categoria_do_trabalhador
|