From e1d1b5e5a2248381bc4faa2ac0e629676d17ff3c Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Wed, 01 Jul 2026 10:59:05 +0800
Subject: [PATCH] feat(mall): 支持优惠券多选绑定功能
---
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java | 32 ++++++++++++++++++--------------
1 files changed, 18 insertions(+), 14 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
index 5ad9ccb..b1c3142 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
+++ b/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("操作成功");
}
--
Gitblit v1.9.1