luodangjia
2025-01-14 a04cc61a75c61025a4efcdd95b07d73b0f892ce9
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java
@@ -532,7 +532,7 @@
      confirmOrderVo.setDiscountAmount(activityAmount);
      int earnPoint = goodsList.stream().mapToInt(MyShoppingCartVo::getEarnSpendingPoints).sum();
      confirmOrderVo.setEarnPoint(earnPoint);
      if(BigDecimal.ZERO.compareTo(paymentMoney) > 0){
      if(null != paymentMoney && BigDecimal.ZERO.compareTo(paymentMoney) > 0){
         paymentMoney = BigDecimal.ZERO;
      }
@@ -543,6 +543,7 @@
      UserAddress userAddress = userAddressClient.getDefaultUserAddress(userid).getData();
      if(null != userAddress){
         userAddress.setIdStr(userAddress.getId().toString());
         userAddress.setRecieveAddress(userAddress.getProvince() + userAddress.getCity() + userAddress.getDistrict() + userAddress.getRecieveAddress());
         confirmOrderVo.setUserAddress(userAddress);
      }
      confirmOrderVo.setPaymentType(confirmOrder.getPaymentType());
@@ -961,7 +962,7 @@
      order.setGoodName(goodName.substring(0, goodName.length() - 1));
      Goods goods = goodsClient.getGoodsById(goodsList.get(0).getGoodsId()).getData();
      order.setOrderType(goods.getType());
      order.setOrderStatus(goods.getType() == 1 ? 3 : 1);
      order.setOrderStatus(goods.getType() == 1 ? 3 : (shoppingCartPayment.getDistributionMode() == 2 ? 1 : 2));
      SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
      order.setOrderNumber("QJS" + getNumber(3) + sdf.format(new Date()));
      order.setTotalAmount(orderMoney.setScale(2, RoundingMode.HALF_EVEN));
@@ -983,7 +984,7 @@
      if(null != orderActivityInfo1){
         order.setActivityJson(JSON.toJSONString(orderActivityInfo1));
      }
      if(null != shoppingCartPayment.getUserAddressId()){
      if(2 == shoppingCartPayment.getDistributionMode()){
         UserAddress address = userAddressClient.getUserAddressById(shoppingCartPayment.getUserAddressId()).getData();
         order.setExpressAmount(expressFee);
         order.setAddressJson(JSON.toJSONString(address));
@@ -994,6 +995,7 @@
      order.setDelFlag(0);
      order.setCreateTime(LocalDateTime.now());
      order.setExpressPayMethod(shoppingCartPayment.getFreightPaymentType());
      order.setDistributionMode(shoppingCartPayment.getDistributionMode());
      if(2 == shoppingCartPayment.getPaymentType()){
         BigDecimal balance = appUser.getBalance();
@@ -1238,6 +1240,7 @@
         //构建余额明细变动记录
         BalanceChangeRecord balanceChangeRecord = new BalanceChangeRecord();
         balanceChangeRecord.setAppUserId(appUser.getId());
         balanceChangeRecord.setVipId(appUser.getVipId());
         balanceChangeRecord.setOrderId(order.getId());
         balanceChangeRecord.setChangeType(5);
         balanceChangeRecord.setBeforeAmount(balance.add(paymentMoney));
@@ -1361,6 +1364,7 @@
               //构建余额明细变动记录
               BalanceChangeRecord balanceChangeRecord = new BalanceChangeRecord();
               balanceChangeRecord.setAppUserId(appUser.getId());
               balanceChangeRecord.setVipId(appUser.getVipId());
               balanceChangeRecord.setOrderId(order.getId());
               balanceChangeRecord.setChangeType(5);
               balanceChangeRecord.setBeforeAmount(balance.add(expressFee));
@@ -1495,10 +1499,15 @@
      }
      //删除购物车数据
      Long userid = tokenService.getLoginUserApplet().getUserid();
      Long userid = order.getAppUserId();
      List<OrderGood> list = orderGoodService.list(new LambdaQueryWrapper<OrderGood>().eq(OrderGood::getOrderId, order.getId()));
      List<Integer> goodsIds = list.stream().map(OrderGood::getGoodsId).collect(Collectors.toList());
      this.remove(new LambdaQueryWrapper<ShoppingCart>().eq(ShoppingCart::getAppUserId, userid).in(ShoppingCart::getGoodsId, goodsIds));
      //商品销量增加
      for (Integer goodsId : goodsIds) {
         goodsClient.editGoodsNum(goodsId, 1);
      }
      return R.ok();
   }