Below are the gaps and missing PIH use cases based on the Active Visits mock up and the current Queue implementation.
Have a queue per service/location
Able to add a patient to a queue who already has an active visit
I want to remove a patient from a queue and not add them to another queue
System allows for a customizable queue table (e.g. displaying different columns of data) depending on the service
I want to be able to manually add the date/time a patient was added to queue in case they are not added in real time
Summary
- Current design of the queues app contains workflows that are tightly coupled with Appointments and Visits. We would like to remove the coupling with Appointments, and reduce the coupling of Visits to just ensuring that patients have active visits being added to queues.
- We would like to have a queue table view that allows us to view a specific queue and a specific queue filtered by status
- We would like to be able to modify more fields in queue entries.
- We would like more flexble ways to configure priority and statuses for each queue.
Further Reading
Queue Entry Management
We would like to be able to remove a queue entry, or change its values without additional side effects.
- The "Bell Button" (Red) allows user to change the queue entry's status to the "next" status. Other than that, there is no ability to change the queue entry's status, priority and start time.
- There is a way to "End Visit" (Yellow), which does the following things. However, there is no ability to remove a queue entry without other side effects.
- End the patient's Active Visit
- Remove the patient from the current queue they are in
- Mark all active appointments as completed.
Adding Patient to Queue
We would like a way to add a patient with an active visit to a queue with no additional side effects. If the patient has no active visit, we would like to trigger a workflow to start the visit.
- Regardless of whether the patient has an active visit, the workflow to add pateint to queue asks for Date and Time of Visit.
- When selecting "Check In" in the Patient Search for a patient with no Active visit. A separate workflow is trigger that takes the page to the patient chart.
- In the patient Chart, clicking on the Order Basket button triggers a workflow to start a visit (if the patient does not have an active one). Should we do something similar?
Queue Table View
We would like to filter the queue table by queue and by queue+status.
- A bit confusing how to filter the queue table by queue. The "Show Patient Waiting For" Dropdown (Red) does not seem to work. However the "Waiting for" Dropdown (Black) seems to do the filtering.
- Unclear what the Queue Location dropdown (in Yellow) does
- There is no way to filter queue entries by status
Active Visits and Appointments
- Expanding a table row in the Queue Table shows info about Current Visit and Last Visit (Do we want those?)
Queue Priorities and Statuses
We would like an arbitrary number of priorities and statuses for each queue
- Currently, the "Bell Button" takes a queue entry's status to "In Service". We need to account to queues with multiple possible statuses.
- Currently, the esm-patient-service-queues module allows configuration to designate the Emergency Priority for the purpose of sorting. We need to account to multiple possible priorities.