From 356b6e4b0a11a6e44717dc9b92beaacc9c0c4b7a Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期二, 06 八月 2024 10:13:18 +0800 Subject: [PATCH] 修改bug --- ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/inner/GoodsGroupPurchaseController.java | 91 ++++++++++++++++++++++++++++++++++++++------- 1 files changed, 76 insertions(+), 15 deletions(-) diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/inner/GoodsGroupPurchaseController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/inner/GoodsGroupPurchaseController.java index 4b0f319..3b5f8c3 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/inner/GoodsGroupPurchaseController.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/inner/GoodsGroupPurchaseController.java @@ -14,10 +14,13 @@ import com.ruoyi.system.api.domain.GoodsGroupPurchase; import com.ruoyi.goods.service.IGoodsGroupPurchaseService; import com.ruoyi.system.api.domain.GoodsSku; +import com.ruoyi.system.api.domain.Order; import com.ruoyi.system.api.feignClient.OrderClient; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; + +import java.util.List; /** * <p> @@ -80,22 +83,50 @@ wrapper6.eq(GoodsGroupPurchaseInfo::getMubre,goodsGroupPurchaseInfo.getMubre()); GoodsGroupPurchaseInfo one1 = goodsGroupPurchaseInfoServiceImpl.getOne(wrapper6); int i=one1.getCurrentNumber()-1; - if (i==0){ - GoodsGroupPurchase byId = goodsGroupPurchaseService.getById(one1.getGroupPurchaseId()); - int i1 = byId.getLimitNumber() * byId.getGroupSize(); - - GoodsSku goodsSku = goodsSkuMapper.selectById(byId.getGoodsSkuId()); - int i2 = i1 + goodsSku.getStock(); - goodsSku.setStock(i2); - goodsSkuMapper.updateById(goodsSku); - goodsGroupPurchaseInfoServiceImpl.removeById(one1); - }else{ - one1.setCurrentNumber(i); - if (one1.getGroupSize()>one1.getCurrentNumber()){ - one1.setGroupStatus(0); + if (one1.getIsPurchase()==0){ + if (i==0){ + GoodsGroupPurchase byId = goodsGroupPurchaseService.getById(one1.getGroupPurchaseId()); + int i1 = byId.getLimitNumber() * goodsGroupPurchaseInfo.getGroupSize(); + GoodsSku goodsSku = goodsSkuMapper.selectById(byId.getGoodsSkuId()); + int i2 = i1 + goodsSku.getStock(); + goodsSku.setStock(i2); + goodsSkuMapper.updateById(goodsSku); + /* goodsGroupPurchaseInfoServiceImpl.removeById(one1);*/ + }else{ + one1.setCurrentNumber(i); + goodsGroupPurchaseInfoServiceImpl.updateById(one1); } - goodsGroupPurchaseInfoServiceImpl.updateById(one1); + }else{ + if (i==0){ + GoodsGroupPurchase byId = goodsGroupPurchaseService.getById(one1.getGroupPurchaseId()); + + GoodsSku goodsSku = goodsSkuMapper.selectById(byId.getGoodsSkuId()); + int i2 = goodsGroupPurchaseInfo.getPurchaseNum() + goodsSku.getStock(); + goodsSku.setStock(i2); + goodsSkuMapper.updateById(goodsSku); + /* goodsGroupPurchaseInfoServiceImpl.removeById(one1);*/ + }else{ + one1.setCurrentNumber(i); + if (one1.getGroupSize()>one1.getCurrentNumber()){ + one1.setGroupStatus(0); + } + + Integer i3= one1.getPurchaseNum()-goodsGroupPurchaseInfo.getPurchaseNum(); + one1.setPurchaseNum(i3); + goodsGroupPurchaseInfoServiceImpl.updateById(one1); + + GoodsGroupPurchase byId = goodsGroupPurchaseService.getById(one1.getGroupPurchaseId()); + + GoodsSku goodsSku = goodsSkuMapper.selectById(byId.getGoodsSkuId()); + int i2 = goodsGroupPurchaseInfo.getPurchaseNum() + goodsSku.getStock(); + goodsSku.setStock(i2); + goodsSkuMapper.updateById(goodsSku); + /* goodsGroupPurchaseInfoServiceImpl.removeById(one1);*/ + + goodsGroupPurchaseInfoServiceImpl.updateById(one1); + } } + return R.ok(one1); } @@ -107,17 +138,47 @@ GoodsGroupPurchaseInfo byId = goodsGroupPurchaseInfoServiceImpl.getById(goodsGroupPurchaseInfo.getId()); Integer num= byId.getCurrentNumber()+1; byId.setCurrentNumber(num); + byId.setPurchaseNum(goodsGroupPurchaseInfo.getPurchaseNum()); + goodsGroupPurchaseInfoServiceImpl.updateById(byId); if (num==byId.getGroupSize()){ byId.setGroupStatus(1); + byId.setIsPurchase(1); + goodsGroupPurchaseInfoServiceImpl.updateById(byId); orderClient.updateOrderStatusByMubres1(byId.getMubre(), SecurityConstants.INNER); + + GoodsGroupPurchaseInfo byIds = goodsGroupPurchaseInfoServiceImpl.getById(goodsGroupPurchaseInfo.getId()); + GoodsGroupPurchase byId1 = goodsGroupPurchaseService.getById(byId.getGroupPurchaseId()); + int i1 = byId1.getLimitNumber() * byId.getGroupSize(); + if (byIds.getPurchaseNum()<i1){ + int i3=i1-byIds.getPurchaseNum(); + GoodsSku goodsSku = goodsSkuMapper.selectById(byId1.getGoodsSkuId()); + int i2 = i3 + goodsSku.getStock(); + goodsSku.setStock(i2); + goodsSkuMapper.updateById(goodsSku); + } + } - goodsGroupPurchaseInfoServiceImpl.updateById(byId); + }else{ if (goodsGroupPurchaseInfo.getCurrentNumber()==goodsGroupPurchaseInfo.getGroupSize()){ goodsGroupPurchaseInfo.setGroupStatus(1); + goodsGroupPurchaseInfo.setIsPurchase(1); orderClient.updateOrderStatusByMubres1(goodsGroupPurchaseInfo.getMubre(), SecurityConstants.INNER); } goodsGroupPurchaseInfoServiceImpl.save(goodsGroupPurchaseInfo); + if (goodsGroupPurchaseInfo.getCurrentNumber()==goodsGroupPurchaseInfo.getGroupSize()) { + + + GoodsGroupPurchase byId1 = goodsGroupPurchaseService.getById(goodsGroupPurchaseInfo.getGroupPurchaseId()); + int i1 = byId1.getLimitNumber() * goodsGroupPurchaseInfo.getGroupSize(); + if (goodsGroupPurchaseInfo.getPurchaseNum() < i1) { + int i3 = i1 - goodsGroupPurchaseInfo.getPurchaseNum(); + GoodsSku goodsSku = goodsSkuMapper.selectById(byId1.getGoodsSkuId()); + int i2 = i3 + goodsSku.getStock(); + goodsSku.setStock(i2); + goodsSkuMapper.updateById(goodsSku); + } + } } return R.ok(); -- Gitblit v1.7.1