From 6a55e75b8530197d1f561f710f9e53b7e40be171 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Wed, 01 Jul 2026 11:06:49 +0800
Subject: [PATCH] refactor(mall): 重构会员优惠券绑定逻辑
---
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java | 41 +++++++++++++++++++++++------------------
1 files changed, 23 insertions(+), 18 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 0bce76e..7e553d1 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
@@ -3,16 +3,12 @@
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.entity.QueryRequest;
import cc.mrbird.febs.common.enumerates.AgentLevelEnum;
-import cc.mrbird.febs.common.enumerates.FlowTypeEnum;
import cc.mrbird.febs.common.enumerates.MoneyFlowTypeEnum;
import cc.mrbird.febs.common.exception.FebsException;
import cc.mrbird.febs.common.utils.AppContants;
-import cc.mrbird.febs.common.utils.LoginUserUtil;
-import cc.mrbird.febs.common.utils.MallUtils;
import cc.mrbird.febs.common.utils.RedisUtils;
import cc.mrbird.febs.mall.dto.*;
import cc.mrbird.febs.mall.entity.*;
-import cc.mrbird.febs.mall.entity.MallNewsInfo;
import cc.mrbird.febs.mall.mapper.*;
import cc.mrbird.febs.mall.service.IAdminMallMemberService;
import cc.mrbird.febs.mall.service.IApiMallMemberWalletService;
@@ -33,7 +29,6 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
-import org.apache.xmlbeans.impl.store.Query;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -320,6 +315,17 @@
}
@Override
+ public FebsResponse doctorStateChange(Long id) {
+ MallMember mallMember = this.baseMapper.selectById(id);
+ if(ObjectUtil.isEmpty(mallMember)){
+ throw new FebsException("请刷新页面");
+ }
+ mallMember.setDoctorState(mallMember.getDoctorState() == 1 ? 0 : 1);
+ this.baseMapper.updateById(mallMember);
+ return new FebsResponse().success().message("操作成功");
+ }
+
+ @Override
public FebsResponse upCoupon(Long id) {
MallMember mallMember = this.baseMapper.selectById(id);
if(ObjectUtil.isEmpty(mallMember)){
@@ -385,21 +391,20 @@
if(ObjectUtil.isEmpty(member)){
throw new FebsException("请刷新页面");
}
- Long couponId = mallmember.getCouponId();
+ // 先删除旧绑定,再插入新绑定(全量替换)
+ QueryWrapper<SalemanCoupon> deleteWrapper = new QueryWrapper<>();
+ deleteWrapper.eq("member_id", member.getId());
+ salemanCouponMapper.delete(deleteWrapper);
- 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.isNotEmpty(couponIds)){
+ for(Long couponId : couponIds){
+ SalemanCoupon salemanCoupon = new SalemanCoupon();
+ salemanCoupon.setMemberId(member.getId());
+ salemanCoupon.setCouponId(couponId);
+ salemanCouponMapper.insert(salemanCoupon);
+ }
}
- SalemanCoupon salemanCoupon = new SalemanCoupon();
- salemanCoupon.setMemberId(member.getId());
- salemanCoupon.setCouponId(couponId);
- salemanCouponMapper.insert(salemanCoupon);
return new FebsResponse().success().message("操作成功");
}
--
Gitblit v1.9.1