diff --git a/minio_data/.minio.sys/buckets/.bloomcycle.bin/xl.meta b/minio_data/.minio.sys/buckets/.bloomcycle.bin/xl.meta index 1d18627..1d0a0b1 100644 Binary files a/minio_data/.minio.sys/buckets/.bloomcycle.bin/xl.meta and b/minio_data/.minio.sys/buckets/.bloomcycle.bin/xl.meta differ diff --git a/minio_data/.minio.sys/buckets/.usage-cache.bin.bkp/xl.meta b/minio_data/.minio.sys/buckets/.usage-cache.bin.bkp/xl.meta index de9fb94..6cd8659 100644 Binary files a/minio_data/.minio.sys/buckets/.usage-cache.bin.bkp/xl.meta and b/minio_data/.minio.sys/buckets/.usage-cache.bin.bkp/xl.meta differ diff --git a/minio_data/.minio.sys/buckets/.usage-cache.bin/xl.meta b/minio_data/.minio.sys/buckets/.usage-cache.bin/xl.meta index f158d42..fd1de93 100644 Binary files a/minio_data/.minio.sys/buckets/.usage-cache.bin/xl.meta and b/minio_data/.minio.sys/buckets/.usage-cache.bin/xl.meta differ diff --git a/minio_data/.minio.sys/buckets/.usage.json/xl.meta b/minio_data/.minio.sys/buckets/.usage.json/xl.meta index 0883c76..f4a6685 100644 Binary files a/minio_data/.minio.sys/buckets/.usage.json/xl.meta and b/minio_data/.minio.sys/buckets/.usage.json/xl.meta differ diff --git a/minio_data/.minio.sys/buckets/000000-assets/.usage-cache.bin.bkp/xl.meta b/minio_data/.minio.sys/buckets/000000-assets/.usage-cache.bin.bkp/xl.meta index f749a1c..b5ac1d4 100644 Binary files a/minio_data/.minio.sys/buckets/000000-assets/.usage-cache.bin.bkp/xl.meta and b/minio_data/.minio.sys/buckets/000000-assets/.usage-cache.bin.bkp/xl.meta differ diff --git a/minio_data/.minio.sys/buckets/000000-assets/.usage-cache.bin/xl.meta b/minio_data/.minio.sys/buckets/000000-assets/.usage-cache.bin/xl.meta index c2d65f3..c162aa0 100644 Binary files a/minio_data/.minio.sys/buckets/000000-assets/.usage-cache.bin/xl.meta and b/minio_data/.minio.sys/buckets/000000-assets/.usage-cache.bin/xl.meta differ diff --git a/minio_data/.minio.sys/buckets/assets/.usage-cache.bin.bkp/xl.meta b/minio_data/.minio.sys/buckets/assets/.usage-cache.bin.bkp/xl.meta index e485b1b..a8d346a 100644 Binary files a/minio_data/.minio.sys/buckets/assets/.usage-cache.bin.bkp/xl.meta and b/minio_data/.minio.sys/buckets/assets/.usage-cache.bin.bkp/xl.meta differ diff --git a/minio_data/.minio.sys/buckets/assets/.usage-cache.bin/xl.meta b/minio_data/.minio.sys/buckets/assets/.usage-cache.bin/xl.meta index 37c6668..be7dfdb 100644 Binary files a/minio_data/.minio.sys/buckets/assets/.usage-cache.bin/xl.meta and b/minio_data/.minio.sys/buckets/assets/.usage-cache.bin/xl.meta differ diff --git a/src/main/java/org/springblade/modules/martial/service/impl/MartialScheduleServiceImpl.java b/src/main/java/org/springblade/modules/martial/service/impl/MartialScheduleServiceImpl.java index 42f67b4..fda2cb1 100644 --- a/src/main/java/org/springblade/modules/martial/service/impl/MartialScheduleServiceImpl.java +++ b/src/main/java/org/springblade/modules/martial/service/impl/MartialScheduleServiceImpl.java @@ -609,60 +609,11 @@ public class MartialScheduleServiceImpl extends ServiceImpl groups = scheduleGroupMapper.selectList( - new QueryWrapper() - .eq("competition_id", competitionId) - .eq("is_deleted", 0) - ); - - if (groups.isEmpty()) { - // 没有分组数据,视为成功(可能是初始状态,尚未进行自动编排) - return true; - } - - // 2. 获取所有分组ID - List groupIds = groups.stream().map(MartialScheduleGroup::getId).collect(Collectors.toList()); - - // 3. 更新所有参赛者的编排状态为completed - List participants = scheduleParticipantMapper.selectList( - new QueryWrapper() - .in("schedule_group_id", groupIds) - .eq("is_deleted", 0) - ); - - // 按分组和出场顺序分配选手编号 - Map groupCounters = new HashMap<>(); - participants.sort((a, b) -> { - int groupCompare = a.getScheduleGroupId().compareTo(b.getScheduleGroupId()); - if (groupCompare != 0) return groupCompare; - return Integer.compare(a.getPerformanceOrder() != null ? a.getPerformanceOrder() : 0, - b.getPerformanceOrder() != null ? b.getPerformanceOrder() : 0); - }); - - for (MartialScheduleParticipant participant : participants) { - participant.setScheduleStatus("completed"); - scheduleParticipantMapper.updateById(participant); - - // 分配选手编号 - if (participant.getParticipantId() != null) { - Long groupId = participant.getScheduleGroupId(); - int counter = groupCounters.getOrDefault(groupId, 0) + 1; - groupCounters.put(groupId, counter); - - // 更新选手编号 (格式: 分组序号-出场序号) - MartialAthlete athlete = athleteMapper.selectById(participant.getParticipantId()); - if (athlete != null && (athlete.getPlayerNo() == null || athlete.getPlayerNo().isEmpty())) { - athlete.setPlayerNo(String.format("%03d", counter)); - athleteMapper.updateById(athlete); - } - } - } - - return true; + // Delegated to ScheduleArrangeService + return scheduleArrangeService.saveAndLockSchedule(competitionId); } + /** * 根据时间段字符串计算 timeSlotIndex * 按照时间从早到晚分配索引: 08:30=0, 13:30=1, 其他时间按字符串顺序排序