Appointments Management
Accessing the Appointments Page
- Log in as an Admin.
- Navigate to Dashboard → Appointments.
- Verify that selecting Appointments (List View) opens a new page titled “Appointment”.
Appointment Overview Widgets
At the top of the Appointment page, verify the presence of 4 summary widgets:
- Today’s Appointments
- Completed
- Pending Check-in
- Cancelled
Ensure the numbers update correctly based on appointment data.
Day & Week Toggle
- Locate the toggle switch near the top right.
- Verify options:
- Day
- Week
- Switch between Day and Week views.
- Confirm the appointment list updates accordingly.
Date Selection & Calendar
- Check that a date or date range is displayed (e.g., Jan 18 – Jan 24, 2026).
- Click the date/range.
- Verify a calendar popup opens.
- Select:
- A single date (Day view), or
- A date range (Week view).
- Click Today.
- Confirm it redirects to the current date/date range.
- Verify that the selected date/range appears beside the search field.
Add New Appointment
- Locate the “+ Add New Appointment” button next to the Day/Week toggle.
- Click the button.
- Verify the Create Appointment / Booking modal opens.
Filters & Search Controls
Dropdown Filters
Verify the following dropdown filters exist:
- All Doctors
- All Machines
- All Nurses
- All Rooms
Change values and confirm:
- Appointment list updates correctly.
Advanced Filter Button
- Click the Filter button on the right side.
- Verify filter options include:
- Appointment Status: Completed, Pending, Cancelled
- Payment Status: Paid, Unknown
- Apply filters and confirm:
- Data updates correctly.
Appointment List Columns
Verify the appointment table contains the following columns:
- Apt ID
- Patient Name
- Service Name
- Doctor / Nurse
- Date
- Status
- Payment Status
- Duration
- Fee
- Department
- Patient Phone
- Room
- Machine
- Action
Sorting Functionality
- Click on column headers (e.g., Date, Status, Fee).
- Verify sorting works in ascending and descending order.
No Data UI State
- Apply filters or select a date with no appointments.
- The user can see “No appointments found” UI is displayed.
Search Appointments
- Locate the search field with a placeholder:
- “Search Appointments”
- Enter a keyword (patient name, service, etc.).
No Search Results Handling
- Enter a keyword with no matching results.
- The user should see an informational UI appears explaining no results were found.
- Confirm a “Search All Appointments” button is visible.
Search All Appointments Flow
- Click “Search All Appointments”.
- It opens a new page titled “Search Results”.
- Confirm:
- Results are shown from All Time.
- Results match the search keyword.
- If any result can be found of all time it will be shown in the list
- The user can find a “Back to Appointment” button.
- Click it.
- Confirm redirection back to the main Appointment list.
Action Column (Three-Dot Menu)
- In the Action column, verify each row has a 3-dot (⋯) menu.
- Click the menu.
- Confirm a “Details” option is available.
Appointment Details Side Drawer
Opening the Drawer
- Click Details from the 3-dot menu OR
- Click anywhere on an appointment row
Once the admin does that, they can see the Appointment Details side drawer open.
Drawer Validation
- A Close (✕) button is available at the top.
- An Edit Appointment button is visible.
- A “Mark as Completed” button appears at the bottom right.
Edit Appointment Rules
Edit Button State
- Enabled when:
- No conflicts exist
- Appointment is not expired
- Disabled when:
- Appointment is expired
- Conflicts are present
Status Updates Without Edit Mode
- Without clicking Edit Appointment, attempt to:
- Change booking status
- Change appointment status
- With a success message, status updates reflect across the application immediately.
Editing Appointment Details
- Click Edit Appointment.
- Admin sees additional dropdowns appear:
- Doctors
- Payment Status
- Room
- Machine
- Status
- Admin can change values where necessary.
Save & Cancel Actions
At the bottom of the Edit Appointment view:
- After editing is finished, click the Save button.
- If the admin wants to discard changed select the Cancel button.