teodoro 0.56.0 → 0.57.1
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 880e4d79d6fc127eecb7e93ed8ccfad69f6e467c5505cb1a0924cc65a55e2ae5
|
4
|
+
data.tar.gz: a5a886c7cfc931ed1ed2177015a7f40ca55c975432f437ccf6bbee2609444ff6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2622f92fe7db10ca9fd630a7621a2db8cc54da64330d30c6d0e2dfa4480d26032be9c6892e2c31bf8b6709341313ca49f0cba39e75b70fd13d37f5bed1651285
|
7
|
+
data.tar.gz: cd825b593a05f90e5af026ad03be1b48fa207a24c69581c8c5218a9ab21c9b428e6e23df5e4c6179c5d5408b022d93f2756b8df141c2a0faa9e8a829e151cd0d
|
data/lib/teodoro/arquivo_data.rb
CHANGED
@@ -48,10 +48,11 @@ module Teodoro
|
|
48
48
|
end
|
49
49
|
|
50
50
|
def chaves_valores_do_arquivo_original
|
51
|
-
@chaves_valores_do_arquivo_original ||=
|
52
|
-
|
53
|
-
|
54
|
-
|
51
|
+
@chaves_valores_do_arquivo_original ||= arquivo_original.chaves_valores
|
52
|
+
end
|
53
|
+
|
54
|
+
def arquivo_original
|
55
|
+
Original.new(caminho)
|
55
56
|
end
|
56
57
|
|
57
58
|
def caminho
|
@@ -179,5 +180,21 @@ module Teodoro
|
|
179
180
|
end
|
180
181
|
end
|
181
182
|
end
|
183
|
+
|
184
|
+
class Original
|
185
|
+
def initialize(caminho)
|
186
|
+
@caminho = caminho
|
187
|
+
end
|
188
|
+
|
189
|
+
def chaves_valores
|
190
|
+
File
|
191
|
+
.readlines(caminho)
|
192
|
+
.to_h { _1.match(/^(.+)=(.*)$/)[1..2] }
|
193
|
+
end
|
194
|
+
|
195
|
+
private
|
196
|
+
|
197
|
+
attr_reader :caminho
|
198
|
+
end
|
182
199
|
end
|
183
200
|
end
|
@@ -8,8 +8,7 @@ module Teodoro
|
|
8
8
|
if retificado?
|
9
9
|
processar_retificacao
|
10
10
|
else
|
11
|
-
|
12
|
-
salvar_arquivos_data
|
11
|
+
processar_inclusao
|
13
12
|
end
|
14
13
|
end
|
15
14
|
|
@@ -35,6 +34,11 @@ module Teodoro
|
|
35
34
|
arquivo_xml_de_retificacao.processar
|
36
35
|
end
|
37
36
|
|
37
|
+
def processar_inclusao
|
38
|
+
registrar_arquivos_data
|
39
|
+
salvar_arquivos_data
|
40
|
+
end
|
41
|
+
|
38
42
|
def registrar_arquivos_data
|
39
43
|
arquivos_data.each do |arquivo_data|
|
40
44
|
empresa.arquivos_data.registrar(
|
@@ -5,6 +5,19 @@ module Teodoro
|
|
5
5
|
|
6
6
|
private
|
7
7
|
|
8
|
+
def processar_inclusao
|
9
|
+
validar_existencia_do_contrato_de_trabalho if leiaute_simplificado?
|
10
|
+
|
11
|
+
super
|
12
|
+
end
|
13
|
+
|
14
|
+
def validar_existencia_do_contrato_de_trabalho
|
15
|
+
return if empresa.trabalhadores[cpf_do_trabalhador]
|
16
|
+
|
17
|
+
puts '', Rainbow('Erro! Evento de início de contrato de trabalho inexistente.').red
|
18
|
+
exit
|
19
|
+
end
|
20
|
+
|
8
21
|
def salvar_arquivos_data
|
9
22
|
super
|
10
23
|
|
@@ -6,11 +6,54 @@ module Teodoro
|
|
6
6
|
private
|
7
7
|
|
8
8
|
def salvar_arquivos_data
|
9
|
+
deletar_arquivo_data_de_alteracao_contratual_original if deletar_arquivo_data_de_alteracao_contratual_original?
|
10
|
+
|
9
11
|
super
|
10
12
|
|
11
13
|
empresa.contratos_de_emprego.registrar_alteracao_contratual(alteracao_contratual)
|
12
14
|
end
|
13
15
|
|
16
|
+
def deletar_arquivo_data_de_alteracao_contratual_original?
|
17
|
+
ja_existe_o_arquivo_data_de_alteracao_contratual? && data_dos_efeitos_remuneratorios_diferente?
|
18
|
+
end
|
19
|
+
|
20
|
+
def ja_existe_o_arquivo_data_de_alteracao_contratual?
|
21
|
+
File.exist?(caminho_do_arquivo_data_de_alteracao_contratual)
|
22
|
+
end
|
23
|
+
|
24
|
+
def caminho_do_arquivo_data_de_alteracao_contratual
|
25
|
+
@caminho_do_arquivo_data_de_alteracao_contratual ||=
|
26
|
+
ArquivoData::Caminho.new(
|
27
|
+
diretorio: empresa.destino_dos_arquivos_data,
|
28
|
+
nome_do_arquivo: leiaute.nome_do_arquivo_data_de_alteracao_contratual
|
29
|
+
)
|
30
|
+
end
|
31
|
+
|
32
|
+
def data_dos_efeitos_remuneratorios_diferente?
|
33
|
+
data_dos_efeitos_remuneratorios_do_arquivo_data_de_alteracao_contratual_original !=
|
34
|
+
data_dos_efeitos_remuneratorios
|
35
|
+
end
|
36
|
+
|
37
|
+
def data_dos_efeitos_remuneratorios_do_arquivo_data_de_alteracao_contratual_original
|
38
|
+
arquivo_data_de_alteracao_contratual_original
|
39
|
+
.chaves_valores
|
40
|
+
.then { _1['AlteracaoContratual_DataEfeito'] }
|
41
|
+
&.then { _1.match(%r{^(\d{2})/(\d{2})/(\d{4})$}) }
|
42
|
+
&.then { "#{_1[3]}-#{_1[2]}-#{_1[1]}" }
|
43
|
+
end
|
44
|
+
|
45
|
+
def arquivo_data_de_alteracao_contratual_original
|
46
|
+
ArquivoData::Original.new(caminho_do_arquivo_data_de_alteracao_contratual)
|
47
|
+
end
|
48
|
+
|
49
|
+
def data_dos_efeitos_remuneratorios
|
50
|
+
leiaute.data_dos_efeitos_remuneratorios
|
51
|
+
end
|
52
|
+
|
53
|
+
def deletar_arquivo_data_de_alteracao_contratual_original
|
54
|
+
File.delete(caminho_do_arquivo_data_de_alteracao_contratual)
|
55
|
+
end
|
56
|
+
|
14
57
|
def alteracao_contratual
|
15
58
|
leiaute.alteracao_contratual
|
16
59
|
end
|
@@ -36,16 +79,11 @@ module Teodoro
|
|
36
79
|
)
|
37
80
|
end
|
38
81
|
|
39
|
-
def dados_dos_arquivos_data # rubocop:disable Metrics/MethodLength
|
82
|
+
def dados_dos_arquivos_data # rubocop:disable Metrics/MethodLength
|
40
83
|
[
|
41
84
|
Obj.new(
|
42
85
|
operacao: :inclusao,
|
43
|
-
nome:
|
44
|
-
'TRA',
|
45
|
-
"[#{cpf_do_trabalhador}]",
|
46
|
-
"[EPG_#{alteracao_contratual.matricula_do_trabalhador}_#{data_de_admissao.delete('-')}]",
|
47
|
-
"-ACO[#{data_da_alteracao.delete('-')}]"
|
48
|
-
].join,
|
86
|
+
nome: nome_do_arquivo_data_de_alteracao_contratual,
|
49
87
|
itens_do_conteudo: itens_do_conteudo
|
50
88
|
),
|
51
89
|
Obj.new(
|
@@ -67,6 +105,19 @@ module Teodoro
|
|
67
105
|
]
|
68
106
|
end
|
69
107
|
|
108
|
+
def nome_do_arquivo_data_de_alteracao_contratual
|
109
|
+
@nome_do_arquivo_data_de_alteracao_contratual ||= [
|
110
|
+
'TRA',
|
111
|
+
"[#{cpf_do_trabalhador}]",
|
112
|
+
"[EPG_#{alteracao_contratual.matricula_do_trabalhador}_#{data_de_admissao.delete('-')}]",
|
113
|
+
"-ACO[#{data_da_alteracao.delete('-')}]"
|
114
|
+
].join
|
115
|
+
end
|
116
|
+
|
117
|
+
def data_dos_efeitos_remuneratorios
|
118
|
+
@data_dos_efeitos_remuneratorios ||= evento['altContratual/dtEf']
|
119
|
+
end
|
120
|
+
|
70
121
|
private
|
71
122
|
|
72
123
|
def cpf_do_trabalhador
|
@@ -117,7 +168,7 @@ module Teodoro
|
|
117
168
|
['IdentificacaoVinculo_Matricula', alteracao_contratual.matricula_do_trabalhador],
|
118
169
|
['TipoInscricaoEmpregador', tipo_de_inscricao_do_empregador],
|
119
170
|
['AlteracaoContratual_DataAlteracao', data_da_alteracao, :data],
|
120
|
-
['AlteracaoContratual_DataEfeito',
|
171
|
+
['AlteracaoContratual_DataEfeito', data_dos_efeitos_remuneratorios, :data],
|
121
172
|
['AlteracaoContratual_DescricaoAlteracao', evento['altContratual/dscAlt']],
|
122
173
|
['IdentificacaoVinculo_Nis', evento['ideVinculo/nisTrab']],
|
123
174
|
['IdEventoXml', id_do_evento],
|
@@ -185,7 +236,7 @@ module Teodoro
|
|
185
236
|
['IdentificacaoVinculo_Matricula', alteracao_contratual.matricula_do_trabalhador],
|
186
237
|
['TipoInscricaoEmpregador', tipo_de_inscricao_do_empregador],
|
187
238
|
['AlteracaoContratual_DataAlteracao', data_da_alteracao, :data],
|
188
|
-
['AlteracaoContratual_DataEfeito',
|
239
|
+
['AlteracaoContratual_DataEfeito', data_dos_efeitos_remuneratorios, :data],
|
189
240
|
['AlteracaoContratual_DescricaoAlteracao', evento['altContratual/dscAlt']],
|
190
241
|
['IdentificacaoVinculo_Nis', evento['ideVinculo/nisTrab']],
|
191
242
|
['IdEventoXml', id_do_evento],
|
data/lib/teodoro/version.rb
CHANGED
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.
|
4
|
+
version: 0.57.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Fortes Tecnologia
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-02-
|
11
|
+
date: 2023-02-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: nokogiri
|