From 710f361a237a7d60b43ac0da52795f99bc539e4d Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Fri, 26 Jan 2024 16:22:36 +0800 Subject: [PATCH] fix --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java | 18 ++++++++++++++++++ 1 files changed, 18 insertions(+), 0 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java index 1279ee7..127a262 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java @@ -1118,6 +1118,24 @@ .eq(MallGoodsCoupon::getState, 2); List<MallGoodsCoupon> coupons = mallGoodsCouponMapper.selectList(query); + LambdaQueryWrapper<MallMemberCoupon> memberCouponQuery = new LambdaQueryWrapper<>(); + memberCouponQuery.in(MallMemberCoupon::getCouponId, couponIds) + .eq(MallMemberCoupon::getMemberId, member.getId()) + .eq(MallMemberCoupon::getState, 1) + .ge(MallMemberCoupon::getCreatedTime, DateUtil.beginOfDay(new Date())) + .le(MallMemberCoupon::getCreatedTime, DateUtil.endOfDay(new Date())); + List<MallMemberCoupon> mallMemberCoupons = mallMemberCouponMapper.selectList(memberCouponQuery); + if (CollUtil.isNotEmpty(mallMemberCoupons)) { + Map<Long, MallMemberCoupon> map = mallMemberCoupons.stream().collect(Collectors.toMap(MallMemberCoupon::getCouponId, MallMemberCoupon -> MallMemberCoupon)); + coupons = coupons.stream().filter(item -> { + return map.get(item.getId()) == null; + }).collect(Collectors.toList()); + } + + if (CollUtil.isEmpty(coupons)) { + return new HashMap<>(); + } + coupons.forEach(item -> { MallMemberCoupon memberCoupon = new MallMemberCoupon(); memberCoupon.setCouponId(item.getId()); -- Gitblit v1.9.1