From adeeeb4be21892af3706adc3308eb8c406b98abd Mon Sep 17 00:00:00 2001 From: Z-WICK <2289431216@qq.com> Date: Mon, 26 Jan 2026 13:20:58 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E8=B0=83=E5=BA=A6?= =?UTF-8?q?=E6=95=B0=E6=8D=AEAPI=E8=BF=94=E5=9B=9E=E9=87=8D=E5=A4=8D?= =?UTF-8?q?=E5=88=86=E7=BB=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 按 schedule_group_id 去重,避免同一分组在 dispatch-data 接口中重复出现 Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> --- .../service/impl/MartialScheduleServiceImpl.java | 12 ++++++++++-- .../service/impl/ScheduleDispatchServiceImpl.java | 12 ++++++++++-- 2 files changed, 20 insertions(+), 4 deletions(-) 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 b829692..9da125c 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 @@ -813,10 +813,18 @@ public class MartialScheduleServiceImpl extends ServiceImpl uniqueDetails = new LinkedHashMap<>(); + for (MartialScheduleDetail detail : details) { + if (!uniqueDetails.containsKey(detail.getScheduleGroupId())) { + uniqueDetails.put(detail.getScheduleGroupId(), detail); + } + } + + // 3. 构建返回数据 List groups = new ArrayList<>(); - for (MartialScheduleDetail detail : details) { + for (MartialScheduleDetail detail : uniqueDetails.values()) { // 查询分组信息 MartialScheduleGroup group = scheduleGroupMapper.selectById(detail.getScheduleGroupId()); if (group == null) { diff --git a/src/main/java/org/springblade/modules/martial/service/impl/ScheduleDispatchServiceImpl.java b/src/main/java/org/springblade/modules/martial/service/impl/ScheduleDispatchServiceImpl.java index 8b0cf16..c14d2c1 100644 --- a/src/main/java/org/springblade/modules/martial/service/impl/ScheduleDispatchServiceImpl.java +++ b/src/main/java/org/springblade/modules/martial/service/impl/ScheduleDispatchServiceImpl.java @@ -45,10 +45,18 @@ public class ScheduleDispatchServiceImpl implements IScheduleDispatchService { return vo; } - // 2. 构建返回数据 + // 2. 按 schedule_group_id 去重,避免同一分组重复出现 + java.util.Map uniqueDetails = new java.util.LinkedHashMap<>(); + for (MartialScheduleDetail detail : details) { + if (!uniqueDetails.containsKey(detail.getScheduleGroupId())) { + uniqueDetails.put(detail.getScheduleGroupId(), detail); + } + } + + // 3. 构建返回数据 List groups = new ArrayList<>(); - for (MartialScheduleDetail detail : details) { + for (MartialScheduleDetail detail : uniqueDetails.values()) { // 查询分组信息 MartialScheduleGroup group = scheduleGroupMapper.selectById(detail.getScheduleGroupId()); if (group == null) {