From 36562fec2b12fe9eff1dfaa1b5319a4f56efe228 Mon Sep 17 00:00:00 2001
From: Hentua <wangdoubleone@gmail.com>
Date: Tue, 26 Sep 2023 10:10:20 +0800
Subject: [PATCH] fix

---
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java |   49 +++++++++++++++++++++++++++++++------------------
 1 files changed, 31 insertions(+), 18 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 48309b2..1f89a8b 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
@@ -231,6 +231,15 @@
     @Override
     public FebsResponse logout() {
         Long id = LoginUserUtil.getLoginUser().getId();
+
+        String redisKey = AppContants.XCX_LOGIN_PREFIX + id;
+        String existToken = redisUtils.getString(redisKey);
+        if (StrUtil.isNotBlank(existToken)) {
+            Object o = redisUtils.get(existToken);
+            if (ObjectUtil.isNotEmpty(o)) {
+                redisUtils.del(existToken);
+            }
+        }
         redisUtils.del(AppContants.XCX_LOGIN_PREFIX + id);
         redisUtils.del(AppContants.XCX_LOGIN_PHONE_PREFIX + id);
         return new FebsResponse().success().message("退出登录");
@@ -879,26 +888,30 @@
         Long memberId = LoginUserUtil.getLoginUser().getId();
         //通过邀请人信息,获取能领取的优惠卷信息
         MallMember mallMember = this.baseMapper.selectInfoByInviteId(getCouponDto.getInviteId());
-        SalemanCoupon salemanCoupon = salemanCouponMapper.selectByMemberId(mallMember.getId());
-        if(ObjectUtil.isNotEmpty(salemanCoupon)){
-            Long couponId = salemanCoupon.getCouponId();
-            Long goodsId = getCouponDto.getGoodsId();
-            //商品优惠卷如果绑定了,那么当前登陆者获取一张卷
-            List<CouponGoods> couponGoodsList = couponGoodsMapper.selectByGoodIdAndCouponId(goodsId,couponId);
-            MallGoodsCoupon mallGoodsCoupon = mallGoodsCouponMapper.selectById(couponId);
-            if(CollUtil.isNotEmpty(couponGoodsList)){
-                MallMemberCoupon mallMemberCoupon = new MallMemberCoupon();
-                mallMemberCoupon.setCouponId(couponId);
-                mallMemberCoupon.setCouponName(mallGoodsCoupon.getName());
-                mallMemberCoupon.setMemberId(memberId);
-                mallMemberCoupon.setGoodsId(goodsId);
-                mallMemberCoupon.setInviteId(mallMember.getInviteId());
-                mallMemberCoupon.setState(1);
-                mallMemberCoupon.setExpireTime(DateUtil.offsetDay(DateUtil.date(),mallGoodsCoupon.getExpireDay()));
-                mallMemberCouponMapper.insert(mallMemberCoupon);
+        if(ObjectUtil.isNotEmpty(mallMember)){
+            SalemanCoupon salemanCoupon = salemanCouponMapper.selectByMemberId(mallMember.getId());
+            if(ObjectUtil.isNotEmpty(salemanCoupon)){
+                Long couponId = salemanCoupon.getCouponId();
+                Long goodsId = getCouponDto.getGoodsId();
+                List<MallMemberCoupon> mallMemberCoupons = mallMemberCouponMapper.selectListByMemberIdAndGoodsIdAndCouponId(memberId, goodsId, couponId);
+                if(CollUtil.isEmpty(mallMemberCoupons)){
+                    //商品优惠卷如果绑定了,那么当前登陆者获取一张卷
+                    List<CouponGoods> couponGoodsList = couponGoodsMapper.selectByGoodIdAndCouponId(goodsId,couponId);
+                    MallGoodsCoupon mallGoodsCoupon = mallGoodsCouponMapper.selectById(couponId);
+                    if(CollUtil.isNotEmpty(couponGoodsList)){
+                        MallMemberCoupon mallMemberCoupon = new MallMemberCoupon();
+                        mallMemberCoupon.setCouponId(couponId);
+                        mallMemberCoupon.setCouponName(mallGoodsCoupon.getName());
+                        mallMemberCoupon.setMemberId(memberId);
+                        mallMemberCoupon.setGoodsId(goodsId);
+                        mallMemberCoupon.setInviteId(mallMember.getInviteId());
+                        mallMemberCoupon.setState(1);
+                        mallMemberCoupon.setExpireTime(DateUtil.offsetDay(DateUtil.date(),mallGoodsCoupon.getExpireDay()));
+                        mallMemberCouponMapper.insert(mallMemberCoupon);
+                    }
+                }
             }
         }
-
         return new FebsResponse().success();
     }
 

--
Gitblit v1.9.1