Sentra Healthcare — Modules¶
Sistem SentraClinic EMR didesain sebagai Modular Monolith dengan batas-batas domain (bounded contexts) yang jelas, memfasilitasi transisi menjadi microservices apabila volume transaksi klinik membengkak secara ekstrim.
sentraclinic-monolith/
├── src/
│ ├── modules/
│ │ ├── patient-domain/ # Context Pasien, NIK & IHS ID Mapping
│ │ │ ├── controllers/
│ │ │ ├── services/
│ │ │ └── entities/
│ │ ├── queue-domain/ # Manajemen Antrean Poli & Triage
│ │ │ ├── gateways/ # WebSockets for live updates
│ │ │ ├── services/
│ │ │ └── entities/
│ │ ├── clinical-domain/ # EMR Core, SOAP, ICD-10, Odontogram, BSrE
│ │ │ ├── controllers/
│ │ │ ├── services/
│ │ │ └── entities/
│ │ ├── pharmacy-domain/ # Inventaris Obat, Batch, FEFO, Compounding
│ │ │ ├── controllers/
│ │ │ ├── services/
│ │ │ └── entities/
│ │ ├── billing-domain/ # Billing Kasir, Insurance Split, BPJS Bridging
│ │ │ ├── controllers/
│ │ │ ├── services/
│ │ │ └── entities/
│ │ ├── integration-domain/ # SatuSehat FHIR Service & BPJS Bridge
│ │ │ ├── satusehat-client/ # HL7 FHIR R4 adapter
│ │ │ └── bpjs-client/ # PCare (FKTP) + VClaim (FKRTL)
│ │ └── payroll-domain/ # Penghitung Jasa Medis per Tindakan & PPh 21
│ │ ├── services/
│ │ └── entities/
│ ├── shared/
│ │ ├── guards/ # RBAC Protection Guards
│ │ ├── interceptors/ # Audit Logging Interceptors
│ │ └── encryption/ # AES-256 Crypto Utils, BSrE client
│ └── main.ts
| Modul | File | Deskripsi |
|---|---|---|
| Medical Record (RME) | medical-record.md | SOAP immutable lock, BSrE digital signature, Addendum flow, ICD-10 autocomplete, odontogram |
| BPJS Bridging | bpjs-bridging.md | PCare API (FKTP) + VClaim API (FKRTL), SEP digital, eligibility check, claim submission |
| SatuSehat Integration | satusehat.md | HL7 FHIR R4 mapping, async RabbitMQ queue, IHS API rate limiting, encounter sync |
| Payroll & Medical Fee | payroll.md | Fee splitting per tindakan, PPh 21 progresif, jasa konsultasi & tindakan, insentif resep |