fix
Hentua
2023-09-26 36562fec2b12fe9eff1dfaa1b5319a4f56efe228
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();
    }