REC - Mejoras en rutas de recetas med/insumos ANDES#2271
Open
aldoEMatamala wants to merge 1 commit into
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Requerimiento
https://proyectos.andes.gob.ar/browse/REC-262
Funcionalidad desarrollada
Archivos: receta-insumo.routes.ts y recetaInsumosController.ts
Habilitación de PATCH: Se habilitó el método PATCH para el recurso /recetasInsumos en el enrutador.
suspender: Cambia el estado de una receta de insumo a suspendida.
dispensar / dispensa-parcial: Registra una dispensa (total o parcial) guardando los detalles de los insumos entregados, cantidades, fechas, organización y el ID externo de la transacción.
sin-dispensar (actualizarAppNotificada): Permite que una aplicación externa libere/desmarque una receta de insumo que fue consultada pero no dispensada.
cancelar-dispensa: Revierte una dispensa registrada previamente buscando por su ID de dispensa (idDispensaApp) y guardando los motivos y la organización que realizó la cancelación.
Búsquedas por ID o ID de Registro sin requerir Paciente:
Ahora, si se busca por un id específico de receta o por idRegistro (ID de tratamiento prolongado o agrupador), no es obligatorio enviar datos de identificación del paciente (pacienteId, documento y sexo).
Se agregó el mapeo del parámetro idRegistro para permitir filtrar y agrupar recetas vinculadas a un mismo tratamiento.
Resolución de conflictos al filtrar por Estado:
Medicamentos: Se eliminó la lógica restrictiva que forzaba a establecer estadoActual.tipo = null cuando no se proporcionaba un estadoDispensa en la consulta. Esto permite filtrar libremente por el estado de la receta.
Insumos: Se eliminó el filtro por defecto 'sin-dispensa' cuando no se especificaba el estado de la dispensa.
Filtros Temporales Inteligentes: Se implementó una lógica de rangos de fechas dinámicos según el estado consultado (pendiente limita a próximos 10 días si no se especifica fin, vigente limita a los últimos 30 días atrás).
Control de Notificaciones e Integración (appNotificada):
Al realizar consultas con un token de aplicación (user.type === 'app-token'), el sistema ahora registra automáticamente la consulta (registrarAppNotificadas).
Si la receta de insumo ya registra una dispensa activa en otro sistema externo conectado, el controlador sincroniza y replica ese estado localmente antes de devolver el resultado.
UserStories llegó a completarse
Requiere actualizaciones en la base de datos