From ccf2a79ab0f7a9506f348509e49ff342eb1cbcd4 Mon Sep 17 00:00:00 2001 From: API Changelog Bot Date: Fri, 8 May 2026 11:24:40 +0800 Subject: [PATCH] =?UTF-8?q?fix(mp):=20/mp/message/summary=20=E6=8E=92?= =?UTF-8?q?=E5=BA=8F=E7=A8=B3=E5=AE=9A=E5=8C=96=20(PR=20#1862,=20Closes=20?= =?UTF-8?q?#1857)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../08_fix_mp_message_summary_sort_stable.md | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 changelogs/2026-05/08_fix_mp_message_summary_sort_stable.md diff --git a/changelogs/2026-05/08_fix_mp_message_summary_sort_stable.md b/changelogs/2026-05/08_fix_mp_message_summary_sort_stable.md new file mode 100644 index 0000000..7bfe8f7 --- /dev/null +++ b/changelogs/2026-05/08_fix_mp_message_summary_sort_stable.md @@ -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