feat(appointment): add booking services endpoint and update security configuration for public access
This commit is contained in:
+28
-1
@@ -94,7 +94,7 @@ Get all appointment slots (available and booked) for a doctor on a specific date
|
||||
}
|
||||
}
|
||||
```
|
||||
`start_times` خالی یعنی در آن روز فضای کافی نیست. `end` بدونِ بافر است (بافر فقط فاصلهٔ بین نوبتهای پیشنهادی است).
|
||||
`start_times` خالی یعنی در آن روز فضای کافی نیست. `end` بدونِ بافر است (بافر فقط فاصلهٔ بین نوبتهای پیشنهادی است). **عمومی** (بدون احراز هویت — مصرفکننده: سایت nobat724).
|
||||
|
||||
### Errors
|
||||
| Code | HTTP | Description |
|
||||
@@ -104,6 +104,33 @@ Get all appointment slots (available and booked) for a doctor on a specific date
|
||||
|
||||
---
|
||||
|
||||
## GET `/api/v1/appointment-booking-services/{doctorUuid}`
|
||||
|
||||
**عمومی.** روش نوبتدهی پزشک + سرویسهای قابلانتخاب برای نوبتگیری سرویسی. سایت با این پاسخ تصمیم میگیرد مرحلهٔ «انتخاب سرویس» را نشان دهد (حالت `service`) یا جریان اسلاتیِ فعلی (حالت `slot`).
|
||||
|
||||
### Response `200`
|
||||
```json
|
||||
{
|
||||
"success": true,
|
||||
"data": {
|
||||
"doctor_uuid": "…",
|
||||
"booking_mode": "service",
|
||||
"buffer_minutes": 5,
|
||||
"services": [
|
||||
{ "uuid": "…", "name": "عصبکشی", "duration_minutes": 30, "price_rials": 5000000 }
|
||||
]
|
||||
}
|
||||
}
|
||||
```
|
||||
`services` فقط سرویسهای `bookable=true` و فعالِ پزشک را دارد؛ در حالت `slot` معمولاً خالی است.
|
||||
|
||||
### Errors
|
||||
| Code | HTTP | Description |
|
||||
|------|------|-------------|
|
||||
| `ERR_VALIDATION_002` | 404 | Doctor not found |
|
||||
|
||||
---
|
||||
|
||||
## GET `/api/v1/appointment-settings/month-availability/{doctorUuid}`
|
||||
|
||||
Which days of a month are bookable — used by the public calendar to grey out unavailable days.
|
||||
|
||||
Reference in New Issue
Block a user