Skip to content

Commit

Permalink
(FEAT) turnos profesional cambiar tipo
Browse files Browse the repository at this point in the history
  • Loading branch information
JuanIRamirez committed Dec 30, 2024
1 parent febe499 commit 14af6c5
Showing 1 changed file with 17 additions and 19 deletions.
36 changes: 17 additions & 19 deletions modules/turnos/controller/agenda.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import * as request from 'request';
import { Auth } from '../../../auth/auth.class';
import { userScheduler, diasNoLaborables } from '../../../config.private';
import { SnomedCtr } from '../../../core/term/controller/snomed.controller';
import { NotificationService } from '../../../modules/mobileApp/controller/NotificationService';
import { Constantes } from '../../../modules/constantes/constantes.schema';
import { toArray } from '../../../utils/utils';
import * as prestacionController from '../../rup/controllers/prestacion';
import { Prestacion } from '../../rup/schemas/prestacion';
Expand Down Expand Up @@ -455,11 +455,6 @@ export function actualizarEstado(req, data) {
data.bloques[j].restantesProgramados = data.bloques[j].restantesProgramados + data.bloques[j].restantesGestion + data.bloques[j].restantesProfesional;
data.bloques[j].restantesGestion = 0;
data.bloques[j].restantesProfesional = 0;
} else {
if (data.bloques[j].reservadoProfesional > 0) {
data.bloques[j].restantesGestion = data.bloques[j].restantesGestion + data.bloques[j].restantesProfesional;
data.bloques[j].restantesProfesional = 0;
}
}
}
}
Expand Down Expand Up @@ -718,7 +713,7 @@ function esFeriado(fecha) {
* @returns resultado
*/
export async function actualizarTiposDeTurno() {
const hsActualizar = 48;
const hsActualizar = await actualizarTurnosHs();
const cantDias = hsActualizar / 24;
let fechaActualizar = moment(new Date()).add(cantDias, 'days');
const esDomingo = false;
Expand Down Expand Up @@ -773,30 +768,21 @@ export async function actualizarTiposDeTurno() {
agendaLog.error('actualizarTiposTurnos', { queryAgendas: condicion, agenda }, error);
}
});


}

// Dada una agenda, actualiza los turnos restantes (Para agendas dentro de las 48hs a partir de hoy).
export function actualizarTurnos(agenda) {
for (let j = 0; j < agenda.bloques.length; j++) {
const cantAccesoDirecto = agenda.bloques[j].accesoDirectoDelDia + agenda.bloques[j].accesoDirectoProgramado;

if (cantAccesoDirecto > 0) {
// agenda.bloques[j].restantesProgramados = agenda.bloques[j].restantesProgramados + agenda.bloques[j].restantesGestion + agenda.bloques[j].restantesProfesional;
// agenda.bloques[j].restantesGestion = 0;
// agenda.bloques[j].restantesProfesional = 0;
// } else {
if (agenda.bloques[j].reservadoProfesional > 0) {
agenda.bloques[j].restantesGestion = agenda.bloques[j].restantesGestion + agenda.bloques[j].restantesProfesional;
agenda.bloques[j].restantesProfesional = 0;
}
agenda.bloques[j].restantesProgramados = agenda.bloques[j].restantesProgramados + agenda.bloques[j].restantesGestion + agenda.bloques[j].restantesProfesional;
agenda.bloques[j].restantesGestion = 0;
agenda.bloques[j].restantesProfesional = 0;
}
}
return agenda;
}


/**
* Actualiza los estados de las agendas que se ejecutaron el día anterior a Pendiente Asistencia o
* Pendiente Auditoría según corresponda
Expand Down Expand Up @@ -1531,3 +1517,15 @@ export function agendaNueva(data, clon, req) {
nueva['sobreturnos'] = [];
return nueva;
}

async function actualizarTurnosHs() {
let constante;
const key = 'actualizarTurnosHs';
try {
constante = await Constantes.findOne({ key });
return constante ? parseInt(constante.nombre, 10) : 48;
} catch (error) {
log.error('actualizarTurnosHs', { constante, key }, { error: error.message }, userScheduler);
return 48;
}
}

0 comments on commit 14af6c5

Please sign in to comment.