feat(doctor): add doctor dashboard views for assigned queue, waiting queue, and medicine availability
What does this MR do and why?
This MR adds a dedicated doctor workflow starting from the dashboard through queue management and medicine availability.
Earlier, doctor users did not have a clear, end-to-end experience to view their assigned patients, monitor the waiting queue, or quickly check medicine availability. This change introduces doctor-focused navigation and pages to make their day-to-day camp workflow smoother and more reliable.
In addition, queue data could sometimes include duplicates or records from different camps. This MR improves correctness by adding camp-aware filtering and deduplication.
Changes included
- Added doctor role support in the Dashboard and AppLayout navigation.
- Introduced new doctor routes:
/doctor/doctor/assigned-queue/doctor/waiting-queue/doctor/medicine-availability
- Added DoctorHomePage with quick action cards for common doctor tasks.
- Added DoctorPage with three main views:
- Assigned queue
- Waiting queue
- Medicine availability (with search)
- Implemented queue deduplication by
book_nowith proper priority and status handling. - Added live waiting-time display and improved socket error visibility.
- Introduced
getLatestMedicalCamp()helper and scoped doctor queue data to the active camp. - Extended the
QueuePatienttype with optionalcamp_idandcamp_datefor camp-aware filtering.
Why this change
- Doctors previously lacked a dedicated, streamlined workflow.
- Queue data could include duplicates or mixed-camp records.
- Improves usability, correctness, and role-based navigation clarity.
- Lays groundwork for future doctor-specific enhancements.
Screenshots or screen recordings
before:blank page
after:
---#164 (closed)
Edited by Suma Pullaiahgari