Case Management Screen Requirements

Case Management Screen Requirements

Screen Inventory

Screen ID Screen Name Primary Actor(s) Workflow(s) Access Level
SCR-CASEMANAGEMENT-001 Case Management Worklist Case Manager, UM Nurse, Case Management Director WF-CSM-001, WF-CSM-002, WF-CSM-003, WF-CSM-004, WF-CSM-005, WF-CSM-006 Case management & UM roles
SCR-CASEMANAGEMENT-002 UM Review Form Case Manager, UM Nurse, Physician Advisor WF-CSM-001, WF-CSM-002, WF-CSM-006 Case management & UM roles
SCR-CASEMANAGEMENT-003 Discharge Planning Case Manager, Discharge Planner, Social Worker WF-CSM-003, WF-CSM-005 Discharge planning & social work
SCR-CASEMANAGEMENT-004 Care Coordination Dashboard Care Coordinator, Case Manager WF-CSM-004, WF-CSM-005 Care coordination & case management
SCR-CASEMANAGEMENT-005 Authorization Tracking UM Nurse, Case Manager, Physician Advisor WF-CSM-002, WF-CSM-006 Case management & UM roles
SCR-CASEMANAGEMENT-006 Readmission Risk Dashboard Case Manager, Care Coordinator, Case Management Director WF-CSM-004, WF-CSM-005 Case management & leadership
SCR-CASEMANAGEMENT-007 Case Management Analytics Case Management Director, Physician Advisor All WF-CSM-001–006 (reporting only) Management / analytics roles

flowchart LR H["HIS Home / RCM Home"] --> A["SCR-CASEMANAGEMENT-001<br/>Case Management Worklist"] A --> B["SCR-CASEMANAGEMENT-002<br/>UM Review Form"] A --> C["SCR-CASEMANAGEMENT-003<br/>Discharge Planning"] A --> D["SCR-CASEMANAGEMENT-004<br/>Care Coordination Dashboard"] A --> E["SCR-CASEMANAGEMENT-005<br/>Authorization Tracking"] A --> F["SCR-CASEMANAGEMENT-006<br/>Readmission Risk Dashboard"] B --> A C --> A D --> A E --> A H --> F H --> G["SCR-CASEMANAGEMENT-007<br/>Case Management Analytics"] F --> C F --> D B --> E E --> B click A "#scr-casemanagement-001-case-management-worklist" click B "#scr-casemanagement-002-um-review-form" click C "#scr-casemanagement-003-discharge-planning" click D "#scr-casemanagement-004-care-coordination-dashboard" click E "#scr-casemanagement-005-authorization-tracking" click F "#scr-casemanagement-006-readmission-risk-dashboard" click G "#scr-casemanagement-007-case-management-analytics"

Screen Specifications

SCR-CASEMANAGEMENT-001: Case Management Worklist

Purpose

Central work queue for all active cases, showing admitted patients requiring UM review, discharge planning, care coordination, and payer follow-up. Supports prioritisation by LOS, review due date, and risk.

Layout Overview

  • Header: Module title, filters, date range, quick stats (active cases, overdue reviews).
  • Patient Banner Row (per case): Key patient/encounter info.
  • Worklist Table: One row per case_reviews record.
  • Right Panel (optional): Quick preview of selected case (next review, auth status).
  • Footer: Pagination, export, refresh.

Field Specifications

Field Type Required Validation Default Notes
Facility Filter Dropdown No Must match logged-in user’s facility permissions User’s primary facility Options from facilities
Department Filter Multi-select dropdown No Values from departments All Used with case assignment rules
Case Manager Filter Dropdown (searchable) No Must be active case manager Current user From case_management_assignments / users
Case Status Filter Multi-select chips No IN (Open, Pending Review, Discharge Planning, Closed) Open, Pending Review Maps to case_reviews.case_status
Priority Filter Multi-select chips No IN (High, Medium, Low) All From case_reviews.priority
Review Due Filter Dropdown No IN (All, Due Today, Overdue, Next 48h) Due Today + Overdue Derived from utilization_reviews.next_review_date
Search Box Text No Min 2 chars Searches patient name, MRN, Emirates ID
Sort By Dropdown No IN (LOS, Review Due, Priority, Admission Date) Review Due Applies to table sort
patient_name Text (column) Display From patients
mrn Text (column) Display From patient identifiers
encounter Text (column) Display Encounter number + location
admission_date DateTime (column) Display From encounters.admit_datetime
los Integer (column) Display ≥ 0 Calculated: current date − admission date
expected_discharge Date (column) Display From case_reviews.expected_discharge_date
review_due Date (column) Display From latest utilization_reviews.next_review_date
case_status Badge (column) Display IN (Open, Pending Review, Discharge Planning, Closed) Colour-coded + text
priority Badge (column) Display IN (High, Medium, Low) High = red, Medium = amber, Low = green (with text)
risk_flag Icon + text Display IN (High Risk, Moderate, Low) From case_reviews.readmission_risk_score or latest assessment
Overdue Indicator Icon Display Shown if review_due < today and case open Tooltip: “UM review overdue by X days”
Row Action: Open Case Button/link Yes Requires permission to view case Navigates to context-specific screen (UM, discharge, etc.)

Validation Messages

Condition Message Severity
User selects facility without access "You do not have access to this facility’s cases." Error
Search returns no results "No cases match your search and filter criteria." Info
Backend error loading worklist "Unable to load worklist. Please try again or contact IT support." Error
Filter combination too broad (performance) "Too many results. Please narrow your filters (e.g., facility, department)." Warning

Actions / Buttons

  • Row: Open Case: Opens last-used screen for that case (UM Review, Discharge Planning, etc.).
  • Row: UM Review: Shortcut to SCR-CASEMANAGEMENT-002 for that case.
  • Row: Discharge Plan: Shortcut to SCR-CASEMANAGEMENT-003.
  • Row: Auth Tracking: Shortcut to SCR-CASEMANAGEMENT-005.
  • Refresh: Reloads worklist with current filters.
  • Export: Exports current view to CSV (excluding PHI not allowed by UAE PDPL export policies).
  • Save View: Saves current filter/sort as named view per user.

HTML Wireframe Mockup

Show HTML code
HTML
<div style="font-family: Arial, sans-serif; max-width: 1100px; margin: 0 auto; border: 1px solid #ccc; border-radius: 8px; overflow: hidden;">
  <div style="background: #1a73e8; color: white; padding: 12px 20px; display:flex; justify-content:space-between; align-items:center;">
    <h3 style="margin: 0;">Case Management Worklist</h3>
    <div style="font-size: 12px;">Active: 42 &nbsp;|&nbsp; Overdue Reviews: 7</div>
  </div>
  <div style="padding: 16px;">
    <!-- Filters -->
    <div style="display:flex; flex-wrap:wrap; gap:8px; margin-bottom:12px;">
      <select aria-label="Facility" style="padding:4px 8px;">
        <option>All Facilities</option>
        <option>Dubai General Hospital</option>
        <option>Sheikh Khalifa Medical City</option>
      </select>
      <select aria-label="Department" style="padding:4px 8px;">
        <option>All Departments</option>
        <option>Medicine</option>
        <option>Surgery</option>
      </select>
      <select aria-label="Case Manager" style="padding:4px 8px;">
        <option>My Cases</option>
        <option>All Case Managers</option>
      </select>
      <select aria-label="Status" style="padding:4px 8px;">
        <option>Open &amp; Pending Review</option>
        <option>All Statuses</option>
      </select>
      <select aria-label="Priority" style="padding:4px 8px;">
        <option>All Priorities</option>
        <option>High</option>
        <option>Medium</option>
        <option>Low</option>
      </select>
      <select aria-label="Review Due" style="padding:4px 8px;">
        <option>Due Today &amp; Overdue</option>
        <option>All</option>
        <option>Next 48 hours</option>
      </select>
      <input type="text" placeholder="Search by name, MRN, Emirates ID" style="flex:1; min-width:200px; padding:4px 8px;" />
      <button type="button" style="padding:4px 10px;">Refresh</button>
    </div>

    <!-- Worklist Table -->
    <div style="border:1px solid #ddd; border-radius:4px; overflow:auto; max-height:480px;">
      <table style="width:100%; border-collapse:collapse; font-size:13px;">
        <thead style="background:#f5f5f5;">
          <tr>
            <th style="text-align:left; padding:8px; border-bottom:1px solid #ddd;">Patient</th>
            <th style="text-align:left; padding:8px; border-bottom:1px solid #ddd;">MRN</th>
            <th style="text-align:left; padding:8px; border-bottom:1px solid #ddd;">Encounter / Location</th>
            <th style="text-align:left; padding:8px; border-bottom:1px solid #ddd;">Admit</th>
            <th style="text-align:right; padding:8px; border-bottom:1px solid #ddd;">LOS</th>
            <th style="text-align:left; padding:8px; border-bottom:1px solid #ddd;">Expected Discharge</th>
            <th style="text-align:left; padding:8px; border-bottom:1px solid #ddd;">Review Due</th>
            <th style="text-align:left; padding:8px; border-bottom:1px solid #ddd;">Status</th>
            <th style="text-align:left; padding:8px; border-bottom:1px solid #ddd;">Priority</th>
            <th style="text-align:left; padding:8px; border-bottom:1px solid #ddd;">Risk</th>
            <th style="text-align:center; padding:8px; border-bottom:1px solid #ddd;">Actions</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td style="padding:6px 8px; border-bottom:1px solid #eee;">Ahmed Al-Maktoum</td>
            <td style="padding:6px 8px; border-bottom:1px solid #eee;">MRN-001234</td>
            <td style="padding:6px 8px; border-bottom:1px solid #eee;">IP-2026-00045 / Med Ward 3B</td>
            <td style="padding:6px 8px; border-bottom:1px solid #eee;">07-Feb-2026 09:15</td>
            <td style="padding:6px 8px; border-bottom:1px solid #eee; text-align:right;">4</td>
            <td style="padding:6px 8px; border-bottom:1px solid #eee;">10-Feb-2026</td>
            <td style="padding:6px 8px; border-bottom:1px solid #eee; color:#c00; font-weight:bold;">Due Yesterday</td>
            <td style="padding:6px 8px; border-bottom:1px solid #eee;"><span style="background:#fff3cd; padding:2px 6px; border-radius:10px;">Pending Review</span></td>
            <td style="padding:6px 8px; border-bottom:1px solid #eee;"><span style="background:#f8d7da; padding:2px 6px; border-radius:10px;">High</span></td>
            <td style="padding:6px 8px; border-bottom:1px solid #eee;"><span style="background:#f8d7da; padding:2px 6px; border-radius:10px;">High Risk</span></td>
            <td style="padding:6px 8px; border-bottom:1px solid #eee; text-align:center;">
              <button type="button" style="padding:2px 6px; margin-right:4px;">Open</button>
              <button type="button" style="padding:2px 6px; margin-right:4px;">UM</button>
              <button type="button" style="padding:2px 6px;">DC Plan</button>
            </td>
          </tr>
          <!-- More rows -->
        </tbody>
      </table>
    </div>

    <!-- Pagination -->
    <div style="margin-top:8px; display:flex; justify-content:space-between; align-items:center; font-size:12px;">
      <div>Showing 1–25 of 42</div>
      <div>
        <button type="button" style="padding:2px 6px; margin-right:4px;">Prev</button>
        <button type="button" style="padding:2px 6px;">Next</button>
      </div>
    </div>
  </div>
</div>

Accessibility (WCAG 2.1 AA)

  • All filters and buttons have explicit <label> or aria-label.
  • Table headers use <th scope="col">; row selection uses clear focus styles.
  • Priority and risk badges include text labels; colour is not the only indicator.
  • Overdue status announced via aria-label (e.g., “Review overdue by 1 day”).
  • Keyboard: Tab order flows filters → table; arrow keys to move within table rows if enhanced grid is used.

Responsive / Mobile

  • Filters stack vertically; search box becomes full-width.
  • Table collapses to card layout: each case shown as a card with key fields; actions as bottom buttons.
  • Sticky header with quick filters (My Cases, Overdue, High Risk).
  • Touch targets minimum 44x44 px.

SCR-CASEMANAGEMENT-002: UM Review Form

Purpose

Structured interface for performing admission and continued-stay utilization reviews, applying clinical criteria, documenting medical necessity, and triggering payer notifications.

Layout Overview

  • Patient Banner: Demographics, MRN, Emirates ID, payer, current LOS.
  • Case Summary Panel: Level of care, expected LOS, last review outcome.
  • Clinical Snapshot: Key vitals, labs, diagnoses (read-only from EHR).
  • Criteria Checklist: UM criteria items with met/not met and evidence.
  • Review Details: Review type, reviewer, date/time, recommendation.
  • Payer Notification Panel: Authorization status, next review date, communication log.
  • Footer: Save Draft, Complete Review, Cancel.

Field Specifications

Field Type Required Validation Default Notes
review_id Hidden System UUID PK in utilization_reviews
case_id Hidden System Must reference open case_reviews FK
review_type Dropdown Yes IN (Admission, Continued Stay, Retrospective) Derived from workflow Stored in utilization_reviews.review_type
review_date DateTime picker Yes Cannot be future > 24h; cannot be before admission Now utilization_reviews.review_date
reviewer_id Hidden / dropdown Yes Must be active UM user Current user utilization_reviews.reviewer_id
criteria_tool Dropdown Yes IN (InterQual-equivalent, Local Criteria, Other) From payer rules utilization_reviews.criteria_tool
criteria_checklist Repeating group Yes (per item) Each item must have Met/Not Met/Not Applicable Writes to um_criteria_evaluations
criteria_category Text (per row) Yes From master data e.g., “Respiratory”, “Cardiac”
criteria_item Text (per row) Yes From master data Human-readable criterion
met Radio (Met / Not Met / N/A) Yes One selection required um_criteria_evaluations.met (Y/N/NA)
evidence Textarea Conditional Required if Met or Not Met Clinical evidence (labs, vitals, notes)
level_of_care Dropdown Yes IN (Inpatient, Observation, Outpatient, ICU, Step-down) Current encounter level utilization_reviews.level_of_care
criteria_met Checkbox Yes Must reflect checklist summary Auto-calculated, editable with warning utilization_reviews.criteria_met
clinical_justification Textarea Yes 50–2000 chars utilization_reviews.clinical_justification
recommended_action Dropdown Yes IN (Continue Inpatient, Downgrade Level of Care, Discharge Planning, Peer Review) utilization_reviews.recommended_action
next_review_date Date picker Conditional Required if patient remains admitted Based on payer schedule utilization_reviews.next_review_date
payer_notification_required Checkbox Yes From payer rules utilization_reviews.payer_notification_required
payer_notification_method Dropdown Conditional Required if notification required IN (Portal, Phone, eClaimLink, DOH eClaims)
payer_notified_datetime DateTime Conditional Must be ≥ review_date For audit trail
payer_reference_number Text Conditional Max 50 chars Reference from payer
physician_advisor_required Checkbox No Auto-checked if criteria not met For escalation
reviewer_notes Textarea No Max 2000 chars Additional comments

Validation Messages

Condition Message Severity
Missing review_type "Select review type (admission, continued stay, or retrospective)." Error
No criteria items marked "At least one criteria item must be evaluated." Error
criteria_met checked but majority Not Met "Overall criteria status conflicts with item-level evaluation. Please review." Warning
Missing clinical_justification "Clinical justification is required to support UM decision." Error
next_review_date missing while patient remains admitted "Next review date is required for ongoing admissions." Error
payer_notification_required = Yes but method not selected "Select payer notification method." Error
payer_notification_required = Yes but payer_notified_datetime empty on completion "Enter payer notification date/time or uncheck 'Payer notification required'." Error
User not authorized for UM "You do not have permission to complete UM reviews." Error

Actions / Buttons

  • Save Draft: Saves partial review; does not update next review date or payer tracking.
  • Complete Review: Validates all required fields, writes to utilization_reviews and um_criteria_evaluations, updates case status and next review date, triggers integration INT-CSM-004 to Billing & Claims.
  • Cancel: Discards unsaved changes and returns to worklist.
  • Copy Previous Review: Pre-populates fields from last review for same case (excluding date/time and criteria decisions).
  • Mark Payer Notified: Opens mini-dialog to capture notification method, datetime, and reference number.

HTML Wireframe Mockup

Show HTML code
HTML
<div style="font-family: Arial, sans-serif; max-width: 950px; margin: 0 auto; border: 1px solid #ccc; border-radius: 8px; overflow: hidden;">
  <div style="background: #0b8043; color: white; padding: 12px 20px;">
    <h3 style="margin: 0;">UM Review – Continued Stay</h3>
  </div>
  <div style="padding: 16px;">
    <!-- Patient Banner -->
    <div style="background:#f0f4f8; padding:10px; border-radius:4px; margin-bottom:12px; font-size:13px; display:flex; justify-content:space-between;">
      <div>
        <strong>Ahmed Al-Maktoum</strong> (MRN-001234) • Emirates ID: 784-1990-1234567-1<br/>
        Payer: Daman Enhanced • Plan: Inpatient
      </div>
      <div style="text-align:right;">
        Admit: 07-Feb-2026 09:15 • LOS: 4 days<br/>
        Level of Care: Inpatient • Next Review: 09-Feb-2026
      </div>
    </div>

    <!-- Review Header -->
    <div style="display:flex; gap:12px; margin-bottom:12px; font-size:13px;">
      <div>
        <label>Review Type<br/>
          <select style="padding:4px 6px; min-width:140px;">
            <option>Continued Stay</option>
            <option>Admission</option>
            <option>Retrospective</option>
          </select>
        </label>
      </div>
      <div>
        <label>Review Date/Time<br/>
          <input type="datetime-local" style="padding:4px 6px;" />
        </label>
      </div>
      <div>
        <label>Criteria Tool<br/>
          <select style="padding:4px 6px; min-width:160px;">
            <option>InterQual-equivalent</option>
            <option>Local Criteria</option>
          </select>
        </label>
      </div>
      <div>
        <label>Reviewer<br/>
          <input type="text" value="Fatima Al-Nahyan, UM RN" readonly style="padding:4px 6px; background:#eee;" />
        </label>
      </div>
    </div>

    <!-- Clinical Snapshot -->
    <div style="border:1px solid #ddd; border-radius:4px; padding:10px; margin-bottom:12px; font-size:12px;">
      <strong>Clinical Snapshot</strong>
      <div style="display:flex; gap:16px; margin-top:6px;">
        <div>Dx: Pneumonia (ICD-10-AM J18.9)</div>
        <div>Latest Vitals: T 38.2°C, RR 22, SpO2 93% RA</div>
        <div>Key Labs: WBC 14.2, CRP 120</div>
      </div>
    </div>

    <!-- Criteria Checklist -->
    <div style="border:1px solid #ddd; border-radius:4px; margin-bottom:12px;">
      <div style="background:#f5f5f5; padding:8px 10px; font-weight:bold; font-size:13px;">Criteria Checklist</div>
      <div style="max-height:220px; overflow:auto;">
        <table style="width:100%; border-collapse:collapse; font-size:12px;">
          <thead>
            <tr>
              <th style="text-align:left; padding:6px; border-bottom:1px solid #ddd;">Category</th>
              <th style="text-align:left; padding:6px; border-bottom:1px solid #ddd;">Criterion</th>
              <th style="text-align:center; padding:6px; border-bottom:1px solid #ddd;">Met</th>
              <th style="text-align:center; padding:6px; border-bottom:1px solid #ddd;">Not Met</th>
              <th style="text-align:center; padding:6px; border-bottom:1px solid #ddd;">N/A</th>
              <th style="text-align:left; padding:6px; border-bottom:1px solid #ddd;">Evidence</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td style="padding:6px; border-bottom:1px solid #eee;">Respiratory</td>
              <td style="padding:6px; border-bottom:1px solid #eee;">O2 saturation &lt; 92% on room air</td>
              <td style="text-align:center; padding:6px; border-bottom:1px solid #eee;"><input type="radio" name="crit1" /></td>
              <td style="text-align:center; padding:6px; border-bottom:1px solid #eee;"><input type="radio" name="crit1" /></td>
              <td style="text-align:center; padding:6px; border-bottom:1px solid #eee;"><input type="radio" name="crit1" /></td>
              <td style="padding:6px; border-bottom:1px solid #eee;"><input type="text" placeholder="e.g., SpO2 90% RA at 08:00" style="width:100%; padding:2px 4px;" /></td>
            </tr>
            <!-- More criteria rows -->
          </tbody>
        </table>
      </div>
    </div>

    <!-- Review Decision -->
    <div style="display:flex; gap:16px; margin-bottom:12px; font-size:13px;">
      <div style="flex:1;">
        <label>Level of Care<br/>
          <select style="padding:4px 6px; width:100%;">
            <option>Inpatient</option>
            <option>Observation</option>
            <option>Outpatient</option>
            <option>ICU</option>
          </select>
        </label>
      </div>
      <div style="flex:1;">
        <label>Recommended Action<br/>
          <select style="padding:4px 6px; width:100%;">
            <option>Continue Inpatient</option>
            <option>Downgrade Level of Care</option>
            <option>Discharge Planning</option>
            <option>Peer Review</option>
          </select>
        </label>
      </div>
      <div style="flex:1;">
        <label>Next Review Date<br/>
          <input type="date" style="padding:4px 6px; width:100%;" />
        </label>
      </div>
      <div style="flex:0 0 160px; margin-top:18px;">
        <label><input type="checkbox" /> Criteria Met Overall</label><br/>
        <label><input type="checkbox" /> Payer Notification Required</label>
      </div>
    </div>

    <div style="margin-bottom:12px;">
      <label>Clinical Justification<br/>
        <textarea rows="4" style="width:100%; padding:6px 8px; font-size:13px;" placeholder="Summarise clinical status and rationale for continued stay or level-of-care change."></textarea>
      </label>
    </div>

    <!-- Footer -->
    <div style="display:flex; justify-content:flex-end; gap:8px;">
      <button type="button" style="padding:6px 12px;">Cancel</button>
      <button type="button" style="padding:6px 12px;">Save Draft</button>
      <button type="button" style="padding:6px 12px; background:#0b8043; color:white; border:1px solid #0b8043;">Complete Review</button>
    </div>
  </div>
</div>

Accessibility

  • Criteria table uses radio groups with aria-labelledby for each criterion.
  • Clinical justification textarea linked to error message via aria-describedby when invalid.
  • Payer notification requirement announced via aria-live="polite" when auto-checked.
  • All interactive elements reachable via keyboard; no keyboard trap in scrollable criteria area.

Responsive / Mobile

  • Criteria checklist collapses into accordion sections by category.
  • Clinical snapshot collapses into a summary card; long text truncated with “More” link.
  • Footer buttons become full-width stacked buttons.
  • Date/time pickers use mobile-native controls where available.

SCR-CASEMANAGEMENT-003: Discharge Planning

Purpose

Support structured discharge planning, barrier assessment, task assignment, and documentation of patient/family education and agreement.

Layout Overview

  • Patient Banner.
  • Plan Header: Planned disposition, target discharge date, plan status.
  • Barriers & Assessment: Social, financial, clinical, caregiver barriers.
  • Services Needed: Post-acute services, equipment, transport.
  • Task Checklist: discharge_plan_tasks grid with assignment and status.
  • Patient Education & Agreement.
  • Footer: Save, Mark Plan Complete, Print/Export Summary.

Field Specifications

Field Type Required Validation Default Notes
plan_id Hidden System UUID PK in discharge_plans
case_id Hidden System Must reference open case FK
patient_id Hidden System Must match case FK
encounter_id Hidden System Must match case FK
planned_disposition Dropdown Yes From Discharge Disposition master discharge_plans.planned_disposition
target_discharge_date Date picker Yes ≥ today; ≤ admission + 60 days (configurable) discharge_plans.target_discharge_date
barriers_identified Multi-select checklist No Values from master (social, financial, clinical, home environment, transport) Stored as coded list or JSON
barriers_assessment_notes Textarea Conditional Required if any barrier selected discharge_plans.barriers_identified + notes
services_needed Multi-select checklist No From Post-Acute Service Types master discharge_plans.services_needed
post_acute_arrangements Textarea Conditional Required if services_needed not empty Details of facility, agency, contact
transport_required Checkbox No Unchecked If checked, show transport_type
transport_type Dropdown Conditional Required if transport_required IN (Ambulance, Wheelchair, Private car, Other)
plan_status Dropdown Yes IN (Draft, In Progress, Ready for Discharge, Completed, Cancelled) Draft discharge_plans.plan_status
patient_family_agreed Radio (Yes/No/Pending) Yes Pending discharge_plans.patient_family_agreed
education_topics Multi-select checklist No e.g., medications, wound care, follow-up
education_completed_datetime DateTime Conditional Required if patient_family_agreed = Yes For audit
education_notes Textarea No Max 2000 chars Content of education provided
created_by Hidden System Must be active user Current user discharge_plans.created_by
created_datetime Hidden System Auto timestamp Now discharge_plans.created_datetime

Task Checklist (discharge_plan_tasks)

Field Type Required Validation Notes
task_id Hidden System UUID PK
task_description Text Yes 5–500 chars Description of task
assigned_to Dropdown No Must be active user From users
due_date Date No ≥ today
status Dropdown Yes IN (Not Started, In Progress, Completed, Cancelled) Default Not Started
completed_datetime DateTime Conditional Required if status = Completed
notes Textarea No Max 1000 chars

Validation Messages

Condition Message Severity
planned_disposition missing "Select planned discharge disposition." Error
target_discharge_date in past "Target discharge date cannot be in the past." Error
barriers selected but no notes "Provide assessment notes for identified barriers." Error
services_needed selected but no arrangements "Document post-acute arrangements for selected services." Error
patient_family_agreed = Yes but no education_completed_datetime "Record when discharge education was completed." Error
Task status Completed but no completed_datetime "Enter completion date/time for completed task." Error
Attempt to mark plan Completed with open tasks "All required tasks must be completed or explicitly cancelled before completing the plan." Error

Actions / Buttons

  • Save Plan: Saves changes without changing status.
  • Mark Ready for Discharge: Sets plan_status to “Ready for Discharge” if all critical tasks completed.
  • Mark Plan Completed: Validates tasks and education, sets status to “Completed”.
  • Add Task: Adds new row to discharge_plan_tasks.
  • Copy Template: Loads predefined discharge plan template based on diagnosis or service line.
  • Print / Export Summary: Generates patient-friendly discharge summary (English/Arabic) for printing or portal.

HTML Wireframe Mockup

Show HTML code
HTML
<div style="font-family: Arial, sans-serif; max-width: 950px; margin: 0 auto; border: 1px solid #ccc; border-radius: 8px; overflow: hidden;">
  <div style="background: #1a73e8; color: white; padding: 12px 20px;">
    <h3 style="margin: 0;">Discharge Planning</h3>
  </div>
  <div style="padding: 16px;">
    <!-- Patient Banner -->
    <div style="background:#f0f4f8; padding:10px; border-radius:4px; margin-bottom:12px; font-size:13px;">
      <strong>Fatima Al-Nahyan</strong> (MRN-009876) • Emirates ID: 784-1985-7654321-3<br/>
      Admit: 05-Feb-2026 • LOS: 6 days • Payer: THIQA
    </div>

    <!-- Plan Header -->
    <div style="display:flex; gap:16px; margin-bottom:12px; font-size:13px;">
      <div style="flex:1;">
        <label>Planned Disposition<br/>
          <select style="padding:4px 6px; width:100%;">
            <option>Home (self-care)</option>
            <option>Home with home health</option>
            <option>Rehabilitation facility</option>
            <option>Skilled nursing facility</option>
          </select>
        </label>
      </div>
      <div style="flex:1;">
        <label>Target Discharge Date<br/>
          <input type="date" style="padding:4px 6px; width:100%;" />
        </label>
      </div>
      <div style="flex:1;">
        <label>Plan Status<br/>
          <select style="padding:4px 6px; width:100%;">
            <option>Draft</option>
            <option>In Progress</option>
            <option>Ready for Discharge</option>
            <option>Completed</option>
          </select>
        </label>
      </div>
    </div>

    <!-- Barriers -->
    <div style="border:1px solid #ddd; border-radius:4px; padding:10px; margin-bottom:12px; font-size:13px;">
      <strong>Barriers to Discharge</strong>
      <div style="display:flex; flex-wrap:wrap; gap:12px; margin-top:6px;">
        <label><input type="checkbox" /> Social support</label>
        <label><input type="checkbox" /> Financial / insurance</label>
        <label><input type="checkbox" /> Clinical stability</label>
        <label><input type="checkbox" /> Home environment</label>
        <label><input type="checkbox" /> Transport</label>
      </div>
      <div style="margin-top:8px;">
        <textarea rows="3" style="width:100%; padding:6px 8px;" placeholder="Describe identified barriers and mitigation plan."></textarea>
      </div>
    </div>

    <!-- Services & Tasks -->
    <div style="display:flex; gap:16px; margin-bottom:12px; font-size:13px;">
      <div style="flex:1;">
        <strong>Services Needed</strong><br/>
        <label><input type="checkbox" /> Home health nursing</label><br/>
        <label><input type="checkbox" /> Physiotherapy</label><br/>
        <label><input type="checkbox" /> DME (e.g., wheelchair)</label><br/>
        <label><input type="checkbox" /> Community social services</label><br/>
        <textarea rows="3" style="width:100%; margin-top:6px; padding:6px 8px;" placeholder="Document post-acute arrangements (agency, contact, dates)."></textarea>
      </div>
      <div style="flex:1;">
        <strong>Transport</strong><br/>
        <label><input type="checkbox" /> Transport required</label><br/>
        <select style="padding:4px 6px; width:100%; margin-top:4px;">
          <option>Select transport type</option>
          <option>Ambulance</option>
          <option>Wheelchair transport</option>
          <option>Private car</option>
        </select>
      </div>
    </div>

    <!-- Task Checklist -->
    <div style="border:1px solid #ddd; border-radius:4px; margin-bottom:12px;">
      <div style="background:#f5f5f5; padding:8px 10px; font-weight:bold; font-size:13px; display:flex; justify-content:space-between;">
        <span>Discharge Tasks</span>
        <button type="button" style="padding:2px 8px; font-size:12px;">Add Task</button>
      </div>
      <div style="max-height:200px; overflow:auto;">
        <table style="width:100%; border-collapse:collapse; font-size:12px;">
          <thead>
            <tr>
              <th style="text-align:left; padding:6px; border-bottom:1px solid #ddd;">Task</th>
              <th style="text-align:left; padding:6px; border-bottom:1px solid #ddd;">Assigned To</th>
              <th style="text-align:left; padding:6px; border-bottom:1px solid #ddd;">Due Date</th>
              <th style="text-align:left; padding:6px; border-bottom:1px solid #ddd;">Status</th>
              <th style="text-align:left; padding:6px; border-bottom:1px solid #ddd;">Completed</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td style="padding:6px; border-bottom:1px solid #eee;">Book follow-up with respiratory clinic</td>
              <td style="padding:6px; border-bottom:1px solid #eee;">Discharge Planner</td>
              <td style="padding:6px; border-bottom:1px solid #eee;">09-Feb-2026</td>
              <td style="padding:6px; border-bottom:1px solid #eee;">
                <select style="padding:2px 4px;">
                  <option>Not Started</option>
                  <option>In Progress</option>
                  <option>Completed</option>
                </select>
              </td>
              <td style="padding:6px; border-bottom:1px solid #eee;"><input type="datetime-local" style="padding:2px 4px;" /></td>
            </tr>
            <!-- More tasks -->
          </tbody>
        </table>
      </div>
    </div>

    <!-- Education -->
    <div style="border:1px solid #ddd; border-radius:4px; padding:10px; margin-bottom:12px; font-size:13px;">
      <strong>Patient / Family Education</strong>
      <div style="margin-top:6px;">
        <label><input type="checkbox" /> Medications</label>
        <label style="margin-left:12px;"><input type="checkbox" /> Follow-up appointments</label>
        <label style="margin-left:12px;"><input type="checkbox" /> Warning signs</label>
      </div>
      <div style="margin-top:6px;">
        <label>Education Completed On<br/>
          <input type="datetime-local" style="padding:4px 6px;" />
        </label>
      </div>
      <div style="margin-top:6px;">
        <label>Agreement<br/>
          <select style="padding:4px 6px;">
            <option>Pending</option>
            <option>Yes</option>
            <option>No</option>
          </select>
        </label>
      </div>
      <textarea rows="3" style="width:100%; margin-top:6px; padding:6px 8px;" placeholder="Notes on education provided and patient/family feedback."></textarea>
    </div>

    <!-- Footer -->
    <div style="display:flex; justify-content:flex-end; gap:8px;">
      <button type="button" style="padding:6px 12px;">Cancel</button>
      <button type="button" style="padding:6px 12px;">Save Plan</button>
      <button type="button" style="padding:6px 12px;">Mark Ready for Discharge</button>
      <button type="button" style="padding:6px 12px; background:#1a73e8; color:white; border:1px solid #1a73e8;">Mark Plan Completed</button>
    </div>
  </div>
</div>

Accessibility

  • Checkboxes and selects have visible labels; group labels for barrier and education sections.
  • Task table uses proper headers; screen readers can navigate tasks row by row.
  • Error messages for required fields are displayed inline and associated via aria-describedby.
  • For bilingual content, ensure logical reading order in both languages.

Responsive / Mobile

  • Sections (Barriers, Services, Tasks, Education) become collapsible accordions.
  • Task table becomes vertical list of task cards with key fields.
  • Buttons become full-width at bottom; sticky footer for Save/Complete actions.

SCR-CASEMANAGEMENT-004: Care Coordination Dashboard

Purpose

Panel management view for ongoing care coordination across encounters, focusing on high-risk patients, upcoming touchpoints, and adherence indicators.

Field Specifications (key)

Field Type Required Validation Default Notes
patient_panel List / table Display Filtered by coordinator Shows enrolled patients
care_plan_summary Text Display Goals and key interventions
recent_activities Timeline Display Last 30 days From care_coordination_notes
upcoming_touchpoints List Display Next 14 days Scheduled calls, visits, portal messages
adherence_indicators Badges Display e.g., missed appointments, medication gaps
risk_flags Badge Display From readmission_risk_assessments

Additional filters: program type, risk level, coordinator.

Validation Messages

Condition Message Severity
No patients in panel "No patients currently enrolled in your care coordination panel." Info
Attempt to edit without permission "You do not have permission to modify this care coordination plan." Error

Actions / Buttons

  • Open Patient Coordination Record.
  • Add Coordination Note.
  • Schedule Touchpoint (integrates with Scheduling).
  • Enrol / Disenrol from program.

Responsive / Mobile

  • Dashboard cards stack vertically.
  • Activity timeline becomes simple chronological list.
  • Quick actions shown as icon buttons with text labels.

SCR-CASEMANAGEMENT-005: Authorization Tracking

Purpose

Track open and historical continued-stay authorizations, days approved vs. used, expiry alerts, and payer communication logs.

Field Specifications

Field Type Required Validation Default Notes
open_authorizations Table Display Filter: Open From continued_stay_authorizations
payer Text / dropdown Display/filter Must match payer master payers.name
auth_number Text (column) Display continued_stay_authorizations.auth_number
approved_days Integer Display ≥ 0 continued_stay_authorizations.approved_days
requested_days Integer Display ≥ 0 continued_stay_authorizations.requested_days
remaining_days Integer Display ≥ 0 Calculated Approved − used
request_date Date Display continued_stay_authorizations.request_date
response_date Date Display continued_stay_authorizations.response_date
next_review Date Display Derived from payer schedule
expiry_alert Badge Display e.g., “Expires in 1 day”
status Dropdown (filter) No IN (Pending, Approved, Denied, Expired) Open statuses continued_stay_authorizations.status
denial_reason Text Display If status = Denied
appeal_status Text Display continued_stay_authorizations.appeal_status
renewal_button Button Yes Enabled only for open cases Opens renewal request form

Validation Messages

Condition Message Severity
Attempt to renew expired auth without new review "A current UM review is required before requesting renewal." Error
Missing auth_number on approved status "Authorization number is required for approved authorizations." Error

Actions / Buttons

  • Renew Authorization: Launches UM review + payer submission workflow.
  • Log Payer Communication: Opens dialog to add communication entry.
  • Filter by Expiry: Quick filters (≤ 24h, ≤ 72h, > 72h).

Responsive / Mobile

  • Table becomes list of cards grouped by expiry urgency.
  • Renewal button prominent on each card.

SCR-CASEMANAGEMENT-006: Readmission Risk Dashboard

Purpose

Display risk-stratified patient list, risk factors, planned interventions, follow-up status, and 30-day readmission metrics.

Field Specifications

Field Type Required Validation Default Notes
patient_list Table Display Filter: Inpatients & recent discharges From readmission_risk_assessments + encounters
risk_score Numeric (column) Display 0–100 or algorithm-specific readmission_risk_assessments.risk_score
risk_level Badge Display IN (High, Medium, Low) Derived from score
risk_factors Text Display From score_components_json
intervention_plan Text Display Summary of planned interventions
follow_up_status Badge Display e.g., “Call scheduled”, “Call completed”
30_day_readmission_rate KPI tile Display 0–100% Calculated from encounters

Validation Messages

Condition Message Severity
No risk assessments available "No readmission risk assessments found for the selected period." Info

Actions / Buttons

  • Open Readmission Risk Detail (per patient).
  • Add / Update Intervention Plan.
  • Mark Follow-up Completed.

Responsive / Mobile

  • KPI tiles at top; list of high-risk patients as cards.
  • Filters accessible via slide-out panel.

SCR-CASEMANAGEMENT-007: Case Management Analytics

Purpose

Management dashboard for LOS benchmarking, avoidable days, discharge disposition mix, readmission rate, UM review compliance, and UM-related denial rate.

Field Specifications (high level)

Field Type Required Validation Default Notes
alos_by_drg Chart (bar) Display Last 3–6 months From encounters, grouped by DRG
avoidable_days Chart / table Display From utilization_reviews
discharge_disposition_mix Pie chart Display From discharge_plans / encounters
readmission_rate KPI + trend chart Display From encounters
um_review_compliance KPI Display From utilization_reviews vs. schedules
auth_denial_rate KPI Display From continued_stay_authorizations & claims

Actions / Buttons

  • Filter by facility, department, date range, payer.
  • Export charts/data (subject to PDPL and facility policy).
  • Drill-down to patient-level lists (role-restricted).

Responsive / Mobile

  • Charts stack vertically; KPIs shown as tiles.
  • Complex charts may switch to simplified numeric summaries.

Common UI Patterns

Patient Banner

  • Displayed on all case-related screens (SCR-CASEMANAGEMENT-001–006).
  • Fields:
  • Patient full name (Arabic + English where available).
  • MRN.
  • Emirates ID (masked by default, e.g., 784-1990-******7-1 for non-clinical viewers, per UAE PDPL role-based access).
  • Date of birth, age, gender.
  • Primary facility and current location.
  • Payer and plan.
  • Key alerts (allergies, isolation, fall risk) from EHR.
  • Behaviour:
  • Clickable to open full patient summary (read-only).
  • Supports left-to-right and right-to-left layout; in Arabic UI, banner content order mirrors appropriately.

Search Components

  • Global Case Search:
  • Text input with debounce; searches patient name (Arabic/English), MRN, Emirates ID, encounter number.
  • Minimum 2–3 characters; PDPL-compliant logging of search activity.
  • Filter Chips:
  • Used for status, priority, risk level.
  • Toggleable; include text and icon; high contrast colours.
  • Autocomplete Dropdowns:
  • For users, departments, services.
  • Keyboard accessible (arrow keys, Enter to select).

Alert / Notification Patterns

  • Overdue Review Alerts:
  • Badge + tooltip in worklist and UM form.
  • Optional banner at top of UM Review Form: “UM review overdue by X days”.
  • Authorization Expiry Alerts:
  • Colour-coded badges (with text) in Authorization Tracking.
  • Optional notification centre for upcoming expiries (24/48/72h).
  • Readmission Risk Alerts:
  • High-risk badge in worklist and dashboards.
  • Technical:
  • Use aria-live="polite" for non-critical alerts; assertive for blocking errors.
  • All alerts include clear text; no reliance on colour alone.

Loading States

  • Skeleton loaders for tables and dashboards.
  • Spinner with text “Loading case data…” for UM and discharge screens.
  • Timeouts with retry option and support contact message.
  • For long-running analytics queries, show progress indicator and allow user to cancel.

Arabic / English Bilingual UI

  • All labels, buttons, and messages must support both English and Arabic text from localisation resources.
  • Support full RTL layout when Arabic is selected:
  • Alignment of text and icons reversed.
  • Tables maintain logical column order; numeric fields remain LTR.
  • Date/time formats:
  • Configurable; default DD-MMM-YYYY with 24-hour time (common in UAE).
  • Validation messages:
  • Provided in both languages; language follows user preference.
  • Patient names:
  • Display Arabic name first when available, then English in parentheses.

Accessibility (WCAG 2.1 AA) – Global Notes

  • Colour contrast ratio ≥ 4.5:1 for text; ≥ 3:1 for large text and UI components.
  • Keyboard navigation:
  • All interactive elements reachable via Tab.
  • Visible focus indicator.
  • No reliance on hover-only interactions.
  • Screen reader support:
  • Landmarks (role="main", role="navigation") for major areas.
  • Descriptive aria-label for icons and buttons (e.g., “Renew authorization”).
  • Error handling:
  • Errors summarised at top of form and inline next to fields.
  • Programmatic association between fields and error text.

Responsive / Mobile – Global Notes

  • Breakpoints:
  • ≥ 1024px: desktop multi-column layouts.
  • 768–1023px: tablet, two-column where possible.
  • < 768px: single-column stacked layout.
  • Tables:
  • Convert to card-based layouts on small screens.
  • Preserve key fields at top of card; secondary fields collapsible.
  • Buttons:
  • Minimum 44x44 px touch targets.
  • Primary action clearly distinguished (colour + label).

```

content/rcm/case-management/04-screen-requirements.md Generated 2026-02-20 22:54