# C端「行李推荐弹窗」独立接口 — 2026-04-20 > **服务** hl-order-service-v2(端口 8094) + hl-mp-service(端口 8085)· **类型** feat · **关联** PR #1041 / #1042 > **前端调用路径**: 网关(8080) → hl-mp-service(8085) → hl-order-service-v2(8094) --- ## 一、新增接口(1 个) ### 🆕 `GET /mp/order/{orderId}/supplies-checklist` — 订单备品清单(行李推荐弹窗) **功能**:对应小程序订单详情原型 `zgNiD` 行李推荐弹窗。从 `order_info.product_snapshot` 解析 `supplies`(按 `category` 分组,排除 `hasCost=true` 的成本项)+ `supplement.equipmentAdvice`(装备建议富文本)。 **请求参数**: | 参数 | 位置 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | --- | | `orderId` | Path | `Long` | ✅ | 订单ID | > `userId` 由 mp-service 从 token 中获取后透传给 order-service,前端不传。 **返回值** `Result`: | 字段 | 类型 | 必有 | 说明 | | --- | --- | --- | --- | | `orderId` | `Long` | ✅ | 订单 ID | | `categories` | `List` | ✅ | 备品清单按分类分组(无推荐时为空列表) | | `equipmentAdvice` | `String` | 否 | 装备建议富文本(HTML,快照无值时为 null) | **`MpSuppliesCategoryVO`**: | 字段 | 类型 | 说明 | | --- | --- | --- | | `category` | `String` | 分类名(如"衣物"、"配件") | | `items` | `List` | 该分类下的备品列表 | **`MpSuppliesItemVO`**: | 字段 | 类型 | 说明 | | --- | --- | --- | | `suppliesName` | `String` | 备品名称(如"防晒霜") | | `category` | `String` | 分类(与父级同) | | `quantity` | `Integer` | 数量 | | `billingType` | `String` | 计费方式(`PER_PERSON`=按人 / `PER_QUANTITY`=按件) | | `sortOrder` | `Integer` | 排序 | > ⚠️ 相比管理端 `OrderSuppliesVO`,C 端 VO 已去除 `hasCost`、`unitPrice` 等成本字段。 **请求示例**: ``` GET /mp/order/2043935542092980226/supplies-checklist ``` **响应示例**: ```json { "code": 200, "message": "操作成功", "data": { "orderId": 2043935542092980226, "categories": [ { "category": "衣物", "items": [ { "suppliesName": "冲锋衣", "category": "衣物", "quantity": 1, "billingType": "PER_PERSON", "sortOrder": 1 }, { "suppliesName": "速干裤", "category": "衣物", "quantity": 2, "billingType": "PER_PERSON", "sortOrder": 2 } ] }, { "category": "配件", "items": [ { "suppliesName": "防晒霜", "category": "配件", "quantity": 1, "billingType": "PER_QUANTITY", "sortOrder": 1 } ] } ], "equipmentAdvice": "

呼伦贝尔 7 月早晚温差大,建议携带薄款冲锋衣。

" } } ``` **空推荐响应示例**(快照无 supplies 与 equipmentAdvice): ```json { "code": 200, "message": "操作成功", "data": { "orderId": 2043935542092980226, "categories": [], "equipmentAdvice": null } } ``` --- ## 二、mp-service BFF 转发 | 前端调用 | mp-service 转发到 | | --- | --- | | `GET /mp/order/{orderId}/supplies-checklist` | `GET /internal/mp/order/{orderId}/supplies-checklist` | --- ## 三、数据库变更 **无**。数据来自下单时固化的 `order_info.product_snapshot`。 --- ## 四、错误码 HTTP 始终返回 200,错误码在 `Result.code` 中。 | code | 触发 | 说明 | | --- | --- | --- | | 200 | 正常 | 成功(快照缺失时 categories 为空列表,equipmentAdvice 为 null) | | 400 | 订单不存在 | `BusinessException` | --- ## 五、关联 - PR: [wx/HL#1042](https://git.1814.love:8443/wx/HL/pulls/1042) - 原型节点: `zgNiD` — 行李推荐弹窗 - 相关字段: `OrderDetailVO` 已同步新增 `supplies` / `equipmentAdvice` 字段,见 `2026-04-20_order-v2_order-detail-supplies-fields.md`