OPD/service units list open department appointments without manual place; nursing actions soft-place the visit onto the unit. Inpatient wards stay placement-only.
Co-authored-by: Cursor <cursoragent@cursor.com>
Full template names blew out headers and action buttons; show NEWS2/Braden/Morse/Pain with the full name on hover.
Co-authored-by: Cursor <cursoragent@cursor.com>
The empty state referred to the patient but read like the nurse was unassigned; show duty units and patient-specific copy instead.
Co-authored-by: Cursor <cursoragent@cursor.com>
Non-Enterprise orgs hitting /reports/assessments get the in-app plans upsell; CSV export redirects to View plans with an upsell flash.
Co-authored-by: Cursor <cursoragent@cursor.com>
Nurses without consult rights see unit placement, MAR, nursing assessments, and meds/labs instead of the GP consult/pathways toolkit.
Co-authored-by: Cursor <cursoragent@cursor.com>
That surface is for consult/pathway intake. Nurses use My care unit
for ward assessments; require consultations.manage to show Clinical forms.
Co-authored-by: Cursor <cursoragent@cursor.com>
Floor nurses keep Nursing Services admin-only, but now get a My ward
home keyed off today's roster or unit placement with patient lists and
direct links to MAR, vitals/assessments, notes, and handovers. Care unit
show and board crumbs open for station users so clinical pages are
reachable without department admin rights.
Co-authored-by: Cursor <cursoragent@cursor.com>
Full-width primary and secondary buttons (Transport, Start, Open)
now sit one above the other instead of side-by-side, so narrow
dispatch and queue columns stay readable.
Co-authored-by: Cursor <cursoragent@cursor.com>
Board cards previously put Open/Start/advance buttons in a right-hand
column, which overlapped patient names in narrow board columns. Cards
now stack: badges on top, patient info in the middle, and a bordered
action footer. Also align two patient-queue tests with the clinical-
staff-only board access (receptionists are 403'd by design).
Co-authored-by: Cursor <cursoragent@cursor.com>
Walk-in appointments require appointments.manage, which blocked EMS staff; New call now uses a dedicated specialty route that lands on the dispatch board.
Co-authored-by: Cursor <cursoragent@cursor.com>
Home columns follow New call → Dispatched → On scene → Transport → Handover; walk-ins land as New call and Call next is disabled for this module.
Co-authored-by: Cursor <cursoragent@cursor.com>
Roster no longer writes temporary staff assignments; unit assignment UI drops shift fields and labels clarify the two workflows.
Co-authored-by: Cursor <cursoragent@cursor.com>
Nurses keep Nursing Services for clinical work but can no longer browse or create structural units and departments.
Co-authored-by: Cursor <cursoragent@cursor.com>
Ambulance and other non-nursing vitals roles no longer see Care units / Nursing Services; staff get a personal duty roster view of assigned shifts.
Co-authored-by: Cursor <cursoragent@cursor.com>
Hero cards now show patient/appointment/lab counts instead of long currency strings, and page-hero values truncate safely for large figures.
Co-authored-by: Cursor <cursoragent@cursor.com>
Register walk-up kiosks and waiting-room display devices under Devices, with public kiosk ticket issue and linked TV boards surfaced in sidebar and Queue shortcuts.
Co-authored-by: Cursor <cursoragent@cursor.com>
Seeds NEWS2/Braden/Morse/pain packs with visit vitals and a unit dashboard for MAR, assessments, notes, and handover activity.
Co-authored-by: Cursor <cursoragent@cursor.com>
Nurses can chart given/held/refused doses from active prescriptions on placed patients, and document chronologic notes and unit shift handovers.
Co-authored-by: Cursor <cursoragent@cursor.com>
Patients can be admitted, transferred, and discharged from unit/bed stays with occupancy sync, so MAR and ward boards have inpatient context.
Co-authored-by: Cursor <cursoragent@cursor.com>
Models employment as department/unit/shift placements with primary and temporary kinds so nurses are not permanently bound to a ward.
Co-authored-by: Cursor <cursoragent@cursor.com>
Keeps Fertility as a separate specialty, adds OB/GYN and fertility staff roles, and migrates live org settings from maternity → womens_health.
Co-authored-by: Cursor <cursoragent@cursor.com>
Replace broad doctor/nurse specialty access with granular roles and primary
apps, permission inheritance for lab/BB managers, and cannot-rules for
discharge, lab approve, and cashier vs billing officer.
Co-authored-by: Cursor <cursoragent@cursor.com>
EMS clinic workflow (dispatch → scene → transport → handover) plus completed CWC suite, with shell stages, clinical records, reports/print, demo seed, and suite tests.
Co-authored-by: Cursor <cursoragent@cursor.com>
Bring thin catalog modules to the same depth as Cardiology with stages, clinical tabs, reports/print, demo seed, and suite tests.
Co-authored-by: Cursor <cursoragent@cursor.com>
Match Pediatrics/ENT depth with stages, workspace tabs, clinical records, reports/print, demo seed, and suite tests.
Co-authored-by: Cursor <cursoragent@cursor.com>
Mirror the Ophthalmology/Maternity shell pattern with stages, stage_tabs,
workspace clinical records, reports/print, demo seeds, and suite tests.
Co-authored-by: Cursor <cursoragent@cursor.com>
Reuse the GP consultation prescribe modal, gate with prescriptions.manage, and return to the specialty workspace after create.
Co-authored-by: Cursor <cursoragent@cursor.com>
The sidebar and dashboard linked to the lab work queue (lab.manage) while
gating on lab.view, so physio/GP doctors hit 403 on open.
Co-authored-by: Cursor <cursoragent@cursor.com>
Lift Eye Care stage pills into a reusable action-bar component so every
module visit workspace shows config-driven stages with RBAC-gated Move CTAs.
Co-authored-by: Cursor <cursoragent@cursor.com>
Sidebar was re-querying practitioners for every specialty module and also
calling ensureDefaultModulesProvisioned on each page render, which showed
up as multi-second PHP-FPM slow logs on Care.
Co-authored-by: Cursor <cursoragent@cursor.com>
Give lab_manager catalog/ops admin access and blood_bank_manager a branch-level stock register plus specialty admin surface, while keeping technicians on clinical queues.
Co-authored-by: Cursor <cursoragent@cursor.com>
Open on waiting/called cards no longer requires consultations.manage so
view roles can re-enter Emergency and other specialty workspaces.
Co-authored-by: Cursor <cursoragent@cursor.com>
Cashiers and other bills.view roles get today's collections breakdown and a recent paid-invoice list under the existing metric cards.
Co-authored-by: Cursor <cursoragent@cursor.com>
Cashiers saw pesewa integers (e.g. 4000) while history showed GHS 40.00; accept and prefill major amounts and convert to minor on record/checkout.
Co-authored-by: Cursor <cursoragent@cursor.com>
Demo seeding used i%3 for both branch and paid status, so Ridge Clinic only got paid invoices. Cashiers now default to outstanding balances and Call next is secondary to the walk-up unpaid list.
Co-authored-by: Cursor <cursoragent@cursor.com>
Clarify booth Call next vs unpaid invoice list, and expose Pay/View row actions so cashiers can open bills when the booth queue is empty.
Co-authored-by: Cursor <cursoragent@cursor.com>
Hide the patient-flow Queue board from nurses, reception, and other
non-doctors; specialty home routes now render the queue board list
instead of auto-opening the first open visit.
Co-authored-by: Cursor <cursoragent@cursor.com>
Single-desk specialists already reach their workspace via dashboard cards; the Specialty → Dentistry nav group was redundant. GPs and multi-module roles keep the section.
Co-authored-by: Cursor <cursoragent@cursor.com>
Index alone still left /consultations/{uuid}/assessments/create and
/consultations/{uuid}/assessments/{uuid} unmatched (404). Wire those
paths, redirect store into the nested show, and cover the doctor form
open flow with feature tests.
Co-authored-by: Cursor <cursoragent@cursor.com>
Only POST existed on that path, so navigating to the natural collection URL 404'd. Serve the patient assessments index with consultation return context, and cover it with a doctor feature test.
Co-authored-by: Cursor <cursoragent@cursor.com>