hl-api-changelog/changelogs/2026-04/2026-04-20_order-v2_mp-travel-memory-rating.md
yaosutu c9cd0ca886 changelog(order-v2): C 端我的旅行回忆 travel-memory 接口 + 评分字段
- 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>
2026-04-21 17:19:35 +08:00

124 行
4.0 KiB
Markdown

此文件含有模棱两可的 Unicode 字符

此文件含有可能会与其他字符混淆的 Unicode 字符。 如果您是想特意这样的,可以安全地忽略该警告。 使用 Escape 按钮显示他们。

# C端「我的旅行回忆」接入评分 — 2026-04-20
> **服务** hl-order-service-v2端口 8094+ hl-user-service端口 8081· **类型** feat · **关联** Issue #1011 / PR #1014
> **依赖变更** 延续 PR #1004 的 `GET /mp/order/travel-memory`,本期补评分字段
---
## 一、现有接口字段新增(无路径/参数变更)
### ✏️ `GET /mp/order/travel-memory` — 我的旅行回忆
**请求参数**:不变(`page` / `pageSize`)。
**`MpTravelMemoryVO` 新增 2 个字段**
| 字段 | 类型 | 必有 | 说明 |
| --- | --- | --- | --- |
| `rating` | `Integer` | 否 | 整体满意度评分1-5,**未评价或评价服务降级时为 null** |
| `reviewId` | `Long` | 否 | 评价 ID,**未评价或评价服务降级时为 null** |
**原有字段保持不变**`orderId` · `productName` · `productCoverUrl` · `departureDate` · `returnDate` · `tripDays` · `tripNights` · `reviewed`
**响应示例**(已评价 + 未评价混合):
```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
}
}
```
### 降级行为
评价服务hl-user-service不可用时,本接口走 Fallback
- `records` 正常返回(订单基础字段齐全)
- 所有订单的 `rating``reviewId` 均为 null
- HTTP 200,`code=200`,不抛异常
---
## 二、新增内部接口(服务间,前端无需关心)
### 🆕 `GET /internal/review/orders/summaries` — 批量订单评价摘要
> 仅供 `hl-order-service-v2` 通过 Feign 调用 `hl-user-service`。网关未暴露,前端不调用。
**请求参数**
| 参数 | 位置 | 类型 | 必填 | 约束 | 说明 |
| --- | --- | --- | --- | --- | --- |
| `orderIds` | Query | `String` | ✅ | 逗号分隔,≤200 | 订单 ID 列表 |
**返回值** `Result<List<InternalOrderReviewSummaryVO>>`
| 字段 | 类型 | 说明 |
| --- | --- | --- |
| `orderId` | `Long` | 订单 ID |
| `reviewId` | `Long` | 评价 ID |
| `ratingOverall` | `Integer` | 整体满意度评分1-5 |
| `ratingAvg` | `BigDecimal` | 综合评分各维度算术平均,1 位小数) |
| `ratingLevel` | `String` | 评价等级GOOD/MEDIUM/BAD |
| `content` | `String` | 评价正文 |
| `hasImage` | `Boolean` | 是否含图片 |
| `status` | `String` | 评价状态(字典 `review_status`PENDING_MODERATION/APPROVED/REJECTED 等) |
| `createdAt` | `LocalDateTime` | 评价创建时间 |
**查询语义**:仅返回 `target_type='PRODUCT'` 的评价;**未评价的 orderId 不出现在返回列表中**;不过滤 `status`(包括待审核/被拒)。
---
## 三、数据库变更
**无**。评价数据已存在 `order_review` 表。
---
## 四、错误码
HTTP 始终返回 200,错误码在 `Result.code` 中。
| code | 触发 | 说明 |
| --- | --- | --- |
| 200 | 正常 | 成功(评价服务降级时 code 也是 200,rating/reviewId 为 null |
| 400 | `orderIds` 超过 200 | 批量接口校验(`BusinessException` |
---
## 五、关联
- Issue: [wx/HL#1011](https://git.1814.love:8443/wx/HL/issues/1011)
- PR: [wx/HL#1014](https://git.1814.love:8443/wx/HL/pulls/1014)(已合并到 dev
- 前置:[2026-04-20_order-v2_mp-travel-memory.md](./2026-04-20_order-v2_mp-travel-memory.md)PR #1004