liuyun 35028a69d2
Some checks are pending
CI / backend (push) Waiting to run
CI / frontend (push) Waiting to run
docs(spec): 归档 in-app-notification + 同步通知主 spec
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-11 22:26:15 +08:00

1.3 KiB
Raw Blame History

Why

缺少站内通知/公告:管理员发布的通知用户无处查看,也没有未读提示。需要一个最小闭环的站内通知能力——管理员发公告,用户顶栏铃铛看未读、读后标记。投递用轮询(简单、fork 友好),范围仅站内(不接邮件/短信)。

What Changes

  • 新增 notice(通知/公告)与 notice_read(已读追踪)实体。
  • 后端 notices 模块:管理侧 CRUD(notice:* 权限)+ 用户侧 mine/unread-count/read/read-all(仅登录态)。
  • 前端:通知管理页 + 顶栏铃铛(未读角标 + 列表 + 标记已读),未读数轮询刷新。

Capabilities

New Capabilities

  • backend/notice: 站内通知域——公告管理 + 用户已读/未读。
  • frontend/AD/notice: 通知管理页 + 顶栏通知铃铛 + 轮询。

Modified Capabilities

  • shared/data-model: 新增 notice、notice_read 实体。
  • shared/api-contract: 新增通知接口目录(管理 CRUD + 用户 mine/unread-count/read/read-all)。

Impact

  • 后端:新增 notices 模块;Prisma(sys_notice、sys_notice_read);tenant-template(notice 菜单 + 接口资源)。
  • 前端:api/notice.ts、通知管理页、ty-header 铃铛 + 未读 store + 轮询定时器。
  • 数据:Prisma migration(两张新表)。