hl-api-changelog/changelogs/2026-04/2026-04-21_mp-order-supplies-checklist.md
yaosutu 34621d845b changelog(mp): 微信小程序 · 订单行李推荐接口
GET /mp/order/{orderId}/supplies-checklist

按分类分组返回订单备品清单 + 装备建议富文本,对应原型 zgNiD 行李推荐弹窗。

PR #1042 (Closes #1041)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-21 16:34:43 +08:00

3.3 KiB

微信小程序 · 订单行李推荐接口

日期:2026-04-21 影响:微信小程序 订单详情行李推荐弹窗(原型 zgNiD) PR:#1042(Closes #1041)


概述

订单详情页"行李推荐"弹窗独立查询接口。从产品快照中解析备品清单,按分类分组返回,附装备建议富文本。

C 端展示已去除成本字段(hasCost / unitPrice),后端已过滤掉成本项(hasCost=true),仅返回给用户看的推荐行李。


接口

GET /mp/order/{orderId}/supplies-checklist

鉴权:Bearer token。 缓存:5 分钟。

入参

参数 位置 类型 必填
orderId Path Long

出参 Result<MpSuppliesChecklistRespVO>

字段 类型 说明
orderId Long 订单ID
categories List<MpSuppliesCategoryVO> 备品清单(按分类分组;空列表表示无推荐)
equipmentAdvice String 装备建议富文本 HTML(可能为 null)

MpSuppliesCategoryVO:

字段 类型 说明
category String 分类名,如 衣物 / 配件 / 药品
items List<MpSuppliesItemVO> 该分类下的备品列表

MpSuppliesItemVO:

字段 类型 说明
suppliesName String 备品名称,如 冲锋衣
category String 分类(冗余,便于扁平化处理)
quantity Integer 数量
billingType String PER_PERSON(按人数)/ PER_QUANTITY(按数量)
sortOrder Integer 排序(升序)

响应示例

{
  "code": 200,
  "message": "成功",
  "data": {
    "orderId": 20439,
    "categories": [
      {
        "category": "衣物",
        "items": [
          {"suppliesName":"冲锋衣","category":"衣物","quantity":1,"billingType":"PER_PERSON","sortOrder":1},
          {"suppliesName":"保暖内衣","category":"衣物","quantity":1,"billingType":"PER_PERSON","sortOrder":2}
        ]
      },
      {
        "category": "配件",
        "items": [
          {"suppliesName":"防晒霜","category":"配件","quantity":1,"billingType":"PER_QUANTITY","sortOrder":1},
          {"suppliesName":"墨镜","category":"配件","quantity":1,"billingType":"PER_PERSON","sortOrder":2}
        ]
      }
    ],
    "equipmentAdvice": "<p>呼伦贝尔 7 月早晚温差大,建议携带薄款冲锋衣。防晒需求高,墨镜 + 防晒霜必备。</p>"
  },
  "success": true
}

边界行为

  • 订单不存在或无权限:500,messageorderId
  • 产品快照无备品配置:categories=[],equipmentAdvice=null
  • 所有备品都是成本项:categories=[](已过滤)

数据来源

字段从订单绑定产品的产品快照中解析得到,下单时刻的备品清单锁定,后续产品端备品变动不影响已下单订单。


关联字段(其他接口)

订单详情 GET /mp/order/{orderId} 的返回 VO(MpOrderDetailVO)本身也带 suppliesequipmentAdvice 字段,用于整单数据一次读取场景。本独立接口专用于弹窗按需拉取。

接口 字段 说明
GET /mp/order/{orderId} supplies: List<OrderSuppliesVO> 订单备品(扁平列表,不分组)
GET /mp/order/{orderId} equipmentAdvice: String 装备建议富文本
GET /mp/order/{orderId}/supplies-checklist 见上文 按分类分组 + 装备建议,弹窗专用