fix(mp): /mp/message/summary 排序稳定化 (PR #1862, Closes #1857)

这个提交包含在:
API Changelog Bot 2026-05-08 11:24:40 +08:00
父节点 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