From 529ad9dd8d1876b57e852bc45b602ba3ccc8df2a Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Wed, 10 Apr 2024 17:19:08 +0800 Subject: [PATCH] 公告-首页公告调整 --- src/main/java/cc/mrbird/febs/vip/service/impl/MallVipConfigServiceImpl.java | 22 ++++++++++++++++++---- 1 files changed, 18 insertions(+), 4 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipConfigServiceImpl.java b/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipConfigServiceImpl.java index 3f3b1fe..224fd19 100644 --- a/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipConfigServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipConfigServiceImpl.java @@ -28,6 +28,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.*; +import java.util.stream.Collectors; @Slf4j @Service @@ -48,9 +49,13 @@ public List<MallVipConfig> findConfigList() { List<MallVipConfig> configs = this.baseMapper.selectVipConfigList(); configs.forEach(item -> { - item.getBenefits().forEach(benefits -> { + List<MallVipBenefits> data = item.getBenefits().stream().filter(benefit -> { + return benefit.getIsShow() == 1; + }).peek(benefits -> { benefits.setIsJump(CollUtil.isEmpty(benefits.getDetails()) ? 2 : 1); - }); + }).collect(Collectors.toList()); + + item.setBenefits(data); }); return configs; } @@ -144,11 +149,20 @@ } String today = DateUtil.format(new Date(), DatePattern.NORM_DATE_PATTERN); - boolean isBirthday = member.getBirthday().compareTo(DateUtil.parseDate(today)) == 0; + boolean isBirthday; + if (member.getBirthday() != null) { + isBirthday = member.getBirthday().compareTo(DateUtil.parseDate(today)) == 0; + } else { + isBirthday = false; + } List<MallVipBenefits> benefits = vipConfig.getBenefits(); Optional<MallVipBenefits> max = benefits.stream().filter(item -> { if (item.getScoreMultiple() == null) { return false; + } + + if (item.getGainType() == 3 && item.getScoreMultiple() != null) { + return true; } // 生日权益 @@ -163,6 +177,6 @@ return item.getGainType() == 1 && StrUtil.equals(data.getValue(), todayTime); }).max(Comparator.comparing(MallVipBenefits::getScoreMultiple)); - return max.orElseGet(max::get); + return max.orElse(null); } } -- Gitblit v1.9.1