From 663d9b4b2838f475e3b21b3f4571b5720b64c361 Mon Sep 17 00:00:00 2001 From: tianfeng <769204422@qq.com> Date: Thu, 20 Nov 2025 15:54:27 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BE=BD=E7=AB=A0=E5=88=97=E8=A1=A8=E6=B0=B8?= =?UTF-8?q?=E4=B9=85=E6=97=B6=E9=97=B4=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../material/query/UserBadgeTableQryExe.java | 13 ++++++++++++- .../app/dto/clientobject/material/BadgeTableCO.java | 2 +- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/material/query/UserBadgeTableQryExe.java b/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/material/query/UserBadgeTableQryExe.java index 207925d9..783682e5 100644 --- a/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/material/query/UserBadgeTableQryExe.java +++ b/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/material/query/UserBadgeTableQryExe.java @@ -12,9 +12,13 @@ import com.red.circle.other.infra.database.rds.entity.badge.BadgePictureConfig; import com.red.circle.other.infra.database.rds.service.badge.BadgeBackpackService; import com.red.circle.other.infra.database.rds.service.badge.BadgeConfigService; import com.red.circle.other.infra.database.rds.service.badge.BadgePictureConfigService; +import com.red.circle.other.inner.enums.material.BadgeBackpackExpireType; import com.red.circle.other.inner.enums.material.BadgeConfigTypeEnum; import com.red.circle.tool.core.collection.CollectionUtils; +import com.red.circle.tool.core.date.TimestampUtils; import com.red.circle.tool.core.text.StringUtils; + +import java.sql.Timestamp; import java.util.Comparator; import java.util.List; import java.util.Map; @@ -103,8 +107,15 @@ public class UserBadgeTableQryExe { return new BadgeTableCO() .setBadgeConfig(badgeConfigCO) .setActivation(Objects.nonNull(badgeBackpackMap.get(badgeConfig.getId()))) - .setExpireTime(Objects.nonNull(badgeBackpackMap.get(badgeConfig.getId())) ? badgeBackpackMap.get(badgeConfig.getId()).getExpireTime() : null); + .setExpireTime(getBadgeExpireTime(badgeBackpackMap.get(badgeConfig.getId()))); }; } + private Long getBadgeExpireTime(BadgeBackpack badgeBackpack) { + return Objects.equals(badgeBackpack.getExpireType(), BadgeBackpackExpireType.PERMANENT.name()) + ? TimestampUtils.nowPlusYear(10).getTime() + : badgeBackpack.getExpireTime().getTime(); + + } + } diff --git a/rc-service/rc-service-other/other-client/src/main/java/com/red/circle/other/app/dto/clientobject/material/BadgeTableCO.java b/rc-service/rc-service-other/other-client/src/main/java/com/red/circle/other/app/dto/clientobject/material/BadgeTableCO.java index e16ed134..9fe8664b 100644 --- a/rc-service/rc-service-other/other-client/src/main/java/com/red/circle/other/app/dto/clientobject/material/BadgeTableCO.java +++ b/rc-service/rc-service-other/other-client/src/main/java/com/red/circle/other/app/dto/clientobject/material/BadgeTableCO.java @@ -31,7 +31,7 @@ public class BadgeTableCO extends ClientObject { /** * 过期时间. */ - private Timestamp expireTime; + private Long expireTime; /** * 徽章配置信息.