From 32c6afd546e8ba7c8fd97be0b37550c797bc8162 Mon Sep 17 00:00:00 2001
From: luofl <1442745593@qq.com>
Date: 星期三, 12 二月 2025 09:25:40 +0800
Subject: [PATCH] 修改物流信息导入模板
---
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java | 131 ++++++++++++++++++++++++++-----------------
1 files changed, 78 insertions(+), 53 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..efbe37e 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
@@ -142,6 +142,9 @@
throw new RuntimeException("根据类型(1=服务商品,2=单品商品)获取商品数据失败");
}
List<Integer> goodsIds = data.stream().map(Goods::getId).collect(Collectors.toList());
+ if(goodsIds.isEmpty()){
+ return new ArrayList<>();
+ }
//查询符合商品类型的商品数据
List<ShoppingCart> list = this.list(new LambdaQueryWrapper<ShoppingCart>().eq(ShoppingCart::getAppUserId, userid)
.in(ShoppingCart::getGoodsId, goodsIds).eq(ShoppingCart::getStatus, 1));
@@ -330,9 +333,27 @@
@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()){
+
+ Integer maxNum = 0;
+ if(shoppingCart.getType() == 2){
+ R<SeckillActivityInfo> r = seckillActivityInfoClient.getSeckillActivityInfoByGoodsId(shoppingCart.getGoodsId());
+ if (R.isError(r)){
+ throw new ServiceException("获取秒杀商品失败!");
+ }
+ SeckillActivityInfo seckillActivityInfo = r.getData();
+ maxNum = seckillActivityInfo.getMaxNum();
+ }else {
+ maxNum = goods.getPurchaseLimit();
+ }
+
+ if(null != goods.getPurchaseLimit() && -1 != maxNum && (goodsSaleNum + shoppingCart.getNumber()) > maxNum){
throw new ServiceException("超出购买数量限制");
}
ShoppingCart one = this.getOne(new LambdaQueryWrapper<ShoppingCart>().eq(ShoppingCart::getAppUserId, userid)
@@ -358,13 +379,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 +387,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("修改数量不能大于限购数量");
}
@@ -1130,16 +1147,18 @@
jsonObject.put("transferablePoint", earnPoint1);
}
- UserPoint userPoint = new UserPoint();
- userPoint.setType(1);
- userPoint.setHistoricalPoint(lavePoint);
- userPoint.setVariablePoint(earnPoint);
- userPoint.setBalance(appUser.getLavePoint());
- userPoint.setCreateTime(LocalDateTime.now());
- userPoint.setAppUserId(appUser.getId());
- userPoint.setObjectId(order.getId());
- userPoint.setExtention(jsonObject.toJSONString());
- userPointClient.saveUserPoint(userPoint);
+ if(earnPoint > 0){
+ UserPoint userPoint = new UserPoint();
+ userPoint.setType(1);
+ userPoint.setHistoricalPoint(lavePoint);
+ userPoint.setVariablePoint(earnPoint);
+ userPoint.setBalance(appUser.getLavePoint());
+ userPoint.setCreateTime(LocalDateTime.now());
+ userPoint.setAppUserId(appUser.getId());
+ userPoint.setObjectId(order.getId());
+ userPoint.setExtention(jsonObject.toJSONString());
+ userPointClient.saveUserPoint(userPoint);
+ }
}
appUser.setShopAmount(appUser.getShopAmount().add(paymentMoney).setScale(2, RoundingMode.HALF_EVEN));
appUser.setLastShopTime(LocalDateTime.now());
@@ -1196,7 +1215,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 +1223,7 @@
totalDistributionAmount = BigDecimal.ZERO;
balance = balance.subtract(paymentMoney1);
appUser.setTotalRedPacketAmount(totalRedPacketAmount);
- appUser.setTotalDistributionAmount(totalDistributionAmount);
+// appUser.setTotalDistributionAmount(totalDistributionAmount);
appUser.setBalance(balance);
distributionAmount = totalDistributionAmount;
}
@@ -1314,16 +1333,18 @@
}
//构建积分流水记录
- UserPoint userPoint = new UserPoint();
- userPoint.setType(11);
- userPoint.setHistoricalPoint(lavePoint);
- userPoint.setVariablePoint(orderPoint);
- userPoint.setBalance(appUser.getLavePoint());
- userPoint.setCreateTime(LocalDateTime.now());
- userPoint.setAppUserId(appUser.getId());
- userPoint.setObjectId(order.getId());
- userPoint.setExtention((tra >= 0 ? orderPoint : transferablePoint) + "");
- userPointClient.saveUserPoint(userPoint);
+ if(orderPoint > 0){
+ UserPoint userPoint = new UserPoint();
+ userPoint.setType(11);
+ userPoint.setHistoricalPoint(lavePoint);
+ userPoint.setVariablePoint(orderPoint);
+ userPoint.setBalance(appUser.getLavePoint());
+ userPoint.setCreateTime(LocalDateTime.now());
+ userPoint.setAppUserId(appUser.getId());
+ userPoint.setObjectId(order.getId());
+ userPoint.setExtention((tra >= 0 ? orderPoint : transferablePoint) + "");
+ userPointClient.saveUserPoint(userPoint);
+ }
appUser.setLastShopTime(LocalDateTime.now());
appUserClient.editAppUserById(appUser);
@@ -1353,7 +1374,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 +1382,7 @@
totalDistributionAmount = BigDecimal.ZERO;
balance = balance.subtract(expressFee1);
appUser.setTotalRedPacketAmount(totalRedPacketAmount);
- appUser.setTotalDistributionAmount(totalDistributionAmount);
+// appUser.setTotalDistributionAmount(totalDistributionAmount);
appUser.setBalance(balance);
distributionAmount = totalDistributionAmount;
}
@@ -1459,16 +1480,18 @@
jsonObject.put("transferablePoint", earnPoint1);
}
- UserPoint userPoint = new UserPoint();
- userPoint.setType(1);
- userPoint.setHistoricalPoint(lavePoint);
- userPoint.setVariablePoint(earnPoint);
- userPoint.setBalance(appUser.getLavePoint());
- userPoint.setCreateTime(LocalDateTime.now());
- userPoint.setAppUserId(appUser.getId());
- userPoint.setObjectId(order.getId());
- userPoint.setExtention(jsonObject.toJSONString());
- userPointClient.saveUserPoint(userPoint);
+ if(earnPoint > 0){
+ UserPoint userPoint = new UserPoint();
+ userPoint.setType(1);
+ userPoint.setHistoricalPoint(lavePoint);
+ userPoint.setVariablePoint(earnPoint);
+ userPoint.setBalance(appUser.getLavePoint());
+ userPoint.setCreateTime(LocalDateTime.now());
+ userPoint.setAppUserId(appUser.getId());
+ userPoint.setObjectId(order.getId());
+ userPoint.setExtention(jsonObject.toJSONString());
+ userPointClient.saveUserPoint(userPoint);
+ }
}
appUser.setShopAmount(appUser.getShopAmount().add(paymentMoney).setScale(2, RoundingMode.HALF_EVEN));
appUser.setLastShopTime(LocalDateTime.now());
@@ -1538,16 +1561,18 @@
}
//构建积分流水记录
- UserPoint userPoint = new UserPoint();
- userPoint.setType(11);
- userPoint.setHistoricalPoint(lavePoint);
- userPoint.setVariablePoint(orderPoint);
- userPoint.setBalance(appUser.getLavePoint());
- userPoint.setCreateTime(LocalDateTime.now());
- userPoint.setAppUserId(appUser.getId());
- userPoint.setObjectId(order.getId());
- userPoint.setExtention((tra >= 0 ? orderPoint : transferablePoint) + "");
- userPointClient.saveUserPoint(userPoint);
+ if(orderPoint > 0){
+ UserPoint userPoint = new UserPoint();
+ userPoint.setType(11);
+ userPoint.setHistoricalPoint(lavePoint);
+ userPoint.setVariablePoint(orderPoint);
+ userPoint.setBalance(appUser.getLavePoint());
+ userPoint.setCreateTime(LocalDateTime.now());
+ userPoint.setAppUserId(appUser.getId());
+ userPoint.setObjectId(order.getId());
+ userPoint.setExtention((tra >= 0 ? orderPoint : transferablePoint) + "");
+ userPointClient.saveUserPoint(userPoint);
+ }
//积分支付不反积分
--
Gitblit v1.7.1