2.3 KiB
2.3 KiB
消息中心首期闭环
操作时间:2026-09-12 23:50(北京时间) 操作类型:新增、扩展 影响模块:用户消息 API、消息已读回执、用户端消息中心
操作前状态
个人中心消息按钮仅弹出“暂未开放”,仓库没有用户消息表、查询接口、已读状态和独立页面。产品设计图30要求安全、订单、服务、公告总览,分类筛选、未读状态、全部已读和对象跳转。
具体操作
- 新增
user_message_read,只保存本人对稳定消息键的已读回执;消息标题和正文继续由订单、工单及已发布公告事实生成。 - 新增
GET /heqi/client/v1/user/messages和PUT /heqi/client/v1/user/messages/read。查询按当前令牌账号限制订单和工单;公告仅取启用且已发布记录。写入前重新生成本人可见键集合,拒绝任意或他人对象。 - 新增
/messages页面和个人中心真实入口,完成四类总览、全部/未读/安全/订单/服务筛选、单条已读、全部已读及订单、工单、公告跳转。 - 安全告警当前没有权威事件表,真实账号显示“暂无消息”,不构造演示报警。通知偏好入口跳转设置页;设置页继续将尚无服务端能力的项目标为“暂未开放”。
- 通过增量迁移在远程数据库创建
dev_usage_stat与user_message_read,包含表级、字段级中文注释及必要索引;未写入虚构计量或消息数据。
验证结果
- Go 用户端逻辑及路由测试通过。
- Flutter 消息中心两项测试通过,覆盖分类渲染、未读筛选和真实仓储已读动作。
- 320、360、390、430宽度与1.0、1.3文字比例共八组视觉测试通过。
- 内置浏览器读取远程账号:6条订单、4条服务、9条公告消息;点击第一条进入本人商城订单详情,返回后订单未读由6降为5;订单筛选只保留订单消息。
- 对照图:30_并排对照.png。
风险与剩余项
消息是业务快照的当前状态,不是每次状态迁移的历史事件;后续接入 Outbox/Worker 后需改为不可变事件消息。安全告警无权威用户事件接口,首期仍显示真实空状态。通知偏好服务端及严格1:1验收尚未完成,因此图30判为部分实现。