Sistema Médico Hospital Nacional d. Ingenieros y Programadores 5. Los 25 microservicios
HN Ingenieros · Sección 5 de 10
🧩

5. Los 25 microservicios

Vista de ingeniería: paquete Java, endpoints REST, tablas, eventos y patrones aplicados.

Cómo leer esta tabla — para la vista pública (capacidades, propósitos, reuso) ver HN · 25 microservicios. Aquí mostramos el corte técnico: paquete, endpoints clave, tablas, eventos y patrones.

5.1 Catálogo técnico

# Servicio · paquete Java Endpoints REST principales Tablas / colecciones Eventos pub / sub Patrones
1autenticacion · com.toscana.sih.authPOST /token · POST /refresh · POST /mfa · GET /sesiones-sub: usuario.creadoOIDC · gateway de identidad
2auditoria · com.toscana.sih.auditPOST /eventos · GET /eventosaudit_log (WORM)sub: TODOS los eventos *Append-only · hash encadenado
3bus-eventos · com.toscana.sih.busGET /topics · GET /lag--Plataforma Kafka · DLQ
4notificaciones · com.toscana.sih.notifPOST /enviar · GET /plantillasnotification, plantillasub: orden.creada · resultado.liberado · cita.programadaOutbox · reintentos
5identidad-paciente · com.toscana.sih.identidadPOST /pacientes · GET /pacientes/{id} · POST /fusionespaciente, identificador, fusion_auditpub: paciente.creado · paciente.fusionadoMDM · cifrado de campo · HMAC
6episodios · com.toscana.sih.episodiosPOST /episodios · POST /episodios/{id}/cerrarepisodio, transicionpub: episodio.abierto · episodio.cerrado · sub: paciente.creadoMáquina de estados
7expediente-clinico · com.toscana.sih.expedientePOST /notas · GET /pacientes/{id}/notas · POST /addendumsnota (Mongo) · firma · adjuntopub: nota.firmada · sub: episodio.abiertoAppend-only · firma electrónica
8ordenes-medicas · com.toscana.sih.ordenesPOST /ordenes · PATCH /ordenes/{id} · POST /ordenes/{id}/cumplirorden, item_ordenpub: orden.creada · orden.cumplidaCQRS · Saga
9farmacia · com.toscana.sih.farmaciaPOST /recetas · POST /dispensaciones · GET /lbmreceta, dispensacion, equivalenciapub: rx.creada · rx.dispensada · sub: orden.creadaReconciliación · LBM cache
10laboratorio · com.toscana.sih.labPOST /muestras · POST /resultados · POST /resultados/{id}/liberarmuestra, resultadopub: lab.muestra.tomada · lab.resultado.liberado · sub: orden.creadaHL7 ORM/ORU vía Mirth
11imagenologia · com.toscana.sih.imgPOST /estudios · GET /worklistestudio, informepub: img.estudio.realizadoDICOM Modality Worklist · PACS link
12signos-vitales · com.toscana.sih.signosPOST /signos · GET /pacientes/{id}/seriessigno (Timescale)pub: signo.alertaTimescaleDB · downsampling · WebSocket
13emergencia · com.toscana.sih.erPOST /triajes · POST /salas/{id}/asignartriaje, sala_choquepub: triaje.asignado · sub: episodio.abiertoManchester · tablero vivo
14encamamiento · com.toscana.sih.hospPOST /asignaciones · POST /trasladoscama, asignacion, trasladopub: cama.ocupada · cama.liberadaTablero vivo · WebSocket
15quirofano · com.toscana.sih.qxPOST /programaciones · POST /cirugias/{id}/cerrarprogramacion, hoja_operatoriapub: cirugia.programada · cirugia.cerradaChecklist OMS embebido
16obstetricia · com.toscana.sih.obsPOST /partogramas · POST /partos · POST /rnpartograma, parto, rnpub: parto.cerrado · rn.registradoCurva de Friedman · alertas
17vigilancia-epi · com.toscana.sih.epiPOST /notificaciones · GET /casoscaso_epi, notificacionpub: epi.notificado · sub: nota.firmadaReglas CIE-10 · pasarela MSPAS
18nutricion · com.toscana.sih.nutriPOST /evaluaciones · POST /suplementacionesevaluacion, suplementacionpub: nutri.alerta · sub: signo.alertaCurvas OMS
19recursos-humanos · com.toscana.sih.rrhhGET /plazas · POST /turnos · GET /asistenciaplaza, turno, asistenciapub: turno.asignadoCuadrante mensual
20presupuesto · com.toscana.sih.presPOST /sicoin/sync · GET /ejecucionpartida, ejecucionpub: presup.actualizado · sub: compra.adjudicadaSOAP SICOIN · idempotencia diaria
21compras · com.toscana.sih.comprasPOST /requerimientos · POST /guatecompras/syncrequerimiento, npg, nog, contratopub: compra.adjudicadaSaga · scraping autorizado
22inventario · com.toscana.sih.invPOST /entradas · POST /salidas · GET /existenciasexistencia, lote, movimientopub: stock.bajo · sub: rx.dispensada · cirugia.cerradaTrazabilidad lote-paciente · FEFO
23facturacion · com.toscana.sih.factPOST /facturas · POST /tarifasfactura, tarifapub: factura.emitida · sub: episodio.cerradoGratuidad / IGSS / privado
24pasarela-fhir · com.toscana.sih.fhirGET /fhir/Patient/{id} · GET /fhir/Encounter-sub: paciente.creado · nota.firmada · lab.resultado.liberadoFHIR R4 · mTLS
25reportes-sigsa · com.toscana.sih.sigsaPOST /sigsa/{form}/generar · GET /sigsa/{form}/csvsigsa_runpub: sigsa.enviado · sub: nota.firmada · parto.cerrado · epi.notificado14 plantillas · CSV oficial

5.2 Convenciones del catálogo

5.3 Reuso esperado

Servicios plataforma (auth, audit, bus, notif), identidad-paciente, expediente, órdenes, signos, encamamiento, quirófano, laboratorio, imagen, farmacia, inventario, facturación, RRHH, pasarela-fhir, reportes-sigsa son reusables tal cual en otros hospitales nacionales (Roosevelt, San Juan de Dios). Cambian: catálogos, ramas presupuestarias y branding.

← Volver a d. Ingenieros y Programadores 🏥 Inicio del Sistema Médico 🏠 Inicio Toscana