From 9bcc40d213a44498c46dae5e678e592b918b40b0 Mon Sep 17 00:00:00 2001 From: rentaiming <806181062@qq.com> Date: 星期四, 30 五月 2024 18:33:54 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java | 38 ++++++++++++++++++++++++++++---------- 1 files changed, 28 insertions(+), 10 deletions(-) diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java index 1e05cbd..2352ce6 100644 --- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java +++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.auction.controller.forepart.vo.MemberAuctionSalesroomVO; +import com.google.common.collect.Lists; import com.ruoyi.auction.controller.management.dto.AuctionGoodsDTO; import com.ruoyi.auction.controller.management.dto.AuctionGoodsQuery; import com.ruoyi.auction.controller.management.vo.AuctionBidRecordVO; @@ -28,6 +29,15 @@ import com.ruoyi.common.core.utils.page.PageDTO; import com.ruoyi.system.api.domain.AuctionGoods; import com.ruoyi.system.api.domain.dto.*; +import com.ruoyi.system.api.domain.dto.AuctionGoodsListDTO; +import com.ruoyi.system.api.domain.dto.AuctionGoodsListPageDTO; +import com.ruoyi.system.api.domain.GoodsSku; +import com.ruoyi.system.api.domain.Member; +import com.ruoyi.system.api.domain.MemberAddress; +import com.ruoyi.system.api.domain.OrderAuctionBond; +import com.ruoyi.system.api.domain.dto.GoodsStockUpdDTO; +import com.ruoyi.system.api.domain.dto.OrderDTO; +import com.ruoyi.system.api.domain.dto.RefundDTO; import com.ruoyi.system.api.domain.vo.AuctionGoodsListVO; import com.ruoyi.system.api.domain.vo.AuctionGoodsinfoVO; import com.ruoyi.system.api.feignClient.GoodsSkuClient; @@ -108,8 +118,8 @@ } @Override - @GlobalTransactional(rollbackFor = Exception.class) @Transactional + @GlobalTransactional(rollbackFor = Exception.class) public void saveAuctionGoods(AuctionGoodsDTO dto) { Long id = dto.getId(); Long goodsSkuId = dto.getGoodsSkuId(); @@ -129,7 +139,11 @@ } this.save(auctionGoods); // 扣减商品库存 - goodsSkuClient.deductStock(goodsSkuId, dto.getAuctionStock(), SecurityConstants.INNER); + GoodsStockUpdDTO goodsStockUpdDTO = new GoodsStockUpdDTO(); + goodsStockUpdDTO.setGoodsSkuId(goodsSkuId); + goodsStockUpdDTO.setAuctionStock(dto.getAuctionStock() * -1); + goodsSkuClient.updGoodsStock(Lists.newArrayList(goodsStockUpdDTO), + SecurityConstants.INNER); } else { // 编辑 AuctionGoods auctionGoodsOrg = this.getById(id); @@ -150,9 +164,6 @@ if (goodsSku.getStock() + auctionGoodsOrg.getAuctionStock() < dto.getAuctionStock()) { throw new ServiceException("商品库存不足"); } - // 编辑商品时需要先回退商品库存,再扣减最新的商品库存 - goodsSkuClient.returningStock(auctionGoodsOrg.getGoodsSkuId(), - auctionGoodsOrg.getAuctionStock(), SecurityConstants.INNER); auctionGoodsOrg.setStartingPrice(dto.getStartingPrice()); auctionGoodsOrg.setMinimumMarkupAmount(dto.getMinimumMarkupAmount()); auctionGoodsOrg.setStartTime(dto.getStartTime()); @@ -164,9 +175,13 @@ auctionGoodsOrg.setShareTitle(dto.getShareTitle()); auctionGoodsOrg.setSharePic(dto.getSharePic()); this.updateById(auctionGoodsOrg); - // 扣减库存 - goodsSkuClient.deductStock(auctionGoodsOrg.getGoodsSkuId(), - auctionGoodsOrg.getAuctionStock(), SecurityConstants.INNER); + // 更新商品库存 + GoodsStockUpdDTO goodsStockUpdDTO = new GoodsStockUpdDTO(); + goodsStockUpdDTO.setGoodsSkuId(goodsSkuId); + goodsStockUpdDTO.setAuctionStock( + auctionGoodsOrg.getAuctionStock() - dto.getAuctionStock()); + goodsSkuClient.updGoodsStock(Lists.newArrayList(goodsStockUpdDTO), + SecurityConstants.INNER); } } @@ -253,8 +268,11 @@ orderClient.saveOrderOne(orderDTO, SecurityConstants.INNER); } else { // 没有人出价,退回拍卖商品库存 - goodsSkuClient.returningStock(auctionGoods.getGoodsSkuId(), - auctionGoods.getAuctionStock(), SecurityConstants.INNER); + GoodsStockUpdDTO goodsStockUpdDTO = new GoodsStockUpdDTO(); + goodsStockUpdDTO.setGoodsSkuId(auctionGoods.getGoodsSkuId()); + goodsStockUpdDTO.setAuctionStock(auctionGoods.getAuctionStock()); + goodsSkuClient.updGoodsStock(Lists.newArrayList(goodsStockUpdDTO), + SecurityConstants.INNER); } // 结束拍卖 this.lambdaUpdate().set(AuctionGoods::getStartStatus, AuctionStartStatusEnum.ENDED) -- Gitblit v1.7.1