teodoro 0.47.12 → 0.48.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/teodoro/arquivo_xml.rb +10 -0
- data/lib/teodoro/leiaute/arquivo_s1000.rb +1 -0
- data/lib/teodoro/leiaute/arquivo_s2210.rb +2 -0
- data/lib/teodoro/leiaute/arquivo_s2240.rb +1 -0
- data/lib/teodoro/leiaute/arquivo_s2500.rb +148 -0
- data/lib/teodoro/leiaute/arquivo_s2501.rb +68 -0
- data/lib/teodoro/leiaute/arquivo_s3000.rb +2 -2
- data/lib/teodoro/leiaute/arquivo_s3500.rb +21 -0
- data/lib/teodoro/version.rb +1 -1
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 957e85911a2adc2ba0774ef3f28bfc2ebf7ad69d384188a643512367b4b4e407
|
4
|
+
data.tar.gz: 384b9d1d2534bb632e19fc211743c6879de9e86fb484cdcb88eaa893e505130b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3af72e61410633058292a573e33ad928cfa26822899a87e71bbafd00b39efd9115390dd0ab05525c3e8736d09115b9098aea22bd7700246548f9b2a1ea71672f
|
7
|
+
data.tar.gz: 3ebe8fe727d678adc7643f9e95994a673a2278e0ba2fc95dc60df029b723f3cc80940c05dad973904c3618970e7cdf6eb28ef8fa76ebcd992aff5da6bd3b0713
|
data/lib/teodoro/arquivo_xml.rb
CHANGED
@@ -26,7 +26,10 @@ require_relative 'leiaute/arquivo_s2299'
|
|
26
26
|
require_relative 'leiaute/arquivo_s2300'
|
27
27
|
require_relative 'leiaute/arquivo_s2306'
|
28
28
|
require_relative 'leiaute/arquivo_s2399'
|
29
|
+
require_relative 'leiaute/arquivo_s2500'
|
30
|
+
require_relative 'leiaute/arquivo_s2501'
|
29
31
|
require_relative 'leiaute/arquivo_s3000'
|
32
|
+
require_relative 'leiaute/arquivo_s3500'
|
30
33
|
require_relative 'leiaute_simplificado'
|
31
34
|
require_relative 'xml'
|
32
35
|
|
@@ -56,7 +59,10 @@ module Teodoro
|
|
56
59
|
S2300
|
57
60
|
S2306
|
58
61
|
S2399
|
62
|
+
S2500
|
63
|
+
S2501
|
59
64
|
S3000
|
65
|
+
S3500
|
60
66
|
].freeze
|
61
67
|
|
62
68
|
TIPOS_DE_EVENTO_RETIFICAVEIS = %w[
|
@@ -73,6 +79,8 @@ module Teodoro
|
|
73
79
|
S2300
|
74
80
|
S2306
|
75
81
|
S2399
|
82
|
+
S2500
|
83
|
+
S2501
|
76
84
|
].freeze
|
77
85
|
|
78
86
|
private
|
@@ -156,12 +164,14 @@ module Teodoro
|
|
156
164
|
raise 'arquivo corrompido (sem data e horário do processamento do evento)'
|
157
165
|
end
|
158
166
|
|
167
|
+
# FIXME: Tales validate _S_01_01_00
|
159
168
|
def validar_versao_do_leiaute
|
160
169
|
raise unless %w[
|
161
170
|
02_04_01
|
162
171
|
02_04_02
|
163
172
|
02_05_00
|
164
173
|
_S_01_00_00
|
174
|
+
_S_01_01_00
|
165
175
|
].include?(versao_do_leiaute)
|
166
176
|
end
|
167
177
|
|
@@ -86,6 +86,7 @@ module Teodoro
|
|
86
86
|
['ClassificacaoTributaria', evento['infoEmpregador/*/infoCadastro/classTrib']],
|
87
87
|
['NaturezaJuridica', evento['infoEmpregador/*/infoCadastro/natJurid']],
|
88
88
|
['IndicativoRegEletronico', evento['infoEmpregador/*/infoCadastro/indOptRegEletron']],
|
89
|
+
['indTribFolhaPisCofins', evento['infoEmpregador/*/infoCadastro/indTribFolhaPisCofins']],
|
89
90
|
['IndicativoCooperativa', evento['infoEmpregador/*/infoCadastro/indCoop']],
|
90
91
|
['IndicativoConstrutora', evento['infoEmpregador/*/infoCadastro/indConstr']],
|
91
92
|
['IndicativoDesoneracaoFolha', evento['infoEmpregador/*/infoCadastro/indDesFolha']],
|
@@ -34,6 +34,8 @@ module Teodoro
|
|
34
34
|
['indComunPolicia', evento['cat/indComunPolicia']],
|
35
35
|
['codSitGeradora', evento['cat/codSitGeradora']],
|
36
36
|
['iniciatCAT', evento['cat/iniciatCAT']],
|
37
|
+
['ultDiaTrab', evento['cat/ultDiaTrab']],
|
38
|
+
['houveAfast', evento['cat/houveAfast']],
|
37
39
|
['obsCAT', evento['cat/obsCAT']],
|
38
40
|
['tpLocal', evento['cat/localAcidente/tpLocal']],
|
39
41
|
['dscLocal', evento['cat/localAcidente/dscLocal']],
|
@@ -25,6 +25,7 @@ module Teodoro
|
|
25
25
|
['matricula', matricula],
|
26
26
|
['codCateg', evento['ideVinculo/codCateg']],
|
27
27
|
['dtIniCondicao', dt_ini_condicao],
|
28
|
+
['dtFimCondicao', evento['infoExpRisco/dtFimCondicao']],
|
28
29
|
['localAmb', evento['infoExpRisco/infoAmb/localAmb']],
|
29
30
|
['dscSetor', evento['infoExpRisco/infoAmb/dscSetor']],
|
30
31
|
['infoAmb/tpInsc', evento['infoExpRisco/infoAmb/tpInsc']],
|
@@ -0,0 +1,148 @@
|
|
1
|
+
module Teodoro
|
2
|
+
module Leiaute
|
3
|
+
class ArquivoS2500 # rubocop:disable Metrics/ClassLength
|
4
|
+
include ArquivoDeEventoNaoPeriodico
|
5
|
+
|
6
|
+
private
|
7
|
+
|
8
|
+
def dados_dos_arquivos_data
|
9
|
+
[
|
10
|
+
Obj.new(
|
11
|
+
nome: "PTR[#{numero_do_processo}][#{cpf_do_trabalhador}]",
|
12
|
+
itens_do_conteudo: itens_do_conteudo
|
13
|
+
)
|
14
|
+
]
|
15
|
+
end
|
16
|
+
|
17
|
+
def numero_do_processo
|
18
|
+
@numero_do_processo ||= evento['infoProcesso/nrProcTrab']
|
19
|
+
end
|
20
|
+
|
21
|
+
def cpf_do_trabalhador
|
22
|
+
@cpf_do_trabalhador ||= evento['ideTrab/cpfTrab']
|
23
|
+
end
|
24
|
+
|
25
|
+
def itens_do_conteudo # rubocop:disable Metrics/MethodLength, Metrics/AbcSize, Metrics/CyclomaticComplexity
|
26
|
+
[
|
27
|
+
# rubocop:disable Layout/LineLength
|
28
|
+
['Id', id_do_evento],
|
29
|
+
['ideEvento/procEmi', processo_de_emissao_do_evento],
|
30
|
+
['ideEvento/verProc', versao_do_processo_de_emissao_do_evento],
|
31
|
+
['ideEmpregador/tpInsc', tipo_de_inscricao_do_empregador],
|
32
|
+
['ideEmpregador/nrInsc', numero_de_inscricao_do_empregador],
|
33
|
+
['ideResp/tpInsc', evento['ideResp/tpInsc']],
|
34
|
+
['ideResp/nrInsc', evento['ideResp/nrInsc']],
|
35
|
+
['infoProcesso/origem', evento['infoProcesso/origem']],
|
36
|
+
['infoProcesso/nrProcTrab', numero_do_processo],
|
37
|
+
['infoProcesso/obsProcTrab', evento['infoProcesso/obsProcTrab']],
|
38
|
+
['infoProcesso/dadosCompl/infoProcJud/dtSent', evento['infoProcesso/dadosCompl/infoProcJud/dtSent']],
|
39
|
+
['infoProcesso/dadosCompl/infoProcJud/ufVara', evento['infoProcesso/dadosCompl/infoProcJud/ufVara']],
|
40
|
+
['infoProcesso/dadosCompl/infoProcJud/codMunic', evento['infoProcesso/dadosCompl/infoProcJud/codMunic']],
|
41
|
+
['infoProcesso/dadosCompl/infoProcJud/idVara', evento['infoProcesso/dadosCompl/infoProcJud/idVara']],
|
42
|
+
['infoProcesso/dadosCompl/infoCCP/dtCCP', evento['infoProcesso/dadosCompl/infoCCP/dtCCP']],
|
43
|
+
['infoProcesso/dadosCompl/infoCCP/tpCCP', evento['infoProcesso/dadosCompl/infoCCP/tpCCP']],
|
44
|
+
['infoProcesso/dadosCompl/infoCCP/cnpjCCP', evento['infoProcesso/dadosCompl/infoCCP/cnpjCCP']],
|
45
|
+
['ideTrab/cpfTrab', cpf_do_trabalhador],
|
46
|
+
['ideTrab/nmTrab', evento['ideTrab/nmTrab']],
|
47
|
+
['ideTrab/dtNascto', evento['ideTrab/dtNascto']],
|
48
|
+
*evento.*('ideTrab/dependente').map.with_index(1) do |dependente, seq|
|
49
|
+
[
|
50
|
+
["ideTrab/dependente_#{seq}_cpfDep", dependente['cpfDep']],
|
51
|
+
["ideTrab/dependente_#{seq}_tpDep", dependente['tpDep']],
|
52
|
+
["ideTrab/dependente_#{seq}_descDep", dependente['descDep']]
|
53
|
+
]
|
54
|
+
end.sum([]),
|
55
|
+
*evento.*('ideTrab/infoContr').map.with_index(1) do |contrato_de_trabalho, seq| # rubocop:disable Metrics/BlockLength
|
56
|
+
[
|
57
|
+
["ideTrab/infoContr_#{seq}_tpContr", contrato_de_trabalho['tpContr']],
|
58
|
+
["ideTrab/infoContr_#{seq}_indContr", contrato_de_trabalho['indContr']],
|
59
|
+
["ideTrab/infoContr_#{seq}_dtAdmOrig", contrato_de_trabalho['dtAdmOrig']],
|
60
|
+
["ideTrab/infoContr_#{seq}_indReint", contrato_de_trabalho['indReint']],
|
61
|
+
["ideTrab/infoContr_#{seq}_indCateg", contrato_de_trabalho['indCateg']],
|
62
|
+
["ideTrab/infoContr_#{seq}_indNatAtiv", contrato_de_trabalho['indNatAtiv']],
|
63
|
+
["ideTrab/infoContr_#{seq}_indMotDeslig", contrato_de_trabalho['indMotDeslig']],
|
64
|
+
["ideTrab/infoContr_#{seq}_indUnic", contrato_de_trabalho['indUnic']],
|
65
|
+
["ideTrab/infoContr_#{seq}_matricula", contrato_de_trabalho['matricula']],
|
66
|
+
["ideTrab/infoContr_#{seq}_codCateg", contrato_de_trabalho['codCateg']],
|
67
|
+
["ideTrab/infoContr_#{seq}_dtInicio", contrato_de_trabalho['dtInicio']],
|
68
|
+
["ideTrab/infoContr_#{seq}_infoCompl/codCBO", contrato_de_trabalho['infoCompl/codCBO']],
|
69
|
+
["ideTrab/infoContr_#{seq}_infoCompl/natAtividade", contrato_de_trabalho['infoCompl/natAtividade']],
|
70
|
+
*contrato_de_trabalho.*('infoCompl/remuneracao').map.with_index(1) do |remuneracao, remuneracao_seq|
|
71
|
+
[
|
72
|
+
["ideTrab/infoContr_#{seq}_infoCompl/remuneracao_#{remuneracao_seq}_dtRemun", remuneracao['dtRemun']],
|
73
|
+
["ideTrab/infoContr_#{seq}_infoCompl/remuneracao_#{remuneracao_seq}_vrSalFx", remuneracao['vrSalFx']],
|
74
|
+
["ideTrab/infoContr_#{seq}_infoCompl/remuneracao_#{remuneracao_seq}_undSalFixo", remuneracao['undSalFixo']],
|
75
|
+
["ideTrab/infoContr_#{seq}_infoCompl/remuneracao_#{remuneracao_seq}_dscSalVar", remuneracao['dscSalVar']]
|
76
|
+
]
|
77
|
+
end.sum([]),
|
78
|
+
["ideTrab/infoContr_#{seq}_infoCompl/infoVinc/tpRegTrab", contrato_de_trabalho['infoCompl/infoVinc/tpRegTrab']],
|
79
|
+
["ideTrab/infoContr_#{seq}_infoCompl/infoVinc/tpRegPrev", contrato_de_trabalho['infoCompl/infoVinc/tpRegPrev']],
|
80
|
+
["ideTrab/infoContr_#{seq}_infoCompl/infoVinc/dtAdm", contrato_de_trabalho['infoCompl/infoVinc/dtAdm']],
|
81
|
+
["ideTrab/infoContr_#{seq}_infoCompl/infoVinc/tmpParc", contrato_de_trabalho['infoCompl/infoVinc/tmpParc']],
|
82
|
+
["ideTrab/infoContr_#{seq}_infoCompl/infoVinc/duracao/tpContr", contrato_de_trabalho['infoCompl/infoVinc/duracao/tpContr']],
|
83
|
+
["ideTrab/infoContr_#{seq}_infoCompl/infoVinc/duracao/dtTerm", contrato_de_trabalho['infoCompl/infoVinc/duracao/dtTerm']],
|
84
|
+
["ideTrab/infoContr_#{seq}_infoCompl/infoVinc/duracao/clauAssec", contrato_de_trabalho['infoCompl/infoVinc/duracao/clauAssec']],
|
85
|
+
["ideTrab/infoContr_#{seq}_infoCompl/infoVinc/duracao/objDet", contrato_de_trabalho['infoCompl/infoVinc/duracao/objDet']],
|
86
|
+
*contrato_de_trabalho.*('infoCompl/infoVinc/observacoes').map.with_index(1) do |observacao, observacao_seq|
|
87
|
+
[
|
88
|
+
["ideTrab/infoContr_#{seq}_infoCompl/infoVinc/observacoes_#{observacao_seq}_observacao", observacao['observacao']]
|
89
|
+
]
|
90
|
+
end.sum([]),
|
91
|
+
["ideTrab/infoContr_#{seq}_infoCompl/infoVinc/sucessaoVinc/tpInsc", contrato_de_trabalho['infoCompl/infoVinc/sucessaoVinc/tpInsc']],
|
92
|
+
["ideTrab/infoContr_#{seq}_infoCompl/infoVinc/sucessaoVinc/nrInsc", contrato_de_trabalho['infoCompl/infoVinc/sucessaoVinc/nrInsc']],
|
93
|
+
["ideTrab/infoContr_#{seq}_infoCompl/infoVinc/sucessaoVinc/matricAnt", contrato_de_trabalho['infoCompl/infoVinc/sucessaoVinc/matricAnt']],
|
94
|
+
["ideTrab/infoContr_#{seq}_infoCompl/infoVinc/sucessaoVinc/dtTransf", contrato_de_trabalho['infoCompl/infoVinc/sucessaoVinc/dtTransf']],
|
95
|
+
["ideTrab/infoContr_#{seq}_infoCompl/infoVinc/infoDeslig/dtDeslig", contrato_de_trabalho['infoCompl/infoVinc/infoDeslig/dtDeslig']],
|
96
|
+
["ideTrab/infoContr_#{seq}_infoCompl/infoVinc/infoDeslig/mtvDeslig", contrato_de_trabalho['infoCompl/infoVinc/infoDeslig/mtvDeslig']],
|
97
|
+
["ideTrab/infoContr_#{seq}_infoCompl/infoVinc/infoDeslig/dtProjFimAPI", contrato_de_trabalho['infoCompl/infoVinc/infoDeslig/dtProjFimAPI']],
|
98
|
+
["ideTrab/infoContr_#{seq}_infoCompl/infoTerm/dtTerm", contrato_de_trabalho['infoCompl/infoTerm/dtTerm']],
|
99
|
+
["ideTrab/infoContr_#{seq}_infoCompl/infoTerm/mtvDesligTSV", contrato_de_trabalho['infoCompl/infoTerm/mtvDesligTSV']],
|
100
|
+
*contrato_de_trabalho.*('mudCategAtiv').map.with_index(1) do |mudanca_de_categoria_ou_atividade, mudanca_de_categoria_ou_atividade_seq|
|
101
|
+
[
|
102
|
+
["ideTrab/infoContr_#{seq}_mudCategAtiv_#{mudanca_de_categoria_ou_atividade_seq}_codCateg", mudanca_de_categoria_ou_atividade['codCateg']],
|
103
|
+
["ideTrab/infoContr_#{seq}_mudCategAtiv_#{mudanca_de_categoria_ou_atividade_seq}_natAtividade", mudanca_de_categoria_ou_atividade['natAtividade']],
|
104
|
+
["ideTrab/infoContr_#{seq}_mudCategAtiv_#{mudanca_de_categoria_ou_atividade_seq}_dtMudCategAtiv", mudanca_de_categoria_ou_atividade['dtMudCategAtiv']]
|
105
|
+
]
|
106
|
+
end.sum([]),
|
107
|
+
*contrato_de_trabalho.*('unicContr').map.with_index(1) do |vinculo_contrato_incorporado, vinculo_contrato_incorporado_seq|
|
108
|
+
[
|
109
|
+
["ideTrab/infoContr_#{seq}_unicContr_#{vinculo_contrato_incorporado_seq}_matUnic", vinculo_contrato_incorporado['matUnic']],
|
110
|
+
["ideTrab/infoContr_#{seq}_unicContr_#{vinculo_contrato_incorporado_seq}_codCateg", vinculo_contrato_incorporado['codCateg']],
|
111
|
+
["ideTrab/infoContr_#{seq}_unicContr_#{vinculo_contrato_incorporado_seq}_dtInicio", vinculo_contrato_incorporado['dtInicio']]
|
112
|
+
]
|
113
|
+
end.sum([]),
|
114
|
+
["ideTrab/infoContr_#{seq}_ideEstab/tpInsc", contrato_de_trabalho['ideEstab/tpInsc']],
|
115
|
+
["ideTrab/infoContr_#{seq}_ideEstab/nrInsc", contrato_de_trabalho['ideEstab/nrInsc']],
|
116
|
+
["ideTrab/infoContr_#{seq}_ideEstab/infoVlr/compIni", contrato_de_trabalho['ideEstab/infoVlr/compIni']],
|
117
|
+
["ideTrab/infoContr_#{seq}_ideEstab/infoVlr/compFim", contrato_de_trabalho['ideEstab/infoVlr/compFim']],
|
118
|
+
["ideTrab/infoContr_#{seq}_ideEstab/infoVlr/repercProc", contrato_de_trabalho['ideEstab/infoVlr/repercProc']],
|
119
|
+
["ideTrab/infoContr_#{seq}_ideEstab/infoVlr/vrRemun", contrato_de_trabalho['ideEstab/infoVlr/vrRemun']],
|
120
|
+
["ideTrab/infoContr_#{seq}_ideEstab/infoVlr/vrAPI", contrato_de_trabalho['ideEstab/infoVlr/vrAPI']],
|
121
|
+
["ideTrab/infoContr_#{seq}_ideEstab/infoVlr/vr13API", contrato_de_trabalho['ideEstab/infoVlr/vr13API']],
|
122
|
+
["ideTrab/infoContr_#{seq}_ideEstab/infoVlr/vrInden", contrato_de_trabalho['ideEstab/infoVlr/vrInden']],
|
123
|
+
["ideTrab/infoContr_#{seq}_ideEstab/infoVlr/vrBaseIndenFGTS", contrato_de_trabalho['ideEstab/infoVlr/vrBaseIndenFGTS']],
|
124
|
+
["ideTrab/infoContr_#{seq}_ideEstab/infoVlr/pagDiretoResc", contrato_de_trabalho['ideEstab/infoVlr/pagDiretoResc']],
|
125
|
+
*contrato_de_trabalho.*('ideEstab/infoVlr/idePeriodo').map.with_index(1) do |periodo, periodo_seq|
|
126
|
+
[
|
127
|
+
["ideTrab/infoContr_#{seq}_ideEstab/infoVlr/idePeriodo_#{periodo_seq}_baseCalculo/perRef", periodo['perRef']],
|
128
|
+
["ideTrab/infoContr_#{seq}_ideEstab/infoVlr/idePeriodo_#{periodo_seq}_baseCalculo/vrBcCpMensal", periodo['baseCalculo/vrBcCpMensal']],
|
129
|
+
["ideTrab/infoContr_#{seq}_ideEstab/infoVlr/idePeriodo_#{periodo_seq}_baseCalculo/vrBcCp13", periodo['baseCalculo/vrBcCp13']],
|
130
|
+
["ideTrab/infoContr_#{seq}_ideEstab/infoVlr/idePeriodo_#{periodo_seq}_baseCalculo/vrBcFgts", periodo['baseCalculo/vrBcFgts']],
|
131
|
+
["ideTrab/infoContr_#{seq}_ideEstab/infoVlr/idePeriodo_#{periodo_seq}_baseCalculo/vrBcFgts13", periodo['baseCalculo/vrBcFgts13']],
|
132
|
+
["ideTrab/infoContr_#{seq}_ideEstab/infoVlr/idePeriodo_#{periodo_seq}_baseCalculo/infoAgNocivo/grauExp", periodo['baseCalculo/infoAgNocivo/grauExp']],
|
133
|
+
["ideTrab/infoContr_#{seq}_ideEstab/infoVlr/idePeriodo_#{periodo_seq}_infoFGTS/vrBcFgtsGuia", periodo['infoFGTS/vrBcFgtsGuia']],
|
134
|
+
["ideTrab/infoContr_#{seq}_ideEstab/infoVlr/idePeriodo_#{periodo_seq}_infoFGTS/vrBcFgts13Guia", periodo['infoFGTS/vrBcFgts13Guia']],
|
135
|
+
["ideTrab/infoContr_#{seq}_ideEstab/infoVlr/idePeriodo_#{periodo_seq}_infoFGTS/pagDireto", periodo['infoFGTS/pagDireto']],
|
136
|
+
["ideTrab/infoContr_#{seq}_ideEstab/infoVlr/idePeriodo_#{periodo_seq}_baseMudCateg/codCateg", periodo['baseMudCateg/codCateg']],
|
137
|
+
["ideTrab/infoContr_#{seq}_ideEstab/infoVlr/idePeriodo_#{periodo_seq}_baseMudCateg/vrBcCPrev", periodo['baseMudCateg/vrBcCPrev']]
|
138
|
+
]
|
139
|
+
end.sum([])
|
140
|
+
# rubocop:enable Layout/LineLength
|
141
|
+
]
|
142
|
+
end.sum([]),
|
143
|
+
['nrRecibo', numero_do_recibo]
|
144
|
+
]
|
145
|
+
end
|
146
|
+
end
|
147
|
+
end
|
148
|
+
end
|
@@ -0,0 +1,68 @@
|
|
1
|
+
module Teodoro
|
2
|
+
module Leiaute
|
3
|
+
class ArquivoS2501
|
4
|
+
include ArquivoDeEventoNaoPeriodico
|
5
|
+
|
6
|
+
private
|
7
|
+
|
8
|
+
def dados_dos_arquivos_data
|
9
|
+
[
|
10
|
+
Obj.new(
|
11
|
+
nome: "TDP[#{numero_do_processo}][#{mes_ano_da_obrigacao}]",
|
12
|
+
itens_do_conteudo: itens_do_conteudo
|
13
|
+
)
|
14
|
+
]
|
15
|
+
end
|
16
|
+
|
17
|
+
def numero_do_processo
|
18
|
+
@numero_do_processo ||= evento['ideProc/nrProcTrab']
|
19
|
+
end
|
20
|
+
|
21
|
+
def mes_ano_da_obrigacao
|
22
|
+
@mes_ano_da_obrigacao ||= evento['ideProc/perApurPgto']
|
23
|
+
end
|
24
|
+
|
25
|
+
def itens_do_conteudo # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
26
|
+
[
|
27
|
+
# rubocop:disable Layout/LineLength
|
28
|
+
['Id', id_do_evento],
|
29
|
+
['ideEvento/procEmi', processo_de_emissao_do_evento],
|
30
|
+
['ideEvento/verProc', versao_do_processo_de_emissao_do_evento],
|
31
|
+
['ideEmpregador/tpInsc', tipo_de_inscricao_do_empregador],
|
32
|
+
['ideEmpregador/nrInsc', numero_de_inscricao_do_empregador],
|
33
|
+
['ideProc/nrProcTrab', numero_do_processo],
|
34
|
+
['ideProc/perApurPgto', mes_ano_da_obrigacao],
|
35
|
+
['ideProc/obs', evento['ideProc/obs']],
|
36
|
+
*evento.*('ideTrab').map.with_index(1) do |trabalhador, seq|
|
37
|
+
[
|
38
|
+
["ideTrab_#{seq}_cpfTrab", trabalhador['cpfTrab']],
|
39
|
+
*trabalhador.*('calcTrib').map.with_index(1) do |periodo, periodo_seq|
|
40
|
+
[
|
41
|
+
["ideTrab_#{seq}_calcTrib_#{periodo_seq}_perRef", periodo['perRef']],
|
42
|
+
["ideTrab_#{seq}_calcTrib_#{periodo_seq}_vrBcCpMensal", periodo['vrBcCpMensal']],
|
43
|
+
["ideTrab_#{seq}_calcTrib_#{periodo_seq}_vrBcCp13", periodo['vrBcCp13']],
|
44
|
+
["ideTrab_#{seq}_calcTrib_#{periodo_seq}_vrRendIRRF", periodo['vrRendIRRF']],
|
45
|
+
["ideTrab_#{seq}_calcTrib_#{periodo_seq}_vrRendIRRF13", periodo['vrRendIRRF13']],
|
46
|
+
*periodo.*('infoCRContrib').map.with_index(1) do |contribuicao, contribuicao_seq|
|
47
|
+
[
|
48
|
+
["ideTrab_#{seq}_calcTrib_#{periodo_seq}_infoCRContrib_#{contribuicao_seq}_tpCR", contribuicao['tpCR']],
|
49
|
+
["ideTrab_#{seq}_calcTrib_#{periodo_seq}_infoCRContrib_#{contribuicao_seq}_vrCR", contribuicao['vrCR']]
|
50
|
+
]
|
51
|
+
end.sum([])
|
52
|
+
]
|
53
|
+
end.sum([]),
|
54
|
+
*trabalhador.*('infoCRIRRF').map.with_index(1) do |irrf, irrf_seq|
|
55
|
+
[
|
56
|
+
["ideTrab_#{seq}_infoCRIRRF_#{irrf_seq}_tpCR", irrf['tpCR']],
|
57
|
+
["ideTrab_#{seq}_infoCRIRRF_#{irrf_seq}_vrCR", irrf['vrCR']]
|
58
|
+
]
|
59
|
+
end.sum([])
|
60
|
+
]
|
61
|
+
end.sum([]),
|
62
|
+
['nrRecibo', numero_do_recibo]
|
63
|
+
# rubocop:enable Layout/LineLength
|
64
|
+
]
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
@@ -4,7 +4,7 @@ module Teodoro
|
|
4
4
|
include ArquivoDeEvento
|
5
5
|
|
6
6
|
def processar
|
7
|
-
|
7
|
+
excluir_arquivo_data if tipo_de_evento_processavel?
|
8
8
|
excluir_admissao if exclusao_de_admissao?
|
9
9
|
excluir_inicio_de_tsv if exclusao_de_inicio_de_tsv?
|
10
10
|
excluir_inicio_de_afastamento if exclusao_de_inicio_de_afastamento?
|
@@ -20,7 +20,7 @@ module Teodoro
|
|
20
20
|
@tipo_de_evento ||= evento['infoExclusao/tpEvento'].delete('-')
|
21
21
|
end
|
22
22
|
|
23
|
-
def
|
23
|
+
def excluir_arquivo_data
|
24
24
|
empresa.arquivos_data.excluir(numero_de_recibo_do_evento_a_excluir)
|
25
25
|
end
|
26
26
|
|
@@ -0,0 +1,21 @@
|
|
1
|
+
module Teodoro
|
2
|
+
module Leiaute
|
3
|
+
class ArquivoS3500
|
4
|
+
include ArquivoDeEvento
|
5
|
+
|
6
|
+
def processar
|
7
|
+
excluir_arquivo_data
|
8
|
+
end
|
9
|
+
|
10
|
+
private
|
11
|
+
|
12
|
+
def excluir_arquivo_data
|
13
|
+
empresa.arquivos_data.excluir(numero_de_recibo_do_evento_a_excluir)
|
14
|
+
end
|
15
|
+
|
16
|
+
def numero_de_recibo_do_evento_a_excluir
|
17
|
+
@numero_de_recibo_do_evento_a_excluir ||= evento['infoExclusao/nrRecEvt']
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
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.48.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Fortes Tecnologia
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-08-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: nokogiri
|
@@ -233,7 +233,10 @@ files:
|
|
233
233
|
- lib/teodoro/leiaute/arquivo_s2300.rb
|
234
234
|
- lib/teodoro/leiaute/arquivo_s2306.rb
|
235
235
|
- lib/teodoro/leiaute/arquivo_s2399.rb
|
236
|
+
- lib/teodoro/leiaute/arquivo_s2500.rb
|
237
|
+
- lib/teodoro/leiaute/arquivo_s2501.rb
|
236
238
|
- lib/teodoro/leiaute/arquivo_s3000.rb
|
239
|
+
- lib/teodoro/leiaute/arquivo_s3500.rb
|
237
240
|
- lib/teodoro/leiaute_simplificado.rb
|
238
241
|
- lib/teodoro/obj.rb
|
239
242
|
- lib/teodoro/version.rb
|