✨ feat: Add Specialization-Based Filters in Queue Screens
Summary
Add a Specialization filter to existing queue screens without removing current filters.
Current Behavior
Vitals Queue has:
- Doctor filter
- Gender filter
- Search
Queue has:
- Doctor filter
Consultation Queue has:
- Doctor filter
Problem Statement
Users can filter by doctor (and gender in vitals), but cannot quickly narrow patients by specialization. This slows triage and queue handling when multiple doctors belong to the same specialty.
Proposed Solution
Add a Specialization dropdown filter to:
- Vitals Queue
- Queue
- Consultation Queue
Keep all existing filters as-is and apply filters together:
- Vitals Queue: Doctor + Gender + Specialization + Search
- Queue: Doctor + Specialization + Search
- Consultation Queue: Doctor + Specialization + Search
Filter Behavior
- Default option: All Specializations
- Options should come from available queue data (unique specialization values)
- Selecting a specialization should not reset other active filters
- “Clear filters” behavior (if present) should reset specialization too
- If no records match, show existing empty state
Acceptance Criteria
- Specialization filter is visible on Vitals Queue, Queue, and Consultation Queue.
- Existing filters (doctor, gender, search) continue working unchanged.
- Combined filtering works correctly (intersection of active filters).
- Specialization options are populated dynamically and de-duplicated.
- No regressions in queue rendering, search, or live queue updates.
Risks / Notes
- Existing inconsistent specialization naming may create near-duplicate options.
- Missing specialization values should be handled gracefully (e.g., Unspecified).
Edited by Lakshy Yarlagadda