父节点
1c8d318106
当前提交
ccf2a79ab0
@ -0,0 +1,40 @@
|
|||||||
|
---
|
||||||
|
date: 2026-05-08
|
||||||
|
type: backend-fix
|
||||||
|
module: hl-mp-service/message
|
||||||
|
priority: low
|
||||||
|
notify: ["@mmg"]
|
||||||
|
status: tested-passed
|
||||||
|
restart_service: hl-mp-service
|
||||||
|
gitea_pr: 1862
|
||||||
|
gitea_issue: [1857]
|
||||||
|
---
|
||||||
|
|
||||||
|
# /mp/message/summary 接口排序稳定化
|
||||||
|
|
||||||
|
## 现象
|
||||||
|
|
||||||
|
小程序消息中心首页消息分类汇总接口 `GET /mp/message/summary` 返回的分类列表偶发出现顺序不一致,同一账号多次调用同一份数据,前端展示的分类顺序会跳变。
|
||||||
|
|
||||||
|
## 根因
|
||||||
|
|
||||||
|
Service 层查询 message_category 时只按 `sort_order ASC` 排序,当多条记录 `sort_order` 相同时,MySQL 不保证返回顺序稳定 → 不同次查询可能返回不同顺序。
|
||||||
|
|
||||||
|
修复方式:加二级排序 `id ASC` 作为 tie-breaker,保证同 `sort_order` 内顺序稳定。
|
||||||
|
|
||||||
|
## 前端可见变化
|
||||||
|
|
||||||
|
**API 路径/响应结构/字段/类型完全不变**,前端无需任何改动。
|
||||||
|
|
||||||
|
行为变化(更可预期):
|
||||||
|
- 改前:同 `sort_order` 的分类顺序可能跳变
|
||||||
|
- 改后:稳定按 `sort_order ASC, id ASC` 返回
|
||||||
|
|
||||||
|
## 重启服务
|
||||||
|
|
||||||
|
测试服已部署:`hl-mp-service`(PR #1862 合 dev → deploy panel)。
|
||||||
|
|
||||||
|
## 关联
|
||||||
|
|
||||||
|
- Closes wx/HL #1857
|
||||||
|
- PR #1862
|
||||||
正在加载...
x
在新工单中引用
屏蔽一个用户