4.0 KiB
4.0 KiB
新功能需求文档
1. 增加新功能
- 1.1 站内信
1.1 站内信
(1) 入口
- 位置
- 在 App/小程序的 “我的”页面 → 功能区,新增站内信入口 【我的消息】。
- 红点提示
- 当存在未读消息时,入口 icon 右上角显示 红色圆点(数量可扩展为数字气泡)。
- 进入站内信页面后,红点消失(默认已读所有消息)。
(2) 详情页(站内信列表页)
2.1 页面结构
- 顶部导航栏:
- 左侧返回按钮(返回上一级页面)
- 中间标题文字:“我的消息”
- 右侧占位元素(保持左右对称布局)
- Tab 分类栏:
- 位于标题下方,支持切换 “全部” 与 “私信” 两类消息。
- 当前选中 Tab 高亮显示(背景色
#C4FFDF、文字色#00AC4E、边框色#00AC4E),未选中 Tab 为白底黑字灰框。
- 分割线:Tab 分类栏下方有一条 1rpx 高的浅灰色分割线。
- 消息列表区域:
- 占满剩余屏幕高度,支持纵向滚动。
- 列表为空时显示缺省提示(后期可补充)。
2.2 消息列表排序
- 所有通知按 最近时间倒序 排列(最新发布的消息排在最前)。
2.3 单条消息展示字段
每条消息以 圆角白色卡片 形式呈现,包含以下信息:
- 标题
- 字体大小 32rpx,靠左显示,距左边距 30rpx,顶部间距 22rpx。
- 正文
- 字体大小 32rpx(实际可根据视觉稿调整为 28rpx 以提升可读性),靠左显示,距左边距 30rpx,与标题间距 10rpx。
- 正文支持长文本:
- 若内容超出卡片宽度,自动换行。
- 若内容高度超出卡片可视范围,卡片高度自动延伸或内部可滚动查看(确保完整显示)。
- 通知时间
- 字体大小 32rpx(建议实际用 24–28rpx),靠右显示,右外边距 18rpx,底部边距 10rpx,与正文之间保留适当间距(如 70rpx 或由内容自适应)。
- 时间格式示例:
2025/01/01 11:12(后期统一规范为YYYY-MM-DD HH:mm)。
2.4 默认已读逻辑
- 用户 进入站内信列表页 时,系统自动将所有消息标记为已读:
- 前端调用接口将当前用户所有未读消息状态更新为已读。
- 同时更新入口红点状态为无未读。
(3) 通知发送(后台功能,前端配合展示)
3.1 后台配置能力
- 管理员可在后台配置通知的发送规则与内容。
- 通知分为 自动发送 与 手动发送 两类。
3.2 自动发送
- 定义固定的触发条件和消息模板。触发条件满足时,系统自动向目标用户推送通知。
- 已知自动发送场景(可扩展):
- 组局成功时:所有参与人收到相应通知。
- 组局失败时:所有参与人收到相应通知。
- ……(待补充其他业务事件,如活动开始提醒、订单状态变更等)
3.3 手动发送
- 管理员可手动选择:
- 单个或多个指定用户:发送相同内容的自定义通知。
- 全部用户:发送相同内容的自定义通知。
- 通知内容完全由发送者自定义(标题、正文)。
3.4 前端展示区分(可扩展)
- 若业务需要,可在消息列表中通过标签或图标区分 系统自动通知 与 私信/人工通知。
- Tab “私信” 仅展示手动发送给指定用户的消息,“全部” 则展示所有类型。
(4) 数据来源与交互
- 前端通过接口获取消息列表,按 Tab 分类请求不同类型数据。
- 切换 Tab 时重新拉取对应分类消息并渲染。
- 列表数据字段至少包括:
id(唯一标识)title(标题)content(正文)time(通知时间)isRead(是否已读,用于标记样式或逻辑)type(可选,用于区分自动/手动或私信/系统)