5.0 KiB
5.0 KiB
赛程编排系统部署检查清单
✅ 部署前检查
1. 数据库检查
- 已执行数据库表创建脚本:
create_schedule_tables.sql - 已导入测试数据(可选):
create_100_team_participants.sql - 数据库连接配置正确
- 确认表名一致性:
- 代码使用:
martial_athlete - 测试数据插入:
martial_participant - 需要确认: 是否为同一张表(可能是表名重构导致)
- 代码使用:
2. 后端代码检查
- 4个实体类已创建
- 4个Mapper接口及XML已创建
- Service接口和实现已创建
- Controller已创建
- 定时任务处理器已创建
- Service层项目查询逻辑已修复
3. 前端代码检查
- 页面布局已修改
- API接口已集成
- 集体/个人项目差异化显示已实现
- 编排状态和锁定机制已添加
4. 配置检查
- PowerJob服务已启动
- PowerJob定时任务已配置
- Cron表达式设置为:
0 */10 * * * ? - 处理器类名正确:
org.springblade.job.processor.ScheduleAutoArrangeProcessor
⚠️ 已知问题和解决方案
问题1: 表名不一致 ✅ 已修复
现象: 测试数据脚本插入的是 martial_participant 表,但代码查询的是 martial_athlete 表
解决方案: 已将测试数据脚本修改为使用正确的表名 martial_athlete
修复内容:
- 批量替换
martial_participant→martial_athlete - 批量替换
created_time→create_time(统一字段名)
验证方法:
-- 导入测试数据后检查
SELECT COUNT(*) FROM martial_athlete WHERE competition_id = 200;
-- 应返回500条记录(100个队伍 × 5人)
问题2: getScheduleResult方法中的字段名错误 ✅ 已修复
位置: MartialScheduleArrangeServiceImpl.java 第233行
问题: MartialScheduleDetail 没有 scheduleDetailId 字段,应该使用主键 id
修复: 已将查询条件修正为使用正确的字段名
pDetailWrapper.eq(MartialScheduleDetail::getId, p.getScheduleDetailId())
🔍 部署后测试流程
1. 后端API测试
测试1: 手动触发编排
curl -X POST http://localhost/api/martial/schedule/auto-arrange \
-H "Content-Type: application/json" \
-d '{"competitionId": 200}'
预期结果: 返回 {"code":200,"success":true,"msg":"自动编排完成"}
测试2: 获取编排结果
curl http://localhost/api/martial/schedule/result?competitionId=200
预期结果: 返回编排数据,包含 scheduleGroups 数组
测试3: 保存并锁定
curl -X POST http://localhost/api/martial/schedule/save-and-lock \
-H "Content-Type: application/json" \
-d '{"competitionId": 200}'
预期结果: 返回 {"code":200,"success":true,"msg":"编排已保存并锁定"}
2. 前端页面测试
访问: http://localhost:3000/martial/schedule?competitionId=200
检查项:
- 页面正常加载
- 显示编排状态标签(未编排/编排中/已锁定)
- 竞赛分组Tab可切换
- 场地Tab可切换
- 集体项目按单位分组显示
- 个人项目直接列出参赛者
- 点击场地时间段按钮弹出详情对话框
- 保存编排按钮可点击且生效
3. 定时任务测试
检查定时任务执行
-- 查看编排状态表
SELECT * FROM martial_schedule_status WHERE competition_id = 200;
-- 检查last_auto_schedule_time字段是否更新
查看PowerJob日志
在PowerJob控制台查看任务执行日志,确认:
- 任务正常执行
- 日志中显示编排成功
- 没有异常错误
🛠️ 待修复项
所有已知问题已修复! ✅
系统已达到生产就绪状态,可以开始部署测试。
📊 性能测试建议
测试场景1: 小规模数据
- 参赛人数: 100人
- 场地数: 4个
- 比赛天数: 2天
预期结果: 编排耗时 < 1秒
测试场景2: 中规模数据
- 参赛人数: 1000人
- 场地数: 5个
- 比赛天数: 5天
预期结果: 编排耗时 < 5秒
测试场景3: 大规模数据
- 参赛人数: 5000人
- 场地数: 10个
- 比赛天数: 7天
预期结果: 编排耗时 < 10秒
📝 部署日志模板
部署记录
部署时间: _______________
部署人员: _______________
部署环境: □ 开发环境 □ 测试环境 □ 生产环境
执行步骤:
- 1. 数据库表创建
- 2. 测试数据导入
- 3. 后端服务部署
- 4. PowerJob任务配置
- 5. 前端服务部署
- 6. API接口测试
- 7. 前端页面测试
- 8. 定时任务测试
遇到的问题:
解决方案:
部署结果: □ 成功 □ 失败
备注:
文档版本: v1.0 创建时间: 2025-12-08 维护人: 开发团队