成绩页面与互动实战流程
本页把成绩读取、搜索排序、单曲详情、评论互动和内容反馈串成可执行流程,补充乐曲成绩页面与乐曲成绩互动页面。
首次打开
- 确认当前账号和时间范围;
- 等待成绩索引加载;
- 先观察总数和空状态;
- 清空搜索条件;
- 打开一条已知记录;
- 验证页面显示的曲目、难度和成绩属于当前账号。
成绩页不是公共内容目录。没有游玩记录时为空是正常情况,不能因为空列表就恢复缓存或切换账号。
搜索与排序
搜索可按页面显示的曲名、编号、作者或 BPM 过滤。输入关键词后等待结果更新;清除搜索恢复完整索引。搜索结果为零时先确认索引已经加载完成,再检查编号前导零、标点和空格。
排序只改变当前页面显示顺序,不改变服务端成绩。切换排序后不要把页面第一条当作最新记录,除非当前排序明确按时间。
成绩字段阅读
常见字段包括:
- 难度;
- 游玩次数;
- 达成率;
- 连击状态;
- 同步状态;
- 最高分;
- 评级或 Rating;
- 互动数量。
数值的单位以页面说明为准。达成率可能是服务放大值,页面会先转换成百分比;不要在导出或 API 客户端中重复换算。
单曲展开
打开单曲详情后可能按需加载互动、评论和反馈。加载失败只影响详情区域,不应清空整个成绩列表。关闭再打开可以触发重新读取,但不要连续点击同一曲目。
点赞/点踩
点击后按钮进入处理中。成功时以服务返回的互动摘要刷新计数;失败时保留原计数和消息。响应超时先重新读取,不要连续点击造成反向或重复动作。
如果页面同时显示当前用户状态,切换动作前确认当前状态;不要把“再次点击”当作撤销,除非页面明确这样定义。
评论和回复
发表评论前写清楚曲目、难度和问题,不要粘贴完整日志或私人聊天。回复时确认父评论仍然存在且输入框下方显示正确的目标。
提交期间:
- 禁用发送按钮;
- 保留正文草稿;
- 只提交一次;
- 成功后从服务返回对象更新;
- 失败后检查权限、长度和 Token。
重复评论通常来自响应延迟,不要通过再次发送来确认。
删除评论
只删除本人有权限的评论。二次确认显示目标评论的脱敏摘要。删除超时后刷新评论树;如果评论已经消失,按已删除处理,不要再次提交。
内容反馈
反馈适合说明资源缺失、难度详情错误、显示异常和可复现问题。格式建议:
曲目编号:<ID>
难度:<LEVEL>
现象:<非敏感描述>
出现时间:<含时区>
版本/分支:<脱敏>
复现步骤:
1. <步骤>
2. <步骤>提交成功不等于已处理。页面可能显示待处理、已通过、已拒绝或可见性决定。反馈期间不要重复提交同一理由。
审核账号流程
有审核权限的账号才会看到审核列表或决定按钮。处理前:
- 读取最新审核对象;
- 确认曲目和反馈理由;
- 只选择页面提供的决定;
- 写简短、非敏感备注;
- 提交一次;
- 回读审核状态和历史。
审核决定不能通过普通账号测试。审核备注不要包含内部地址、凭据或原始聊天记录。
空数据排查
| 现象 | 先检查 |
|---|---|
| 整页为空 | 账号、Token、索引和时间范围 |
| 搜索为空 | 索引是否完成、关键词格式 |
| 单曲无详情 | 详情文件/版本/权限 |
| 评论为空 | 是否加载互动、曲目是否有评论 |
| 互动计数不变 | 是否回读、是否权限不足 |
| 反馈不显示 | 当前状态、筛选和审核范围 |
隐私检查
成绩记录可能包含用户名称、地点、伙伴、对手和游玩时间。分享截图前遮盖这些信息;公开反馈只提供曲目编号、错误现象和时间。不要把成绩备份发送到公开群组。
完整验收
- [ ] 清空搜索后列表可加载;
- [ ] 排序不会改变服务数据;
- [ ] 单曲详情和评论可以独立失败;
- [ ] 点赞/点踩提交中锁定;
- [ ] 评论正文非空且长度受限;
- [ ] 删除有确认且超时会回读;
- [ ] 反馈状态不混淆提交和处理;
- [ ] 审核字段按权限隐藏;
- [ ] 账号切换后旧成绩不残留;
- [ ] 日志无 Token、评论正文和完整记录。
