diff --git a/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/listener/BadgeOperateListener.java b/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/listener/BadgeOperateListener.java index ec614050..e7c8c249 100644 --- a/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/listener/BadgeOperateListener.java +++ b/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/listener/BadgeOperateListener.java @@ -123,7 +123,20 @@ public class BadgeOperateListener implements MessageListener { BadgeBackpack badgeBackpack = badgeBackpackService.getByUserIdByBadgeId(userId, badgeId); if (Objects.isNull(badgeBackpack)) { badgeBackpackService.save(buildSaveUserBadgeBackpack(badgeId, userId, days)); - userProfileGateway.removeCacheAll(userId); + + // 我的勋章 + UserProfile userProfile = userProfileGateway.getByUserId(userId); + List wearBadge = userProfile.getWearBadge(); + List honorBadge = userProfile.getWearHonor(); + wearBadge.addAll(honorBadge); + Set badgeIdSet = wearBadge.stream().map(UserUseBadgeDTO::getId).collect(Collectors.toSet()); + + //新增得勋章 + badgeIdSet.add(badgeId); + + userRunProfileService.updateUserWearBadgesOverlay(userId, + userBadgeCommon.listUseBadge(userId, userProfile.getSysOriginChild(), badgeIdSet) + ); } return null; });