LIMS: Sistema de Gestión de Laboratorio Clínico
- Elixir
- Phoenix
- Oban
- Next.js
- Multi-tenant
Este sistema es un LIMS (Laboratory Information Management System) multi-tenant, construido en Elixir/Phoenix, para laboratorios clínicos. Cada laboratorio (tenant) gestiona sus pacientes, coberturas, órdenes de análisis y un catálogo de pruebas con analitos, valores de referencia y fórmulas para analitos calculados. Registra los resultados, marca si están dentro o fuera de rango, y emite informes firmados digitalmente. También cubre facturación (listas de precios, tasas de cambio, cuentas por cobrar), recibe datos de equipos por TCP, y dispara webhooks, SMS y correos mediante trabajos en segundo plano con Oban.
El acceso se divide en tres audiencias. El backoffice de superadmin administra tenants, cuotas y plantillas globales del catálogo. La API del core atiende a los usuarios de cada laboratorio, con roles como administrador, bacteriólogo y secretaria. Un portal en Next.js/Mantine (tenant_ui) actúa como BFF, es decir, como capa intermedia entre el navegador y la API. El sistema ha pasado por auditorías de concurrencia, integridad y seguridad, y de esas se derivó un plan de remediación.
