EMR & Diagnosis Coding¶
The electronic medical record: capture vitals, write SOAP clinical notes, place orders, and code diagnoses to ICD‑11 with AI assistance — all against the current encounter.
Vitals¶
Medical → EMR → Vitals (/medical/emr/vitals) — Record Vitals for an encounter:
temperature, blood pressure, heart rate, respiratory rate, SpO₂, weight/height (BMI), with timestamp.
Vitals → Trend (/medical/emr/vitals/trend) plots a patient's blood pressure, pulse, SpO₂,
temperature and weight over time as sparkline mini‑charts, so a clinician sees the direction of travel
at a glance.
Clinical Notes (SOAP)¶
Medical → EMR → Notes (/medical/emr/notes) — write a note in SOAP structure:
- Subjective — chief complaint and history.
- Objective — examination findings.
- Assessment — clinical impression.
- Plan — treatment and follow‑up.
Screenshot: Clinical note (SOAP) — TODO
Orders & Prescriptions¶
Medical → EMR → Orders (/medical/emr/orders) — place Laboratory, Imaging,
Medication, or Procedure orders. Orders move Draft → Active → Completed (or
Cancelled); medication orders carry dose, frequency, and route.
When an order becomes Active, it is routed to the fulfilling department automatically: a Lab order creates a requisition on the lab worklist, an Imaging order on the radiology worklist, and a Medication order to the pharmacy dispense queue. Cancelling the EMR order cancels the downstream requisition too (while it is still pending). If an imaging order's free‑text can't be matched to a procedure, you're prompted to raise it manually (pre‑filled) — nothing is silently dropped.
Prescribing is guarded:
- Prescriber privilege — placing a medication order requires the ordering provider to hold the PRESCRIBE privilege.
- Formulary advisory — when a hospital formulary is configured, ordering a drug not on it shows a warning but still saves — doctors may prescribe unavailable/off‑formulary drugs.
- Allergy & interaction checks — the patient's recorded allergies and drug–drug interactions are screened and flagged at prescribe time.
Allergy check on prescribing
Saving a medication order whose drug matches the patient's recorded allergies shows a warning to the prescriber. This is advisory — the hard stop is the dispense allergy gate. See Allergies & Safety.
Prescribing is guarded:
- Prescriber privilege — placing a medication order requires the ordering provider to hold the PRESCRIBE privilege.
- Formulary gate — when a hospital formulary is configured, a placed medication order must name a drug on it.
- Allergy & interaction checks — the patient's recorded allergies and drug–drug interactions are screened and flagged at prescribe time.
Diagnosis coding (ICD‑11, AI‑assisted)¶
Medical → Diagnosis Codes (/medical/icd-codes) maintains the hospital's ICD catalogue
(ICD‑11 preferred, ICD‑10 for legacy claims). When coding a diagnosis, type a free‑text
phrase — in English or Nepali (e.g. "खोकी र ज्वरो") — and the AI assistant suggests matching
codes.
Screenshot: AI diagnosis-code suggestion — TODO
Loading the full ICD‑11 catalogue (offline)¶
The catalogue ships with a starter set of common Nepal‑relevant codes. To load the complete
WHO ICD‑11 classification, use Import ICD‑11 (top‑right of the Diagnosis Codes list, or
/medical/icd-codes/import):
- Download the “Simple Tabulation” file from the WHO ICD‑11 (MMS) browser. Not sure of the expected layout? Use Download sample template on the import page to get a small headered TSV showing the exact columns.
- Upload it here. The file is parsed entirely offline into this hospital's catalogue — no internet or who.int connection is used at run time.
- The import is idempotent: it updates existing codes in place and adds new ones, with a summary (added / updated / skipped). Chapter and block rows set grouping context; only leaf categories become selectable (billable) codes.
New WHO releases
When WHO publishes a newer ICD‑11 version, just download its Simple Tabulation file and upload it again — the catalogue refreshes in place. Tick “Retire codes not present in this file” to also mark codes WHO dropped as Retired (kept for history, never deleted).
Grounded & clinician-confirmed
AI suggestions are grounded to your own ICD catalogue — it never invents codes — and are advisory: the clinician confirms the final code. No patient identifiers are sent to the model (only the diagnosis phrase and candidate codes). If AI is unavailable, a keyword search is used. Every suggestion and the clinician's accept/reject is logged — see Medical AI & Coding.
Follow-up & prescription¶
- Follow-up date — set a revisit date on the OPD clinical note. A reminder SMS is queued to the patient (through the notification outbox; it sends once an SMS provider is configured).
- Print prescription — the patient profile's Print Rx action produces a printable patient prescription listing the active medication orders (drug, dose, frequency, route, prescriber) — a clinic handout, distinct from the pharmacy dispense label.