# 訂單推送說明（測試參考）

**最後更新**: 2026-06-25
**用途**: 列出訂單流程中所有會觸發推送的場景，供測試驗證。

> 本文推送文案以**繁體中文**展示。實際推送時文案會跟隨接收人的語言設置自動切換（支援 簡中 / 越南語 / 英文 / 繁中），但下方表格統一以繁中舉例。

---

## 一、推送基本說明

- 每條推送會出現在**兩個地方**：① 手機通知欄（僅 iOS）；② App 內「消息中心」列表（iOS / Android 都有）。
- **Android 手機沒有通知欄推送**（暫未接入 Android 推送通道），只能在 App 內消息列表看到。
- 推送語言**跟隨接收人的語言設置**（簡中 / 越南語 / 英文 / 繁中），同一場景不同語言賬號看到的文案不同。
- 正文中的 `{訂單號}` 是實際訂單編號，會替換成真實號碼。

---

## 二、推送場景

| # | 觸發操作 | 推送對象 | 標題 | 通知正文（繁中示例） |
|---|----------|----------|------|---------------------|
| 1 | 用戶下單成功 | 商家 | 消息 | 有新訂單,NO:{訂單號} |
| 2a | 貨到付款下單成功 | 商家 | 消息 | 有新訂單 |
| 2b | 貨到付款下單成功 | 附近騎手 | 消息 | 有新訂單 |
| 3a | 商家點擊「出餐」 | 用戶 | 消息 | 商家已經出餐,訂單號:,NO:{訂單號} |
| 3b | 商家點擊「出餐」 | 騎手 | 消息 | 商家已經出餐,訂單號:,NO:{訂單號} |
| 4a | 騎手點擊「接單」 | 用戶 | 消息 | 騎手已接單,NO:{訂單號} |
| 4a′ | 騎手點擊「接單」 | 商家 | 消息 | 騎手已接單,NO:{訂單號} |
| 4b | 騎手點擊「取餐」（開始配送） | 用戶 | 消息 | 騎手配送中,NO:{訂單號} |
| 4c | 騎手點擊「送達」 | 用戶 | 消息 | 騎手已送達,NO:{訂單號} |
| 5a | 平台後台把訂單改為「騎手已接單」 | 用戶 | 消息 | 騎手已接單,NO:{訂單號} |
| 5a′ | 平台後台把訂單改為「騎手已接單」 | 商家 | 消息 | 騎手已接單,NO:{訂單號} |
| 5b | 平台後台把訂單改為「配送中」 | 用戶 | 消息 | 騎手配送中,NO:{訂單號} |
| 5c | 平台後台把訂單改為「已送達」 | 用戶 | 消息 | 騎手已送達,NO:{訂單號} |

> 說明：場景 4 是騎手在騎手端 App 操作；場景 5 是平台後台人工改訂單狀態。兩者推送的文案一樣。

---

## 三、推送文案對照（繁中）

| 場景 / 含義 | 繁體中文（zh_TW） |
|-------------|------------------|
| 標題（所有推送通用） | 消息 |
| 有新訂單 | 有新訂單 |
| 商家已經出餐 | 商家已經出餐,訂單號: |
| 騎手已接單 | 騎手已接單 |
| 騎手配送中 | 騎手配送中 |
| 騎手已送達 | 騎手已送達 |

---

## 四、測試驗證要點

每個場景觸發後，按接收人登錄對應端（用戶 App / 商家端 / 騎手端）檢查：

1. **iOS**：通知欄收到推送 + App 內消息列表有新記錄。
2. **Android**：App 內消息列表有新記錄（通知欄**不會**有，屬正常）。
3. **文案**：標題和正文與上表一致；正文末尾的訂單號與實際訂單一致。
4. **多語言**：把接收賬號切到不同語言，文案應隨之變成對應語言。
5. **接收人**：確認只有「推送對象」列裡的人收到，其他人不收到。

---

## 五、已知現狀（測試時知悉即可，不算 Bug）

- **貨到付款下單（場景 2）的通知不帶訂單號**：商家 / 騎手通知欄只看到「有新訂單」，看不到具體訂單號（點擊進 App 仍可看到訂單詳情）。
- **商家出餐文案略冗餘**：顯示為 `商家已經出餐,訂單號:,NO:123`（冒號和逗號連在一起），現狀如此。
- **暫不存在的推送**（本次不在範圍，測試時不用驗證）：取消訂單、退款、超時無騎手、抽成返還、自動恢復營業等通知，以及 Android 通知欄推送。
