- GET /mp/order/travel-memory 接口首发 (PR #1004 / Issue #1002) - MpTravelMemoryVO 补 rating + reviewId 字段 (PR #1014 / Issue #1011) - 对应原型 wwWKT 行程 Tab·回头客 本地已有两份完整 changelog 但此前未推送,本次一并推送远程。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
4.1 KiB
4.1 KiB
C端「我的旅行回忆」接口新增 — 2026-04-20
服务 hl-order-service-v2(端口 8094)· 类型 feat · 关联 Issue #1002 / PR #1004 前端调用路径: 网关(8080) → hl-mp-service(8085) → hl-order-service-v2(8094) 前端实际请求前缀:
GET /mp/order/travel-memory(mp-service 需同步新增 BFF 转发层)
一、新增接口(1 个)
🆕 GET /mp/order/travel-memory — 我的旅行回忆
功能:返回用户已完成订单(status=COMPLETED)分页列表,按 departure_date DESC, order_id DESC 排序。
请求参数:
| 参数 | 位置 | 类型 | 必填 | 默认值 | 约束 | 说明 |
|---|---|---|---|---|---|---|
page |
Query | Integer |
否 | 1 | ≥1 | 页码 |
pageSize |
Query | Integer |
否 | 20 | 1~100 | 每页条数 |
userId由 mp-service 从 token 中获取后透传给 order-service,前端不传。
返回值 Result<PageResult<MpTravelMemoryVO>>:
| 字段 | 类型 | 必有 | 说明 |
|---|---|---|---|
records |
List<MpTravelMemoryVO> |
✅ | 当前页数据 |
total |
Integer |
✅ | 总记录数 |
page |
Integer |
✅ | 当前页码 |
pageSize |
Integer |
✅ | 每页条数 |
MpTravelMemoryVO 字段:
| 字段 | 类型 | 必有 | 说明 |
|---|---|---|---|
orderId |
Long |
✅ | 订单 ID |
productName |
String |
✅ | 产品名称(订单快照) |
productCoverUrl |
String |
否 | 产品封面图 URL |
departureDate |
LocalDate |
✅ | 出发日期,格式 yyyy-MM-dd |
returnDate |
LocalDate |
否 | 返程日期,格式 yyyy-MM-dd(后端按 departureDate + tripDays - 1 推导) |
tripDays |
Integer |
否 | 行程天数 |
tripNights |
Integer |
否 | 行程晚数 |
reviewed |
Boolean |
✅ | 是否已评价(null 兜底为 false) |
请求示例:
GET /mp/order/travel-memory?page=1&pageSize=10
响应示例(有数据):
{
"code": 200,
"message": "操作成功",
"data": {
"records": [
{
"orderId": 2043935542092980226,
"productName": "草原环线体验·舒适套餐",
"productCoverUrl": "https://cdn.1814.love/product/cover/xxxx.png",
"departureDate": "2026-07-01",
"returnDate": "2026-07-06",
"tripDays": 6,
"tripNights": 5,
"reviewed": true
}
],
"total": 1,
"page": 1,
"pageSize": 10
}
}
响应示例(空数据):
{
"code": 200,
"message": "操作成功",
"data": {
"records": [],
"total": 0,
"page": 1,
"pageSize": 10
}
}
二、阶段 2 增量字段预告
当前响应 不含 rating(1-5 星) 和 reviewId。评分数据存 user-service 的 review 表,order-service-v2 当前无 ReviewFeignClient,跨服务 Feign 拆到阶段 2。
阶段 2 上线后将在 MpTravelMemoryVO 增量新增以下字段,不会破坏现有字段:
| 字段 | 类型 | 说明 |
|---|---|---|
rating |
Integer |
评分(1-5),未评价为 null |
reviewId |
Long |
评价记录 ID,未评价为 null |
三、mp-service BFF 层需同步新增
| 前端调用 | mp-service 转发到 |
|---|---|
GET /mp/order/travel-memory?page=&pageSize= |
GET /internal/mp/order/travel-memory?userId={token.userId}&page=&pageSize= |
mp-service 从用户 token 中提取
userId,作为查询参数透传给 order-service。page/pageSize直接透传,校验由下游PageParam负责。
四、数据库变更
无。所有字段均已存在 order_info 表。
五、错误码
HTTP 始终返回 200,错误码在 Result.code 中。
| code | 触发 | 说明 |
|---|---|---|
| 200 | 正常 | 成功 |
| 400 | page < 1 或 pageSize > 100 |
分页参数越界(PageParam 校验) |
| 401 | token 无效 | mp-service 网关层拦截 |
六、关联
- Issue: wx/HL#1002
- PR: wx/HL#1004(已合并到 dev)