《明日方舟》冷水坑杯 #3 赛事管理系统是一个基于 Flask + SQLite/MySQL 的 Web 应用,用于管理赛事报名、队伍创建、比赛匹配、积分计算等全流程。
- ✅ 用户注册与登录(密码强度验证:8位+字母+数字)
- ✅ 四级角色:超级管理员、管理员、队长、选手
- ✅ 密码加密存储与强制修改机制
- ✅ 登录会话管理(24小时超时)
- ✅ 用户审批流程(注册→待审核→通过/拒绝)
- ✅ 新手引导系统
- ✅ 队长创建队伍
- ✅ 4人队伍结构(队长1人 + 队员3人)
- ✅ 队伍名称、口号、照片管理
- ✅ 队长邀请选手 + 选手主动申请加入(双向)
- ✅ 位置分配:冷水位、普通位①、普通位②、坑位
- ✅ 自动匹配(按肉鸽分组,同队回避)
- ✅ 比赛时间协商与确认
- ✅ 双方独立难度选择
- ✅ 比赛结果提交与自动判定
- ✅ 争议处理(管理员裁定)
- ✅ 弃权机制
- ✅ 选手间留言沟通
- ✅ 最终积分 = 原始成绩 × 难度倍率
- ✅ 难度倍率 = 1 + (难度 - 肉鸽最低难度) × 难度阶级
- ✅ 每个肉鸽独立配置难度范围与倍率
- ✅ 队伍积分 = 队员积分之和 × 加成倍率
- ✅ 积分重置与全量重算
- ✅ 动态肉鸽管理(增删改查)
- ✅ 每队人数上限控制
- ✅ 独立难度配置(最低/最高/阶级)
- ✅ 队伍排行榜(积分 > 特殊分 > 小分)
- ✅ 晋级名单管理
- ✅ 赛事结果展示(冠亚季军)
- ✅ 仪表盘(赛事统计概览)
- ✅ 用户管理(审批、角色升降级、删除)
- ✅ 队伍管理(查看、删除、积分修改)
- ✅ 比赛管理(结果修改、审核、成绩日志)
- ✅ 肉鸽管理(动态增删改查)
- ✅ 轮播图管理(数据库驱动,支持图片/视频)
- ✅ 积分配置(胜负平积分、加成倍率)
- ✅ 报名控制(开放/关闭)
- ✅ 赛事流程控制(报名→匹配→比赛→结束)
- ✅ Excel 报名表导出
- ✅ 操作审计日志(SystemLog)
- ✅ Bootstrap 5 响应式设计
- ✅ 深色主题(明日方舟风格)
- ✅ 轮播图组件(淡入淡出 + 触摸滑动)
- ✅ PC 端 + 移动端适配
- ✅ Font Awesome 图标库
- Python 3.10+
- pip 包管理器
- (可选)MySQL 8 用于生产环境
# 方式一:使用 run.py(自动安装依赖)
python run.py
# 方式二:手动安装依赖后启动
pip install -r requirements.txt
python app.py应用将在 http://localhost:19198 启动
系统首次启动时自动创建:
| 用户名 | 密码 | 角色 |
|---|---|---|
admin |
admin123 |
管理员 |
sahu |
(见部署文档) | 超级管理员 |
⚠️ 重要: 管理员首次登录必须修改密码!密码要求至少8位,包含字母和数字。
├── app.py # 单文件后端(配置/模型/表单/路由/工厂)
├── run.py # 启动脚本(自动检测环境+安装依赖)
├── main.py # 简化启动入口
├── app/
│ ├── templates/ # Jinja2 模板
│ │ ├── admin/ # 管理后台模板
│ │ ├── auth/ # 认证模板
│ │ ├── captain/ # 队长模板
│ │ ├── player/ # 选手模板
│ │ └── tournament/ # 赛事模板
│ └── static/ # 静态文件(CSS/JS/上传文件)
├── image/ # 轮播图片/视频
├── .db/ # SQLite 数据库(自动创建)
├── requirements.txt # 依赖清单
└── README.md
所有后端代码整合在
app.py中,便于 Docker 打包部署。
默认使用 SQLite(。db/lskb.db),生产环境通过 DATABASE_URL 环境变量切换 MySQL。
- 注册账号 → 2. 等待管理员审批 → 3. 接受邀请/主动申请 → 4. 选择肉鸽 → 5. 填写宣言 → 6. 设置可用时间 → 7. 参加比赛
- 注册并升级为队长 → 2. 创建队伍 → 3. 邀请选手/审核申请 → 4. 分配位置 → 5. 选择肉鸽和宣言 → 6. 参加比赛
- 登录后台 → 2. 审批用户 → 3. 管理赛事流程 → 4. 处理争议 → 5. 导出数据
- ✅ Flask-Login 用户认证
- ✅ 四级 RBAC 权限控制
- ✅ CSRF 防护(Flask-WTF)
- ✅ 密码加密存储(Werkzeug)
- ✅ SQL 注入防护(SQLAlchemy ORM)
- ✅ 密码强度验证(8位+字母+数字)
- ✅ 操作审计日志(SystemLog)
- ✅ 路径穿越防护
- 检查 MySQL 服务是否运行
- 检查连接字符串中的用户名、密码、主机名
- 确保数据库已创建
pip install --upgrade pip
pip install -r requirements.txt- 检查
app/templates目录是否存在 - 检查模板文件名是否正确
- 使用
FLASK_ENV=development启用调试模式 - 定期备份数据库
- 生产环境更改 SECRET_KEY
- 使用环境变量管理敏感配置
Copyright © 2026 冷水坑杯 #3 赛事组委会
有问题或建议?请联系管理员。 "# lskb-competition"