From cbe9cbd4a99dafcf50418a8fa1e8ff7b0e4b6c72 Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Fri, 31 May 2024 16:31:28 +0800 Subject: [PATCH] 图片上传 --- src/main/java/cc/mrbird/febs/vip/service/impl/MallVipConfigServiceImpl.java | 26 +++++++++++++++++++++++--- 1 files changed, 23 insertions(+), 3 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 c1a15ae..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 @@ -46,7 +47,17 @@ @Override public List<MallVipConfig> findConfigList() { - return this.baseMapper.selectVipConfigList(); + List<MallVipConfig> configs = this.baseMapper.selectVipConfigList(); + configs.forEach(item -> { + 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; } @Override @@ -138,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; } // 生日权益 @@ -157,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