feat(shopro): 优化比赛模块功能和流程

- 新增赛制说明接口和页面
- 实现比赛列表和对阵详情页面
- 添加比赛计分功能
- 优化比赛报名和参赛者分配逻辑
- 重构赛制配置和对阵安排方法
This commit is contained in:
2025-05-27 08:51:27 +08:00
parent b7023e7ab3
commit 94a540ac96
4 changed files with 207 additions and 78 deletions

View File

@@ -8,16 +8,20 @@ namespace format;
2. 规则类型1八人转2超八转3混双转4固搭转5固定擂6活动擂7转转8分区转9擂台赛10守擂赛11追分赛12固搭追分赛13大循环群内赛14两队PK赛15战队淘汰赛16单项淘汰赛17分区循环淘汰赛
3. 需要引入新赛制请创建新的类文件,类文件需要实现GameInterface接口,并且文件名为`Game + 团队类型代码 + 规则类型代码.php`。
如:赛制为双打八人则文件为format/Game11.php。
赛制为单打擂台赛则文件为format/Game29.php。
如:赛制为双打+转则文件为format/Game17.php。
赛制为单打+擂台赛则文件为format/Game29.php。
*/
interface GameInterface
{
// 赛制说明
public function describe(): string;
// 对阵安排
public function match($game,$users): array;
// 首轮对阵安排
public function match($game, $users): array;
// 下一轮对阵安排
public function next($game, $math): array;
// 奖金分配
public function prize($rank): array;