تعريفات المَعلمات
على النحو الموضح في تعريف
Availability
:
party_size
: عدد الأشخاص الذين يمكن اصطحابهم خلال هذه الفترة الزمنية يمكن ربط مطعم بعدة خانات في الوقت نفسه، على أن يحدِّد كلّ منها سمةparty_size
مختلفة، إذا كان من الممكن على سبيل المثال جلوس شخصين أو 3 أو 4 أشخاص لإجراء حجز.spots_open
: عدد الأماكن المتاحة حاليًا لإدخال مدى التوفّر هذاspots_total
: إجمالي عدد المواضع التي تتوفّر لدى التاجر لهذه الإعدادات (بما في ذلك المواضع غير المتاحة)
تعمل هذه المَعلمات الثلاث معًا لإنشاء تمثيل رقمي لمخطط المبنى. تمثّل السمة party_size
عدد الأشخاص الذين يمكن أن يتسع كل جدول لهم (سيتم توفير إدخال لكل مقاس يمكن أن يتّسع له الطاولة). spots_open
وspots_total
هما يمثّلان عدد الجداول التي يمكن أن تستوعب party_size
ذلك.
مثال على مخطط مبنى فارغ
تخيَّل مطعمًا بمخطط المبنى التالي وليس به حجوزات نشطة:
ستكون قيم party_size
وspots_open
وspots_total
على النحو التالي:
party_size | spots_open | spots_total |
---|---|---|
4 | 3 | 3 |
5 | 3 | 3 |
6 | 4 | 4 |
7 | 1 | 1 |
8 | 1 | 1 |
تظهر خلاصة مدى التوفّر لفترة زمنية واحدة لدى هذا التاجر:
JSON
{ "availability": [ { "spots_total": 3, "spots_open": 3, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 4 } }, { "spots_total": 3, "spots_open": 3, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 5 } }, { "spots_total": 4, "spots_open": 4, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 6 } }, { "spots_total": 1, "spots_open": 1, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 7 } }, { "spots_total": 1, "spots_open": 1, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 8 } } ] }
مثال على مخطط مبنى مع حجز
تخيل الآن أن أحد الطاولات المستديرة تم حجزها:
ستكون قيم party_size
وspots_open
وspots_total
الآن:
party_size | spots_open | spots_total |
---|---|---|
4 | 2 | 3 |
5 | 2 | 3 |
6 | 3 | 4 |
7 | 1 | 1 |
8 | 1 | 1 |
JSON
{ "availability": [ { "spots_total": 3, "spots_open": 2, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 4 } }, { "spots_total": 3, "spots_open": 2, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 5 } }, { "spots_total": 4, "spots_open": 3, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 6 } }, { "spots_total": 1, "spots_open": 1, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 7 } }, { "spots_total": 1, "spots_open": 1, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 8 } } ] }
تحديد توفر تناول الطعام مع دعم الجداول المجمّعة
هناك العديد من الطرق التي يمكن من خلالها للمطعم دمج الطاولات لدعم المجموعات
الأكبر حجمًا. ومن المتوقّع أن تحدّد السمتَين spots_open
وspots_total
في خلاصاتك بطريقة تعكس بدقة ما إذا كان بإمكانك قبول مجموعات ذات حجم معيّن. ما يلي هو أحد الأمثلة على كيفية تحديد دمج الجداول.
قد تختلف خلاصاتك إلى حدّ ما في طريقة إجراء هذه العملية الحسابية، ومن
المقبول تحديد spots_open
وspots_total
بطريقة تتوافق مع منطق نشاطك التجاري.
إذا كان المطعم يتيح دمج الطاولات لتشكيل مجموعة أكبر، يمكنك
تعديل spots_open
وspots_total
لتعكس ذلك.
لنفترض أنّ أحد المطاعم يمكنه دمج طاولتين صغيرتين للجلوس مجموعة مكونة من 7 إلى 10 أشخاص.
في حال عدم توفّر حجوزات نشطة، تكون قيم party_size
وspots_open
وspots_total
هي:
party_size | spots_open | spots_total |
---|---|---|
4 | 3 | 3 |
5 | 3 | 3 |
6 | 4 | 4 |
7 | 1 | 1 |
8 | 1 | 1 |
9 | 1 | 1 |
10 | 1 | 1 |
والآن، وباستخدام مخطط الطابق نفسه، يتم إجراء حجز لحفلة مكونة من 10 أشخاص تجمع بين طاولتين صغيرتين.
بعد ذلك، تصبح قيم party_size
وspots_open
وspots_total
هي:
party_size | spots_open | spots_total |
---|---|---|
4 | 1 | 3 |
5 | 1 | 3 |
6 | 2 | 4 |
7 | 1 | 1 |
8 | 1 | 1 |
9 | 0 | 1 |
10 | 0 | 1 |