flit-modulo-exportacoes 2.0.88 → 2.0.90
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 +1 -5
- package/dist/index.js +9 -29
- package/dist/utils.d.ts +2 -14
- package/dist/utils.js +2 -90
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Client } from '@elastic/elasticsearch';
|
|
2
2
|
import { SourceConta } from './dao/model/conta-model';
|
|
3
|
-
import { SourceEmpresa } from './dao/model/empresa-model';
|
|
4
3
|
import { SourceJornada } from './dao/model/jornada-model';
|
|
5
4
|
import { SearchHit } from '@elastic/elasticsearch/lib/api/types';
|
|
6
5
|
import { PayloadExportacaoPadrao, TipoEventoExportacao, TiposEventosExportar, ValoresEventosExportacao, ValorEventoExportacao, ValorEventoExportacaoFalta } from './dao/model/general-models';
|
|
@@ -9,13 +8,10 @@ export declare function validarDadosPayload({ fn, data, validarCampoReferencia }
|
|
|
9
8
|
data: PayloadExportacaoPadrao;
|
|
10
9
|
validarCampoReferencia: boolean;
|
|
11
10
|
}): boolean;
|
|
12
|
-
export declare function calcularValoresExportacao({ contaId,
|
|
11
|
+
export declare function calcularValoresExportacao({ contaId, elasticClient, conta, jornadas, eventosExportacao, parametrosIntegracao }: {
|
|
13
12
|
contaId: string;
|
|
14
|
-
dataFinal: Date;
|
|
15
|
-
dataInicial: Date;
|
|
16
13
|
elasticClient: Client;
|
|
17
14
|
conta?: SearchHit<SourceConta>;
|
|
18
|
-
empresas: Array<SearchHit<SourceEmpresa>>;
|
|
19
15
|
jornadas: Array<SearchHit<SourceJornada>>;
|
|
20
16
|
eventosExportacao: Array<TipoEventoExportacao>;
|
|
21
17
|
parametrosIntegracao: {
|
package/dist/index.js
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.processarTiposEventosExportacao = exports.retornaValorEvento = exports.calcularValoresExportacao = exports.validarDadosPayload = void 0;
|
|
4
4
|
const contas_elastic_1 = require("./dao/contas-elastic");
|
|
5
|
-
const feriados_elastic_1 = require("./dao/feriados-elastic");
|
|
6
5
|
const unificacao_eventos_repetidos_1 = require("./unificacao-eventos-repetidos");
|
|
6
|
+
const jornadaUtils_1 = require("flit-calcular-jornada/dist/lib/helpers/jornadaUtils");
|
|
7
7
|
const utils_1 = require("flit-calcular-jornada/dist/lib/helpers/utils");
|
|
8
8
|
const jornada_model_1 = require("flit-calcular-jornada/dist/lib/models/jornada.model");
|
|
9
9
|
const parametrosHorasNoturnas_model_1 = require("flit-calcular-jornada/dist/lib/models/parametrosHorasNoturnas.model");
|
|
@@ -220,12 +220,7 @@ function aplicarFatorConversaoValoresEventos(valoresEventos) {
|
|
|
220
220
|
function exportarHorasExtrasEvento({ tipoEventoExportacao, eventosExportacao, parametrosIntegracao }) {
|
|
221
221
|
return Boolean((parametrosIntegracao ?? {})[tipoEventoExportacao]) && eventosExportacao.includes(tipoEventoExportacao);
|
|
222
222
|
}
|
|
223
|
-
async function calcularValoresExportacao({ contaId,
|
|
224
|
-
const feriados = await new feriados_elastic_1.FeriadosElastic(elasticClient).getFeriadosElastic({
|
|
225
|
-
contaId: contaId,
|
|
226
|
-
dataFinal: dataFinal,
|
|
227
|
-
dataInicial: dataInicial
|
|
228
|
-
});
|
|
223
|
+
async function calcularValoresExportacao({ contaId, elasticClient, conta, jornadas, eventosExportacao, parametrosIntegracao }) {
|
|
229
224
|
let dadosConta = conta ?? null;
|
|
230
225
|
if (!dadosConta) {
|
|
231
226
|
dadosConta = await new contas_elastic_1.ContasElastic(elasticClient).getContaElastic(contaId);
|
|
@@ -411,19 +406,14 @@ async function calcularValoresExportacao({ contaId, dataFinal, dataInicial, elas
|
|
|
411
406
|
valoresEventos.ValorNormal.Minutos += (jornada.horas_normais ?? 0) * 60;
|
|
412
407
|
valoresEventos.ValorNoturno.Horas += jornada.horas_noturnas ?? 0;
|
|
413
408
|
valoresEventos.ValorNoturno.Minutos += (jornada.horas_noturnas ?? 0) * 60;
|
|
414
|
-
|
|
415
|
-
valoresEventos.ValorNoturnoTotal.
|
|
416
|
-
valoresEventos.ValorNoturnoTotal.
|
|
417
|
-
valoresEventos.ValorNoturnoTotal.Minutos += (jornada.horas_noturnas_extras ?? 0) * 60;
|
|
418
|
-
if (jornada.regime_compensacao === jornada_model_1.RegimesCompensacao.JornadaHibrida) {
|
|
419
|
-
valoresEventos.ValorNoturnoTotal.Horas += jornada.banco_horas_noturno ?? 0;
|
|
420
|
-
valoresEventos.ValorNoturnoTotal.Minutos += (jornada.banco_horas_noturno ?? 0) * 60;
|
|
421
|
-
}
|
|
422
|
-
const valorHorasTrabalhadas = (jornada.horas_normais ?? 0) + (jornada.horas_extras ?? 0) + (jornada.horas_noturnas ?? 0) + (jornada.horas_noturnas_extras ?? 0);
|
|
423
|
-
valoresEventos.ValorHorasTrabalhadas.Horas += valorHorasTrabalhadas;
|
|
424
|
-
valoresEventos.ValorHorasTrabalhadas.Minutos += valorHorasTrabalhadas * 60;
|
|
409
|
+
const valorNoturnoTotal = jornadaUtils_1.JornadaUtils.obterTotalDeHorasNoturnasDecimal(jornada);
|
|
410
|
+
valoresEventos.ValorNoturnoTotal.Horas += valorNoturnoTotal ?? 0;
|
|
411
|
+
valoresEventos.ValorNoturnoTotal.Minutos += (valorNoturnoTotal ?? 0) * 60;
|
|
425
412
|
valoresEventos.ValorExtraIntrajornada.Horas += jornada.horas_extras_intrajornada ?? 0;
|
|
426
413
|
valoresEventos.ValorExtraIntrajornada.Minutos += (jornada.horas_extras_intrajornada ?? 0) * 60;
|
|
414
|
+
const valorHorasTrabalhadas = jornadaUtils_1.JornadaUtils.obterTotalDeHorasTrabalhadasGeraisDecimal(jornada) ?? 0;
|
|
415
|
+
valoresEventos.ValorHorasTrabalhadas.Horas += valorHorasTrabalhadas;
|
|
416
|
+
valoresEventos.ValorHorasTrabalhadas.Minutos += valorHorasTrabalhadas * 60;
|
|
427
417
|
const valorExtraIntrajornadaComReducao = (jornada.horas_extras_intrajornada ?? 0) * (horarioNoturno?.base_reducao_horario_noturno || 1);
|
|
428
418
|
valoresEventos.ValorExtraIntrajornadaComReducao.Horas += valorExtraIntrajornadaComReducao;
|
|
429
419
|
valoresEventos.ValorExtraIntrajornadaComReducao.Minutos += valorExtraIntrajornadaComReducao * 60;
|
|
@@ -460,17 +450,7 @@ async function calcularValoresExportacao({ contaId, dataFinal, dataInicial, elas
|
|
|
460
450
|
valoresEventos.FaixaHibrida.ValorFaixa8.Minutos += (jornada.faixas_horas_extras?.hibrida?.faixa8 ?? 0) * 60;
|
|
461
451
|
valoresEventos.FaixaHibrida.ValorFaixa9.Horas += jornada.faixas_horas_extras?.hibrida?.faixa9 ?? 0;
|
|
462
452
|
valoresEventos.FaixaHibrida.ValorFaixa9.Minutos += (jornada.faixas_horas_extras?.hibrida?.faixa9 ?? 0) * 60;
|
|
463
|
-
const jornadaFeriado =
|
|
464
|
-
empresas: empresas,
|
|
465
|
-
feriados: feriados,
|
|
466
|
-
elasticClient: elasticClient,
|
|
467
|
-
dataHoraJornada: new Date(jornada.data_hora),
|
|
468
|
-
ufEmpresaUsuarioJornada: jornada.usuario.empresa.uf,
|
|
469
|
-
idEmpresaUsuarioJornada: jornada.usuario.empresa.uid,
|
|
470
|
-
idDepartamentoUsuario: jornada.usuario.departamento?.uid,
|
|
471
|
-
cidadeEmpresaUsuarioJornada: jornada.usuario.empresa.cidade,
|
|
472
|
-
tipoOcorrenciaFrequenciaJornadaPrevista: jornada.jornada_prevista?.ocorrencia_frequencia?.tipo ?? ''
|
|
473
|
-
});
|
|
453
|
+
const jornadaFeriado = (0, utils_2.feriado)(jornada.jornada_prevista?.ocorrencia_frequencia?.tipo ?? '');
|
|
474
454
|
if ((jornada.jornada_realizada?.periodos ?? []).length > 0) {
|
|
475
455
|
if (jornadaFeriado) {
|
|
476
456
|
valoresEventos.DiasTrabalhadosFeriados.push(new Date(jornada.data_hora));
|
package/dist/utils.d.ts
CHANGED
|
@@ -1,27 +1,15 @@
|
|
|
1
|
-
import { Client } from '@elastic/elasticsearch';
|
|
2
1
|
import { SourceEmpresa } from './dao/model/empresa-model';
|
|
3
|
-
import { SourceFeriado } from './dao/model/feriado-model';
|
|
4
2
|
import { SourceUsuario } from './dao/model/usuario-model';
|
|
5
3
|
import { SourceJornada } from './dao/model/jornada-model';
|
|
6
|
-
import { SearchHit } from '@elastic/elasticsearch/lib/api/types';
|
|
7
4
|
import { DadosIntegracao } from './dao/model/general-models';
|
|
5
|
+
import { SearchHit } from '@elastic/elasticsearch/lib/api/types';
|
|
8
6
|
import { JornadaPrevistaOuRealizada, PeriodoJornada } from 'flit-calcular-jornada/dist/lib/models/jornada.model';
|
|
9
7
|
import { EnumParametrosTipoHorarioNoturno } from 'flit-calcular-jornada/dist/lib/models/parametrosHorasNoturnas.model';
|
|
10
8
|
export declare function arredondarTempoDecimal(tempoDecimal: number, minutosArred: number): number;
|
|
11
9
|
export declare function colaboradorFaltou(jornadaRealizada?: JornadaPrevistaOuRealizada): boolean;
|
|
12
10
|
export declare function sabado(data: Date): boolean;
|
|
13
11
|
export declare function domingo(data: Date): boolean;
|
|
14
|
-
export declare function feriado(
|
|
15
|
-
elasticClient: Client;
|
|
16
|
-
dataHoraJornada: Date;
|
|
17
|
-
idDepartamentoUsuario?: string;
|
|
18
|
-
idEmpresaUsuarioJornada: string;
|
|
19
|
-
ufEmpresaUsuarioJornada: string;
|
|
20
|
-
cidadeEmpresaUsuarioJornada: string;
|
|
21
|
-
empresas: Array<SearchHit<SourceEmpresa>>;
|
|
22
|
-
feriados: Array<SearchHit<SourceFeriado>>;
|
|
23
|
-
tipoOcorrenciaFrequenciaJornadaPrevista: string;
|
|
24
|
-
}): Promise<boolean>;
|
|
12
|
+
export declare function feriado(tipoOcorrenciaFrequenciaJornadaPrevista: string): boolean;
|
|
25
13
|
export declare function retornaNumeroMinutosPrevistosEscala(periodosJornadaPrevista: PeriodoJornada[]): number;
|
|
26
14
|
export declare function retornaListaUsuariosJornadas(jornadas: Array<SearchHit<SourceJornada>>): Array<string>;
|
|
27
15
|
export declare function getEnumParametrosTipoHorarioNoturno(tipoHorarioNoturno?: string): EnumParametrosTipoHorarioNoturno;
|
package/dist/utils.js
CHANGED
|
@@ -5,7 +5,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
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
|
-
const empresas_feriado_elastic_1 = require("./dao/empresas-feriado-elastic");
|
|
9
8
|
const parametrosHorasNoturnas_model_1 = require("flit-calcular-jornada/dist/lib/models/parametrosHorasNoturnas.model");
|
|
10
9
|
function arredondarTempoDecimal(tempoDecimal, minutosArred) {
|
|
11
10
|
return (Math.round((tempoDecimal * 60) / minutosArred) * minutosArred) / 60;
|
|
@@ -26,95 +25,8 @@ function domingo(data) {
|
|
|
26
25
|
return data.getDay() === 0;
|
|
27
26
|
}
|
|
28
27
|
exports.domingo = domingo;
|
|
29
|
-
function
|
|
30
|
-
|
|
31
|
-
return {
|
|
32
|
-
id: idEmpresaUsuarioJornada ?? '',
|
|
33
|
-
endereco: {
|
|
34
|
-
uf: ufEmpresaUsuarioJornada ?? '',
|
|
35
|
-
cidade: cidadeEmpresaUsuarioJornada ?? ''
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
}
|
|
39
|
-
else {
|
|
40
|
-
const empresaFiltrada = (empresas ?? []).filter(e => e._source?.i_id === idEmpresaUsuarioJornada);
|
|
41
|
-
if (empresaFiltrada.length > 0) {
|
|
42
|
-
return {
|
|
43
|
-
id: idEmpresaUsuarioJornada ?? '',
|
|
44
|
-
endereco: {
|
|
45
|
-
uf: empresaFiltrada[0]?._source?.endereco?.uf ?? '',
|
|
46
|
-
cidade: empresaFiltrada[0]?._source?.endereco?.cidade ?? ''
|
|
47
|
-
}
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
return {
|
|
52
|
-
id: idEmpresaUsuarioJornada ?? '',
|
|
53
|
-
endereco: {
|
|
54
|
-
uf: '',
|
|
55
|
-
cidade: ''
|
|
56
|
-
}
|
|
57
|
-
};
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
function validarDepartamentoFeriado({ idDepartamentoUsuario, idsDepartamentosFeriado }) {
|
|
62
|
-
return (!idDepartamentoUsuario) ||
|
|
63
|
-
((idsDepartamentosFeriado ?? []).length <= 0) ||
|
|
64
|
-
(idsDepartamentosFeriado ?? []).includes(idDepartamentoUsuario);
|
|
65
|
-
}
|
|
66
|
-
async function feriado({ elasticClient, dataHoraJornada, idDepartamentoUsuario, idEmpresaUsuarioJornada, ufEmpresaUsuarioJornada, cidadeEmpresaUsuarioJornada, empresas, feriados, tipoOcorrenciaFrequenciaJornadaPrevista }) {
|
|
67
|
-
if (tipoOcorrenciaFrequenciaJornadaPrevista.trim().toUpperCase() === 'FERIADO') {
|
|
68
|
-
return true;
|
|
69
|
-
}
|
|
70
|
-
const dadosEmpresa = getDadosEmpresa({
|
|
71
|
-
empresas: empresas,
|
|
72
|
-
idEmpresaUsuarioJornada: idEmpresaUsuarioJornada,
|
|
73
|
-
ufEmpresaUsuarioJornada: ufEmpresaUsuarioJornada,
|
|
74
|
-
cidadeEmpresaUsuarioJornada: cidadeEmpresaUsuarioJornada,
|
|
75
|
-
});
|
|
76
|
-
for (const feriado of feriados) {
|
|
77
|
-
if (feriado?._source && validarDepartamentoFeriado({
|
|
78
|
-
idDepartamentoUsuario: idDepartamentoUsuario,
|
|
79
|
-
idsDepartamentosFeriado: feriado._source?.departamentos
|
|
80
|
-
})) {
|
|
81
|
-
const dataFeriado = new Date(feriado._source.data);
|
|
82
|
-
const dataJornada = dataHoraJornada ?? new Date();
|
|
83
|
-
if ((dataFeriado.getDate() === dataJornada.getDate()) && (dataFeriado.getMonth() === dataJornada.getMonth()) && (dataFeriado.getFullYear() === dataJornada.getFullYear())) {
|
|
84
|
-
if ((feriado._source.tipo ?? '').toUpperCase() === 'NACIONAL') {
|
|
85
|
-
return true;
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
if ((feriado._source.tipo ?? '').toUpperCase() === 'ESTADUAL') {
|
|
89
|
-
if (!feriado._source.uf) {
|
|
90
|
-
return true;
|
|
91
|
-
}
|
|
92
|
-
if (feriado._source.todas_empresas && (feriado._source.uf === dadosEmpresa.endereco.uf)) {
|
|
93
|
-
return true;
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
if ((feriado._source.tipo ?? '').toUpperCase() === 'MUNICIPAL') {
|
|
97
|
-
if ((!feriado._source.uf) || (!feriado._source.municipio)) {
|
|
98
|
-
return true;
|
|
99
|
-
}
|
|
100
|
-
if (feriado._source.todas_empresas && (feriado._source.uf === dadosEmpresa.endereco.uf) && (feriado._source.municipio === dadosEmpresa.endereco.cidade)) {
|
|
101
|
-
return true;
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
if (!feriado._source.todas_empresas) {
|
|
105
|
-
const empresasFeriado = await new empresas_feriado_elastic_1.EmpresasFeriadoElastic(elasticClient).getEmpresasFeriadoElastic({
|
|
106
|
-
empresaId: dadosEmpresa.id,
|
|
107
|
-
feriadoId: feriado._source.i_id
|
|
108
|
-
});
|
|
109
|
-
if (empresasFeriado.length > 0) {
|
|
110
|
-
return true;
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
return false;
|
|
28
|
+
function feriado(tipoOcorrenciaFrequenciaJornadaPrevista) {
|
|
29
|
+
return tipoOcorrenciaFrequenciaJornadaPrevista.trim().toUpperCase() === 'FERIADO';
|
|
118
30
|
}
|
|
119
31
|
exports.feriado = feriado;
|
|
120
32
|
function retornarDiferencaMinutosHorarios(dataHora1, dataHora2) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "flit-modulo-exportacoes",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.90",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"directories": {
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"devDependencies": {
|
|
18
18
|
"@elastic/elasticsearch": "^8.19.1",
|
|
19
19
|
"@types/luxon": "^3.7.1",
|
|
20
|
-
"flit-calcular-jornada": "2.6.
|
|
20
|
+
"flit-calcular-jornada": "2.6.7",
|
|
21
21
|
"prettier": "^3.6.2",
|
|
22
22
|
"tsc-alias": "^1.8.16",
|
|
23
23
|
"typescript": "^4.9.5"
|