4.3 KiB
4.3 KiB
07 · 管理面板设计
所属:运动会积分榜系统 · 开发文档集 版本:v0.1(讨论稿) · 2026-09-09 上游:README · 相关:02-积分与排名规则、05-接口与实时协议 使用者:裁判长、录入员、管理员。
1. 信息架构
登录
├── 仪表盘 当前赛程、待发布项目、连接状态、快捷入口
├── 成绩录入 ★ 选择项目 → 录入整组 → 预览积分 → 存草稿/发布
├── 成绩审核 草稿列表 → 对比 → 发布 / 退回
├── 破纪录 疑似破纪录列表 → 确认 → 加分
├── 积分调整 人工加减分(必填理由)
├── 积分榜 实时总分/奖牌/个人榜,含明细下钻
├── 大屏控制 切页 / 锁定 / 刷新 / 公告
├── 基础数据 单位 / 大项 / 小项 / 积分模板 / 运动员 / 报名导入
├── 导出 积分榜 / 明细 / 成绩册
├── 日志 审计日志(谁在什么时候改了什么)
└── 系统 用户管理 / 备份恢复 / 赛事信息
2. 成绩录入页(开发重点)★
布局:左侧项目列表(按大项分组、显示状态)→ 右侧录入表格。
表格列
| 道次/号码 | 单位 | 运动员/队 | 成绩输入 | 名次 | 状态 | 积分(自动) | 备注 |
|---|
关键交互
- 实时预览:每改一个格子,右侧实时显示「若现在发布,各单位积分将如何变化」(+9、-2 的差值),发布前就能看出错。
- 自动排序:填完成绩后按
result_value自动排名(时间越短越好 / 距离越远越好,按项目类型自动判断)。 - 键盘流:Tab/Enter 在格子间移动,
Ctrl+Enter保存草稿,Alt+Enter发布。录 8 个人名次不超过 30 秒。 - Excel 粘贴:支持从 Excel 复制「单位 + 成绩」两列直接粘贴。
- 防呆校验(提交前拦截):
| 校验 | 提示 |
|---|---|
| 名次重复且未标并列 | 红字警告,要求确认 |
| 成绩值与纪录差距过大(如 100 米 5.00 秒) | 提示疑似录入错误 |
| 必填项缺失(名次或状态) | 阻止发布 |
| 该项目已发布,再次提交 | 提示需先撤销发布 |
| 发布确认 | 弹窗显示「本次将影响 N 个单位,最大分差变化 X 分」 |
3. 审核与发布
- 草稿态数据绝不上屏(服务端过滤
state='published')。 - 发布是批量事务:一个项目的整组成绩一次发布,避免「发布了 3 个人、还有 5 个人没发」的中间态。
- 撤销发布:作废该组积分流水,大屏回退,全程留审计。
- 审核流开关:D4 选 A 时启用;若选 B(一级录入即上屏),本页退化为「已发布成绩列表 + 快速纠错」。
4. 大屏控制
| 功能 | 说明 |
|---|---|
| 切页 | 立即跳转到指定页面 |
| 锁定 / 解锁 | 停止自动轮播,停在当前页 |
| 强制刷新 | 让所有大屏重新拉取快照(用于排障) |
| 公告 | 推送一条滚动公告,可设时长 |
| 在线看板 | 显示每块大屏的在线状态、最后心跳时间、版本号(哪块屏掉线一眼可见) |
5. 导出
- Excel 模板预先设计好(表头、合并单元格、字体),导出即可直接打印。
- 导出内容:总积分榜、各单位积分明细、全项目成绩册。
6. 仪表盘
| 卡片 | 内容 |
|---|---|
| 当前赛程 | 今天计划进行的小项、进度(已发布 / 总数) |
| 待办 | 草稿待发布数、疑似破纪录待确认数 |
| 连接状态 | 大屏在线数 / 总数,管理端在线数 |
| 实时积分 Top 3 | 当前领先单位 |
| 快捷入口 | 「继续录入」跳回上次未完成的项目 |
7. 交互通用规范
- 危险操作二次确认:发布、撤销发布、作废成绩、删除单位。
- 不可逆操作给出后果描述:如「撤销发布将回退 5 个单位共 23 分」。
- 乐观更新 + 失败回滚:提交时按钮进入 loading,失败时明确报错并保留用户输入,不丢数据。
- 所有列表可筛选/搜索,成绩录入页默认聚焦上次编辑的项目。