teodoro 0.47.12 → 0.48.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e7b7e6cb49ea380e90697dd364b51d62636b9d9211af4a32afb79a64ac02b5ef
4
- data.tar.gz: 6d997992fbc2f5802f78c2ac0142731fbe284ce548ab23e8f38c6c34f7b3bc42
3
+ metadata.gz: 957e85911a2adc2ba0774ef3f28bfc2ebf7ad69d384188a643512367b4b4e407
4
+ data.tar.gz: 384b9d1d2534bb632e19fc211743c6879de9e86fb484cdcb88eaa893e505130b
5
5
  SHA512:
6
- metadata.gz: bc143662abc4751c1e450514768caf74302b72cae58170360483f486937f92f7e63d0c5717156918832aa4aedcb1e20e8d8f8a0bdd3a91229698fd12f683be36
7
- data.tar.gz: 8753062d4be938c5728be02e6bd8becb290e7e960d8649bf1be162142841e18d282f5912de3f6c2c012f2e2190bf0baed61ac09e9670ca24a0b190128ba160cd
6
+ metadata.gz: 3af72e61410633058292a573e33ad928cfa26822899a87e71bbafd00b39efd9115390dd0ab05525c3e8736d09115b9098aea22bd7700246548f9b2a1ea71672f
7
+ data.tar.gz: 3ebe8fe727d678adc7643f9e95994a673a2278e0ba2fc95dc60df029b723f3cc80940c05dad973904c3618970e7cdf6eb28ef8fa76ebcd992aff5da6bd3b0713
@@ -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
- excluir_arquivos_data if tipo_de_evento_processavel?
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 excluir_arquivos_data
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
@@ -1,3 +1,3 @@
1
1
  module Teodoro
2
- VERSION = '0.47.12'.freeze
2
+ VERSION = '0.48.0'.freeze
3
3
  end
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.47.12
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-07-04 00:00:00.000000000 Z
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