Commit fdbebc406cb9d593e4c9fffc4c136eedc85270af
1 parent
42fcbe05
秒杀活动:纠正秒杀库存和秒杀总库存扣减错误的问题
Showing
2 changed files
with
4 additions
and
7 deletions
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/dal/dataobject/seckill/SeckillActivityDO.java
| @@ -77,8 +77,7 @@ public class SeckillActivityDO extends BaseDO { | @@ -77,8 +77,7 @@ public class SeckillActivityDO extends BaseDO { | ||
| 77 | private Integer singleLimitCount; | 77 | private Integer singleLimitCount; |
| 78 | 78 | ||
| 79 | /** | 79 | /** |
| 80 | - * 秒杀库存-秒杀下单时怎加,恢复库存是减少 | ||
| 81 | - * 也就是说这个是记录当前秒杀活动用户购买的商品数量和 | 80 | + * 秒杀库存(剩余库存秒杀时扣减) |
| 82 | */ | 81 | */ |
| 83 | private Integer stock; | 82 | private Integer stock; |
| 84 | /** | 83 | /** |
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/dal/mysql/seckill/seckillactivity/SeckillActivityMapper.java
| @@ -50,9 +50,8 @@ public interface SeckillActivityMapper extends BaseMapperX<SeckillActivityDO> { | @@ -50,9 +50,8 @@ public interface SeckillActivityMapper extends BaseMapperX<SeckillActivityDO> { | ||
| 50 | Assert.isTrue(count > 0); | 50 | Assert.isTrue(count > 0); |
| 51 | return update(null, new LambdaUpdateWrapper<SeckillActivityDO>() | 51 | return update(null, new LambdaUpdateWrapper<SeckillActivityDO>() |
| 52 | .eq(SeckillActivityDO::getId, id) | 52 | .eq(SeckillActivityDO::getId, id) |
| 53 | - .gt(SeckillActivityDO::getTotalStock, 0) | ||
| 54 | - .setSql("stock = stock + " + count) | ||
| 55 | - .setSql("total_stock = total_stock - " + count)); | 53 | + .gt(SeckillActivityDO::getStock, count) |
| 54 | + .setSql("stock = stock - " + count)); | ||
| 56 | } | 55 | } |
| 57 | 56 | ||
| 58 | /** | 57 | /** |
| @@ -66,8 +65,7 @@ public interface SeckillActivityMapper extends BaseMapperX<SeckillActivityDO> { | @@ -66,8 +65,7 @@ public interface SeckillActivityMapper extends BaseMapperX<SeckillActivityDO> { | ||
| 66 | Assert.isTrue(count > 0); | 65 | Assert.isTrue(count > 0); |
| 67 | return update(null, new LambdaUpdateWrapper<SeckillActivityDO>() | 66 | return update(null, new LambdaUpdateWrapper<SeckillActivityDO>() |
| 68 | .eq(SeckillActivityDO::getId, id) | 67 | .eq(SeckillActivityDO::getId, id) |
| 69 | - .setSql("stock = stock - " + count) | ||
| 70 | - .setSql("total_stock = total_stock + " + count)); | 68 | + .setSql("stock = stock + " + count)); |
| 71 | } | 69 | } |
| 72 | 70 | ||
| 73 | default PageResult<SeckillActivityDO> selectPage(AppSeckillActivityPageReqVO pageReqVO, Integer status) { | 71 | default PageResult<SeckillActivityDO> selectPage(AppSeckillActivityPageReqVO pageReqVO, Integer status) { |