建立預訂服務的供應情形資料結構

參數定義

Availability 定義所述:

  • party_size:在此時段可接待的用餐人數。餐廳可以同時與多個時段建立關聯,這些時段可分別指定不同的 party_size (例如預訂可接受 2 人、3 人或 4 人入座)。
  • spots_open:這個可用性項目目前可用的空缺數量
  • spots_total:商家針對此設定 (包括無法使用的設定) 擁有的廣告位總數

這三個參數會共同建構平面圖的數位表示法。party_size 是每張桌子可容納的人數 (每張桌子可容納的人數都會有一個項目)。spots_openspots_total 分別代表可容納該 party_size 的資料表數量。

空白平面圖範例

假設餐廳有以下平面圖,且沒有任何有效預訂:

圖 1:沒有有效預訂的平面圖
圖 1:沒有有效預訂的平面圖

party_sizespots_openspots_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
          }
        }
      ]
}

含有預訂資訊的平面圖範例

假設其中一個圓桌已被預訂:

圖 2:含有一個有效預訂的平面圖
圖 2:含有一個有效預訂的平面圖

party_sizespots_openspots_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_openspots_total,以便準確反映您是否可以接受特定大小的派對。以下是如何指定合併資料表的範例。動態饋給的計算方式可能會有些許不同,您可以根據自己的業務邏輯指定 spots_openspots_total

如果餐廳支援合併座位,以便安排較大的聚會,您可以更新 spots_openspots_total 來反映這項資訊。

假設餐廳可以合併兩張小桌,以便讓 7 到 10 人的小型聚會入座。

圖 3:沒有有效預訂的平面圖
圖 3:沒有有效預訂的平面圖

如果沒有有效的預訂,party_sizespots_openspots_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 人的聚會預訂兩張小桌子。

圖 4:有一個有效預訂跨越兩張桌子的平面圖
圖 4:平面圖,其中一個有效預訂跨越兩張桌子

接著,party_sizespots_openspots_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