API — التقويمات والورديات
الغرض
الوصول للقراءة إلى تقويم العمل المُحلَّل (أيام العمل، الساعات، العطلات، المُعدِّلات) وإلى بيانات الورديات المرجعية (أنماط الورديات، القوالب، الأنواع). هذه أسطح للقراءة فقط إلى حد كبير؛ أما CRUD لقوالب الورديات القابل للتحرير فيعيش على عمليات البحث والبيانات المرجعية.
المصادقة والأدوار
- التقويم — القاعدة
/api/calendar· على مستوى الصنف[Authorize("calendar.view")]. - الورديات — القاعدة
/api· تقيّد القراءات علىshift_template.view/shift_pattern.view.
نقاط النهاية
Calendar — /api/calendar · calendar.view
| Method | Path | Purpose |
|---|---|---|
| GET | /api/calendar/configuration |
تهيئة التقويم المُحلَّلة |
| GET | /api/calendar/working-days |
أيام العمل |
| GET | /api/calendar/working-hours |
ساعات العمل (بعد المُعدِّلات) |
| GET | /api/calendar/holidays |
العطلات في نطاق |
Shifts — /api
| Method | Path | Purpose | Gate |
|---|---|---|---|
| GET | /api/shift-templates |
قوالب الورديات (قراءة) | shift_template.view |
| GET | /api/shift-types |
أنواع الورديات | shift_template.view |
| GET | /api/shift-patterns |
أنماط الورديات | shift_pattern.view |
| GET | /api/shift-patterns/{id}/preview |
معاينة أيام نمط | shift_pattern.view |
الأشكال والأخطاء
يؤلّف مُحلِّل التقويم عطلات نهاية الأسبوع والعطلات ومُعدِّلات رمضان/ساعات العمل. تُغيّر المُعدِّلات الساعات في اليوم فقط — لا التواريخ أبدًا (الورقة 05). ProblemDetails القياسي.
المزالق
- أنواع الورديات والقوالب والأنماط للقراءة فقط هنا — أما CRUD قوالب الورديات القابل للكتابة فتحت
/api/admin/shift-templates(انظر عمليات البحث والبيانات المرجعية). - تُعدّل المُعدِّلات الساعات، لا تواريخ التقويم — مُعدِّل رمضان يقصّر ساعات العمل في يوم؛ ولا يحرّك اليوم.
- مسارا
GET /api/shift-templates(هنا وقائمة admin) يعكسان سطحَي القراءة مقابل admin-CRUD للبيانات نفسها.
ذات صلة
- الورديات والتقويمات (مفهوم)
- عمليات البحث والبيانات المرجعية — CRUD قوالب الورديات.
- Swagger:
/swagger· ورقة الحقائق 05 (التقويمات والورديات).