From 25ef12504f10cb066db53541bd7bc7bac4c09ac4 Mon Sep 17 00:00:00 2001
From: jiangqs <jiangqs>
Date: 星期二, 11 七月 2023 18:39:10 +0800
Subject: [PATCH] 管理台bug和用户端

---
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberCouponServiceImpl.java |   53 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 52 insertions(+), 1 deletions(-)

diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberCouponServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberCouponServiceImpl.java
index f5d5e86..7621352 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberCouponServiceImpl.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberCouponServiceImpl.java
@@ -1,21 +1,28 @@
 package com.ruoyi.member.service.impl.member;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.core.exception.ServiceException;
+import com.ruoyi.member.domain.dto.AppMemberCouponPageDto;
+import com.ruoyi.member.domain.vo.AppMemberCouponPageVo;
 import com.ruoyi.member.mapper.member.MemberCouponMapper;
 import com.ruoyi.member.service.member.MemberCouponService;
 import com.ruoyi.system.api.constant.AppErrorConstant;
 import com.ruoyi.system.api.domain.poji.goods.Goods;
 import com.ruoyi.system.api.domain.poji.member.MemberCoupon;
+import com.ruoyi.system.api.domain.poji.shop.Shop;
 import com.ruoyi.system.api.domain.vo.AppMemberCouponVo;
 import com.ruoyi.system.api.domain.vo.MerVerifyCouponGetVo;
 import com.ruoyi.system.api.service.RemoteGoodsService;
+import com.ruoyi.system.api.service.RemoteShopService;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -34,6 +41,8 @@
     @Resource
     private RemoteGoodsService remoteGoodsService;
 
+    @Resource
+    private RemoteShopService remoteShopService;
 
     /**
      * @description: TODO
@@ -109,7 +118,7 @@
             throw new ServiceException(AppErrorConstant.COUPON_EXPIRED);
         }else if(memberCoupon.getCouponStatus()==2){
             throw new ServiceException(AppErrorConstant.COUPON_USED);
-        }else if(memberCoupon.getCouponStatus()!=0){
+        }else if(memberCoupon.getCouponStatus()==-1){
             throw new ServiceException(AppErrorConstant.COUPON_NO_FIND);
         }
         if(memberCoupon.getCouponType()!=4){
@@ -152,4 +161,46 @@
         return total;
     }
 
+    /**
+     * @description 用户分页获取已领取优惠券列表
+     * @author  jqs
+     * @date    2023/7/11 16:25
+     * @param page
+     * @param appMemberCouponPageDto
+     * @return  List<AppMemberCouponPageVo>
+     */
+    @Override
+    public List<AppMemberCouponPageVo> pageAppUserGetCoupon(Page page, AppMemberCouponPageDto appMemberCouponPageDto){
+        List<AppMemberCouponPageVo> memberCouponPageVoList = memberCouponMapper.pageAppUserGetCoupon(page, appMemberCouponPageDto);
+        if(!memberCouponPageVoList.isEmpty()){
+            String relGoodsIds;
+            List<Goods> goodsList;
+            List<String> goodsLimitList;
+            Shop shop = null;
+            for(AppMemberCouponPageVo appGetAbleCouponPageVo : memberCouponPageVoList){
+                relGoodsIds = appGetAbleCouponPageVo.getRelGoodsIds();
+                goodsList = remoteGoodsService.listGoodsByGoodsId(relGoodsIds).getData();
+                if(!goodsList.isEmpty()){
+                    goodsLimitList = goodsList.stream().map(goods -> {
+                        String goodsName = goods.getGoodsName();
+                        goodsName = "限制" + goodsName + "适用";
+                        return goodsName;
+                    }).collect(Collectors.toList());
+                }else{
+                    goodsLimitList = new ArrayList<>();
+                    if(appGetAbleCouponPageVo.getShopId()!=null){
+                        if(shop!=null&&shop.getShopId().equals(appGetAbleCouponPageVo.getShopId())){
+                        }else{
+                            shop = remoteShopService.getShop(appGetAbleCouponPageVo.getShopId()).getData();
+                        }
+                        goodsLimitList.add(shop.getShopName()+"通用");
+                    }else{
+                        goodsLimitList.add("全场通用");
+                    }
+                }
+                appGetAbleCouponPageVo.setGoodsLimitList(goodsLimitList);
+            }
+        }
+        return memberCouponPageVoList;
+    }
 }

--
Gitblit v1.7.1