From 2a4f0972408e27b8ef7afdc3a9195e301e06deb4 Mon Sep 17 00:00:00 2001 From: luodangjia <luodangjia> Date: 星期五, 17 一月 2025 10:53:31 +0800 Subject: [PATCH] 12.18 --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java | 25 +++++++++++++------------ 1 files changed, 13 insertions(+), 12 deletions(-) diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java index 64920fb..abe0af2 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java @@ -330,7 +330,12 @@ @Override public Long addGoods(ShoppingCart shoppingCart) { Long userid = tokenService.getLoginUserApplet().getUserid(); - Integer goodsSaleNum = orderService.getGoodsSaleNum(shoppingCart.getGoodsId(), null, userid); + long goodsSaleNum = orderService.getGoodsSaleNum(shoppingCart.getGoodsId(), null, userid); + long count = count(new LambdaQueryWrapper<ShoppingCart>() + .eq(ShoppingCart::getGoodsId, shoppingCart.getGoodsId()) + .eq(ShoppingCart::getStatus,1) + .eq(ShoppingCart::getAppUserId, userid)); + goodsSaleNum += count; Goods goods = goodsClient.getGoodsById(shoppingCart.getGoodsId()).getData(); if(null != goods.getPurchaseLimit() && -1 != goods.getPurchaseLimit() && (goodsSaleNum + shoppingCart.getNumber()) > goods.getPurchaseLimit()){ throw new ServiceException("超出购买数量限制"); @@ -358,13 +363,7 @@ @Override public R setGoodsNumber(SetGoodsNumber setGoodsNumber) { - Long userid = tokenService.getLoginUserApplet().getUserid(); ShoppingCart shoppingCart = this.getById(setGoodsNumber.getId()); - Integer goodsSaleNum = orderService.getGoodsSaleNum(shoppingCart.getGoodsId(), null, userid); - Goods goods = goodsClient.getGoodsById(shoppingCart.getGoodsId()).getData(); - if(null != goods.getPurchaseLimit() && -1 != goods.getPurchaseLimit() && (goodsSaleNum + shoppingCart.getNumber()) > goods.getPurchaseLimit()){ - throw new ServiceException("超出购买数量限制"); - } if(0 >= setGoodsNumber.getNumber()){ return R.fail("修改数量不能小于等于0"); } @@ -372,7 +371,9 @@ if(null != shoppingCart){ Goods goods1 = goodsClient.getGoodsById(shoppingCart.getGoodsId()).getData(); - if(null != goods1.getPurchaseLimit() && -1 != goods1.getPurchaseLimit() && goods1.getPurchaseLimit() < setGoodsNumber.getNumber()){ + if(null != goods1.getPurchaseLimit() && -1 != goods1.getPurchaseLimit() + && goods1.getPurchaseLimit() < setGoodsNumber.getNumber() + && setGoodsNumber.getNumber() >= shoppingCart.getNumber()){ return R.fail("修改数量不能大于限购数量"); } @@ -1196,7 +1197,7 @@ totalDistributionAmount = totalDistributionAmount.subtract(paymentMoney1); balance = balance.subtract(paymentMoney1); appUser.setTotalRedPacketAmount(totalRedPacketAmount); - appUser.setTotalDistributionAmount(totalDistributionAmount); +// appUser.setTotalDistributionAmount(totalDistributionAmount); appUser.setBalance(balance); distributionAmount = paymentMoney1; }else{ @@ -1204,7 +1205,7 @@ totalDistributionAmount = BigDecimal.ZERO; balance = balance.subtract(paymentMoney1); appUser.setTotalRedPacketAmount(totalRedPacketAmount); - appUser.setTotalDistributionAmount(totalDistributionAmount); +// appUser.setTotalDistributionAmount(totalDistributionAmount); appUser.setBalance(balance); distributionAmount = totalDistributionAmount; } @@ -1353,7 +1354,7 @@ totalDistributionAmount = totalDistributionAmount.subtract(expressFee1); balance = balance.subtract(expressFee1); appUser.setTotalRedPacketAmount(totalRedPacketAmount); - appUser.setTotalDistributionAmount(totalDistributionAmount); +// appUser.setTotalDistributionAmount(totalDistributionAmount); appUser.setBalance(balance); distributionAmount = expressFee1; }else{ @@ -1361,7 +1362,7 @@ totalDistributionAmount = BigDecimal.ZERO; balance = balance.subtract(expressFee1); appUser.setTotalRedPacketAmount(totalRedPacketAmount); - appUser.setTotalDistributionAmount(totalDistributionAmount); +// appUser.setTotalDistributionAmount(totalDistributionAmount); appUser.setBalance(balance); distributionAmount = totalDistributionAmount; } -- Gitblit v1.7.1