From 16b55adf810976ff104d253258c334ef1f83dfed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=85=E6=88=BF?= Date: Tue, 30 Dec 2025 10:51:04 +0800 Subject: [PATCH] =?UTF-8?q?feat(schedule):=20=E6=B7=BB=E5=8A=A0=E8=B5=9B?= =?UTF-8?q?=E7=A8=8B=E9=85=8D=E7=BD=AEAPI=EF=BC=8C=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E5=8A=A8=E6=80=81=E6=97=B6=E9=97=B4=E6=AE=B5=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加 GET /martial/schedule/config API 暴露 ScheduleConfig - 返回 morningStartTime, afternoonStartTime 等配置 - 更新 docker-compose.yml 使用 Dockerfile.quick --- docker-compose.yml | 4 ++-- .../MartialScheduleArrangeController.java | 23 ++++++++++++++++--- 2 files changed, 22 insertions(+), 5 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 7eb69d9..e626347 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -85,8 +85,8 @@ services: # 后端应用(完整构建模式) martial-api: build: - context: .. - dockerfile: martial-master/Dockerfile.fullbuild + context: . + dockerfile: Dockerfile.quick container_name: martial-api restart: always environment: diff --git a/src/main/java/org/springblade/modules/martial/controller/MartialScheduleArrangeController.java b/src/main/java/org/springblade/modules/martial/controller/MartialScheduleArrangeController.java index f0b5741..31279f5 100644 --- a/src/main/java/org/springblade/modules/martial/controller/MartialScheduleArrangeController.java +++ b/src/main/java/org/springblade/modules/martial/controller/MartialScheduleArrangeController.java @@ -8,6 +8,7 @@ import org.springblade.core.boot.ctrl.BladeController; import org.springblade.core.secure.BladeUser; import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.api.R; +import org.springblade.modules.martial.config.ScheduleConfig; import org.springblade.modules.martial.pojo.dto.MoveScheduleGroupDTO; import org.springblade.modules.martial.pojo.dto.SaveScheduleDraftDTO; import org.springblade.modules.martial.pojo.dto.ScheduleResultDTO; @@ -15,6 +16,7 @@ import org.springblade.modules.martial.service.IMartialScheduleArrangeService; import org.springblade.modules.martial.service.IMartialScheduleService; import org.springframework.web.bind.annotation.*; +import java.util.HashMap; import java.util.Map; /** @@ -31,6 +33,24 @@ public class MartialScheduleArrangeController extends BladeController { private final IMartialScheduleArrangeService scheduleArrangeService; private final IMartialScheduleService scheduleService; + private final ScheduleConfig scheduleConfig; + + /** + * 获取赛程配置 + */ + @GetMapping("/config") + @Operation(summary = "获取赛程配置", description = "获取赛程编排的时间配置") + public R> getScheduleConfig() { + Map config = new HashMap<>(); + config.put("morningStartTime", scheduleConfig.getMorningStartTime()); + config.put("morningEndTime", scheduleConfig.getMorningEndTime()); + config.put("afternoonStartTime", scheduleConfig.getAfternoonStartTime()); + config.put("afternoonEndTime", scheduleConfig.getAfternoonEndTime()); + config.put("maxPeoplePerGroup", scheduleConfig.getMaxPeoplePerGroup()); + config.put("targetPeoplePerGroup", scheduleConfig.getTargetPeoplePerGroup()); + config.put("defaultDurationPerPerson", scheduleConfig.getDefaultDurationPerPerson()); + return R.data(config); + } /** * 获取编排结果 @@ -69,13 +89,11 @@ public class MartialScheduleArrangeController extends BladeController { @Operation(summary = "完成编排并锁定", description = "传入赛事ID") public R saveAndLock(@RequestBody SaveScheduleDraftDTO dto) { try { - // 获取当前登录用户 BladeUser user = AuthUtil.getUser(); String userId = user != null ? user.getUserName() : "system"; boolean success = scheduleService.saveAndLockSchedule(dto.getCompetitionId()); if (success) { - // 调用原有的锁定逻辑 scheduleArrangeService.saveAndLock(dto.getCompetitionId(), userId); return R.success("编排已完成并锁定"); } else { @@ -167,7 +185,6 @@ public class MartialScheduleArrangeController extends BladeController { } } - /** * 更新参赛者签到状态 */