修复优惠券回收后,领取数量和剩余数量不更新的问题

This commit is contained in:
卢越 2024-08-08 15:17:35 +08:00
parent 04fdc70f58
commit 9606687878
2 changed files with 6 additions and 1 deletions

View File

@ -8,6 +8,7 @@ import cn.iocoder.yudao.module.promotion.enums.coupon.CouponStatusEnum;
import cn.iocoder.yudao.module.promotion.enums.coupon.CouponTakeTypeEnum;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
@ -30,6 +31,7 @@ public class CouponDO extends BaseDO {
/**
* 优惠劵编号
*/
@TableId
private Long id;
/**
* 优惠劵模板编号

View File

@ -25,6 +25,7 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
import jakarta.annotation.Resource;
import java.time.LocalDateTime;
import java.util.*;
import java.util.stream.Collectors;
@ -134,6 +135,8 @@ public class CouponServiceImpl implements CouponService {
// 校验存在
validateCouponExists(id);
// 查询优惠券信息
CouponDO couponDO = couponMapper.selectById(id);
// 更新优惠劵
int deleteCount = couponMapper.delete(id,
asList(CouponStatusEnum.UNUSED.getStatus(), CouponStatusEnum.EXPIRE.getStatus()));
@ -141,7 +144,7 @@ public class CouponServiceImpl implements CouponService {
throw exception(COUPON_DELETE_FAIL_USED);
}
// 传入优惠券模板ID减少优惠劵模板的领取数量 -1
couponTemplateService.updateCouponTemplateTakeCount(couponMapper.selectById(id).getTemplateId(), -1);
couponTemplateService.updateCouponTemplateTakeCount(couponDO.getTemplateId(), -1);
}
@Override