Doctor Details
The Doctor Details screen renders doctor profile data and availability for a given doctorId.
It is part of the doctor selection and booking flow.
This screen includes:
- Doctor header - Image, name, specialty, rating, review count.
- Date selector - Availability entries from backend.
- Details tab - Experience, language(s).
- About tab - Biography, education, license identifier.
- Clinics tab - Clinic list with identifier.
- Reviews tab - Review list.
Workflow
- From the doctor search results or an existing booking context, the client provides a valid
doctorId. - The SDK requests doctor profile, availability, clinics, and reviews for the specified
doctorId. - The Doctor details screen renders the header, date selector, and default tab after a successful response.
Validations
| Condition | Rendering Rule |
|---|---|
| Valid authenticated session | Render screen. |
| Missing or invalid session | Return authorization error. Do not render content. |
doctorId exists | Render profile data. |
doctorId invalid | Render error state. |
| Availability entries present | Enable selectable dates. |
| Availability entries empty | Disable date selection. |
| Selected date matches enabled entry | Allow continuation. |
| Selected date not enabled | Reject selection. |
| Clinic identifiers valid | Render Clinics tab entries. |
| Review data present | Render Reviews tab. |
Actions
| Trigger | Result |
|---|---|
| Screen load | Execute doctor details request. |
| Successful response | Render payload as received. |
| Date selected | Update local state with selected date. |
| Tab selected | Render corresponding tab section. |
| Clinic selected | Navigate using clinic identifier. |
| Backend error | Preserve state. Display error. |
