Proposed changes to the O3 Appointments App Tables

Currently, the O3 Appointments App displays appointments in different tabs, one appointment status per tab. By default, when we look at appointments for “today”, we show the “Expected”, “Checked In”, “Completed” and “Cancelled” tabs.

We have a rather complex configuration for what tabs to show, for dates in the past, current date (today), and dates in the future.

This ticket proposes that we get rid of the tabs, and instead show all appointments, regardless of appointment statuses, in one big table. The table will have a MultiSelect filter to allow for the user to filter the rows based on statuses.

Nuances:

  • The date picker and the selections of service types in the top right will continue to work as is; that is, it affects both the appointments tables and the metric cards. The new MultiSelect status filter will be added as part of the table toolbar, next to the “Downloads” button, and only affects the table.
    • Currently, the selections for service types is stored in localStorage; that means the selections are “sticky” (saved) across page refreshes and across opening in different tabs. I propose that the values of all 3 controls (date picker, services selection and statuses selection) are all sticky, but with sessionStorage instead. This means a user who want to only view a certain subset of service types and statuses will also have the filters in place in their browser session, but the selections are not sticky across different browser tabs.
  • The Appointments App has a showUnscheduledAppointmentsTab configuration for showing “Unscheduled Appointments”, a non-standard feature that requires a custom appointments module backend. This feature will remain unchanged.
  • The Appointments App also has an extension for showing “Early Appoingments”, also a non-standard feature. Currently, it’s an extension that requires extension configuration to show, and shows up as an extra tab along with the “Expected” “Checked In” “Completed” and “Cancelled” tabs. I propose that this feature is enabled by another config value showEarlyAppointmentsTab, and have it show up next to the “Unscheduled” tab instead.

Thanks. cc @ibacher @dennis @dkibet @kmakombe @aojwang

1 Like

@chibongho Early and Unscheduled sound the same, I would say Early is a sub-set of Unscheduled and can be a status type, just thinking

This was the discussion behind the “Early Appointments” tab.

I don’t know if we still need it, but we shouldn’t get rid of until we’re sure. cc @minimalist

I tend to agree that early and unscheduled can be collapsed, but I think that’s outside of the scope of the proposed change and should be addressed separately.

1 Like