55 lines
2.5 KiB
Markdown
55 lines
2.5 KiB
Markdown
# 个人客户站内通知
|
||
|
||
为个人客户增加通知入口,支持查询通知、查看未读数以及标记已读。进入首页时自动查询未读通知并弹窗展示;多条通知使用左右滑动查看,弹窗打开时第一条自动标记已读,滑动查看其他通知时立即标记对应通知已读。弹窗支持关闭。所有接口均需要登录,使用 `Bearer Token` 鉴权。
|
||
|
||
## 查询通知列表
|
||
|
||
`GET /api/c/v1/notifications`
|
||
|
||
查询当前客户可见的未过期业务通知,按创建时间和通知 ID 倒序排列。
|
||
|
||
| 参数 | 必填 | 说明 |
|
||
| --- | --- | --- |
|
||
| `page` | 否 | 页码,默认 1,范围 1~10000 |
|
||
| `page_size` | 否 | 每页数量,默认 20,范围 1~50 |
|
||
| `is_read` | 否 | 已读状态;`false` 仅查询未读,`true` 仅查询已读,不传时查询全部 |
|
||
|
||
返回:包含通知列表 `items`、当前页 `page`、每页数量 `size` 和总数 `total`。通知项包含标题、正文、类型、类别、级别、关联资源、已读状态及创建/已读时间。
|
||
|
||
## 标记单条通知已读
|
||
|
||
`PUT /api/c/v1/notifications/{id}/read`
|
||
|
||
将当前客户可见的指定通知标记为已读。通知不存在、属于其他客户或已经已读时,也返回成功,接口幂等。
|
||
|
||
返回:`{ "success": true }`
|
||
|
||
## 全部标记已读
|
||
|
||
`PUT /api/c/v1/notifications/read-all`
|
||
|
||
将当前客户可见的未过期未读业务通知全部标记为已读,重复调用幂等。
|
||
|
||
返回:`{ "updated_count": 3 }`
|
||
|
||
## 查询未读数
|
||
|
||
`GET /api/c/v1/notifications/unread-count`
|
||
|
||
查询当前客户未过期业务通知的未读数量;平台同步和系统运维通知不计入结果。
|
||
|
||
返回:`{ "count": 3, "display_count": "3" }`,数量超过 99 时 `display_count` 为 `99+`。
|
||
|
||
## 首页未读通知弹窗
|
||
|
||
- 用户进入首页后,调用 `GET /api/c/v1/notifications`,传入 `is_read=false`、`page=1`、`page_size=50`,只展示当前未读通知。
|
||
- 有多条未读通知时默认展示第一条,弹窗打开后立即调用单条已读接口标记第一条。
|
||
- 用户左右滑动切换到其他通知时,视为已查看并立即调用单条已读接口标记当前通知。
|
||
- 点击关闭图标只关闭弹窗,不会将未查看的其他通知批量标记为已读;下次进入首页仍可继续展示剩余未读通知。
|
||
- 通知的 `ref_type`、`ref_id`、`ref_key` 仅用于资源定位或展示,不直接拼接页面路由。
|
||
|
||
## 通用约定
|
||
|
||
- 所有接口均使用 `Bearer Token` 鉴权。
|
||
- 未登录、参数错误、无权访问和服务异常沿用统一错误响应。
|