From 1f03ec55581fbd25807aefb0bd191960646dc2b0 Mon Sep 17 00:00:00 2001 From: tianfeng <769204422@qq.com> Date: Wed, 11 Feb 2026 18:27:20 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B4=BB=E5=8A=A8=E7=A4=BC=E7=89=A9=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E6=96=B0=E5=A2=9E=E6=B4=BB=E5=8A=A8ID=E5=AD=97?= =?UTF-8?q?=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../command/gift/query/ActivityGiftListQryExe.java | 14 +++++++------- .../app/dto/clientobject/gift/ActivityGiftCO.java | 5 +++++ 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/gift/query/ActivityGiftListQryExe.java b/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/gift/query/ActivityGiftListQryExe.java index 08dcd9df..1560bba2 100644 --- a/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/gift/query/ActivityGiftListQryExe.java +++ b/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/gift/query/ActivityGiftListQryExe.java @@ -42,16 +42,15 @@ public class ActivityGiftListQryExe { } // 构建 giftId -> bannerId 的映射(取第一个遇到的 bannerId) - Map giftIdToBannerIdMap = new HashMap<>(); + Map giftIdToBannerIdMap = new HashMap<>(); List giftIds = new ArrayList<>(); for (ActivityConfig activity : activities) { - Long bannerId = activity.getBannerId(); if (CollectionUtils.isNotEmpty(activity.getGiftIds())) { for (Object giftIdObj : activity.getGiftIds()) { Long giftId = Long.valueOf(giftIdObj.toString()); if (!giftIdToBannerIdMap.containsKey(giftId)) { - giftIdToBannerIdMap.put(giftId, bannerId); + giftIdToBannerIdMap.put(giftId, activity); giftIds.add(giftId); } } @@ -64,7 +63,7 @@ public class ActivityGiftListQryExe { // 收集所有需要查询的 bannerId(去重) List bannerIds = giftIdToBannerIdMap.values().stream() - .filter(Objects::nonNull).distinct().collect(Collectors.toList()); + .filter(Objects::nonNull).map(ActivityConfig::getBannerId).distinct().collect(Collectors.toList()); Map bannerUrlMap; if (!bannerIds.isEmpty()) { @@ -88,7 +87,7 @@ public class ActivityGiftListQryExe { } private ActivityGiftCO convertToActivityGiftCO(GiftConfig giftConfig, - Map giftIdToBannerIdMap, + Map giftIdToBannerIdMap, Map bannerUrlMap) { ActivityGiftCO activityGiftCO = new ActivityGiftCO(); activityGiftCO.setId(giftConfig.getId()); @@ -103,9 +102,10 @@ public class ActivityGiftListQryExe { activityGiftCO.setExpiredTime(giftConfig.getExpiredTime()); // 设置 bannerUrl - Long bannerId = giftIdToBannerIdMap.get(giftConfig.getId()); - String bannerUrl = (bannerId != null) ? bannerUrlMap.get(bannerId) : null; + ActivityConfig activityConfig = giftIdToBannerIdMap.get(giftConfig.getId()); + String bannerUrl = (activityConfig.getBannerId() != null) ? bannerUrlMap.get(activityConfig.getBannerId()) : null; activityGiftCO.setBannerUrl(bannerUrl); + activityGiftCO.setActivityId(activityConfig.getId()); return activityGiftCO; } diff --git a/rc-service/rc-service-other/other-client/src/main/java/com/red/circle/other/app/dto/clientobject/gift/ActivityGiftCO.java b/rc-service/rc-service-other/other-client/src/main/java/com/red/circle/other/app/dto/clientobject/gift/ActivityGiftCO.java index 8de2568b..beb2d263 100644 --- a/rc-service/rc-service-other/other-client/src/main/java/com/red/circle/other/app/dto/clientobject/gift/ActivityGiftCO.java +++ b/rc-service/rc-service-other/other-client/src/main/java/com/red/circle/other/app/dto/clientobject/gift/ActivityGiftCO.java @@ -72,6 +72,11 @@ public class ActivityGiftCO extends ClientObject { */ private Timestamp expiredTime; + /** + * 活动ID + */ + private Long activityId; + /** * banner地址. */