爆料/挑剔 评论功能(一期)
需求PRD
需求方 |
产品经理 |
设计师 |
曾争 |
曾争 |
高源 |
版本号 |
时间 |
修改内容 |
v1.0 |
2月8日 10:08 |
需求初稿 |
v1.3 |
2月10日 15:19 |
更新了视觉稿增加细节,更新了原型交互到最终版本,增加了修改默认头像需求,调整了喜欢和点赞的样式,更新门槛提示视觉,更新push逻辑 |
v2.0 |
2月13日 11:10 |
新增风控逻辑及后台原型(3.0),新增埋点表头(4.0),增加了评论页面加载逻辑(2.1),点击原文标题逻辑修改(2.6.4.2),展开评论后该评论引用楼层加载逻辑(2.3.1) |
v2.1 |
2月13日 14:00 |
新增风控各逻辑图(3.0) |
v2.2 |
2月13日 17:45 |
评论增加刚刚状态,用于用户本地发出还未与服务端同步状态(2.2.4),调整了无评论时样式(2.1) |
v2.3 |
2月15日 9:52 |
增加了默认头像样式 |
v2.4 |
2月22日 11:17 |
增加回复我的页面回复限制准入门槛(2.6.4.3),调整准入门槛文案,去掉「对文章」三个字(2.7) |
v2.5 |
2月23日 16:30 |
修改了评论及回复发布成功交互(2.2.1) |
0. 原型
原型地址: 点击
1. 需求背景
为内容导购增加评论功能,提升用户粘性。本需求为评论一期需求。
2. 需求描述- 评论界面
2.1 评论整体界面交互

- 跳转到详情页时优先加载富文本内容,加载完毕后查询评论数量
- 详情页底部增加评论区域,评论区title为 「评论」
- 当评论数量大于0时,评论后方显示实际有效评论条数
- 当评论为空时,底部显示写评论提示,如图:

- 评论底部跟随栏增加评论入口
- 评论入口栏文案下发,默认文案为「写评论」
- 当用户点击评论,回复 后进行登陆判断,未登陆用户跳转到原生登陆页面
- 评论入口点击后弹出输入框,下图

- 输入框顶部显示输入栏,输入栏内默认文案「请输入您的评论」
- 用户输入任意内容后,默认文案消失
- 输入框根据用户填写内容自适应高度,如下图:

- 最多显示4行文字。用户可在输入框区域上下滑动查看上方文字
- 输入框中支持Emoji表情包显示
- 底部默认显示用户使用的输入法
- 键盘右下角文案修改为提交。点击提交或右上角评论按钮均可提交输入内容
- 提交完成后页面跳转到详情页并锚点到用户自己的评论(第一条)屏幕居中位置
- 用户保存在本地的评论,发布时间显示为「刚刚」
- 评论区使用异步加载的方式加载评论内容,每次加载20楼
- 评论区为原生界面,wap页不显示评论
- 爆料/挑剔 喜欢及点赞的样式调整为上下结构

- 当喜欢数量超过万位则替换为x.x万,精确到小数点后一位
2.2 评论交互
2.2.1 评论

- 评论区域显示字段:用户头像,用户昵称,点赞按钮,点赞数量,评论内容,发布时间,回复按钮
- 点击头像,昵称区域无效
- 点击评论内容区域弹出评论功能块浮层
评论发布交互
场景:用户点击发布按钮后
当用户为评论消息时:
页面回到第一条,弹出toast「发布成功」,1秒后消失
当用户为回复消息时:
停留在当前高度,弹出toast「发布成功」,1秒后消失
评论浮层

- 浮层包含 「举报」「复制」「点赞」「回复」功能
- 点击举报后退出浮层并弹出toast,文案为「感谢您提供的信息,我们会尽快处理您举报的内容」2秒或点击后消失。 //详细举报按钮逻辑见(待添加)
- 点击复制则复制该条回复内容的主体内容到用户剪切板,点击后关闭浮层并弹出toast,文案为「评论复制成功」,2秒或点击后消失
- 点击点赞,关闭浮层,并显示点赞成功动效,点赞按钮亮起,点赞功能记录用户的点赞状态,点赞可取消,点击完成后关闭浮层,弹出点赞动效。
- 点击回复则关闭浮层,底部弹出回复框。 // 详细回复逻辑见(2.3)
评论排序
评论根据发布时间从新到旧进行排序
2.2.2 点赞

- 点赞按钮显示具体点赞数量,当评论过万时显示单位为万,显示小数点后一位,采用进一法显示
- 用户点赞后会有+1效果,前后端交互同喜欢按钮,立刻生效,并记录用户点赞状态
2.2.3 昵称及头像

- 使用用户登陆时获取的昵称和头像
- 用户通过「我的」页面进行修改后,评论区域的昵称及头像同步变化
- 昵称显示限制具体昵称长度,详细长度为「待添加」,超出长度...代替
- 当用户为手机号用户时显示:189****7621
- 修改系统默认头像,新头像如下:

2.2.4 发布时间
- 发布时间为用户提交该条评论时的时间
- 显示格式为:
当用户发布本地立刻可见时显示「刚刚」
当用户发布时间小于1分钟则为 「XX秒前」
当用户发布时间大于1分钟小于60分钟则为 「XX分钟前」
当用户发布时间大于1小时小于24小时则为 「XX小时前」
当用户发布时间大于1天则为「MM-DD」
2.3 回复评论
- 每条评论底部都有回复按钮,点击回复后底部弹出输入框

- 输入框默认文案为「回复@xxxx」 xxxx=用户昵称
- 用户输入任意内容后,默认文案消失
- 输入框根据用户填写内容自适应高度,最多显示4行文字。用户可在输入框区域上下滑动查看上方文字
- 输入框中支持Emoji表情包显示
- 底部默认显示用户使用的默认输入法
- 键盘右下角文案修改为提交。点击提交或右上角评论按钮均可提交输入内容
- 提交完成后页面跳转到详情页并锚点到用户自己的评论(第一条)屏幕居中位置
- 回复的评论中包含回复楼层的信息
2.3.1 回复引用

- 用户回复他人楼层时会包含他人的评论信息。
- 他人评论信息显示字段: 昵称,具体内容
- 回复楼层内容根据内容长度进行高度自适应
- 当回复引用内容超过3楼则折叠前2条及最后一条以外的所有楼层
- 回复引用可多层嵌套。如:A回复B显示1层引用 ,C回复A显示2层引用,D回复C显示3层引用,E回复D显示3层引用,并显示「点击展开评论」按钮
- 点击点击展开评论按钮则显示所有评论的引用楼层,该楼层所有评论内容进行刷新
- 当引用楼层超过20楼时则只显示最近的20楼信息
2.4 评论删除
- 用户端无法删除评论内容
- 评论内容可通过后台进行删除
- 删除后前台显示该楼层内容为:该评论已被删除
2.4.1 删除评论
- 当评论被删除时则不显示该条评论楼层
- 当引用的评论被删除时
不显示被引用评论的用户昵称及具体内容。由「该评论已被删除」代替
多条引用中某条被删除

2.6 被回复消息通知

- 消息中心一级菜单新增 「评论」
- 评论icon:「待添加」
- 评论一级菜单显示字段: icon,红点,最后回复时间,最后一条回复内容
- 点击后跳转到「回复我的」页面
2.6.0 消息中心样式调整
- 调整消息中心每栏高度到2行文案,文案超出部分用...代替
- 替换当前消息中心icon
2.6.1 红点逻辑
- 当用户离上次访问评论列表之间该用户获得了评论则显示红点
- 消息列表及一级菜单均同步显示红点
- 当用户点击了评论一级菜单则红点消失
2.6.2 最后回复时间
- 当收到最后评论时间距离用户打开列表时间小于1分钟则为 「XX秒前」
- 当收到最后评论时间距离用户打开列表时间大于1分钟小于60分钟则为 「XX分钟前」
- 当收到最后评论时间距离用户打开列表时间大于1小时小于24小时则为 「XX小时前」
- 当收到最后评论时间距离用户打开列表时间大于1天则为「MM-DD」
2.6.3 最后一条回复内容
- 显示最后一条回复的具体内容及发布回复用户的昵称
- 具体内容显示一行超出区域...代替
- 当最后一条显示的内容被系统删除时则显示最后一条有效内容
- 当最后一条有效内容为用户已浏览过的内容则红点消失
2.6.4 回复我的页面

2.6.4.1 回复内容排序
2.6.4.2 回复内容
- 页面内容使用异步加载的方式,每次加载20条回复信息
- 回复内容显示字段:回复者头像,回复者昵称,该楼层点赞数量,该回复者引用楼层内容,该回复者回复内容,该条回复出处标题,该条回复发布时间,回复按钮,点击回复按钮浮层
- 用户可在本页面进行点赞操作
- 用户点击评论区域,回复发布时间,回复按钮交互,头像昵称交互,点赞交互,展开评论交互,删除交互,同评论逻辑(2.2.1)
- 该条回复出处标题:显示为爆料/挑剔原文标题。爆料标题为「标题」,「利益点」方式显示,超出部分省略号代替。挑剔为标题内容。
- 点击出处标题跳转到对应内容的原生详情页顶部
- 每条回复均生成一条回复feed出现在本页面。例:A,B,C分别回复了D的评论,则显示3条评论信息
2.6.4.3 回复评论限制
场景:当用户在某个新的准入门槛之前是可进行回复的用户,后因调整准入门槛后用户无法发布内容
- 当用户变更为不能发布评论的用户则弹出弹窗。弹窗文案同详情页准入门槛一致。
2.6.5 回复消息通知
push逻辑图

- 用户收到回复时对用户进行push,push模板如下:
有人回复了你的评论,点击查看>>
- 系统通知push仅在8-23点发送,当用户在其它时间收到回复,则在最近的8点对用户进行push
- 用户收到回复通知push,在未进入「回复我的」页面前,当日不再进行push。第二日正常收到push。
例:用户在11点收到了回复,系统给用户发送了一条push,该用户在11点20分又收到了回复,用户在此期间为进入过回复我的页面,则不再进行push。该用户在11点30分进入到回复我的页面,11点40分又收到了回复,则对用户再次进行push。
2.7 评论门槛

- 可评论的前置条件为:有一笔成功返利订单,包括商城,淘宝返利。
- 当不符合门槛用户点击评论时弹出弹窗:
您暂时还不能评论哦
由于评论功能正在内测中,只有部分用户可以进行评论,先看看其他人的精彩回复把~
知道了
3. 需求描述 - 反垃圾
3.0 反垃圾各逻辑图

3.1 系统关键词屏蔽
- 用户在发布内容后,先进入屏蔽词库进行过滤,过滤完成后在前台展示
- 当用户内容触发屏蔽词时,该条评论发布者可见,其他用户不可见

- 每页展示100条内容
- 屏蔽词库页内容包含:搜索,添加词,词id,屏蔽词关联数量,删除关键词操作
- 该页面可通过关键词搜索,搜索结果进行模糊匹配
- 屏蔽词库可支持删除和添加
- 关键词排序根据添加时间从新到旧排序
3.2 用户黑名单
- 被加入到用户黑名单的用户,发布内容后,黑名单可见自己评论,其他用户不可见该用户发布的评论

- 后台需提供:搜索(可通过黑名单用户昵称进行),用户ID,该用户发表评论数量,该用户最后发言时间,删除出黑名单功能,添加黑名单功能
- 当用户被删除出黑名单,则从删除出黑名单后的所有发布内容,其他用户可见
- 当用户被添加到黑名单,则用户从被拉黑开始所有内容不可见
- 黑名单用户排序根据添加时间从新到旧排序
3.3 评论删除功能
3.4 举报处理

- 后台需提供功能:搜索,评论id,评论内容,举报人昵称,发布人昵称,该评论被举报次数,该评论被最后一次举报时间,拉黑被举报用户,删除该条评论,已读,批量已读,批量删除
- 搜索:可通过举报人昵称进行模糊匹配搜索
- 评论内容:包含引用楼层,逻辑同(3.3)
- 被举报次数:统计同一条评论被举报的次数
- 举报时间:为最后一次被举报的时间
- 已读:将该条举报剔除出举报后台,不对评论进行处理
- 拉黑:将被举报人加入到黑名单
- 举报信息被操作后,不再出现在举报后台
- 评论可进行批量选择,提供一键全选本页评论功能。可进行批量已读,批量删除操作
4. 埋点

- 评论发布数量:当日共产生的评论数量(包含拉黑,已删除,关键词屏蔽 下同)
- 评论发布人数:当日发布评论的人数
- 回复次数:回复被发起的数量
- 回复我的页面点击:进入到回复我的页面的数量(show)
- 查看原文数:回复我的页面中点击查看原文的数量
- 关键词屏蔽评论数:通过屏蔽词库屏蔽的评论数量
- 删除评论数:通过后台删除的评论数量
- 拉黑用户数:当日被添加到黑名单的用户数量