[FIX] 修正與標準化 B005 廣告下載 API 以相容既有 Android App
All checks were successful
star-cloud-deploy-demo / deploy-demo (push) Successful in 1m7s

1. 修改 MachineController@getAdvertisements 回傳欄位,將 t070v02 改為播放秒數,t070v03 改為位置代碼 (Flag)。
2. 根據 Android App 原始碼分析結果,調整位置對應:3 為待機廣告 (HomeActivity),1 為販賣頁廣告 (FontendActivity)。
3. 在 AdvertisementController@getMachineAds 增加 sort_order 排序,確保後台管理介面視圖與 API 輸出順序一致。
4. 更新廣告下載 API 的技術文件 (SKILL.md),明確標記欄位用途與位置代碼。
5. 在 routes/api.php 補上 B005 與 B009 的路由定義。
This commit is contained in:
2026-04-07 11:41:24 +08:00
parent bbdc5bad9f
commit b60afc3abe
5 changed files with 166 additions and 11 deletions

View File

@@ -88,10 +88,57 @@ description: 本技能規範定義了 Star Cloud 系統中所有機台 (IoT) 與
---
### 3.3 B017: 貨道與庫存同步 (規劃中)
### 3.3 B017: 貨道與庫存同步
- **URL**: `POST /api/v1/app/machine/reload_msg/B017`
- 說明:當機台收到 B010 回應 `status: 49` 時,呼叫此 API 同步最新貨道佈局。
- **說明**:當機台收到 B010 回應 `status: 49` 時,呼叫此 API 獲取雲端最新貨道佈局與庫存設定
### 3.4 B600: 交易數據回傳 (規劃中)
---
### 3.4 B005: 廣告清單同步
用於機台端獲取目前應播放的廣告檔案 URL 清單。
- **URL**: `POST /api/v1/app/machine/ad/B005`
- **Request Body:** (無須額外 Body 參數,僅需傳送空 JSON `{}`)
- **Response Body:**
| 參數 | 類型 | 說明 | 範例 |
| :--- | :--- | :--- | :--- |
| `success` | Boolean | 請求是否成功 | `true` |
| `data` | Array | 廣告物件陣列 | `[{"t070v04": "https://..."}]` |
**data 陣列內部欄位:**
- `t070v01`: 廣告名稱 (Name)
- `t070v02`: 播放長度 (Duration) — 秒數,若後台未設定,預設為 15 秒。
- `t070v03`: 廣告位置 (Position/Flag) — (`3`: 待機廣告, `1`: 販賣頁, `2`: 來店禮)。
- `t070v04`: 廣告 URL。
- `t070v05`: 播放順位 (Sort Order)。
---
### 3.5 B009: 貨道庫存即時回報 (Supplementary Report)
當維修或補貨人員在機台端完成操作後,將目前的貨道實體狀態同步回雲端。
- **URL**: `PUT /api/v1/app/products/supplementary/B009`
- **Request Body:**
| 參數 | 類型 | 必填 | 說明 | 範例 |
| :--- | :--- | :--- | :--- | :--- |
| `account` | String | 是 | 操作人員帳號 | `technician_01` |
| `vmcType` | String | 否 | VMC 韌體/機型類別 | `XinYuan` |
| `data` | Array | 貨道數據陣列 | `[{"tid":"1", "t060v00":"SKU001", "num":"10"}]` |
- **data 陣列內部欄位:**
- `tid`: 貨道編號 (Slot No)
- `t060v00`: 商品編碼 (SKU / Product Code)
- `num`: 實體剩餘庫存數量
- **Response Body:**
| 參數 | 類型 | 說明 | 範例 |
| :--- | :--- | :--- | :--- |
| `success` | Boolean | 同步是否成功 | `true` |
| `status` | String | 固定回傳 `49` 代表已處理 | `49` |
---
### 3.6 B600: 交易數據回傳 (規劃中)
- **URL**: `POST /api/v1/app/B600`
- 說明:交易完成後提交支付方式、金額、商品與出貨結果。