flit-modulo-exportacoes 2.0.14 → 2.0.16

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.
package/dist/index.d.ts CHANGED
@@ -1,18 +1,17 @@
1
1
  import { Client } from '@elastic/elasticsearch';
2
2
  import { SearchHit } from '@elastic/elasticsearch/lib/api/types';
3
3
  import { EnumFormaEnvioFaltasEventosExportacoes } from './eventos-exportacoes-model';
4
- import { PayloadExportacaoPadrao, TipoEventoExportacao, TiposEventosExportacaoArquivo, TiposEventosExportar, ValoresEventosExportacao } from './models';
4
+ import { PayloadExportacaoPadrao, TipoEventoExportacao, TiposEventosExportacaoArquivo, TiposEventosExportar, ValoresEventosExportacao, ValorEventoExportacao, ValorEventoExportacaoFalta } from './models';
5
5
  export declare function validarDadosPayload(data: PayloadExportacaoPadrao, fn: () => Array<string>): boolean;
6
- export declare function calcularValoresExportacao({ contaId, dataFinal, dataInicial, elasticClient, fatorConversao, parametrosIntegracao, empresas, jornadas, formaEnvioFaltas }: {
6
+ export declare function calcularValoresExportacao({ contaId, dataFinal, dataInicial, elasticClient, parametrosIntegracao, empresas, jornadas, formaEnvioFaltas }: {
7
7
  contaId: string;
8
8
  dataFinal: Date;
9
9
  dataInicial: Date;
10
10
  elasticClient: Client;
11
- fatorConversao?: number;
12
11
  parametrosIntegracao: any;
13
12
  empresas: Array<SearchHit<any>>;
14
13
  jornadas: Array<SearchHit<any>>;
15
14
  formaEnvioFaltas: EnumFormaEnvioFaltasEventosExportacoes;
16
15
  }): Promise<ValoresEventosExportacao>;
17
- export declare function retornaValorEvento(tipoEvento: TipoEventoExportacao, valoresEventos: ValoresEventosExportacao): number;
16
+ export declare function retornaValorEvento(tipoEvento: TipoEventoExportacao, valoresEventos: ValoresEventosExportacao): ValorEventoExportacao | ValorEventoExportacaoFalta;
18
17
  export declare function processarTiposEventosExportar(tiposEventos: Array<TiposEventosExportar>): TiposEventosExportacaoArquivo;
package/dist/index.js CHANGED
@@ -5,11 +5,10 @@ const contas_elastic_1 = require("./dao/contas-elastic");
5
5
  const feriados_elastic_1 = require("./dao/feriados-elastic");
6
6
  const flit_calcular_jornada_1 = require("flit-calcular-jornada");
7
7
  const unificacao_eventos_repetidos_1 = require("./unificacao-eventos-repetidos");
8
- const eventos_exportacoes_model_1 = require("./eventos-exportacoes-model");
9
8
  const utils_1 = require("flit-calcular-jornada/dist/lib/helpers/utils");
10
9
  const parametrosHorasNoturnas_model_1 = require("flit-calcular-jornada/dist/lib/models/parametrosHorasNoturnas.model");
11
- const models_1 = require("./models");
12
10
  const utils_2 = require("./utils");
11
+ const models_1 = require("./models");
13
12
  function validarCampo(fn, fieldName, campo) {
14
13
  if (!campo || campo.length <= 0) {
15
14
  fn().push(`${fieldName} não informada.`);
@@ -23,39 +22,105 @@ function validarDadosPayload(data, fn) {
23
22
  return fn().length === 0;
24
23
  }
25
24
  exports.validarDadosPayload = validarDadosPayload;
26
- function aplicarFatorConversaoValoresEventos({ fatorConversao, valoresEventos, formaEnvioFaltas }) {
25
+ function aplicarFatorConversaoValoresEventos({ valoresEventos, formaEnvioFaltas }) {
27
26
  return {
28
27
  datas_faltas: valoresEventos.datas_faltas,
29
- ValorNormal: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorNormal * fatorConversao, 1),
30
- ValorAtraso: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorAtraso * fatorConversao, 1),
31
- ValorNoturno: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorNoturno * fatorConversao, 1),
32
- ValorHorasFaltas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorHorasFaltas * fatorConversao, 1),
33
- ValorExtraSegSex: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraSegSex * fatorConversao, 1),
34
- ValorExtraSabado: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraSabado * fatorConversao, 1),
35
- ValorExtraDomingo: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraDomingo * fatorConversao, 1),
36
- ValorExtraFeriado: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraFeriado * fatorConversao, 1),
37
- ValorNoturnoTotal: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorNoturnoTotal * fatorConversao, 1),
28
+ ValorNormal: {
29
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorNormal.Horas * 1, 1),
30
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorNormal.Minutos * 1, 1)
31
+ },
32
+ ValorAtraso: {
33
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorAtraso.Horas * 1, 1),
34
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorAtraso.Minutos * 1, 1)
35
+ },
36
+ ValorNoturno: {
37
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorNoturno.Horas * 1, 1),
38
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorNoturno.Minutos * 1, 1)
39
+ },
40
+ ValorExtraSegSex: {
41
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraSegSex.Horas * 1, 1),
42
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraSegSex.Minutos * 1, 1)
43
+ },
44
+ ValorExtraSabado: {
45
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraSabado.Horas * 1, 1),
46
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraSabado.Minutos * 1, 1)
47
+ },
48
+ ValorExtraDomingo: {
49
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraDomingo.Horas * 1, 1),
50
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraDomingo.Minutos * 1, 1)
51
+ },
52
+ ValorExtraFeriado: {
53
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraFeriado.Horas * 1, 1),
54
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraFeriado.Minutos * 1, 1)
55
+ },
56
+ ValorNoturnoTotal: {
57
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorNoturnoTotal.Horas * 1, 1),
58
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorNoturnoTotal.Minutos * 1, 1)
59
+ },
38
60
  FaixaSemanal: {
39
- ValorFaixa1: (0, utils_2.arredondarTempoDecimal)(valoresEventos.FaixaSemanal.ValorFaixa1 * fatorConversao, 1),
40
- ValorFaixa2: (0, utils_2.arredondarTempoDecimal)(valoresEventos.FaixaSemanal.ValorFaixa2 * fatorConversao, 1),
41
- ValorFaixa3: (0, utils_2.arredondarTempoDecimal)(valoresEventos.FaixaSemanal.ValorFaixa3 * fatorConversao, 1)
61
+ ValorFaixa1: {
62
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.FaixaSemanal.ValorFaixa1.Horas * 1, 1),
63
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.FaixaSemanal.ValorFaixa1.Minutos * 1, 1)
64
+ },
65
+ ValorFaixa2: {
66
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.FaixaSemanal.ValorFaixa2.Horas * 1, 1),
67
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.FaixaSemanal.ValorFaixa2.Minutos * 1, 1)
68
+ },
69
+ ValorFaixa3: {
70
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.FaixaSemanal.ValorFaixa3.Horas * 1, 1),
71
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.FaixaSemanal.ValorFaixa3.Minutos * 1, 1)
72
+ }
42
73
  },
43
74
  FaixaDiferenciada: {
44
- ValorFaixa1: (0, utils_2.arredondarTempoDecimal)(valoresEventos.FaixaDiferenciada.ValorFaixa1 * fatorConversao, 1),
45
- ValorFaixa2: (0, utils_2.arredondarTempoDecimal)(valoresEventos.FaixaDiferenciada.ValorFaixa2 * fatorConversao, 1),
46
- ValorFaixa3: (0, utils_2.arredondarTempoDecimal)(valoresEventos.FaixaDiferenciada.ValorFaixa3 * fatorConversao, 1)
47
- },
48
- ValorHorasTrabalhadas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorHorasTrabalhadas * fatorConversao, 1),
49
- ValorExtraIntrajornada: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraIntrajornada * fatorConversao, 1),
50
- ValorExtraNoturnoSegSex: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraNoturnoSegSex * fatorConversao, 1),
51
- ValorExtraNoturnoSabado: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraNoturnoSabado * fatorConversao, 1),
52
- ValorExtraNoturnoDomingo: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraNoturnoDomingo * fatorConversao, 1),
53
- ValorExtraNoturnoFeriado: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraNoturnoFeriado * fatorConversao, 1),
54
- ValorExtraIntrajornadaComReducao: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraIntrajornadaComReducao * fatorConversao, 1),
55
- ValorFaltas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorFaltas * (formaEnvioFaltas === eventos_exportacoes_model_1.EnumFormaEnvioFaltasEventosExportacoes.Dias ? 1 : fatorConversao), 1)
75
+ ValorFaixa1: {
76
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.FaixaDiferenciada.ValorFaixa1.Horas * 1, 1),
77
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.FaixaDiferenciada.ValorFaixa1.Minutos * 1, 1)
78
+ },
79
+ ValorFaixa2: {
80
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.FaixaDiferenciada.ValorFaixa2.Horas * 1, 1),
81
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.FaixaDiferenciada.ValorFaixa2.Minutos * 1, 1)
82
+ },
83
+ ValorFaixa3: {
84
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.FaixaDiferenciada.ValorFaixa3.Horas * 1, 1),
85
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.FaixaDiferenciada.ValorFaixa3.Minutos * 1, 1)
86
+ }
87
+ },
88
+ ValorHorasTrabalhadas: {
89
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorHorasTrabalhadas.Horas * 1, 1),
90
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorHorasTrabalhadas.Minutos * 1, 1)
91
+ },
92
+ ValorExtraIntrajornada: {
93
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraIntrajornada.Horas * 1, 1),
94
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraIntrajornada.Minutos * 1, 1)
95
+ },
96
+ ValorExtraNoturnoSegSex: {
97
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraNoturnoSegSex.Horas * 1, 1),
98
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraNoturnoSegSex.Minutos * 1, 1)
99
+ },
100
+ ValorExtraNoturnoSabado: {
101
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraNoturnoSabado.Horas * 1, 1),
102
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraNoturnoSabado.Minutos * 1, 1)
103
+ },
104
+ ValorExtraNoturnoDomingo: {
105
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraNoturnoDomingo.Horas * 1, 1),
106
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraNoturnoDomingo.Minutos * 1, 1)
107
+ },
108
+ ValorExtraNoturnoFeriado: {
109
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraNoturnoFeriado.Horas * 1, 1),
110
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraNoturnoFeriado.Minutos * 1, 1)
111
+ },
112
+ ValorExtraIntrajornadaComReducao: {
113
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraIntrajornadaComReducao.Horas * 1, 1),
114
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorExtraIntrajornadaComReducao.Minutos * 1, 1)
115
+ },
116
+ ValorFaltas: {
117
+ Dias: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorFaltas.Dias * 1, 1),
118
+ Horas: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorFaltas.Horas * 1, 1),
119
+ Minutos: (0, utils_2.arredondarTempoDecimal)(valoresEventos.ValorFaltas.Minutos * 1, 1)
120
+ }
56
121
  };
57
122
  }
58
- async function calcularValoresExportacao({ contaId, dataFinal, dataInicial, elasticClient, fatorConversao, parametrosIntegracao, empresas, jornadas, formaEnvioFaltas }) {
123
+ async function calcularValoresExportacao({ contaId, dataFinal, dataInicial, elasticClient, parametrosIntegracao, empresas, jornadas, formaEnvioFaltas }) {
59
124
  const feriados = await new feriados_elastic_1.FeriadosElastic(elasticClient).getFeriadosElastic({
60
125
  contaId: contaId,
61
126
  dataFinal: dataFinal,
@@ -72,63 +137,141 @@ async function calcularValoresExportacao({ contaId, dataFinal, dataInicial, elas
72
137
  }));
73
138
  }
74
139
  const valoresEventos = {
75
- ValorFaltas: 0,
76
- ValorAtraso: 0,
77
- ValorNormal: 0,
78
- ValorNoturno: 0,
140
+ ValorFaltas: {
141
+ Dias: 0,
142
+ Horas: 0,
143
+ Minutos: 0
144
+ },
145
+ ValorAtraso: {
146
+ Horas: 0,
147
+ Minutos: 0
148
+ },
149
+ ValorNormal: {
150
+ Horas: 0,
151
+ Minutos: 0
152
+ },
153
+ ValorNoturno: {
154
+ Horas: 0,
155
+ Minutos: 0
156
+ },
79
157
  FaixaSemanal: {
80
- ValorFaixa1: 0,
81
- ValorFaixa2: 0,
82
- ValorFaixa3: 0
158
+ ValorFaixa1: {
159
+ Horas: 0,
160
+ Minutos: 0
161
+ },
162
+ ValorFaixa2: {
163
+ Horas: 0,
164
+ Minutos: 0
165
+ },
166
+ ValorFaixa3: {
167
+ Horas: 0,
168
+ Minutos: 0
169
+ }
83
170
  },
84
171
  FaixaDiferenciada: {
85
- ValorFaixa1: 0,
86
- ValorFaixa2: 0,
87
- ValorFaixa3: 0
88
- },
89
- ValorExtraSegSex: 0,
90
- ValorExtraSabado: 0,
91
- ValorHorasFaltas: 0,
92
- ValorExtraDomingo: 0,
93
- ValorExtraFeriado: 0,
94
- ValorNoturnoTotal: 0,
95
- ValorHorasTrabalhadas: 0,
96
- ValorExtraIntrajornada: 0,
97
- ValorExtraNoturnoSegSex: 0,
98
- ValorExtraNoturnoSabado: 0,
99
- ValorExtraNoturnoDomingo: 0,
100
- ValorExtraNoturnoFeriado: 0,
172
+ ValorFaixa1: {
173
+ Horas: 0,
174
+ Minutos: 0
175
+ },
176
+ ValorFaixa2: {
177
+ Horas: 0,
178
+ Minutos: 0
179
+ },
180
+ ValorFaixa3: {
181
+ Horas: 0,
182
+ Minutos: 0
183
+ }
184
+ },
185
+ ValorExtraSegSex: {
186
+ Horas: 0,
187
+ Minutos: 0
188
+ },
189
+ ValorExtraSabado: {
190
+ Horas: 0,
191
+ Minutos: 0
192
+ },
193
+ ValorExtraDomingo: {
194
+ Horas: 0,
195
+ Minutos: 0
196
+ },
197
+ ValorExtraFeriado: {
198
+ Horas: 0,
199
+ Minutos: 0
200
+ },
201
+ ValorNoturnoTotal: {
202
+ Horas: 0,
203
+ Minutos: 0
204
+ },
205
+ ValorHorasTrabalhadas: {
206
+ Horas: 0,
207
+ Minutos: 0
208
+ },
209
+ ValorExtraIntrajornada: {
210
+ Horas: 0,
211
+ Minutos: 0
212
+ },
213
+ ValorExtraNoturnoSegSex: {
214
+ Horas: 0,
215
+ Minutos: 0
216
+ },
217
+ ValorExtraNoturnoSabado: {
218
+ Horas: 0,
219
+ Minutos: 0
220
+ },
221
+ ValorExtraNoturnoDomingo: {
222
+ Horas: 0,
223
+ Minutos: 0
224
+ },
225
+ ValorExtraNoturnoFeriado: {
226
+ Horas: 0,
227
+ Minutos: 0
228
+ },
101
229
  datas_faltas: new Array(),
102
- ValorExtraIntrajornadaComReducao: 0
230
+ ValorExtraIntrajornadaComReducao: {
231
+ Horas: 0,
232
+ Minutos: 0
233
+ }
103
234
  };
104
235
  for (const jornadaElastic of jornadas) {
105
236
  const jornada = jornadaElastic._source ?? {};
106
237
  if ((0, utils_2.colaboradorFaltou)(jornada.jornada_realizada)) {
107
238
  valoresEventos.datas_faltas.push(new Date(jornada.data_hora));
108
239
  const minutosFalta = (0, utils_2.retornaNumeroMinutosPrevistosEscala)(jornada.jornada_prevista?.periodos ?? []);
109
- valoresEventos.ValorHorasFaltas += (0, utils_2.arredondarTempoDecimal)(minutosFalta / 60, 1);
110
- if (formaEnvioFaltas === eventos_exportacoes_model_1.EnumFormaEnvioFaltasEventosExportacoes.Dias) {
111
- valoresEventos.ValorFaltas += 1;
112
- }
113
- else {
114
- valoresEventos.ValorFaltas += (0, utils_2.arredondarTempoDecimal)(minutosFalta / (formaEnvioFaltas === eventos_exportacoes_model_1.EnumFormaEnvioFaltasEventosExportacoes.Horas ? 60 : 1), 1);
115
- }
240
+ valoresEventos.ValorFaltas.Dias += 1;
241
+ valoresEventos.ValorFaltas.Minutos += minutosFalta;
242
+ valoresEventos.ValorFaltas.Horas += minutosFalta / 60;
116
243
  }
117
- valoresEventos.ValorNormal += jornada.horas_normais ?? 0;
118
- valoresEventos.ValorNoturno += jornada.horas_noturnas ?? 0;
119
- valoresEventos.ValorNoturnoTotal += jornada.horas_noturnas ?? 0;
120
- valoresEventos.ValorNoturnoTotal += jornada.horas_noturnas_extras ?? 0;
121
- valoresEventos.ValorHorasTrabalhadas += (jornada.horas_normais ?? 0) + (jornada.horas_extras ?? 0) + (jornada.horas_noturnas ?? 0) + (jornada.horas_noturnas_extras ?? 0);
244
+ valoresEventos.ValorNormal.Horas += jornada.horas_normais ?? 0;
245
+ valoresEventos.ValorNormal.Minutos += (jornada.horas_normais ?? 0) * 60;
246
+ valoresEventos.ValorNoturno.Horas += jornada.horas_noturnas ?? 0;
247
+ valoresEventos.ValorNoturno.Minutos += (jornada.horas_noturnas ?? 0) * 60;
248
+ valoresEventos.ValorNoturnoTotal.Horas += jornada.horas_noturnas ?? 0;
249
+ valoresEventos.ValorNoturnoTotal.Minutos += (jornada.horas_noturnas ?? 0) * 60;
250
+ valoresEventos.ValorNoturnoTotal.Horas += jornada.horas_noturnas_extras ?? 0;
251
+ valoresEventos.ValorNoturnoTotal.Minutos += (jornada.horas_noturnas_extras ?? 0) * 60;
252
+ const valorHorasTrabalhadas = (jornada.horas_normais ?? 0) + (jornada.horas_extras ?? 0) + (jornada.horas_noturnas ?? 0) + (jornada.horas_noturnas_extras ?? 0);
253
+ valoresEventos.ValorHorasTrabalhadas.Horas += valorHorasTrabalhadas;
254
+ valoresEventos.ValorHorasTrabalhadas.Minutos += valorHorasTrabalhadas * 60;
122
255
  if ((jornada.regime_compensacao ?? flit_calcular_jornada_1.RegimesCompensacao.HorasExtras) === flit_calcular_jornada_1.RegimesCompensacao.HorasExtras) {
123
- valoresEventos.ValorAtraso += jornada.horas_negativas ?? 0;
124
- valoresEventos.ValorExtraIntrajornada += jornada.horas_extras_intrajornada ?? 0;
125
- valoresEventos.FaixaSemanal.ValorFaixa1 += jornada.faixas_horas_extras?.semanal?.faixa1 ?? 0;
126
- valoresEventos.FaixaSemanal.ValorFaixa2 += jornada.faixas_horas_extras?.semanal?.faixa2 ?? 0;
127
- valoresEventos.FaixaSemanal.ValorFaixa3 += jornada.faixas_horas_extras?.semanal?.faixa3 ?? 0;
128
- valoresEventos.FaixaDiferenciada.ValorFaixa1 += jornada.faixas_horas_extras?.diferenciada?.faixa1 ?? 0;
129
- valoresEventos.FaixaDiferenciada.ValorFaixa2 += jornada.faixas_horas_extras?.diferenciada?.faixa2 ?? 0;
130
- valoresEventos.FaixaDiferenciada.ValorFaixa3 += jornada.faixas_horas_extras?.diferenciada?.faixa3 ?? 0;
131
- valoresEventos.ValorExtraIntrajornadaComReducao += (jornada.horas_extras_intrajornada ?? 0) * (horarioNoturno?.base_reducao_horario_noturno || 1);
256
+ valoresEventos.ValorAtraso.Horas += jornada.horas_negativas ?? 0;
257
+ valoresEventos.ValorAtraso.Minutos += (jornada.horas_negativas ?? 0) * 60;
258
+ valoresEventos.ValorExtraIntrajornada.Horas += jornada.horas_extras_intrajornada ?? 0;
259
+ valoresEventos.ValorExtraIntrajornada.Minutos += (jornada.horas_extras_intrajornada ?? 0) * 60;
260
+ valoresEventos.FaixaSemanal.ValorFaixa1.Horas += jornada.faixas_horas_extras?.semanal?.faixa1 ?? 0;
261
+ valoresEventos.FaixaSemanal.ValorFaixa1.Minutos += (jornada.faixas_horas_extras?.semanal?.faixa1 ?? 0) * 60;
262
+ valoresEventos.FaixaSemanal.ValorFaixa2.Horas += jornada.faixas_horas_extras?.semanal?.faixa2 ?? 0;
263
+ valoresEventos.FaixaSemanal.ValorFaixa2.Minutos += (jornada.faixas_horas_extras?.semanal?.faixa2 ?? 0) * 60;
264
+ valoresEventos.FaixaSemanal.ValorFaixa3.Horas += jornada.faixas_horas_extras?.semanal?.faixa3 ?? 0;
265
+ valoresEventos.FaixaSemanal.ValorFaixa3.Minutos += (jornada.faixas_horas_extras?.semanal?.faixa3 ?? 0) * 60;
266
+ valoresEventos.FaixaDiferenciada.ValorFaixa1.Horas += jornada.faixas_horas_extras?.diferenciada?.faixa1 ?? 0;
267
+ valoresEventos.FaixaDiferenciada.ValorFaixa1.Minutos += (jornada.faixas_horas_extras?.diferenciada?.faixa1 ?? 0) * 60;
268
+ valoresEventos.FaixaDiferenciada.ValorFaixa2.Horas += jornada.faixas_horas_extras?.diferenciada?.faixa2 ?? 0;
269
+ valoresEventos.FaixaDiferenciada.ValorFaixa2.Minutos += (jornada.faixas_horas_extras?.diferenciada?.faixa2 ?? 0) * 60;
270
+ valoresEventos.FaixaDiferenciada.ValorFaixa3.Horas += jornada.faixas_horas_extras?.diferenciada?.faixa3 ?? 0;
271
+ valoresEventos.FaixaDiferenciada.ValorFaixa3.Minutos += (jornada.faixas_horas_extras?.diferenciada?.faixa3 ?? 0) * 60;
272
+ const valorExtraIntrajornadaComReducao = (jornada.horas_extras_intrajornada ?? 0) * (horarioNoturno?.base_reducao_horario_noturno || 1);
273
+ valoresEventos.ValorExtraIntrajornadaComReducao.Horas += valorExtraIntrajornadaComReducao;
274
+ valoresEventos.ValorExtraIntrajornadaComReducao.Minutos += valorExtraIntrajornadaComReducao * 60;
132
275
  if (await (0, utils_2.feriado)({
133
276
  empresas: empresas,
134
277
  feriados: feriados,
@@ -139,22 +282,30 @@ async function calcularValoresExportacao({ contaId, dataFinal, dataInicial, elas
139
282
  cidadeEmpresaUsuarioJornada: jornada.usuario.empresa.cidade,
140
283
  tipoOcorrenciaFrequenciaJornadaPrevista: jornada.jornada_prevista.ocorrencia_frequencia.tipo
141
284
  })) {
142
- valoresEventos.ValorExtraFeriado += jornada.horas_extras ?? 0;
143
- valoresEventos.ValorExtraNoturnoFeriado += jornada.horas_noturnas_extras ?? 0;
285
+ valoresEventos.ValorExtraFeriado.Horas += jornada.horas_extras ?? 0;
286
+ valoresEventos.ValorExtraFeriado.Minutos += (jornada.horas_extras ?? 0) * 60;
287
+ valoresEventos.ValorExtraNoturnoFeriado.Horas += jornada.horas_noturnas_extras ?? 0;
288
+ valoresEventos.ValorExtraNoturnoFeriado.Minutos += (jornada.horas_noturnas_extras ?? 0) * 60;
144
289
  }
145
290
  else {
146
291
  if (jornada.data_hora && (0, utils_2.sabado)(new Date(jornada.data_hora))) {
147
- valoresEventos.ValorExtraSabado += jornada.horas_extras ?? 0;
148
- valoresEventos.ValorExtraNoturnoSabado += jornada.horas_noturnas_extras ?? 0;
292
+ valoresEventos.ValorExtraSabado.Horas += jornada.horas_extras ?? 0;
293
+ valoresEventos.ValorExtraSabado.Minutos += (jornada.horas_extras ?? 0) * 60;
294
+ valoresEventos.ValorExtraNoturnoSabado.Horas += jornada.horas_noturnas_extras ?? 0;
295
+ valoresEventos.ValorExtraNoturnoSabado.Minutos += (jornada.horas_noturnas_extras ?? 0) * 60;
149
296
  }
150
297
  else {
151
298
  if (jornada.data_hora && (0, utils_2.domingo)(new Date(jornada.data_hora))) {
152
- valoresEventos.ValorExtraDomingo += jornada.horas_extras ?? 0;
153
- valoresEventos.ValorExtraNoturnoDomingo += jornada.horas_noturnas_extras ?? 0;
299
+ valoresEventos.ValorExtraDomingo.Horas += jornada.horas_extras ?? 0;
300
+ valoresEventos.ValorExtraDomingo.Minutos += (jornada.horas_extras ?? 0) * 60;
301
+ valoresEventos.ValorExtraNoturnoDomingo.Horas += jornada.horas_noturnas_extras ?? 0;
302
+ valoresEventos.ValorExtraNoturnoDomingo.Minutos += (jornada.horas_noturnas_extras ?? 0) * 60;
154
303
  }
155
304
  else {
156
- valoresEventos.ValorExtraSegSex += jornada.horas_extras ?? 0;
157
- valoresEventos.ValorExtraNoturnoSegSex += jornada.horas_noturnas_extras ?? 0;
305
+ valoresEventos.ValorExtraSegSex.Horas += jornada.horas_extras ?? 0;
306
+ valoresEventos.ValorExtraSegSex.Minutos += (jornada.horas_extras ?? 0) * 60;
307
+ valoresEventos.ValorExtraNoturnoSegSex.Horas += jornada.horas_noturnas_extras ?? 0;
308
+ valoresEventos.ValorExtraNoturnoSegSex.Minutos += (jornada.horas_noturnas_extras ?? 0) * 60;
158
309
  }
159
310
  }
160
311
  }
@@ -166,8 +317,7 @@ async function calcularValoresExportacao({ contaId, dataFinal, dataInicial, elas
166
317
  });
167
318
  return aplicarFatorConversaoValoresEventos({
168
319
  valoresEventos: valoresEventos,
169
- formaEnvioFaltas: formaEnvioFaltas,
170
- fatorConversao: fatorConversao ?? 1
320
+ formaEnvioFaltas: formaEnvioFaltas
171
321
  });
172
322
  }
173
323
  exports.calcularValoresExportacao = calcularValoresExportacao;
@@ -214,11 +364,22 @@ function retornaValorEvento(tipoEvento, valoresEventos) {
214
364
  case models_1.TipoEventoExportacao.HORAS_TRABALHADAS:
215
365
  return valoresEventos.ValorHorasTrabalhadas;
216
366
  case models_1.TipoEventoExportacao.ATRASO:
217
- return Math.abs(valoresEventos.ValorAtraso);
367
+ return {
368
+ Horas: Math.abs(valoresEventos.ValorAtraso.Horas),
369
+ Minutos: Math.abs(valoresEventos.ValorAtraso.Minutos)
370
+ };
218
371
  case models_1.TipoEventoExportacao.FALTA:
219
- return Math.abs(valoresEventos.ValorFaltas);
372
+ return {
373
+ Dias: Math.abs(valoresEventos.ValorFaltas.Dias),
374
+ Horas: Math.abs(valoresEventos.ValorFaltas.Horas),
375
+ Minutos: Math.abs(valoresEventos.ValorAtraso.Minutos)
376
+ };
220
377
  default:
221
- return 0;
378
+ return {
379
+ Dias: 0,
380
+ Horas: 0,
381
+ Minutos: 0
382
+ };
222
383
  }
223
384
  }
224
385
  exports.retornaValorEvento = retornaValorEvento;
package/dist/models.d.ts CHANGED
@@ -123,38 +123,54 @@ export interface DadosEmpresaExportacao {
123
123
  cidade: string;
124
124
  };
125
125
  }
126
+ /**
127
+ * Interface com o modelo dos valores calculados, em minutos ou horas.
128
+ *
129
+ * @interface ValoresEventosExportacao
130
+ */
131
+ export interface ValorEventoExportacao {
132
+ Horas: number;
133
+ Minutos: number;
134
+ }
135
+ /**
136
+ * Interface com o modelo dos valores calculados da Falta, em minutos, horas ou dias.
137
+ *
138
+ * @interface ValoresEventosExportacao
139
+ */
140
+ export interface ValorEventoExportacaoFalta extends ValorEventoExportacao {
141
+ Dias: number;
142
+ }
126
143
  /**
127
144
  * Interface com o modelo dos valores calculados para montar o arquivo que será exportado.
128
145
  *
129
146
  * @interface ValoresEventosExportacao
130
147
  */
131
148
  export interface ValoresEventosExportacao {
132
- ValorFaltas: number;
133
- ValorAtraso: number;
134
- ValorNormal: number;
135
- ValorNoturno: number;
136
- ValorExtraSegSex: number;
137
- ValorExtraSabado: number;
138
- ValorHorasFaltas: number;
139
149
  datas_faltas: Array<Date>;
140
- ValorExtraDomingo: number;
141
- ValorExtraFeriado: number;
142
- ValorNoturnoTotal: number;
143
- ValorHorasTrabalhadas: number;
144
- ValorExtraIntrajornada: number;
145
- ValorExtraNoturnoSegSex: number;
146
- ValorExtraNoturnoSabado: number;
147
- ValorExtraNoturnoDomingo: number;
148
- ValorExtraNoturnoFeriado: number;
149
- ValorExtraIntrajornadaComReducao: number;
150
+ ValorAtraso: ValorEventoExportacao;
151
+ ValorNormal: ValorEventoExportacao;
152
+ ValorNoturno: ValorEventoExportacao;
150
153
  FaixaDiferenciada: {
151
- ValorFaixa1: number;
152
- ValorFaixa2: number;
153
- ValorFaixa3: number;
154
+ ValorFaixa1: ValorEventoExportacao;
155
+ ValorFaixa2: ValorEventoExportacao;
156
+ ValorFaixa3: ValorEventoExportacao;
154
157
  };
155
158
  FaixaSemanal: {
156
- ValorFaixa1: number;
157
- ValorFaixa2: number;
158
- ValorFaixa3: number;
159
+ ValorFaixa1: ValorEventoExportacao;
160
+ ValorFaixa2: ValorEventoExportacao;
161
+ ValorFaixa3: ValorEventoExportacao;
159
162
  };
163
+ ValorFaltas: ValorEventoExportacaoFalta;
164
+ ValorExtraSegSex: ValorEventoExportacao;
165
+ ValorExtraSabado: ValorEventoExportacao;
166
+ ValorExtraDomingo: ValorEventoExportacao;
167
+ ValorExtraFeriado: ValorEventoExportacao;
168
+ ValorNoturnoTotal: ValorEventoExportacao;
169
+ ValorHorasTrabalhadas: ValorEventoExportacao;
170
+ ValorExtraIntrajornada: ValorEventoExportacao;
171
+ ValorExtraNoturnoSegSex: ValorEventoExportacao;
172
+ ValorExtraNoturnoSabado: ValorEventoExportacao;
173
+ ValorExtraNoturnoDomingo: ValorEventoExportacao;
174
+ ValorExtraNoturnoFeriado: ValorEventoExportacao;
175
+ ValorExtraIntrajornadaComReducao: ValorEventoExportacao;
160
176
  }
@@ -19,127 +19,168 @@ class UnificacaoEventosRepetidos {
19
19
  }), {});
20
20
  }
21
21
  processarValoresCodigosRepetidos({ valoresEventos, eventosAgrupados }) {
22
- let somatorio = 0;
22
+ let somatorioHoras = 0;
23
+ let somatorioMinutos = 0;
23
24
  for (let index = 0; index < eventosAgrupados.length; index++) {
24
25
  switch (eventosAgrupados[index].tipo) {
25
26
  case models_1.TipoEventoExportacao.ATRASO:
26
- somatorio += valoresEventos.ValorAtraso ?? 0;
27
+ somatorioHoras += valoresEventos.ValorAtraso.Horas ?? 0;
28
+ somatorioMinutos += valoresEventos.ValorAtraso.Minutos ?? 0;
27
29
  if (index > 0) {
28
- valoresEventos.ValorAtraso = 0;
30
+ valoresEventos.ValorAtraso.Horas = 0;
31
+ valoresEventos.ValorAtraso.Minutos = 0;
29
32
  }
30
33
  break;
31
34
  case models_1.TipoEventoExportacao.HORA_NORMAL:
32
- somatorio += valoresEventos.ValorNormal ?? 0;
35
+ somatorioHoras += valoresEventos.ValorNormal.Horas ?? 0;
36
+ somatorioMinutos += valoresEventos.ValorNormal.Minutos ?? 0;
33
37
  if (index > 0) {
34
- valoresEventos.ValorNormal = 0;
38
+ valoresEventos.ValorNormal.Horas = 0;
39
+ valoresEventos.ValorNormal.Minutos = 0;
35
40
  }
36
41
  break;
37
42
  case models_1.TipoEventoExportacao.HORA_NOTURNA:
38
- somatorio += valoresEventos.ValorNoturno ?? 0;
43
+ somatorioHoras += valoresEventos.ValorNoturno.Horas ?? 0;
44
+ somatorioMinutos += valoresEventos.ValorNoturno.Minutos ?? 0;
39
45
  if (index > 0) {
40
- valoresEventos.ValorNoturno = 0;
46
+ valoresEventos.ValorNoturno.Horas = 0;
47
+ valoresEventos.ValorNoturno.Minutos = 0;
41
48
  }
42
49
  break;
43
50
  case models_1.TipoEventoExportacao.HORA_EXTRA_SEG_SEX:
44
- somatorio += valoresEventos.ValorExtraSegSex ?? 0;
51
+ somatorioHoras += valoresEventos.ValorExtraSegSex.Horas ?? 0;
52
+ somatorioMinutos += valoresEventos.ValorExtraSegSex.Minutos ?? 0;
45
53
  if (index > 0) {
46
- valoresEventos.ValorExtraSegSex = 0;
54
+ valoresEventos.ValorExtraSegSex.Horas = 0;
55
+ valoresEventos.ValorExtraSegSex.Minutos = 0;
47
56
  }
48
57
  break;
49
58
  case models_1.TipoEventoExportacao.HORA_EXTRA_SAB:
50
- somatorio += valoresEventos.ValorExtraSabado ?? 0;
59
+ somatorioHoras += valoresEventos.ValorExtraSabado.Horas ?? 0;
60
+ somatorioMinutos += valoresEventos.ValorExtraSabado.Minutos ?? 0;
51
61
  if (index > 0) {
52
- valoresEventos.ValorExtraSabado = 0;
62
+ valoresEventos.ValorExtraSabado.Horas = 0;
63
+ valoresEventos.ValorExtraSabado.Minutos = 0;
53
64
  }
54
65
  break;
55
66
  case models_1.TipoEventoExportacao.HORA_EXTRA_DOM:
56
- somatorio += valoresEventos.ValorExtraDomingo ?? 0;
67
+ somatorioHoras += valoresEventos.ValorExtraDomingo.Horas ?? 0;
68
+ somatorioMinutos += valoresEventos.ValorExtraDomingo.Minutos ?? 0;
57
69
  if (index > 0) {
58
- valoresEventos.ValorExtraDomingo = 0;
70
+ valoresEventos.ValorExtraDomingo.Horas = 0;
71
+ valoresEventos.ValorExtraDomingo.Minutos = 0;
59
72
  }
60
73
  break;
61
74
  case models_1.TipoEventoExportacao.HORA_EXTRA_FER:
62
- somatorio += valoresEventos.ValorExtraFeriado ?? 0;
75
+ somatorioHoras += valoresEventos.ValorExtraFeriado.Horas ?? 0;
76
+ somatorioMinutos += valoresEventos.ValorExtraFeriado.Minutos ?? 0;
63
77
  if (index > 0) {
64
- valoresEventos.ValorExtraFeriado = 0;
78
+ valoresEventos.ValorExtraFeriado.Horas = 0;
79
+ valoresEventos.ValorExtraFeriado.Minutos = 0;
65
80
  }
66
81
  break;
67
82
  case models_1.TipoEventoExportacao.HORA_EXTRA_INTRAJORNADA:
68
- somatorio += valoresEventos.ValorExtraIntrajornada ?? 0;
83
+ somatorioHoras += valoresEventos.ValorExtraIntrajornada.Horas ?? 0;
84
+ somatorioMinutos += valoresEventos.ValorExtraIntrajornada.Minutos ?? 0;
69
85
  if (index > 0) {
70
- valoresEventos.ValorExtraIntrajornada = 0;
86
+ valoresEventos.ValorExtraIntrajornada.Horas = 0;
87
+ valoresEventos.ValorExtraIntrajornada.Minutos = 0;
71
88
  }
72
89
  break;
73
90
  case models_1.TipoEventoExportacao.HORA_EXTRA_INTRAJORNADA_COM_REDUCAO:
74
- somatorio += valoresEventos.ValorExtraIntrajornadaComReducao ?? 0;
91
+ somatorioHoras += valoresEventos.ValorExtraIntrajornadaComReducao.Horas ?? 0;
92
+ somatorioMinutos += valoresEventos.ValorExtraIntrajornadaComReducao.Minutos ?? 0;
75
93
  if (index > 0) {
76
- valoresEventos.ValorExtraIntrajornadaComReducao = 0;
94
+ valoresEventos.ValorExtraIntrajornadaComReducao.Horas = 0;
95
+ valoresEventos.ValorExtraIntrajornadaComReducao.Minutos = 0;
77
96
  }
78
97
  break;
79
98
  case models_1.TipoEventoExportacao.HORA_EXTRA_NOTURNA_SEG_SEX:
80
- somatorio += valoresEventos.ValorExtraNoturnoSegSex ?? 0;
99
+ somatorioHoras += valoresEventos.ValorExtraNoturnoSegSex.Horas ?? 0;
100
+ somatorioMinutos += valoresEventos.ValorExtraNoturnoSegSex.Minutos ?? 0;
81
101
  if (index > 0) {
82
- valoresEventos.ValorExtraNoturnoSegSex = 0;
102
+ valoresEventos.ValorExtraNoturnoSegSex.Horas = 0;
103
+ valoresEventos.ValorExtraNoturnoSegSex.Minutos = 0;
83
104
  }
84
105
  break;
85
106
  case models_1.TipoEventoExportacao.HORA_EXTRA_NOTURNA_SAB:
86
- somatorio += valoresEventos.ValorExtraNoturnoSabado ?? 0;
107
+ somatorioHoras += valoresEventos.ValorExtraNoturnoSabado.Horas ?? 0;
108
+ somatorioMinutos += valoresEventos.ValorExtraNoturnoSabado.Minutos ?? 0;
87
109
  if (index > 0) {
88
- valoresEventos.ValorExtraNoturnoSabado = 0;
110
+ valoresEventos.ValorExtraNoturnoSabado.Horas = 0;
111
+ valoresEventos.ValorExtraNoturnoSabado.Minutos = 0;
89
112
  }
90
113
  break;
91
114
  case models_1.TipoEventoExportacao.HORA_EXTRA_NOTURNA_DOM:
92
- somatorio += valoresEventos.ValorExtraNoturnoDomingo ?? 0;
115
+ somatorioHoras += valoresEventos.ValorExtraNoturnoDomingo.Horas ?? 0;
116
+ somatorioMinutos += valoresEventos.ValorExtraNoturnoDomingo.Minutos ?? 0;
93
117
  if (index > 0) {
94
- valoresEventos.ValorExtraNoturnoDomingo = 0;
118
+ valoresEventos.ValorExtraNoturnoDomingo.Horas = 0;
119
+ valoresEventos.ValorExtraNoturnoDomingo.Minutos = 0;
95
120
  }
96
121
  break;
97
122
  case models_1.TipoEventoExportacao.HORA_EXTRA_NOTURNA_FER:
98
- somatorio += valoresEventos.ValorExtraNoturnoFeriado ?? 0;
123
+ somatorioHoras += valoresEventos.ValorExtraNoturnoFeriado.Horas ?? 0;
124
+ somatorioMinutos += valoresEventos.ValorExtraNoturnoFeriado.Minutos ?? 0;
99
125
  if (index > 0) {
100
- valoresEventos.ValorExtraNoturnoFeriado = 0;
126
+ valoresEventos.ValorExtraNoturnoFeriado.Horas = 0;
127
+ valoresEventos.ValorExtraNoturnoFeriado.Minutos = 0;
101
128
  }
102
129
  break;
103
130
  case models_1.TipoEventoExportacao.FAIXA_HORA_EXTRA_SEMANAL_1:
104
- somatorio += valoresEventos.FaixaSemanal.ValorFaixa1 ?? 0;
131
+ somatorioHoras += valoresEventos.FaixaSemanal.ValorFaixa1.Horas ?? 0;
132
+ somatorioMinutos += valoresEventos.FaixaSemanal.ValorFaixa1.Minutos ?? 0;
105
133
  if (index > 0) {
106
- valoresEventos.FaixaSemanal.ValorFaixa1 = 0;
134
+ valoresEventos.FaixaSemanal.ValorFaixa1.Horas = 0;
135
+ valoresEventos.FaixaSemanal.ValorFaixa1.Minutos = 0;
107
136
  }
108
137
  break;
109
138
  case models_1.TipoEventoExportacao.FAIXA_HORA_EXTRA_SEMANAL_2:
110
- somatorio += valoresEventos.FaixaSemanal.ValorFaixa2 ?? 0;
139
+ somatorioHoras += valoresEventos.FaixaSemanal.ValorFaixa2.Horas ?? 0;
140
+ somatorioMinutos += valoresEventos.FaixaSemanal.ValorFaixa2.Minutos ?? 0;
111
141
  if (index > 0) {
112
- valoresEventos.FaixaSemanal.ValorFaixa2 = 0;
142
+ valoresEventos.FaixaSemanal.ValorFaixa2.Horas = 0;
143
+ valoresEventos.FaixaSemanal.ValorFaixa2.Minutos = 0;
113
144
  }
114
145
  break;
115
146
  case models_1.TipoEventoExportacao.FAIXA_HORA_EXTRA_SEMANAL_3:
116
- somatorio += valoresEventos.FaixaSemanal.ValorFaixa3 ?? 0;
147
+ somatorioHoras += valoresEventos.FaixaSemanal.ValorFaixa3.Horas ?? 0;
148
+ somatorioMinutos += valoresEventos.FaixaSemanal.ValorFaixa3.Minutos ?? 0;
117
149
  if (index > 0) {
118
- valoresEventos.FaixaSemanal.ValorFaixa3 = 0;
150
+ valoresEventos.FaixaSemanal.ValorFaixa3.Horas = 0;
151
+ valoresEventos.FaixaSemanal.ValorFaixa3.Minutos = 0;
119
152
  }
120
153
  break;
121
154
  case models_1.TipoEventoExportacao.FAIXA_HORA_EXTRA_DIFERENCIADA_1:
122
- somatorio += valoresEventos.FaixaDiferenciada.ValorFaixa1 ?? 0;
155
+ somatorioHoras += valoresEventos.FaixaDiferenciada.ValorFaixa1.Horas ?? 0;
156
+ somatorioMinutos += valoresEventos.FaixaDiferenciada.ValorFaixa1.Minutos ?? 0;
123
157
  if (index > 0) {
124
- valoresEventos.FaixaDiferenciada.ValorFaixa1 = 0;
158
+ valoresEventos.FaixaDiferenciada.ValorFaixa1.Horas = 0;
159
+ valoresEventos.FaixaDiferenciada.ValorFaixa1.Minutos = 0;
125
160
  }
126
161
  break;
127
162
  case models_1.TipoEventoExportacao.FAIXA_HORA_EXTRA_DIFERENCIADA_2:
128
- somatorio += valoresEventos.FaixaDiferenciada.ValorFaixa2 ?? 0;
163
+ somatorioHoras += valoresEventos.FaixaDiferenciada.ValorFaixa2.Horas ?? 0;
164
+ somatorioMinutos += valoresEventos.FaixaDiferenciada.ValorFaixa2.Minutos ?? 0;
129
165
  if (index > 0) {
130
- valoresEventos.FaixaDiferenciada.ValorFaixa2 = 0;
166
+ valoresEventos.FaixaDiferenciada.ValorFaixa2.Horas = 0;
167
+ valoresEventos.FaixaDiferenciada.ValorFaixa2.Minutos = 0;
131
168
  }
132
169
  break;
133
170
  case models_1.TipoEventoExportacao.FAIXA_HORA_EXTRA_DIFERENCIADA_3:
134
- somatorio += valoresEventos.FaixaDiferenciada.ValorFaixa3 ?? 0;
171
+ somatorioHoras += valoresEventos.FaixaDiferenciada.ValorFaixa3.Horas ?? 0;
172
+ somatorioMinutos += valoresEventos.FaixaDiferenciada.ValorFaixa3.Minutos ?? 0;
135
173
  if (index > 0) {
136
- valoresEventos.FaixaDiferenciada.ValorFaixa3 = 0;
174
+ valoresEventos.FaixaDiferenciada.ValorFaixa3.Horas = 0;
175
+ valoresEventos.FaixaDiferenciada.ValorFaixa3.Minutos = 0;
137
176
  }
138
177
  break;
139
178
  case models_1.TipoEventoExportacao.HORAS_TRABALHADAS:
140
- somatorio += valoresEventos.ValorHorasTrabalhadas ?? 0;
179
+ somatorioHoras += valoresEventos.ValorHorasTrabalhadas.Horas ?? 0;
180
+ somatorioMinutos += valoresEventos.ValorHorasTrabalhadas.Minutos ?? 0;
141
181
  if (index > 0) {
142
- valoresEventos.ValorHorasTrabalhadas = 0;
182
+ valoresEventos.ValorHorasTrabalhadas.Horas = 0;
183
+ valoresEventos.ValorHorasTrabalhadas.Minutos = 0;
143
184
  }
144
185
  break;
145
186
  default:
@@ -148,64 +189,84 @@ class UnificacaoEventosRepetidos {
148
189
  }
149
190
  switch (eventosAgrupados[0].tipo) {
150
191
  case models_1.TipoEventoExportacao.ATRASO:
151
- valoresEventos.ValorAtraso = somatorio;
192
+ valoresEventos.ValorAtraso.Horas = somatorioHoras;
193
+ valoresEventos.ValorAtraso.Minutos = somatorioMinutos;
152
194
  break;
153
195
  case models_1.TipoEventoExportacao.HORA_NORMAL:
154
- valoresEventos.ValorNormal = somatorio;
196
+ valoresEventos.ValorNormal.Horas = somatorioHoras;
197
+ valoresEventos.ValorNormal.Minutos = somatorioMinutos;
155
198
  break;
156
199
  case models_1.TipoEventoExportacao.HORA_NOTURNA:
157
- valoresEventos.ValorNoturno = somatorio;
200
+ valoresEventos.ValorNoturno.Horas = somatorioHoras;
201
+ valoresEventos.ValorNoturno.Minutos = somatorioMinutos;
158
202
  break;
159
203
  case models_1.TipoEventoExportacao.HORA_EXTRA_SEG_SEX:
160
- valoresEventos.ValorExtraSegSex = somatorio;
204
+ valoresEventos.ValorExtraSegSex.Horas = somatorioHoras;
205
+ valoresEventos.ValorExtraSegSex.Minutos = somatorioMinutos;
161
206
  break;
162
207
  case models_1.TipoEventoExportacao.HORA_EXTRA_SAB:
163
- valoresEventos.ValorExtraSabado = somatorio;
208
+ valoresEventos.ValorExtraSabado.Horas = somatorioHoras;
209
+ valoresEventos.ValorExtraSabado.Minutos = somatorioMinutos;
164
210
  break;
165
211
  case models_1.TipoEventoExportacao.HORA_EXTRA_DOM:
166
- valoresEventos.ValorExtraDomingo = somatorio;
212
+ valoresEventos.ValorExtraDomingo.Horas = somatorioHoras;
213
+ valoresEventos.ValorExtraDomingo.Minutos = somatorioMinutos;
167
214
  break;
168
215
  case models_1.TipoEventoExportacao.HORA_EXTRA_FER:
169
- valoresEventos.ValorExtraFeriado = somatorio;
216
+ valoresEventos.ValorExtraFeriado.Horas = somatorioHoras;
217
+ valoresEventos.ValorExtraFeriado.Minutos = somatorioMinutos;
170
218
  break;
171
219
  case models_1.TipoEventoExportacao.HORAS_TRABALHADAS:
172
- valoresEventos.ValorHorasTrabalhadas = somatorio;
220
+ valoresEventos.ValorHorasTrabalhadas.Horas = somatorioHoras;
221
+ valoresEventos.ValorHorasTrabalhadas.Minutos = somatorioMinutos;
173
222
  break;
174
223
  case models_1.TipoEventoExportacao.HORA_EXTRA_INTRAJORNADA:
175
- valoresEventos.ValorExtraIntrajornada = somatorio;
224
+ valoresEventos.ValorExtraIntrajornada.Horas = somatorioHoras;
225
+ valoresEventos.ValorExtraIntrajornada.Minutos = somatorioMinutos;
176
226
  break;
177
227
  case models_1.TipoEventoExportacao.HORA_EXTRA_INTRAJORNADA_COM_REDUCAO:
178
- valoresEventos.ValorExtraIntrajornadaComReducao = somatorio;
228
+ valoresEventos.ValorExtraIntrajornadaComReducao.Horas = somatorioHoras;
229
+ valoresEventos.ValorExtraIntrajornadaComReducao.Minutos = somatorioMinutos;
179
230
  break;
180
231
  case models_1.TipoEventoExportacao.HORA_EXTRA_NOTURNA_SEG_SEX:
181
- valoresEventos.ValorExtraNoturnoSegSex = somatorio;
232
+ valoresEventos.ValorExtraNoturnoSegSex.Horas = somatorioHoras;
233
+ valoresEventos.ValorExtraNoturnoSegSex.Minutos = somatorioMinutos;
182
234
  break;
183
235
  case models_1.TipoEventoExportacao.HORA_EXTRA_NOTURNA_SAB:
184
- valoresEventos.ValorExtraNoturnoSabado = somatorio;
236
+ valoresEventos.ValorExtraNoturnoSabado.Horas = somatorioHoras;
237
+ valoresEventos.ValorExtraNoturnoSabado.Minutos = somatorioMinutos;
185
238
  break;
186
239
  case models_1.TipoEventoExportacao.HORA_EXTRA_NOTURNA_DOM:
187
- valoresEventos.ValorExtraNoturnoDomingo = somatorio;
240
+ valoresEventos.ValorExtraNoturnoDomingo.Horas = somatorioHoras;
241
+ valoresEventos.ValorExtraNoturnoDomingo.Minutos = somatorioMinutos;
188
242
  break;
189
243
  case models_1.TipoEventoExportacao.HORA_EXTRA_NOTURNA_FER:
190
- valoresEventos.ValorExtraNoturnoFeriado = somatorio;
244
+ valoresEventos.ValorExtraNoturnoFeriado.Horas = somatorioHoras;
245
+ valoresEventos.ValorExtraNoturnoFeriado.Minutos = somatorioMinutos;
191
246
  break;
192
247
  case models_1.TipoEventoExportacao.FAIXA_HORA_EXTRA_SEMANAL_1:
193
- valoresEventos.FaixaSemanal.ValorFaixa1 = somatorio;
248
+ valoresEventos.FaixaSemanal.ValorFaixa1.Horas = somatorioHoras;
249
+ valoresEventos.FaixaSemanal.ValorFaixa1.Minutos = somatorioMinutos;
194
250
  break;
195
251
  case models_1.TipoEventoExportacao.FAIXA_HORA_EXTRA_SEMANAL_2:
196
- valoresEventos.FaixaSemanal.ValorFaixa2 = somatorio;
252
+ valoresEventos.FaixaSemanal.ValorFaixa2.Horas = somatorioHoras;
253
+ valoresEventos.FaixaSemanal.ValorFaixa2.Minutos = somatorioMinutos;
197
254
  break;
198
255
  case models_1.TipoEventoExportacao.FAIXA_HORA_EXTRA_SEMANAL_3:
199
- valoresEventos.FaixaSemanal.ValorFaixa3 = somatorio;
256
+ valoresEventos.FaixaSemanal.ValorFaixa3.Horas = somatorioHoras;
257
+ valoresEventos.FaixaSemanal.ValorFaixa3.Minutos = somatorioMinutos;
200
258
  break;
201
259
  case models_1.TipoEventoExportacao.FAIXA_HORA_EXTRA_DIFERENCIADA_1:
202
- valoresEventos.FaixaDiferenciada.ValorFaixa1 = somatorio;
260
+ valoresEventos.FaixaDiferenciada.ValorFaixa1.Horas = somatorioHoras;
261
+ valoresEventos.FaixaDiferenciada.ValorFaixa1.Minutos = somatorioMinutos;
203
262
  break;
204
263
  case models_1.TipoEventoExportacao.FAIXA_HORA_EXTRA_DIFERENCIADA_2:
205
- valoresEventos.FaixaDiferenciada.ValorFaixa2 = somatorio;
264
+ valoresEventos.FaixaDiferenciada.ValorFaixa2.Horas = somatorioHoras;
265
+ valoresEventos.FaixaDiferenciada.ValorFaixa2.Minutos = somatorioMinutos;
206
266
  break;
207
267
  case models_1.TipoEventoExportacao.FAIXA_HORA_EXTRA_DIFERENCIADA_3:
208
- valoresEventos.FaixaDiferenciada.ValorFaixa3 = somatorio;
268
+ valoresEventos.FaixaDiferenciada.ValorFaixa3.Horas = somatorioHoras;
269
+ valoresEventos.FaixaDiferenciada.ValorFaixa3.Minutos = somatorioMinutos;
209
270
  break;
210
271
  default:
211
272
  break;
package/dist/utils.d.ts CHANGED
@@ -18,3 +18,16 @@ export declare function feriado({ elasticClient, dataHoraJornada, empresas, feri
18
18
  export declare function retornaNumeroMinutosPrevistosEscala(periodosJornadaPrevista: any[]): number;
19
19
  export declare function retornaListaUsuariosJornadas(jornadas: Array<SearchHit<any>>): Array<string>;
20
20
  export declare function getEnumParametrosTipoHorarioNoturno(tipoHorarioNoturno?: string): EnumParametrosTipoHorarioNoturno;
21
+ export declare function getDadosCadastraisExportacao({ usuarioId, empresaId, jornadas, empresas, usuarios }: {
22
+ usuarioId: string;
23
+ empresaId: string;
24
+ jornadas: Array<SearchHit<any>>;
25
+ empresas: Array<SearchHit<any>>;
26
+ usuarios: Array<SearchHit<any>>;
27
+ }): {
28
+ cnpjEmpresa: string;
29
+ cpfFuncionario: string;
30
+ pisFuncionario: string;
31
+ codigoExternoEmpresa: string;
32
+ codigoExternoFuncionario: string;
33
+ };
package/dist/utils.js CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getEnumParametrosTipoHorarioNoturno = exports.retornaListaUsuariosJornadas = exports.retornaNumeroMinutosPrevistosEscala = exports.feriado = exports.domingo = exports.sabado = exports.colaboradorFaltou = exports.arredondarTempoDecimal = void 0;
6
+ exports.getDadosCadastraisExportacao = exports.getEnumParametrosTipoHorarioNoturno = exports.retornaListaUsuariosJornadas = exports.retornaNumeroMinutosPrevistosEscala = exports.feriado = exports.domingo = exports.sabado = exports.colaboradorFaltou = exports.arredondarTempoDecimal = void 0;
7
7
  const moment_1 = __importDefault(require("moment"));
8
8
  const empresas_feriado_elastic_1 = require("./dao/empresas-feriado-elastic");
9
9
  const parametrosHorasNoturnas_model_1 = require("flit-calcular-jornada/dist/lib/models/parametrosHorasNoturnas.model");
@@ -162,3 +162,68 @@ function getEnumParametrosTipoHorarioNoturno(tipoHorarioNoturno) {
162
162
  }
163
163
  }
164
164
  exports.getEnumParametrosTipoHorarioNoturno = getEnumParametrosTipoHorarioNoturno;
165
+ function getDadosCadastraisExportacao({ usuarioId, empresaId, jornadas, empresas, usuarios }) {
166
+ let pisFuncionario = '';
167
+ const jornadasComPIS = jornadas.filter(jornada => (jornada?._source?.usuario?.pis !== null) && (jornada?._source?.usuario?.pis !== undefined));
168
+ if (jornadasComPIS.length > 0) {
169
+ pisFuncionario = jornadasComPIS[0]._source?.usuario?.pis;
170
+ }
171
+ if (!pisFuncionario) {
172
+ const usuariosId = usuarios.filter(u => u._source?.i_id === usuarioId);
173
+ if (usuariosId.length > 0) {
174
+ pisFuncionario = usuariosId[0]._source.pis ?? '';
175
+ }
176
+ }
177
+ let cpfFuncionario = '';
178
+ const jornadasComCPF = jornadas.filter(jornada => (jornada?._source?.usuario?.cpf !== null) && (jornada?._source?.usuario?.cpf !== undefined));
179
+ if (jornadasComPIS.length > 0) {
180
+ cpfFuncionario = jornadasComCPF[0]._source?.usuario?.cpf;
181
+ }
182
+ if (!cpfFuncionario) {
183
+ const usuariosId = usuarios.filter(u => u._source?.i_id === usuarioId);
184
+ if (usuariosId.length > 0) {
185
+ cpfFuncionario = usuariosId[0]._source.cpf ?? '';
186
+ }
187
+ }
188
+ let codigoExternoFuncionario = '';
189
+ const jornadasComCodigoFuncionario = jornadas.filter(jornada => (jornada?._source?.usuario?.parametros?.codigo_externo !== null) && (jornada?._source?.usuario?.parametros?.codigo_externo !== undefined));
190
+ if (jornadasComCodigoFuncionario.length > 0) {
191
+ codigoExternoFuncionario = jornadasComCodigoFuncionario[0]._source?.usuario?.parametros?.codigo_externo;
192
+ }
193
+ if (!codigoExternoFuncionario) {
194
+ const usuariosId = usuarios.filter(u => u._source?.i_id === usuarioId);
195
+ if (usuariosId.length > 0) {
196
+ codigoExternoFuncionario = usuariosId[0]._source?.parametros?.codigo_externo ?? '';
197
+ }
198
+ }
199
+ let cnpjEmpresa = '';
200
+ const jornadasComCNPJ = jornadas.filter(jornada => (jornada?._source?.usuario?.empresa?.cnpj !== null) && (jornada?._source?.usuario?.empresa?.cnpj !== undefined));
201
+ if (jornadasComCNPJ.length > 0) {
202
+ cnpjEmpresa = jornadasComCNPJ[0]._source?.usuario?.empresa?.cnpj;
203
+ }
204
+ if (!cnpjEmpresa) {
205
+ const empresasId = empresas.filter(e => e._source?.i_id === empresaId);
206
+ if (empresasId.length > 0) {
207
+ cnpjEmpresa = empresasId[0]._source.cnpj ?? '';
208
+ }
209
+ }
210
+ let codigoExternoEmpresa = '';
211
+ const jornadasComCodigoEmpresa = jornadas.filter(jornada => (jornada?._source?.usuario?.empresa?.cnpj !== null) && (jornada?._source?.usuario?.empresa?.cnpj !== undefined));
212
+ if (jornadasComCodigoEmpresa.length > 0) {
213
+ codigoExternoEmpresa = jornadasComCodigoEmpresa[0]._source?.usuario?.empresa?.parametros?.codigo_externo;
214
+ }
215
+ if (!codigoExternoEmpresa) {
216
+ const empresasId = empresas.filter(e => e._source?.i_id === empresaId);
217
+ if (empresasId.length > 0) {
218
+ codigoExternoEmpresa = empresasId[0]._source?.parametros?.codigo_externo ?? '';
219
+ }
220
+ }
221
+ return {
222
+ cnpjEmpresa: cnpjEmpresa,
223
+ cpfFuncionario: cpfFuncionario,
224
+ pisFuncionario: pisFuncionario,
225
+ codigoExternoEmpresa: codigoExternoEmpresa,
226
+ codigoExternoFuncionario: codigoExternoFuncionario
227
+ };
228
+ }
229
+ exports.getDadosCadastraisExportacao = getDadosCadastraisExportacao;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "flit-modulo-exportacoes",
3
- "version": "2.0.14",
3
+ "version": "2.0.16",
4
4
  "description": "",
5
5
  "main": "dist/lib/index.js",
6
6
  "directories": {
@@ -20,7 +20,7 @@
20
20
  "flit-calcular-jornada": "^2.1.4",
21
21
  "prettier": "^2.8.8",
22
22
  "tsc-alias": "^1.8.6",
23
- "typescript": "^5.1.5"
23
+ "typescript": "^5.1.6"
24
24
  },
25
25
  "scripts": {
26
26
  "build": "tsc --project tsconfig.json && tsc-alias -p tsconfig.json",