diff --git a/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/mongo/service/user/profile/impl/UserRunProfileServiceImpl.java b/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/mongo/service/user/profile/impl/UserRunProfileServiceImpl.java index 95759ee1..57797848 100644 --- a/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/mongo/service/user/profile/impl/UserRunProfileServiceImpl.java +++ b/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/mongo/service/user/profile/impl/UserRunProfileServiceImpl.java @@ -12,11 +12,8 @@ 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 com.red.circle.tool.core.tuple.ImmutableKeyValuePair; -import java.util.ArrayList; -import java.util.Collection; -import java.util.List; -import java.util.Objects; -import java.util.Set; + +import java.util.*; import java.util.stream.Collectors; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -388,6 +385,7 @@ public class UserRunProfileServiceImpl implements UserRunProfileService { return wearBadge.stream() .filter(badge -> !BadgeConfigTypeEnum.isHonorType(badge.getType())) .filter(badge -> checkAvailable(badge.getExpireTime())) + .sorted(Comparator.comparing(UseBadgeDTO::getBadgeLevel).reversed()) .collect(Collectors.toList()); } return wearBadge; @@ -398,6 +396,7 @@ public class UserRunProfileServiceImpl implements UserRunProfileService { return wearBadge.stream() .filter(badge -> BadgeConfigTypeEnum.isHonorType(badge.getType())) .filter(badge -> checkAvailable(badge.getExpireTime())) + .sorted(Comparator.comparing(UseBadgeDTO::getBadgeLevel).reversed()) .collect(Collectors.toList()); } return wearBadge;