คําจํากัดความของพารามิเตอร์
ตามที่ระบุไว้ในคำจำกัดความของ Availability
ดังนี้
party_size
: จำนวนผู้เข้าร่วมที่รองรับในช่วงเวลานี้ ร้านอาหารหนึ่งๆ สามารถเชื่อมโยงกับช่วงเวลาหลายช่วงเวลาพร้อมกัน โดยแต่ละช่วงเวลาจะระบุparty_size
ที่แตกต่างกัน เช่น รองรับการจองสำหรับ 2, 3 หรือ 4 คนspots_open
: จำนวนตำแหน่งที่พร้อมให้บริการสำหรับข้อมูลความพร้อมให้บริการนี้spots_total
: จำนวนช่องทั้งหมดที่ผู้ขายมีสำหรับการกำหนดค่านี้ (รวมถึงช่องที่ใช้งานไม่ได้)
พารามิเตอร์ทั้ง 3 รายการนี้ทำงานร่วมกันเพื่อสร้างภาพแผนผังชั้นในรูปแบบดิจิทัล 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 } } ] }
ตัวอย่างผังห้องที่มีการจอง
ทีนี้สมมติว่ามีการจองโต๊ะกลม 1 ตัว
ค่าของ 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
ให้สอดคล้องกับข้อมูลนี้ได้
สมมติว่าร้านอาหารสามารถรวมโต๊ะเล็ก 2 ตัวเข้าด้วยกันเพื่อให้รองรับกลุ่มคน 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 คนซึ่งรวมโต๊ะเล็ก 2 ตัวเข้าด้วยกันโดยใช้ผังเดียวกัน
ค่าของ 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 |