UGOMK 操作手冊
08 章 / 共 13

命名時段(高級餐廳 / 限時用餐)

命名時段是給高級餐廳有翻桌邏輯的店家用的進階訂位機制。可以設定:

  • 離散時間點(不等間距,如 11:30 / 11:50 / 12:10)
  • 限時用餐時段(如 17:20–19:20 限時 2 小時)
  • 三套規則自動切換:平日 / 假日(六日)/ 特殊節日(春節 / 情人節 / 母親節等)
  • 每時段組數上限(避免出餐尖峰塞車)
  • 特殊額外時段(跟主時段重疊的補充時段)

設定後,顧客 LIFF 訂位頁會自動依當日是平日 / 假日 / 特殊節日切換對應時段,並顯示「17:20–19:20」格式 + 「特」標籤。

何時要用

- 高級餐廳:客人會吃 1.5–2 小時、需要嚴格控翻桌 - 火鍋 / 燒烤:每位廚師同時只能應付 N 桌 - 平日/假日有不同營業策略 - 節慶(情人節 / 母親節 / 平安夜)想跑特別時段 一般小吃 / 咖啡店不需要用這個機制,用「訂位設定 → 訂位 → 訂位時段間隔」加「營業時間」就足夠。

三種模式

模式 mode觸發條件
weekday週一至週五
weekend週六、週日
holiday日期落在「特殊節日」清單裡

切換優先序:holiday > weekend > weekday

某 mode 沒設任何時段 → 自動 fallback 回原本「等差時段 + 營業時間」邏輯(不影響沒用此功能的客戶)。

設定特殊節日

特殊節日列表可在 admin 自助維護:

進入路徑

後台左側 餐飲訂位 → 訂位設定 → 公休/特殊

操作

頁面頂端有一個橙色區塊 特殊節日(套用節日時段規則)

  1. 點選日期 → 點 + 加入 → 該日就會出現在橙色 chip 列表
  2. 不要的日期 → 點 chip 上的 × 移除
  3. 改完按右下 儲存 → 立即生效

每年初前要更新

春節 是農曆,每年國曆日期不同(小年夜到初五約 5–6 天)。 七夕 是農曆 7/7。 母親節 是 5 月第二個週日。 平安夜 是固定 12/24。 建議每年 12 月底就把下一年的特殊節日全部加進去,避免漏掉。

示範餐廳範例

2027/02/05 ~ 2027/02/10  春節 (小年夜~初五)
2027/02/14               情人節
2027/05/10               母親節(5/二週日)
2027/07/06 ~ 2027/07/07  七夕
2027/12/24               平安夜

顧客訂位頁體驗

設定完成後,顧客(或店員)開 LIFF 訂位頁選日期時:

平日(離散時間點)

3 欄小格按鈕,按一下顯示時間:

11:30  11:50  12:10
12:30  12:50  13:00

假日 / 節日(命名時段)

2 欄大格按鈕,按一下顯示完整時段:

午餐
17:20–19:20    19:30–21:30

晚餐
17:50–19:50 [特]   18:30–20:30 [特]
  • 橙色「」chip = 跟主時段重疊的補充時段(給特殊客或加開組數時用)
  • meal_period 自動分組(午餐 / 晚餐)

限時用餐自動帶入

顧客選命名時段送出訂位時,系統會把 用餐時長(meal_duration_minutes)自動算成 end_time − start_time。POS 端「訂位 → 入座」會根據此時長決定何時釋出桌位給下一組。

容量與額滿邏輯

每個時段有獨立 capacity(預設 5 組)+ guests_per_group(預設 2 人/組)。

  • 該時段已有 5 組訂位 → LIFF 該按鈕變灰色 + 刪除線
  • 預設不會跨時段共享容量(17:20–19:20 跟 17:50–19:50 是兩個獨立的 5 組池)
  • 若要讓多個相近時段共用一個合計上限(例如午餐 11:30 / 11:45 / 12:00 加起來只收 17 組),用下方「容量群組」功能

後端擋超賣需要開啟「群組容量模式」

2026-07-15 起,公開端(LIFF / 線上訂位)送單時後端可以再驗一次容量:命名時段已達上限直接回「該時段已額滿」,不會因為兩人同時搶最後一個位而雙雙成立。(容量 = 0 視為不限。) 這道守門需要在「[訂位設定 → 訂位 → 基本 → 群組容量模式](./06-settings.md#群組容量模式per-store-開關預設關)」開啟才生效(預設關閉)。未開啟時,顧客端仍會把額滿時段標為「額滿 · 可候補」,但送出當下不會再擋一次。後台人工訂位一律不受此守門影響。

為什麼特殊時段是「另外開放」

示範餐廳規則:主時段 5 組已滿時,店家想對 VIP / 熟客「加開 5 組特殊時段」消化額外客流。這是商業策略而非硬性桌位數限制,所以容量獨立計算。 如果你的店家是嚴格「總桌位數共享」,建議只設主時段、不要設特殊時段。

設定時段(自助管理)

後台左側 餐飲訂位 → 訂位設定 → 命名時段 分頁。

操作流程

  1. 進「命名時段」分頁
  2. 切換子 tab 選 weekday / weekend / holiday 三種模式
  3. + 加時段 新增一列;填欄位:

- 分段 — 午餐 / 晚餐 / 不分(顯示分組用) - 開始 — 必填,時間選擇器(見下方說明) - 結束(選填) — 留空 = 離散時間點;填了 = 命名時段限時用餐 - 容量 — 該時段最多接幾組 - 計算 — 組數 / 人數(見下方 capacity_mode) - 容量群組 — 留空 = 該時段獨立算;要跟其他時段共用一個合計上限就填一樣的字串(見下方 容量群組) - 特殊 — 勾起來會在 LIFF 顯示橙色「特」chip + 容量獨立計算 - 顯示文字 — 留空自動帶(離散用 HH:MM、命名用 HH:MM-HH:MM);要客製化才填

  1. ▲▼ 按鈕調順序
  2. 刪除 移除單列

時間怎麼選(2026-08-13 調整)

開始 / 結束時間都是時、分兩個下拉選單

  • 24 小時制:時的選項是 0023,不會出現「下午 01:00」這種要自己換算的寫法。
  • 每 5 分鐘一格:分的選項是 00 / 05 / 10 … 55。原本是 10 分鐘一格,實際排時段不夠細,改為 5 分。

舊資料不會被偷偷改掉

若既有時段的分鐘不在格點上(例如舊資料 11:45),該值一樣會列在下拉選單裡。否則只是想改別欄位,這一欄會被下拉「吸」到最接近的格點,等於在您不知情的情況下改掉營業時段
之所以不用瀏覽器內建的時間輸入框,是因為顯示 12 或 24 小時制是由瀏覽器語系決定的,網頁無法強制。中文環境的 Chrome 會顯示「下午 01:00」,而餐廳排時段講的是「13:00」,設 17:20–19:20 這種限時時段特別容易設錯。
  1. 改完按底部 儲存 [模式] 時段(每個 mode 獨立儲存)

多分店店家

統一用左上角當前門市切換器(2026-06-13 改版後拿掉了頁面內的「分店」下拉,全模組對齊 POS 一致行為)。 切到分店 A → 命名時段列表只顯示 A 的;切到分店 B → 看 B 的。儲存只會寫進當前門市,不會誤覆蓋其他店。

容量計算方式(capacity_mode)

新增時段時可選擇「容量」要算組數還是人數

  • 組數(預設):例 capacity = 5 代表此時段最多接 5 組;每組人數另由 guests_per_group 或顧客在 LIFF 自填。
  • 人數:例 capacity = 20 代表此時段最多接 20 人;顧客 LIFF 選 4 人 → 該時段剩 16 人額度。

「高級餐廳嚴控翻桌 = 組數」「自助餐 / 包場 = 人數」依商業模式選。

容量群組(capacity_group)

容量群組需開啟後端開關才生效

容量群組的合計守門邏輯需在後台「訂位設定 → 訂位 → 群組容量模式」開啟 group_capacity_mode預設關閉)才會啟用。未開啟時,即使設了 capacity_group 字串,後端仍以每個時段獨立計算容量(不跨時段合計),相當於容量群組設定無效。

有些餐廳的午餐開放好幾個離散進場時間(11:30 / 11:45 / 12:00),但廚房 / 外場其實只有一個總容納量,不希望每個時間點各自算一份。這時用「容量群組」把它們綁在一起共用合計上限:

設定方式:把要合併算的時段,「容量群組」欄位填成同一個字串(例如 wd-lunch),且每一列的容量都填同一個數字(例如都填 17)。

行為

  • 系統把同群組所有時段的訂位加總算,達到合計上限 → 整組時段在 LIFF 一起變灰額滿
  • 例:wd-lunch 群組容量 17,11:30 已收 10 組、11:45 已收 7 組 → 合計 17 已滿,12:00 也一起關閉。
  • 「計算」(組數 / 人數)沿用各時段設定,群組內請保持一致。

留白 = 該時段自己一組(維持原本每時段獨立算的行為),既有店家不填就完全不變。

何時用群組 vs 獨立

- 同一餐期多個進場時間、共用總量 → 用容量群組(填同字串 + 同容量) - 主時段 + 加開特殊時段(VIP 加位) → 不要填群組、勾「特殊」讓它獨立算

示範餐廳 中山店 / 站前店範例:平日午餐 11:30 / 11:45 / 12:00 → 群組 wd-lunch、容量各 17;晚餐 17:30 / 19:30 各自獨立(留白)、容量各 17。假日則 11:00 / 11:20 → hd-a、13:10 / 13:30 → hd-b、17:00 / 17:20 → hd-c、19:10 / 19:30 → hd-d,每組容量 17。

沒設時段的 mode 會 fallback

某 mode 沒任何時段 → 該模式 fallback 回原本「等差時段 + 營業時間」邏輯。例如只設 weekday 命名時段,假日就自動走「營業時間」分頁的設定。

從其他模式複製

切到任一 mode tab(譬如「假日」)後,右上角有 「從其他模式複製」 按鈕,避免重新一筆筆建:

  1. 來源模式選 平日(或其他)
  2. 餐期選 全部 / 只午餐 / 只晚餐
  3. 套用方式選:

- 保留現有並加進來(append)— 安全,target 既有不動 - 整個覆蓋(replace, 紅字警告)— 會 DELETE target 全 slots 再重灌

  1. 「預覽結果」 → 看 dry-run(將新增 N 筆 / 刪除 M 筆 + 前 10 筆預覽)
  2. 「確認複製」 → 完成 toast「已複製 N 筆」
提示:示範餐廳範例:平日設了午晚餐命名時段,假日想沿用平日午餐 → 切假日分頁 → 複製 → 來源平日、餐期只午餐、append。

特殊日期專屬時段(升級版「公休/特殊 → 自訂時段」)

每個特殊日期可獨立設「該日專屬命名時段」,不需要全部走 holiday mode 共用設定。

進入路徑

後台左側 餐飲訂位 → 訂位設定 → 公休/特殊 → 加日期 type 選 「自訂時段」

兩格式並存

格式內容適用
舊格式(簡單)開始-結束時間(如 11:30~14:30)該日只想設「臨時改營業時段」走等差時段邏輯
新格式(命名時段)label / start_time / end_time / capacity / capacity_mode / is_special / meal_period 完整欄位該日想跑「節日限定套餐」「限時 2hr」等獨立規則

舊格式 row 旁有「」chip 提示,且整個區塊有 「命名時段」 按鈕可一鍵轉新格式(label/capacity 空白讓你補)。

從其他模式複製

新格式 row 設好後可按 「從其他模式複製」(每個特殊日期 row 內有自己的按鈕),從 weekday / weekend / holiday mode 複製 slots 進來:

  1. 來源模式 + 餐期 + append/replace(同命名時段分頁邏輯)
  2. 預覽 → 套用(push 進該特殊日期的 slots,需按底部儲存

優先級

特殊日期 type='custom' + slots override 任何 mode 命名時段(包含 holiday mode)。設計本意是「臨時改該日營業時段」一定優先。

條件走哪條
holiday type='closed'整天公休
holiday type='force_closed'線上不訂位 + 自訂訊息
holiday type='custom' + 新格式 slots該日專屬命名時段(mode='holiday_custom')
holiday type='custom' + 舊格式 slots該日 fallback 等差時段(向後相容)
該日在「特殊節日清單」+ holiday mode 有命名時段holiday mode 命名時段
週六日 + weekend mode 命名時段weekend mode
週一~五 + weekday mode 命名時段weekday mode
都沒business_hours 該星期幾切等差

常見問題

Q1 設了命名時段,但顧客看到還是舊的等差時段

請檢查:

  1. 進「訂位設定 → 命名時段」確認對應分店 + 對應 mode 有列表(沒有的話請按 + 加時段 補上 + 儲存
  2. 重新整理 LIFF 頁面
  3. 該日期是否真的觸發了對應 mode(六日 → weekend;special_dates → holiday)

Q2 平日想用命名時段、假日想 fallback 等差時段

只灌 weekday mode 的 slots,weekend / holiday 留空。後端會:

  • 平日 → 用命名時段
  • 假日 → fallback 等差(依「營業時間」分頁的週六/週日設定)

Q3 想針對單一分店設不同時段(多分店租戶)

用 admin 左上角「當前門市」切換器切到目標分店 → 進「訂位設定 → 命名時段」加 / 改時段 → 儲存。每間店的命名時段獨立存(store_id 欄位 namespace),切到別店看不到。不用手動灌資料。

Q4 顧客 LIFF 已訂的時段如何釋出桌位

店員後台「訂位 → 該訂位」按「入座」開始計時,到達 meal_duration_minutes 後系統自動把桌位狀態釋出(命名時段算 end - start;離散時段用 settings 預設 90 分鐘)。

其他問題協助

若遇本說明未涵蓋的問題,請透過後台右下角 LINE 客服 @ugomk 聯繫真人專員協助處理。