From fc8b51f40e71aa09bb49f407c1e9f68ac94ceb58 Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期一, 29 七月 2024 18:51:32 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/impl/CouponMemberServiceImpl.java |  117 ++++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 89 insertions(+), 28 deletions(-)

diff --git a/ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/impl/CouponMemberServiceImpl.java b/ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/impl/CouponMemberServiceImpl.java
index 97261fb..2860242 100644
--- a/ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/impl/CouponMemberServiceImpl.java
+++ b/ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/impl/CouponMemberServiceImpl.java
@@ -5,12 +5,21 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.core.enums.CouponUseEnum;
+import com.ruoyi.common.core.enums.ListingStatusEnum;
+import com.ruoyi.common.core.utils.page.BeanUtils;
 import com.ruoyi.common.core.utils.page.PageDTO;
+import com.ruoyi.promotion.controller.forepart.vo.CouponMemberVO;
+import com.ruoyi.promotion.domain.Coupon;
+import com.ruoyi.promotion.mapper.CouponMapper;
 import com.ruoyi.promotion.mapper.CouponMemberMapper;
 import com.ruoyi.promotion.service.ICouponMemberService;
 import com.ruoyi.system.api.domain.CouponMember;
 import com.ruoyi.system.api.domain.dto.CouponMemberDTO;
+import java.util.ArrayList;
 import java.util.List;
+import java.util.Set;
+import java.util.stream.Collectors;
+import javax.annotation.Resource;
 import org.springframework.stereotype.Service;
 
 /**
@@ -24,27 +33,38 @@
 @Service
 public class CouponMemberServiceImpl extends ServiceImpl<CouponMemberMapper, CouponMember> implements ICouponMemberService {
 
+    @Resource
+    private CouponMapper couponMapper;
 
     @Override
-    public PageDTO<CouponMember> getCouponMemberList(CouponMemberDTO couponMemberDTO) {
-        LambdaQueryWrapper<CouponMember> wrapper= Wrappers.lambdaQuery();
-        wrapper.eq(CouponMember::getCouponStatus, CouponUseEnum.UNUSED);
-        wrapper.eq(CouponMember::getDelFlag,0);
-            List<CouponMember> couponMemberList=this.list(wrapper);
-    /*    for (CouponMember couponMember:couponMemberList){
-            if(LocalDateTime.now().isAfter(couponMember.getEndDate())){
-                couponMember.setCouponStatus(0);
-                this.updateById(couponMember);
-            }
-        }*/
+    public PageDTO<CouponMemberVO> getCouponMemberList(CouponMemberDTO couponMemberDTO) {
+        LambdaQueryWrapper<Coupon> wrapper= Wrappers.lambdaQuery();
+        wrapper.eq(Coupon::getCouponStatus, ListingStatusEnum.ON_SHELVES);
+        wrapper.eq(Coupon::getDelFlag,0);
+        List<Coupon> couponMemberList=couponMapper.selectList(wrapper);
+        Set<Long> CouponList = null;
+        CouponList = couponMemberList.stream().map(Coupon::getId)
+                .collect(Collectors.toSet());
+
         Page<CouponMember> page = new Page<>(couponMemberDTO.getPageCurr(), couponMemberDTO.getPageSize());
         LambdaQueryWrapper<CouponMember> wrapper1= Wrappers.lambdaQuery();
-        wrapper1.eq(CouponMember::getCouponStatus,
-                CouponUseEnum.getEnumByCode(couponMemberDTO.getCouponStatus()+1));
+        if(couponMemberDTO.getCouponStatus()!=null){
+            wrapper1.eq(CouponMember::getCouponStatus,
+                    CouponUseEnum.getEnumByCode(couponMemberDTO.getCouponStatus()));
+        }
+        if (CouponList.size()>0){
+            wrapper1.in(CouponMember::getCouponId,CouponList);
+        }
         wrapper1.eq(CouponMember::getMemberId,couponMemberDTO.getMemberId());
         wrapper1.eq(CouponMember::getDelFlag,0);
         Page<CouponMember> page1 = this.page(page, wrapper1);
-        return PageDTO.of(page1);
+        PageDTO<CouponMemberVO> articleCommentsVOPageDTO = PageDTO.of(page1, CouponMemberVO.class);
+        List<CouponMemberVO> list2 = articleCommentsVOPageDTO.getList();
+        for (CouponMemberVO couponMember:list2){
+            Coupon coupon = couponMapper.selectById(couponMember.getCouponId());
+            couponMember.setCouponName(coupon.getCouponName());
+        }
+        return articleCommentsVOPageDTO;
     }
 
     @Override
@@ -60,23 +80,64 @@
     }
 
     @Override
-    public List<CouponMember> getCouponMemberl(CouponMemberDTO couponMemberDTO) {
-        LambdaQueryWrapper<CouponMember> wrapper= Wrappers.lambdaQuery();
-        wrapper.eq(CouponMember::getCouponStatus, CouponUseEnum.UNUSED);
-        wrapper.eq(CouponMember::getDelFlag,0);
-        List<CouponMember> couponMemberList=this.list(wrapper);
-    /*    for (CouponMember couponMember:couponMemberList){
-            if(LocalDateTime.now().isAfter(couponMember.getEndDate())){
-                couponMember.setCouponStatus(0);
-                this.updateById(couponMember);
-            }
-        }*/
+    public List<CouponMemberVO> getCouponMemberl(CouponMemberDTO couponMemberDTO) {
+        LambdaQueryWrapper<Coupon> wrapper= Wrappers.lambdaQuery();
+        wrapper.eq(Coupon::getCouponStatus, ListingStatusEnum.ON_SHELVES);
+        wrapper.eq(Coupon::getDelFlag,0);
+        List<Coupon> couponMemberList=couponMapper.selectList(wrapper);
+        Set<Long> CouponList = null;
+        CouponList = couponMemberList.stream().map(Coupon::getId)
+                .collect(Collectors.toSet());
+
         LambdaQueryWrapper<CouponMember> wrapper1= Wrappers.lambdaQuery();
-        wrapper1.eq(CouponMember::getCouponStatus,
-                CouponUseEnum.getEnumByCode(couponMemberDTO.getCouponStatus()+1));
+        wrapper1.eq(CouponMember::getCouponStatus, 0);
         wrapper1.eq(CouponMember::getMemberId,couponMemberDTO.getMemberId());
+        if (CouponList.size()>0){
+            wrapper1.in(CouponMember::getCouponId,CouponList);
+        }
         wrapper1.eq(CouponMember::getDelFlag,0);
         List<CouponMember> page1 = this.list(wrapper1);
-        return page1;
+        List<CouponMemberVO> couponMemberVOS=new ArrayList<>();
+        for (CouponMember couponMember:page1){
+            CouponMemberVO couponMemberVO= BeanUtils.copyProperties(couponMember,CouponMemberVO.class);
+            Coupon coupon = couponMapper.selectById(couponMemberVO.getCouponId());
+            couponMemberVO.setCouponName(coupon.getCouponName());
+            couponMemberVOS.add(couponMemberVO);
+        }
+        return couponMemberVOS;
+    }
+
+    @Override
+    public List<CouponMemberVO> updCouponMember1(CouponMemberDTO couponMemberDTO) {
+
+        LambdaQueryWrapper<Coupon> wrapper= Wrappers.lambdaQuery();
+        wrapper.eq(Coupon::getCouponStatus, ListingStatusEnum.ON_SHELVES);
+        wrapper.eq(Coupon::getDelFlag,0);
+        List<Coupon> couponMemberList=couponMapper.selectList(wrapper);
+        Set<Long> CouponList = null;
+        CouponList = couponMemberList.stream().map(Coupon::getId)
+                .collect(Collectors.toSet());
+
+        LambdaQueryWrapper<CouponMember> wrapper1= Wrappers.lambdaQuery();
+        wrapper1.eq(CouponMember::getCouponStatus, 0);
+        wrapper1.eq(CouponMember::getMemberId,couponMemberDTO.getMemberId());
+        if (CouponList.size()>0){
+            wrapper1.in(CouponMember::getCouponId,CouponList);
+        }
+        wrapper1.eq(CouponMember::getDelFlag,0);
+        List<CouponMember> page1 = this.list(wrapper1);
+        List<CouponMemberVO> couponMemberVOS=new ArrayList<>();
+        for (CouponMember couponMember:page1){
+            CouponMemberVO couponMemberVO= BeanUtils.copyProperties(couponMember,CouponMemberVO.class);
+            Coupon coupon = couponMapper.selectById(couponMemberVO.getCouponId());
+            couponMemberVO.setCouponName(coupon.getCouponName());
+            couponMemberVOS.add(couponMemberVO);
+        }
+        return couponMemberVOS;
+    }
+
+    @Override
+    public void timingCheckMemberCoupon() {
+        this.baseMapper.timingCheckMemberCoupon();
     }
 }

--
Gitblit v1.7.1