changelog(mp): 微信小程序 · 我的旅行回忆 travel-memory(含评分字段合并版)
GET /mp/order/travel-memory 返回 MpTravelMemoryVO 完整字段(含 rating/reviewId),小程序单接口获取 订单+评分数据。对应原型 wwWKT 行程 Tab·回头客卡片墙。 PR #1004 (Closes #1002) · PR #1014 (Closes #1011) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
这个提交包含在:
父节点
3268374447
当前提交
98bb0e4b5d
@ -0,0 +1,134 @@
|
||||
# 微信小程序 · 我的旅行回忆接口
|
||||
|
||||
**日期**:2026-04-21
|
||||
**影响**:**微信小程序** 行程 Tab·回头客态(原型 `wwWKT` 旅行回忆卡片墙)
|
||||
**PR**:#1004(Closes #1002)· #1014(Closes #1011)
|
||||
|
||||
---
|
||||
|
||||
## 概述
|
||||
|
||||
返回用户已完成订单(`status=COMPLETED`)分页列表,按 `departure_date DESC, order_id DESC` 排序。响应中已含评分信息,一次调用拿到订单+评分完整数据。
|
||||
|
||||
---
|
||||
|
||||
## 接口
|
||||
|
||||
```
|
||||
GET /mp/order/travel-memory
|
||||
```
|
||||
|
||||
**鉴权**:Bearer token(登录态)。`userId` 由后端从 token 取,前端不传。
|
||||
|
||||
### 入参
|
||||
|
||||
| 参数 | 位置 | 类型 | 必填 | 默认 | 约束 | 说明 |
|
||||
|---|---|---|---|---|---|---|
|
||||
| page | Query | Integer | 否 | 1 | ≥1 | 页码 |
|
||||
| pageSize | Query | Integer | 否 | 20 | 1~100 | 每页条数 |
|
||||
|
||||
### 请求示例
|
||||
|
||||
```
|
||||
GET /mp/order/travel-memory?page=1&pageSize=10
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 出参 `Result<PageResult<MpTravelMemoryVO>>`
|
||||
|
||||
**`PageResult`**:
|
||||
| 字段 | 类型 | 说明 |
|
||||
|---|---|---|
|
||||
| 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) |
|
||||
| rating | Integer | 否 | 整体评分 1-5;**未评价或评价服务降级时为 null** |
|
||||
| reviewId | Long | 否 | 评价ID;**未评价或评价服务降级时为 null** |
|
||||
|
||||
### 响应示例(已评价 + 未评价混合)
|
||||
|
||||
```json
|
||||
{
|
||||
"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,
|
||||
"rating": 5,
|
||||
"reviewId": 6001
|
||||
},
|
||||
{
|
||||
"orderId": 2043935542092980211,
|
||||
"productName": "呼伦贝尔深度游·豪华版",
|
||||
"productCoverUrl": "https://cdn.1814.love/product/cover/yyyy.png",
|
||||
"departureDate": "2026-05-15",
|
||||
"returnDate": "2026-05-20",
|
||||
"tripDays": 6,
|
||||
"tripNights": 5,
|
||||
"reviewed": false,
|
||||
"rating": null,
|
||||
"reviewId": null
|
||||
}
|
||||
],
|
||||
"total": 2,
|
||||
"page": 1,
|
||||
"pageSize": 10
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### 响应示例(空数据)
|
||||
|
||||
```json
|
||||
{
|
||||
"code": 200,
|
||||
"message": "操作成功",
|
||||
"data": {
|
||||
"records": [],
|
||||
"total": 0,
|
||||
"page": 1,
|
||||
"pageSize": 10
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 边界行为
|
||||
|
||||
- **未登录**:401(网关层拦截)
|
||||
- **分页参数越界**(`page < 1` 或 `pageSize > 100`):400
|
||||
- **评价服务降级**:接口仍 200 返回订单数据,`rating` / `reviewId` 统一为 null
|
||||
- **未完成订单**:不返回(仅 `status=COMPLETED` 进入列表)
|
||||
|
||||
---
|
||||
|
||||
## 错误码
|
||||
|
||||
| code | 触发 |
|
||||
|---|---|
|
||||
| 200 | 正常(评价服务降级时 code 也是 200,rating/reviewId 为 null)|
|
||||
| 400 | 分页参数越界 |
|
||||
| 401 | token 无效 |
|
||||
正在加载...
x
在新工单中引用
屏蔽一个用户