From a0f0da4d786ec6f42bdc140ceea06c87c6339396 Mon Sep 17 00:00:00 2001 From: MarianoCampetella Date: Thu, 15 Jan 2026 11:59:21 -0300 Subject: [PATCH] No se visualizan turnos en la app mobile --- modules/mobileApp/routes/agendas.ts | 9 +++++++++ modules/turnos/controller/agenda.ts | 3 +++ 2 files changed, 12 insertions(+) diff --git a/modules/mobileApp/routes/agendas.ts b/modules/mobileApp/routes/agendas.ts index 9845708fb..735253cdd 100644 --- a/modules/mobileApp/routes/agendas.ts +++ b/modules/mobileApp/routes/agendas.ts @@ -54,6 +54,15 @@ router.get('/agendasDisponibles', async (req: any, res, next) => { matchAgendas['bloques.restantesMobile'] = { $gt: 0 }; } pipelineAgendas.push({ $match: matchAgendas }); + pipelineAgendas.push({ $unwind: '$bloques' }); + pipelineAgendas.push({ + $match: + { + 'bloques.turnosMobile': true, + 'bloques.restantesProgramados': { $gt: 0 } + } + }); + pipelineAgendas.push({ $addFields: { bloques: ['$bloques'] } }); if (fieldRegla) { pipelineAgendas.push({ $addFields: fieldRegla }); } diff --git a/modules/turnos/controller/agenda.ts b/modules/turnos/controller/agenda.ts index 09aa90b66..eb47ac0bb 100644 --- a/modules/turnos/controller/agenda.ts +++ b/modules/turnos/controller/agenda.ts @@ -152,6 +152,9 @@ export async function liberarTurno(req, data, turno) { } else { if (data.bloques[position.indexBloque].restantesProgramados < (data.bloques[position.indexBloque].accesoDirectoProgramado - turnosAsignados.programados)) { data.bloques[position.indexBloque].restantesProgramados = data.bloques[position.indexBloque].restantesProgramados + cant; + if (data.bloques[position.indexBloque].restantesMobile < (data.bloques[position.indexBloque].cupoMobile - turnosAsignados.programados)) { + data.bloques[position.indexBloque].restantesMobile = data.bloques[position.indexBloque].restantesMobile + cant; + } } else { data.bloques[position.indexBloque].restantesDelDia = data.bloques[position.indexBloque].restantesDelDia + cant; }