无关风月
2025-01-14 07d470e55405cbfab1a7d38eeeb8907e741401df
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java
@@ -418,12 +418,14 @@
         BigDecimal bigDecimal = BigDecimal.ZERO;
         for (MyShoppingCartVo myShoppingCartVo : goodsList) {
            bigDecimal = bigDecimal.add(myShoppingCartVo.getCash().multiply(new BigDecimal(myShoppingCartVo.getNumber())));
            myShoppingCartVo.setEarnSpendingPoints(myShoppingCartVo.getEarnSpendingPoints() * myShoppingCartVo.getNumber());
         }
         confirmOrderVo.setOrderMoney(bigDecimal);
      }else{
         int sum = 0;
         for (MyShoppingCartVo myShoppingCartVo : goodsList) {
            sum += (myShoppingCartVo.getPoint() * myShoppingCartVo.getNumber());
            myShoppingCartVo.setEarnSpendingPoints(myShoppingCartVo.getEarnSpendingPoints() * myShoppingCartVo.getNumber());
         }
         confirmOrderVo.setOrderPoint(sum);
      }
@@ -569,11 +571,11 @@
                  }
               }else{
                  //部分商品适用
                  BigDecimal goodsMoney = BigDecimal.ZERO;
                   BigDecimal goodsMoney = BigDecimal.ZERO;
                  for (MyShoppingCartVo myShoppingCartVo : goodsList) {
                     Integer goodsId = myShoppingCartVo.getGoodsId();
                     BigDecimal cash = myShoppingCartVo.getCash();
                     if(forGoodIds.contains(goodsId)){
                     if(forGoodIds.contains(String.valueOf(goodsId))){
                        goodsMoney = goodsMoney.add(cash);
                     }
                  }
@@ -962,7 +964,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));
@@ -984,7 +986,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));
@@ -995,6 +997,7 @@
      order.setDelFlag(0);
      order.setCreateTime(LocalDateTime.now());
      order.setExpressPayMethod(shoppingCartPayment.getFreightPaymentType());
      order.setDistributionMode(shoppingCartPayment.getDistributionMode());
      if(2 == shoppingCartPayment.getPaymentType()){
         BigDecimal balance = appUser.getBalance();
@@ -1147,11 +1150,7 @@
                  userCouponClient.editUserCoupon(userCoupon);
               }
            }
            //添加查询快递信息队列
            if(StringUtils.isNotEmpty(order.getExpressJson())){
               //一小时后定时查询快递信息
               redisTemplate.opsForZSet().add("order_express", order.getId(), LocalDateTime.now().plusHours(1).toEpochSecond(ZoneOffset.UTC));
            }
            //删除购物车数据
            userid = tokenService.getLoginUserApplet().getUserid();
@@ -1264,11 +1263,7 @@
               userCouponClient.editUserCoupon(userCoupon);
            }
         }
         //添加查询快递信息队列
         if(StringUtils.isNotEmpty(order.getExpressJson())){
            //一小时后定时查询快递信息
            redisTemplate.opsForZSet().add("order_express", order.getId(), LocalDateTime.now().plusHours(1).toEpochSecond(ZoneOffset.UTC));
         }
      }
      //积分支付
      if(3 == shoppingCartPayment.getPaymentType()){
@@ -1391,14 +1386,7 @@
            //删除购物车数据
            this.removeBatchByIds(ids);
         }
         //添加查询快递信息队列
         if(StringUtils.isNotEmpty(order.getExpressJson())){
            //一小时后定时查询快递信息
            SystemConfig systemConfig = systemConfigClient.getSystemConfig(3).getData();
            JSONObject jsonObject = JSON.parseObject(systemConfig.getContent());
            Integer waitTime = jsonObject.getInteger("waitTime");
            redisTemplate.opsForZSet().add("order_express", order.getId(), LocalDateTime.now().plusHours(waitTime).toEpochSecond(ZoneOffset.UTC));
         }
      }
      //添加账户余额支付明细
@@ -1490,11 +1478,6 @@
            userCoupon.setUseTime(LocalDateTime.now());
            userCouponClient.editUserCoupon(userCoupon);
         }
      }
      //添加查询快递信息队列
      if(StringUtils.isNotEmpty(order.getExpressJson())){
         //一小时后定时查询快递信息
         redisTemplate.opsForZSet().add("order_express", order.getId(), LocalDateTime.now().plusHours(1).toEpochSecond(ZoneOffset.UTC));
      }
      //删除购物车数据