Administrator
2026-07-01 e1d1b5e5a2248381bc4faa2ac0e629676d17ff3c
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
@@ -391,21 +391,25 @@
        if(ObjectUtil.isEmpty(member)){
            throw new FebsException("请刷新页面");
        }
        Long couponId = mallmember.getCouponId();
        QueryWrapper<SalemanCoupon> objectQueryWrapper = new QueryWrapper<>();
        objectQueryWrapper.eq("member_id",member.getId());
        List<SalemanCoupon> salemanCouponList = salemanCouponMapper.selectList(objectQueryWrapper);
        if(CollUtil.isNotEmpty(salemanCouponList)){
            SalemanCoupon salemanCoupon = salemanCouponList.get(0);
            salemanCoupon.setCouponId(couponId);
            salemanCouponMapper.updateById(salemanCoupon);
            return new FebsResponse().success().message("操作成功");
        List<Long> couponIds = mallmember.getCouponIds();
        if(CollUtil.isEmpty(couponIds)){
            return new FebsResponse().fail().message("请选择优惠券");
        }
        SalemanCoupon salemanCoupon = new SalemanCoupon();
        salemanCoupon.setMemberId(member.getId());
        salemanCoupon.setCouponId(couponId);
        salemanCouponMapper.insert(salemanCoupon);
        for(Long couponId : couponIds){
            // 检查是否已绑定,已绑定则跳过
            QueryWrapper<SalemanCoupon> queryWrapper = new QueryWrapper<>();
            queryWrapper.eq("member_id", member.getId());
            queryWrapper.eq("coupon_id", couponId);
            SalemanCoupon exist = salemanCouponMapper.selectOne(queryWrapper);
            if(ObjectUtil.isNotEmpty(exist)){
                continue;
            }
            SalemanCoupon salemanCoupon = new SalemanCoupon();
            salemanCoupon.setMemberId(member.getId());
            salemanCoupon.setCouponId(couponId);
            salemanCouponMapper.insert(salemanCoupon);
        }
        return new FebsResponse().success().message("操作成功");
    }