Files
Scoreboard/README.md
T
AskaEth 6483acf9ad feat: 人员年龄/号码布、图片上传、多显示器菜单、Console 两栏、exe 改名等一批改动
人员与报名:
- 人员唯一标识改为「证件号 或 号码布」二选一(0013/0014 迁移 + 导入匹配/回填/冲突)
- 人员新增「年龄」(0015 迁移):表单/列表/导入模板表头 11 列;冲突比较只在两边
  都有值且不同时才算差异,旧数据不误报
- 冲突决策键改为「证件号优先 → 号码布」(前端原先只用 idCard,号码布行会互相覆盖)
- 报名选择器支持无证件号但有号码布的运动员

大屏与 Console:
- 大屏控制新增「显示器」菜单:可给指定显示器重建全屏窗口;单屏/主显示器强制窗口化,
  限制在 Console 侧判定,不信任页面传参
- Console 服务管理窗口改左右两栏,运行日志独占右栏满高;窗口默认尺寸 1280×860
- 大屏右上角时钟精确到秒(同时把刷新间隔 15s 改为 1s)

图片与配置:
- 新增图片上传 POST /api/uploads(recorder+,png/jpg/webp/gif,≤5MiB)与匿名静态
  访问 GET /uploads/{name}(防目录穿越);文件落赛事项目目录 uploads/,随赛事包
  一起导出/导入
- 「赛事信息」新增赛事会标 / 大屏会标 / 大屏背景图三个上传项
- 参赛单位 logo 输入框右侧加上传按钮

关于页与构建:
- 构建时间打通:version.BuildTime + /api/system/about 返回 + build.bat 注入
  (用 PowerShell 取时间戳,避免本地化 %DATE% 的非 ASCII 星期)

安装包:
- 主程序改名 Scoreboard_Console.exe(win.executableName;productName/显示名不变)
- 记住上次安装目录:自定义 NSIS 宏优先沿用自存路径(卸载不清除),并在 customInit
  里补写回 electron-builder 的键,避免安装模式页把 $INSTDIR 打回默认

自检:服务端 12 包全绿;前端 vue-tsc + build 通过、node --test 58/58;console 12 文件通过。
2026-09-10 09:05:06 +08:00

47 lines
2.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Scoreboard · 赛事积分榜系统
一套局域网内部署的赛事成绩与积分系统:**一个服务端 + 两个界面**,后台一改数据,前台大屏实时跟着变。
| 界面 | 地址 | 用途 |
| --- | --- | --- |
| 实时积分大屏 | `/display` | 只读、无人值守;成绩发布后 1 秒内更新 |
| 管理面板 | `/admin` | 录入、发布成绩,控制大屏;未登录可只读查看全部赛事数据 |
## 功能概览
- **四个榜**:总积分榜、团体奖牌榜、个人积分奖牌榜、分项成绩表
- **录入即上屏**:成绩录入 → 发布 → 大屏即时更新
- **可追溯、可撤销**:草稿不上屏;发布后纠错走「撤销发布 → 改 → 重新发布」,全程留痕
- **变更历史**:仿 Git 图谱,一眼看清成绩是怎么变成现在这样的
- **现场公开**:积分明细可下钻,争议时一键推送到大屏
- **规则可配置**:积分规则以规则包(YAML)描述,可导入导出、跨赛事复用
- **赛事独立存档**:每个赛事一个独立项目目录,可整包导出/导入
- **结果导出**:Excel 总表与分项可单独导出
## 快速开始
1. 解压部署包
2. 双击 `Scoreboard_Console.exe`(现场推荐:守护服务端、把大屏投到扩展屏、防熄屏、开机自启)
3. 浏览器打开终端提示的地址
```
大屏 http://<主机IP>:19540/display
管理面板 http://<主机IP>:19540/admin
```
> 也可以直接双击 `scoreboard.exe`(Linux 下执行 `./scoreboard`)只跑服务端,大屏投放与进程守护需自行接管。
>
> 完全离线运行,不依赖外网,不需要安装任何运行时。
## 文档
- [上线检查清单](./docs/上线检查清单.md):比赛当天照着走一遍的核对表(含交付物、目标机、首次启动、规则包导入、大屏、备份与回退)
- [部署指南](./docs/部署指南.md):运行环境、安装与首次启动、端口与配置、大屏接线、备份恢复、故障排查
- [使用手册](./docs/使用手册.md):角色权限、各功能页面的操作步骤、大屏端使用、常见操作问题
- [常见问题(FAQ)](./docs/常见问题.md):账号、成绩与积分、大屏、数据备份、导出导入
- 规则包格式:见 [rules/README.md](./rules/README.md)
## 许可证
MIT