مخطط ورديات دوّارة
دورة من 4 أيام عمل و4 أيام راحة من 1 إلى 16 يناير 2026 تعطي 8 أيام عمل، من 1 إلى 4 ومن 9 إلى 12 يناير، و8 أيام راحة. ويُعلَّم كل تاريخ بأنه عمل أو راحة. مجاناً في متصفحكم.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- تاريخ البدء
- 2026-01-01
- تاريخ الانتهاء
- 2026-01-16
- أيام الدوام
- 4
- أيام الإجازة
- 4
- إزاحة الدورة
- 0
- اسم العامل
- Alex Rivera
- طول الدورة
- 8
- النمط
- 4-on/4-off
- إجمالي الأيام
- 16
- أيام الخدمة
- 8
يحوّل مخطط جداول الورديات الدوّارة نمط دورة بسيطًا—مثل أربعة أيام عمل متتالية تليها أربعة أيام راحة—إلى قائمة يوم بيوم لعامل واحد عبر أي نافذة تقويم شاملة الطرفين. يحتاج مسؤولو العمليات ومديرو المواقع وفرق الرواتب مرارًا إلى الإجابات ذاتها: أي التواريخ عمل وأيها راحة، وكم يوم عمل يقع داخل الشهر، وأين تقف الدورة إذا بدأ تاريخ التعيين في منتصف التناوب. تقبل هذه القدرة تواريخ بداية ونهاية بصيغة ISO، وطولًا موجبًا لكتلة العمل، وطول كتلة الراحة، وإزاحة طور اختيارية، ثم توسّع تسلسلًا تتابعيًا حتميًا بلا قواعد عطلة نهاية الأسبوع أو أعياد أو تحسين لعدة أطقم.
كيف تعمل دورة الورديات الدوّارة
النمط الدوّار هو كتلة من أيام العمل المتتالية تليها كتلة من أيام الراحة، وتتكرر دون اعتبار ليوم الأسبوع. مع 4 أيام عمل و4 أيام راحة تستغرق الدورة 8 أيام، لذلك لا يحمل اليوم نفسه من الأسبوع الحالة نفسها دائماً. ولتحديد كل تاريخ يعدّ المخطط الأيام من أول تاريخ في الفترة، ويضيف الإزاحة، ثم يحدد الموضع داخل الدورة: إن وقع في كتلة العمل فهو يوم عمل، وإلا فهو راحة. من 1 إلى 16 يناير 2026 تكون النتيجة 8 أيام عمل و8 أيام راحة.
متى تستخدمونه وما الأخطاء الشائعة
يفيد هذا المخطط في العمليات المستمرة وجداول المواقع ومعاينات الرواتب، حيث تتوزع التغطية على أيام التقويم. الخطأ الأكثر شيوعاً هو نسيان الإزاحة عندما ينضم شخص في منتصف الدورة، فتنزاح كل التواريخ اللاحقة. ولا تُتخطى عطلات نهاية الأسبوع أو الأعياد، لذا طبّقوا هذه القواعد بعد ذلك. ويمكن أن تمتد الفترة إلى 366 يوماً كحد أقصى، وتعني الراحة الصفرية العمل كل يوم. ويخص المخطط شخصاً واحداً في كل مرة.
ما معنى دورة عمل وراحة دوّارة لعامل واحد
أنماط الورديات الدوّارة مثل أربعة أيام عمل وأربعة راحة، أو اثنين واثنين، أو سبعة وسبعة شائعة في العمليات المستمرة حيث يجب أن تتدحرج التغطية بالتساوي عبر أيام التقويم دون تثبيت أيام الأسبوع ذاتها كل أسبوع. النموذج هنا بسيط وشفاف عمدًا: كل دورة كتلة أيام عمل متتالية تليها كتلة أيام راحة متتالية؛ ويتكرر الزوج من بداية النافذة المطلوبة. يستخدم 2/2 اثنين واثنين.
يستخدم نمط 5/2 خمسة واثنين وينتج نسبة قريبة من خمسة أسباع، مفيدة عندما ترغبون في كثافة عمل أعلى من تناوب نصف الوقت. لا تعيّن هذه الأداة أطقمًا متعددة بأسماء، ولا تتخطى الأعياد، ولا ترمّز تسميات وردية ليلية مقابل نهارية أبعد من حالة on/off الثنائية، ولا تعيد موازنة الساعات أمام الحدود القانونية—تلك الطبقات تخص نظام الموارد البشرية لديكم. ما تقدّمه هو توسعة قابلة للتكرار لعامل واحد يمكن تصديرها إلى جداول أو استيراد ساعة دوام أو معاينات رواتب دون إعادة تنفيذ الحساب التتابعي في كل عميل.
الأسئلة الشائعة
ما أقصى طول لنطاق التواريخ؟
آفاق التخطيط الأطول يجب تقسيمها إلى عدة استدعاءات.
هل يتخطى المخطط عطل نهاية الأسبوع أو الأعياد؟
لا. كل يوم تقويم ميلادي في النطاق الشامل يُعيَّن on أو off من الدورة الصرفة فقط. استثناءات الأعياد وعطل نهاية الأسبوع تخص طبقة الموارد البشرية لديكم.
ماذا لو بدأ الشخص في منتصف الدورة؟
حدّدوا إزاحة للدورة. الصفر يعني أن التاريخ الأول هو أول يوم عمل في الكتلة، والرقم الأكبر يزيح التسلسل ليتطابق الجدول مع الموضع الذي وصل إليه الشخص بالفعل.
هل يمكن تخطيط دورات غير 4 عمل و4 راحة؟
نعم. اختاروا عدد أيام العمل المتتالية وأيام الراحة في الدورة، من 1 إلى 90 يوم عمل ومن 0 إلى 90 يوم راحة. وتعمل أنماط مثل يومين بيومين أو خمسة بيومين أو سبعة بسبعة بالطريقة نفسها.
كم يوم عمل يعرض الجدول؟
يحسبها لكم. من 1 إلى 16 يناير 2026 بدورة 4 عمل و4 راحة توجد 8 أيام عمل و8 أيام راحة، أي نسبة عمل 0.5، ويظهر كل تاريخ بحالته.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/biz/rotating-shift \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"start_date":"2026-01-01","end_date":"2026-01-16","on_days":4,"off_days":4}'const res = await fetch("https://api.kit.forhosting.com/biz/rotating-shift", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"start_date": "2026-01-01",
"end_date": "2026-01-16",
"on_days": 4,
"off_days": 4
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/biz/rotating-shift",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"start_date": "2026-01-01",
"end_date": "2026-01-16",
"on_days": 4,
"off_days": 4
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/biz/rotating-shift", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"start_date":"2026-01-01","end_date":"2026-01-16","on_days":4,"off_days":4}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"start_date":"2026-01-01","end_date":"2026-01-16","on_days":4,"off_days":4}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/biz/rotating-shift", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"start_date": "2026-01-01",
"end_date": "2026-01-16",
"on_days": 4,
"off_days": 4
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "biz.rotating_shift",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
تشترك أداة المتصفح المجانية وواجهة API المدفوعة مسبقًا في وحدة solve نقية واحدة، لذا فإن عيّنة 4 عمل/4 راحة التي تجتاز الاختبارات الذهبية محليًا تطابق JSON الإنتاج بعد تقريب نسبة العمل إلى ست منازل عشرية ثابتة. تفشل النطاقات غير الصالحة وأيام التقويم المستحيلة وحقول الدورة خارج المدى برمز invalid_input ولا تُفوتر أبدًا.
ما معنى دورة عمل وراحة دوّارة لعامل واحد
اليوم صفر من الدورة هو أول يوم من كتلة العمل عندما تكون cycle_offset صفرًا. لأي فهرس يوم i محسوب من start_date (أساس صفر)، يساوي day_in_cycle باقي قسمة i زائد cycle_offset على cycle_length، حيث cycle_length هو on_days زائد off_days. إذا كان ذلك الباقي أقل تمامًا من on_days فاليوم on؛ وإلا فهو off. إذن يستخدم النمط الكلاسيكي 4/4 قيمة on_days أربعة وoff_days أربعة، ودورة من ثمانية أيام، ونسبة عمل طويلة الأجل نصف. جعل off_days صفرًا يجبر كل الأيام داخل النافذة على on، وهو مفيد أحيانًا كجدول أساسي للتوافر الدائم.
عقد الإدخال وشكل الاستجابة وقواعد التحقق
يعيد حقل formula القاعدة التتابعية نصًا صريحًا لمسارات التدقيق. أرسلوا جسم JSON بطريقة POST بأربعة حقول إلزامية وحقلين اختياريين. يجب أن يكون start_date وend_date سلسلتي تقويم ميلادي حقيقيتين بصيغة YYYY-MM-DD الصارمة؛ والنطاق شامل الطرفين ويجب ألا يسبق end_date قيمة start_date. قد يمتد المدى الشامل حتى ثلاثمئة وستة وستين يومًا كحد أقصى ليبقى حجم الاستجابة محدودًا للمتصفح وعملاء API. on_days عدد صحيح موجب من واحد إلى تسعين؛ وoff_days عدد صحيح من صفر إلى تسعين. القيمة الافتراضية لـ cycle_offset هي صفر، وعند التزويد يجب أن تقع بين صفر وcycle_length ناقص واحد، حتى لا تشير مرحلة التعيين في منتصف الدورة إلى ما بعد نهايتها. worker_name تسمية اختيارية بحد أقصى مئة وعشرين حرفًا تُعاد عند النجاح إن وُجدت. تُقبل الأسماء البديلة للراحة: from أو begin لـ start_date، وto أو until لـ end_date، وwork_days لـ on_days، وrest_days لـ off_days، وoffset أو phase لـ cycle_offset، وname أو employee لـ worker_name. عند النجاح يعيد الجسم التواريخ ومعاملات الدورة المطبّعة، وpattern كسلسلة قصيرة مثل four-on slash four-off، وtotal_days وdays_on وdays_off وwork_ratio مقربة half-up إلى ست منازل، ومصفوفة roster من كائنات بكل من date وday_in_cycle وstatus on أو off، مع مصفوفتي on_dates وoff_dates المتوازيتين للتصفية السريعة. تفشل التواريخ المستحيلة مثل الحادي والثلاثين من أبريل، والمدى السالب، والمدى فوق الحد الأقصى، وon_days الصفري أو غير الصحيح، وcycle_offset المساوي أو الأكبر من cycle_length برمز invalid_input مع تسمية الحقل؛ ولا تستهلك تلك الإخفاقات الرصيد المدفوع مسبقًا. تسعير الاستدعاءات الناجحة مبلغ ثابت $0.002 بوحدة item. ولأن الخوارزمية لا تلمس ساعة المضيف ولا الشبكة ولا مولّدات العشوائية، تعطي المدخلات ذاتها دائمًا JSON الجدول نفسه في الأداة المجانية وعلى Worker.
أين تثبت توسعة الجدول الدوّار قيمتها
يحتاج مشرفو المواقع الذين يخططون لشهر 4 عمل/4 راحة قائمة سريعة بأي تواريخ التقويم يعمل فيها فني قبل نشر لوحة الإعلانات. تستفيد صفحات المحتوى وتحسين محركات البحث التي تستهدف مخطط ورديات دوّارة أو جدول 4/4 من حاسبة مجانية حية تطابق مخرجاتها بايتًا بايت مسار الأتمتة المدفوع على المكتبة المشتركة. فضّلوا هذه القدرة عندما يكون السؤال توسعة دورة صرفة لشخص واحد؛ أما عدالة الأطقم المتعددة وقواعد النقابات ومزيج المهارات وتقويمات الإجازات فتحتاج منتج إدارة قوى عاملة أشمل. فشل التحقق مجاني، فيستطيع العملاء الاستكشافيون اختبار إزاحات غير صالحة وتواريخ خاطئة بأمان. يمكن لتدفقات التعيين في الموارد البشرية تمرير تاريخ التعيين كـ start_date مع cycle_offset غير صفري ليلتحق الموظف الجديد بالتناوب القائم في منتصف الدورة بدل إعادة البدء من اليوم صفر. تعدّ معالجات الرواتب المسبقة days_on داخل فترة دفع للتحقق من الأيام العادية المتوقعة قبل قواعد العمل الإضافي. تقارن محاكيات التوظيف work_ratio عبر أنماط مرشحة—2/2 مقابل 4/4 مقابل 5/2—دون كتابة نصوص مخصصة في كل مرة. تدمج فرق التكامل واجهة API في أدوات داخلية حتى لا يعيد المخططون كتابة الجداول التتابعية يدويًا. أبقوا الطلبات ضمن سقف الثلاثمئة وستة وستين يومًا؛ وللتخطيط متعدد السنوات استدعوا نقطة النهاية مرة لكل نافذة سنوية واربطوا النتائج من جهة العميل.
حالات التكامل
لوحات إعلان شهرية بنمط 4/4
وسّعوا دورة كلاسيكية 4-on/4-off عبر شهر تقويمي وانشروا قائمة on_dates لفني واحد دون بناء جدول يدويًا.
محاذاة التعيين في منتصف الدورة
اضبطوا cycle_offset بحيث يلتحق أول يوم للموظف الجديد بطور التناوب القائم بدل إعادة ضبط النمط إلى اليوم صفر.
فحوص مسبقة لعدّ أيام الرواتب
عدّوا days_on داخل نافذة دفع لعامل دوّار وقارنوا الأيام العادية المتوقعة قبل قواعد العمل الإضافي أو البدلات.
أسئلة تقنية
كيف أنشئ جدول 4 عمل/4 راحة؟
أرسلوا start_date وend_date بصيغة YYYY-MM-DD وon_days 4 وoff_days 4. يضع cycle_offset الاختياري اليوم الأول في منتصف الدورة. تعيد API جدولًا يوميًا بحالة status on أو off.
ماذا تعني cycle_offset؟
هي طور الدورة عند start_date من 0 حتى cycle_length-1. الصفر يعني أن start_date أول يوم من كتلة العمل. استخدموا إزاحة غير صفرية عندما تبدأ النافذة في منتصف التناوب.
كم تكلفة مخطط الورديات الدوّارة؟
أداة المتصفح مجانية. تستخدم طلبات API رصيد KIT المدفوع مسبقًا بمبلغ $0.002 لكل استدعاء ناجح؛ والإدخال غير الصالح لا يُفوتر.