浏览代码

修复订单数量未及时更新导致订单金额异常的问题

liu 2 月之前
父节点
当前提交
8d3b590099

+ 5 - 0
src/main/java/com/sqx/common/constant/RedisKey.java

@@ -112,4 +112,9 @@ public interface RedisKey {
      * 图片上传token缓存key 按ip限制
      */
     String IMAGE_UPLOAD_TOKEN_CACHE_KEY_IP_LIMIT = "wm:data:image:upload:token:ip:%s";
+
+    /**
+     * 修改订单商品锁
+     */
+    String ORDER_GOODS_LOCK = "wm:lock:order:goods:update:%s";
 }

+ 29 - 23
src/main/java/com/sqx/modules/order/service/impl/AppAppOrderServiceImpl.java

@@ -1774,32 +1774,38 @@ public class AppAppOrderServiceImpl extends ServiceImpl<AppOrderDao, TbOrder> im
     @Transactional
     @Override
     public Result updateGoodsNum(Long orderGoodsId, Integer type, Integer num, Long shopId) {
-        // type = 1增加商品数  = 2 减少商品数
-        OrderGoods orderGoods = orderGoodsDao.selectById(orderGoodsId);
-        if (orderGoods == null) {
-            return Result.error("系统繁忙,请稍后再试!");
-        }
-        GoodsShopRelevancy goodsShopRelevancy = goodsShopRelevancyDao.selectOne(new QueryWrapper<GoodsShopRelevancy>()
-                .eq("shop_id", shopId)
-                .eq("goods_id", orderGoods.getGoodsId()));
+        RLock lock = redissonClient.getLock(String.format(RedisKey.ORDER_GOODS_LOCK, orderGoodsId));
+        lock.lock();
+        try {
+            // type = 1增加商品数  = 2 减少商品数
+            OrderGoods orderGoods = orderGoodsDao.selectById(orderGoodsId);
+            if (orderGoods == null) {
+                return Result.error("系统繁忙,请稍后再试!");
+            }
+            GoodsShopRelevancy goodsShopRelevancy = goodsShopRelevancyDao.selectOne(new QueryWrapper<GoodsShopRelevancy>()
+                    .eq("shop_id", shopId)
+                    .eq("goods_id", orderGoods.getGoodsId()));
 
-        if (type == 1 && goodsShopRelevancy.getInventory() <= orderGoods.getGoodsNum()) {
-            return Result.error("该商品库存不足,不能再添加商品!");
-        }
-        if (type == 1) {
-            OrderGoods orderGoods1 = new OrderGoods();
-            orderGoods1.setId(orderGoodsId);
-            orderGoods1.setGoodsNum(orderGoods.getGoodsNum() + num);
-            orderGoodsDao.updateById(orderGoods1);
-        } else {
-            if (orderGoods.getGoodsNum() <= 1) {
-                orderGoodsDao.deleteById(orderGoodsId);
+            if (type == 1 && goodsShopRelevancy.getInventory() <= orderGoods.getGoodsNum()) {
+                return Result.error("该商品库存不足,不能再添加商品!");
+            }
+            if (type == 1) {
+                OrderGoods orderGoods1 = new OrderGoods();
+                orderGoods1.setId(orderGoodsId);
+                orderGoods1.setGoodsNum(orderGoods.getGoodsNum() + num);
+                orderGoodsDao.updateById(orderGoods1);
             } else {
-                OrderGoods orderGoods2 = new OrderGoods();
-                orderGoods2.setId(orderGoodsId);
-                orderGoods2.setGoodsNum(orderGoods.getGoodsNum() - num);
-                orderGoodsDao.updateById(orderGoods2);
+                if (orderGoods.getGoodsNum() <= 1) {
+                    orderGoodsDao.deleteById(orderGoodsId);
+                } else {
+                    OrderGoods orderGoods2 = new OrderGoods();
+                    orderGoods2.setId(orderGoodsId);
+                    orderGoods2.setGoodsNum(orderGoods.getGoodsNum() - num);
+                    orderGoodsDao.updateById(orderGoods2);
+                }
             }
+        } finally {
+            lock.unlock();
         }
         return Result.success();
     }

+ 233 - 1
src/test/java/OrderTest.java

@@ -1,28 +1,49 @@
 import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.ekyong.www.pay.pay.qrcode.api.RhtQrcodePayApi;
+import com.ekyong.www.pay.pay.qrcode.bean.QrcodeQueryRequestBean;
+import com.ekyong.www.pay.pay.qrcode.bean.QrcodeQueryResponseBean;
 import com.sqx.SqxApplication;
+import com.sqx.common.utils.Constant;
+import com.sqx.common.utils.DateUtils;
 import com.sqx.common.utils.RedisUtils;
+import com.sqx.common.utils.Result;
+import com.sqx.modules.activity.entity.ActivityPartRecord;
 import com.sqx.modules.activity.service.ActivityPartRecordService;
 import com.sqx.modules.app.dao.UserMoneyDetailsDao;
 import com.sqx.modules.app.entity.UserMoneyDetails;
 import com.sqx.modules.app.service.UserMoneyDetailsService;
 import com.sqx.modules.app.service.UserMoneyService;
+import com.sqx.modules.common.entity.CommonInfo;
 import com.sqx.modules.common.service.CommonInfoService;
 import com.sqx.modules.coupon.dao.TbCouponUserDao;
+import com.sqx.modules.coupon.entity.TbCouponUser;
+import com.sqx.modules.errand.entity.TbIndent;
+import com.sqx.modules.errand.entity.TbIndentSmsSendLog;
+import com.sqx.modules.errand.service.TbIndentService;
+import com.sqx.modules.errand.service.TbIndentSmsSendLogService;
+import com.sqx.modules.goods.entity.GoodsShop;
 import com.sqx.modules.goods.service.GoodsShopService;
 import com.sqx.modules.order.dao.AppOrderDao;
 import com.sqx.modules.order.entity.TbOrder;
 import com.sqx.modules.order.service.AppOrderService;
+import com.sqx.modules.pay.config.WechatPayConfig;
 import com.sqx.modules.pay.service.WxService;
 import com.sqx.modules.shop.service.ShopMessageService;
 import com.sqx.scheduler.order.OrderScheduler;
 import lombok.extern.slf4j.Slf4j;
-import org.junit.jupiter.api.Test;
+import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.context.junit4.SpringRunner;
 
 import javax.annotation.Resource;
+import java.math.BigDecimal;
+import java.text.SimpleDateFormat;
 import java.util.Arrays;
 import java.util.Date;
 import java.util.List;
@@ -78,6 +99,12 @@ public class OrderTest {
     @Autowired
     private GoodsShopService goodsShopService;
 
+    @Autowired
+    private TbIndentSmsSendLogService smsSendLogService;
+
+    @Autowired
+    private TbIndentService tbIndentService;
+
     @Test
     public void test() {
         TbOrder tbOrder = appOrderService.selectOrderByNum("202603111524117723");
@@ -287,4 +314,209 @@ public class OrderTest {
     }
 
 
+    public static void main(String[] args) throws Exception {
+        WechatPayConfig wechatMchConfig = WechatPayConfig.builder()
+                .appId("wx45ab46867002aa0b")
+                .mchId("866360132440001")
+                .mchKey("B9591F61B1944A93938DD3DFA9070763")
+                .h5Url("https://mxys.chuanghai-tech.com")
+                .build();
+
+        RhtQrcodePayApi qrcodePay = new RhtQrcodePayApi(wechatMchConfig.getMchId(), wechatMchConfig.getMchKey(), "https://api.ekbuyclub.com");
+
+        String orderNumberStr =
+                "118702260413005915377980"
+                ;
+        for (String orderNumber : orderNumberStr.split(",")) {
+            QrcodeQueryRequestBean qqrb = new QrcodeQueryRequestBean();
+            // qqrb.setTraceno(orderNumber);// 商户流水号
+            qqrb.setRefno(orderNumber);// 商户流水号
+            QrcodeQueryResponseBean response2 = qrcodePay.query(qqrb);
+            System.out.println("订单【" + orderNumber + "】查询响应2" + response2);
+            String respCode = response2.getRespCode();
+            if ("0".equals(respCode)) {
+                System.out.println("订单【" + orderNumber + "】未支付2");
+            } else if ("1".equals(respCode)) {
+                System.out.println("订单【" + orderNumber + "】已经支付2");
+            }
+        }
+    }
+    @Test
+    public void test3() {
+//        Integer orderId=2201878;
+//        TbOrder tbOrder = appOrderDao.selectById(orderId);
+//        String format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
+//        TbIndent indent = tbIndentService.getOne(new QueryWrapper<TbIndent>().eq("order_id", orderId));
+//
+//        log.info("订单id【{}】,开始计算商户应得金额", orderId);
+//
+//        GoodsShop goodsShop = shopMessageService.selectShopId(tbOrder.getShopId());
+
+        // 计算商户应得金额
+//        BigDecimal shopRate = goodsShop.getShopRate();
+//        商家抽拥比例
+        BigDecimal shopRate = new BigDecimal(0.955);
+//        BigDecimal sumMoney = tbOrder.getPayMoney();
+//        订单实付金额
+        BigDecimal sumMoney = new BigDecimal(44.6);
+//        当前无优惠券
+        BigDecimal couponMoney = BigDecimal.ZERO;
+        Long shopIds = -1L;
+//        if (tbOrder.getCouponId() != null) {
+//            TbCouponUser tbCouponUser = tbCouponUserDao.selectById(tbOrder.getCouponId());
+//            sumMoney = tbOrder.getPayMoney().add(tbCouponUser.getMoney());
+//            couponMoney = tbCouponUser.getMoney();
+//            shopIds = tbCouponUser.getShopId();
+//        }
+
+        BigDecimal errandMoney = BigDecimal.ZERO;
+
+//        if (tbOrder.getOrderType() != 1) {
+            //判断是否达到商家满减  如果达到商家满减 跑腿费让商家承担
+//            if (tbOrder.getAutoSendOrder() != null && tbOrder.getAutoSendOrder() == 0) {
+//                errandMoney = tbOrder.getErrandMoney();
+                errandMoney = new BigDecimal(1.00);
+//                sumMoney = sumMoney.subtract(tbOrder.getErrandMoney());
+                sumMoney = sumMoney.subtract(errandMoney);
+//            } else {
+//                sumMoney = sumMoney.subtract(tbOrder.getErrandMoney());
+//                errandMoney = tbOrder.getErrandMoney();
+//            }
+//        }
+
+        // 再减去校内配送费
+//        sumMoney = sumMoney.subtract(tbOrder.getInsideDeliveryFee());
+
+        // 店铺收入
+        BigDecimal shopMoney = sumMoney.multiply(shopRate);
+        shopMoney = shopMoney.setScale(2, BigDecimal.ROUND_DOWN);
+        BigDecimal pingRate = sumMoney.subtract(shopMoney);
+
+        // 商家配送短信服务费
+        BigDecimal smsSendMoney = BigDecimal.ZERO;
+//        if (tbOrder.getAutoSendOrder() != null && tbOrder.getAutoSendOrder() == 1) {
+//            // 查询短信发送结果
+//            if (ObjectUtil.isNotNull(indent)) {
+//                TbIndentSmsSendLog smsSendLog = smsSendLogService.getSendSuccessByOrderId(indent.getIndentId());
+//                if (ObjectUtil.isNotNull(smsSendLog)) {
+//                    // 查询短信发送费用
+//                    CommonInfo commonInfo = commonInfoService.findOne(421);
+//                    smsSendMoney = new BigDecimal(commonInfo.getValue());
+//
+//                    // 店铺收入-短信费用
+//                    shopMoney = shopMoney.subtract(smsSendMoney);
+//                }
+//            }
+//        }
+
+        // 这里再判断 是否是商家优惠券  如果是商家优惠券  这笔钱商家承担
+        if (shopIds != -1 && shopIds != 0) {
+            shopMoney = shopMoney.subtract(couponMoney);
+        }
+
+        // 判断订单是否参与活动,如果参与活动,则优惠金额由商家承担
+//        ActivityPartRecord activityPartRecord = activityPartRecordService.getByOrderId(tbOrder.getOrderId());
+        BigDecimal activityDiscountAmount = BigDecimal.ZERO;
+//        if (ObjectUtil.isNotNull(activityPartRecord)) {
+//            activityDiscountAmount = activityPartRecord.getDiscountAmount();
+//        当前订单优惠金额
+            activityDiscountAmount = new BigDecimal(2.000000);
+//        }
+
+//        if (tbOrder.getAutoSendOrder() != null && tbOrder.getAutoSendOrder() == 1) {
+//            //如果达到商家满减 则商家不加上配送费
+//            if (!"本单已达到商家满减金额,跑腿费由商家承担".equals(tbOrder.getErrandMoneyIsShop())) {
+//                shopMoney = shopMoney.add(tbOrder.getErrandMoney());
+//            }
+//        } else {
+//            /*if("本单已达到商家满减金额,跑腿费由商家承担".equals(tbOrder.getErrandMoneyIsShop())){
+//                shopMoney=shopMoney.subtract(tbOrder.getErrandMoney());
+//            }*/
+//        }
+
+        StringBuffer contentBuffer = new StringBuffer();
+        BigDecimal rider = new BigDecimal(0);
+//        当前是骑手配送,并且额外配送费是0
+//        if (ObjectUtils.isNotEmpty(tbOrder.getOrderTypeExtra()) && tbOrder.getOrderTypeExtra() == 2) {
+            //        获取骑手额外配送费
+            //        配送费大于等于1.5就不需要骑手额外配送费
+//            if (tbOrder.getErrandMoney().doubleValue()<1.5) {
+//            CommonInfo commonInfo = commonInfoService.findOne(443);
+//            if (ObjectUtils.isNotEmpty(commonInfo)) {
+//                rider = rider.add(new BigDecimal(commonInfo.getValue()));
+//                shopMoney = shopMoney.subtract(rider);
+//            }
+////            }
+//            log.info("订单id【{}】,骑手额外配送费【{}】", orderId, rider);
+//        }
+
+//        tbOrder.setShopIncomeMoney(shopMoney);
+        System.out.println("shop_income_money商家本单收入 = " + shopMoney);
+//        log.info("订单id【{}】,商户应得金额计算完毕", orderId);
+//        log.info("订单id【{}】,开始添加商户用户钱包收入记录", orderId);
+
+        // 添加商户用户钱包收入记录
+        UserMoneyDetails userMoneyDetails1 = new UserMoneyDetails();
+//        userMoneyDetails1.setShopId(goodsShop.getShopId());
+        userMoneyDetails1.setShopId(438L);
+        userMoneyDetails1.setTitle("商户订单收入,订单号:" + "202604121145576836");
+        // 订单金额
+//        BigDecimal orderAmount = tbOrder.getPayMoney().add(couponMoney).add(activityDiscountAmount);
+
+        BigDecimal orderAmount =  new BigDecimal(44.60).add(couponMoney).add(activityDiscountAmount);
+
+        contentBuffer.append("订单金额:").append(orderAmount.setScale(2, BigDecimal.ROUND_DOWN));
+        if (!couponMoney.equals(BigDecimal.ZERO)) {
+            contentBuffer.append(",优惠券金额:").append(couponMoney.setScale(2, BigDecimal.ROUND_DOWN));
+        }
+        if (!activityDiscountAmount.equals(BigDecimal.ZERO)) {
+            contentBuffer.append(",活动优惠金额:").append(activityDiscountAmount.setScale(2, BigDecimal.ROUND_DOWN));
+        }
+
+//        contentBuffer.append(",用户实付金额:").append(tbOrder.getPayMoney()).append(",其中");
+        contentBuffer.append(",用户实付金额:").append(new BigDecimal(44.60)).append(",其中");
+
+//        if (tbOrder.getOrderType() != 1) {
+        if (2 != 1) {
+//            contentBuffer.append("跑腿费:").append(errandMoney.setScale(2, BigDecimal.ROUND_DOWN)).append("(").append(tbOrder.getErrandMoneyIsShop()).append(")").append(",");
+            contentBuffer.append("跑腿费:").append(errandMoney.setScale(2, BigDecimal.ROUND_DOWN)).append("(").append("商家未开启配送费满减,跑腿费由用户承担").append(")").append(",");
+        }
+
+
+//        contentBuffer.append("特殊地址跑腿费:").append(tbOrder.getInsideDeliveryFee().setScale(2, BigDecimal.ROUND_DOWN)).append(",");
+        contentBuffer.append("特殊地址跑腿费:").append(new BigDecimal(0.000000).setScale(2, BigDecimal.ROUND_DOWN)).append(",");
+        contentBuffer.append("平台服务费:").append(pingRate.setScale(2, BigDecimal.ROUND_DOWN)).append(",");
+        contentBuffer.append("短信服务费:").append(smsSendMoney.setScale(2, BigDecimal.ROUND_DOWN)).append(",");
+//        if (ObjectUtils.isNotEmpty(tbOrder.getOrderTypeExtra()) && tbOrder.getOrderTypeExtra() == 2) {
+            contentBuffer.append("骑手额外配送费:").append(rider.setScale(2, BigDecimal.ROUND_DOWN)).append(",");
+//        }
+
+        // 会员优惠
+//        if (StrUtil.equals(tbOrder.getVipPromotion(), Constant.YES)) {
+        if (StrUtil.equals("0", Constant.YES)) {
+            CommonInfo commonInfo = commonInfoService.findOne(444);
+            contentBuffer.append("会员优惠金额:").append(commonInfo.getValue()).append("元,");
+        }
+
+        contentBuffer.append("到账金额:").append(shopMoney.setScale(2, BigDecimal.ROUND_DOWN));
+
+
+        if (shopIds == 0) {
+            contentBuffer.append("(本单为平台优惠券,平台补贴)");
+        } else if (shopIds != -1) {
+            contentBuffer.append("(本单为商家优惠券,商家补贴)");
+        }
+
+        userMoneyDetails1.setContent(contentBuffer.toString());
+
+        userMoneyDetails1.setType(1);
+        userMoneyDetails1.setClassify(3);
+        userMoneyDetails1.setMoney(shopMoney);
+//        userMoneyDetails1.setCreateTime(format);
+        userMoneyDetails1.setState(2);
+        System.out.println("userMoneyDetails1 = " + userMoneyDetails1);
+//        log.info("订单id【{}】,商户用户钱包收入记录新增成功", orderId);
+
+        //将用户支付的金额转入商户用户钱包
+    }
 }

+ 183 - 0
src/test/java/PlatformBillTest.java

@@ -1,4 +1,8 @@
+import cn.hutool.core.util.StrUtil;
 import com.sqx.SqxApplication;
+import com.sqx.common.utils.Constant;
+import com.sqx.modules.app.entity.UserMoneyDetails;
+import com.sqx.modules.common.entity.CommonInfo;
 import com.sqx.modules.reconciliation.service.PlatformBillService;
 import lombok.extern.slf4j.Slf4j;
 import org.junit.jupiter.api.Test;
@@ -7,6 +11,7 @@ import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.context.junit4.SpringRunner;
 
 import javax.annotation.Resource;
+import java.math.BigDecimal;
 import java.time.LocalDate;
 
 /**
@@ -32,4 +37,182 @@ public class PlatformBillTest {
         LocalDate date = LocalDate.now().minusDays(1);
         platformBillService.test(date);
     }
+
+    public static void main(String[] args) {
+//        Integer orderId=2201878;
+//        TbOrder tbOrder = appOrderDao.selectById(orderId);
+//        String format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
+//        TbIndent indent = tbIndentService.getOne(new QueryWrapper<TbIndent>().eq("order_id", orderId));
+//
+//        log.info("订单id【{}】,开始计算商户应得金额", orderId);
+//
+//        GoodsShop goodsShop = shopMessageService.selectShopId(tbOrder.getShopId());
+
+            // 计算商户应得金额
+//        BigDecimal shopRate = goodsShop.getShopRate();
+//        商家抽拥比例
+            BigDecimal shopRate = new BigDecimal(0.955);
+//        BigDecimal sumMoney = tbOrder.getPayMoney();
+//        订单实付金额
+            BigDecimal sumMoney = new BigDecimal(44.6);
+//        当前无优惠券
+            BigDecimal couponMoney = BigDecimal.ZERO;
+            Long shopIds = -1L;
+//        if (tbOrder.getCouponId() != null) {
+//            TbCouponUser tbCouponUser = tbCouponUserDao.selectById(tbOrder.getCouponId());
+//            sumMoney = tbOrder.getPayMoney().add(tbCouponUser.getMoney());
+//            couponMoney = tbCouponUser.getMoney();
+//            shopIds = tbCouponUser.getShopId();
+//        }
+
+            BigDecimal errandMoney = BigDecimal.ZERO;
+
+//        if (tbOrder.getOrderType() != 1) {
+            //判断是否达到商家满减  如果达到商家满减 跑腿费让商家承担
+//            if (tbOrder.getAutoSendOrder() != null && tbOrder.getAutoSendOrder() == 0) {
+//                errandMoney = tbOrder.getErrandMoney();
+            errandMoney = new BigDecimal(1.00);
+//                sumMoney = sumMoney.subtract(tbOrder.getErrandMoney());
+            sumMoney = sumMoney.subtract(errandMoney);
+//            } else {
+//                sumMoney = sumMoney.subtract(tbOrder.getErrandMoney());
+//                errandMoney = tbOrder.getErrandMoney();
+//            }
+//        }
+
+            // 再减去校内配送费
+//        sumMoney = sumMoney.subtract(tbOrder.getInsideDeliveryFee());
+
+            // 店铺收入
+            BigDecimal shopMoney = sumMoney.multiply(shopRate);
+            shopMoney = shopMoney.setScale(2, BigDecimal.ROUND_DOWN);
+            BigDecimal pingRate = sumMoney.subtract(shopMoney);
+
+            // 商家配送短信服务费
+            BigDecimal smsSendMoney = BigDecimal.ZERO;
+//        if (tbOrder.getAutoSendOrder() != null && tbOrder.getAutoSendOrder() == 1) {
+//            // 查询短信发送结果
+//            if (ObjectUtil.isNotNull(indent)) {
+//                TbIndentSmsSendLog smsSendLog = smsSendLogService.getSendSuccessByOrderId(indent.getIndentId());
+//                if (ObjectUtil.isNotNull(smsSendLog)) {
+//                    // 查询短信发送费用
+//                    CommonInfo commonInfo = commonInfoService.findOne(421);
+//                    smsSendMoney = new BigDecimal(commonInfo.getValue());
+//
+//                    // 店铺收入-短信费用
+//                    shopMoney = shopMoney.subtract(smsSendMoney);
+//                }
+//            }
+//        }
+
+            // 这里再判断 是否是商家优惠券  如果是商家优惠券  这笔钱商家承担
+            if (shopIds != -1 && shopIds != 0) {
+                shopMoney = shopMoney.subtract(couponMoney);
+            }
+
+            // 判断订单是否参与活动,如果参与活动,则优惠金额由商家承担
+//        ActivityPartRecord activityPartRecord = activityPartRecordService.getByOrderId(tbOrder.getOrderId());
+            BigDecimal activityDiscountAmount = BigDecimal.ZERO;
+//        if (ObjectUtil.isNotNull(activityPartRecord)) {
+//            activityDiscountAmount = activityPartRecord.getDiscountAmount();
+//        当前订单优惠金额
+            activityDiscountAmount = new BigDecimal(2.000000);
+//        }
+
+//        if (tbOrder.getAutoSendOrder() != null && tbOrder.getAutoSendOrder() == 1) {
+//            //如果达到商家满减 则商家不加上配送费
+//            if (!"本单已达到商家满减金额,跑腿费由商家承担".equals(tbOrder.getErrandMoneyIsShop())) {
+//                shopMoney = shopMoney.add(tbOrder.getErrandMoney());
+//            }
+//        } else {
+//            /*if("本单已达到商家满减金额,跑腿费由商家承担".equals(tbOrder.getErrandMoneyIsShop())){
+//                shopMoney=shopMoney.subtract(tbOrder.getErrandMoney());
+//            }*/
+//        }
+
+            StringBuffer contentBuffer = new StringBuffer();
+            BigDecimal rider = new BigDecimal(0);
+//        当前是骑手配送,并且额外配送费是0
+//        if (ObjectUtils.isNotEmpty(tbOrder.getOrderTypeExtra()) && tbOrder.getOrderTypeExtra() == 2) {
+            //        获取骑手额外配送费
+            //        配送费大于等于1.5就不需要骑手额外配送费
+//            if (tbOrder.getErrandMoney().doubleValue()<1.5) {
+//            CommonInfo commonInfo = commonInfoService.findOne(443);
+//            if (ObjectUtils.isNotEmpty(commonInfo)) {
+//                rider = rider.add(new BigDecimal(commonInfo.getValue()));
+//                shopMoney = shopMoney.subtract(rider);
+//            }
+////            }
+//            log.info("订单id【{}】,骑手额外配送费【{}】", orderId, rider);
+//        }
+
+//        tbOrder.setShopIncomeMoney(shopMoney);
+            System.out.println("shop_income_money商家本单收入 = " + shopMoney);
+//        log.info("订单id【{}】,商户应得金额计算完毕", orderId);
+//        log.info("订单id【{}】,开始添加商户用户钱包收入记录", orderId);
+
+            // 添加商户用户钱包收入记录
+            UserMoneyDetails userMoneyDetails1 = new UserMoneyDetails();
+//        userMoneyDetails1.setShopId(goodsShop.getShopId());
+            userMoneyDetails1.setShopId(438L);
+            userMoneyDetails1.setTitle("商户订单收入,订单号:" + "202604121145576836");
+            // 订单金额
+//        BigDecimal orderAmount = tbOrder.getPayMoney().add(couponMoney).add(activityDiscountAmount);
+
+            BigDecimal orderAmount =  new BigDecimal(44.60).add(couponMoney).add(activityDiscountAmount);
+
+            contentBuffer.append("订单金额:").append(orderAmount.setScale(2, BigDecimal.ROUND_DOWN));
+            if (!couponMoney.equals(BigDecimal.ZERO)) {
+                contentBuffer.append(",优惠券金额:").append(couponMoney.setScale(2, BigDecimal.ROUND_DOWN));
+            }
+            if (!activityDiscountAmount.equals(BigDecimal.ZERO)) {
+                contentBuffer.append(",活动优惠金额:").append(activityDiscountAmount.setScale(2, BigDecimal.ROUND_DOWN));
+            }
+
+//        contentBuffer.append(",用户实付金额:").append(tbOrder.getPayMoney()).append(",其中");
+            contentBuffer.append(",用户实付金额:").append(new BigDecimal(44.60)).append(",其中");
+
+//        if (tbOrder.getOrderType() != 1) {
+            if (2 != 1) {
+//            contentBuffer.append("跑腿费:").append(errandMoney.setScale(2, BigDecimal.ROUND_DOWN)).append("(").append(tbOrder.getErrandMoneyIsShop()).append(")").append(",");
+                contentBuffer.append("跑腿费:").append(errandMoney.setScale(2, BigDecimal.ROUND_DOWN)).append("(").append("商家未开启配送费满减,跑腿费由用户承担").append(")").append(",");
+            }
+
+
+//        contentBuffer.append("特殊地址跑腿费:").append(tbOrder.getInsideDeliveryFee().setScale(2, BigDecimal.ROUND_DOWN)).append(",");
+            contentBuffer.append("特殊地址跑腿费:").append(new BigDecimal(0.000000).setScale(2, BigDecimal.ROUND_DOWN)).append(",");
+            contentBuffer.append("平台服务费:").append(pingRate.setScale(2, BigDecimal.ROUND_DOWN)).append(",");
+            contentBuffer.append("短信服务费:").append(smsSendMoney.setScale(2, BigDecimal.ROUND_DOWN)).append(",");
+//        if (ObjectUtils.isNotEmpty(tbOrder.getOrderTypeExtra()) && tbOrder.getOrderTypeExtra() == 2) {
+            contentBuffer.append("骑手额外配送费:").append(rider.setScale(2, BigDecimal.ROUND_DOWN)).append(",");
+//        }
+
+            // 会员优惠
+//        if (StrUtil.equals(tbOrder.getVipPromotion(), Constant.YES)) {
+            if (StrUtil.equals("0", Constant.YES)) {
+                contentBuffer.append("会员优惠金额:").append(2).append("元,");
+            }
+
+            contentBuffer.append("到账金额:").append(shopMoney.setScale(2, BigDecimal.ROUND_DOWN));
+
+
+            if (shopIds == 0) {
+                contentBuffer.append("(本单为平台优惠券,平台补贴)");
+            } else if (shopIds != -1) {
+                contentBuffer.append("(本单为商家优惠券,商家补贴)");
+            }
+
+            userMoneyDetails1.setContent(contentBuffer.toString());
+
+            userMoneyDetails1.setType(1);
+            userMoneyDetails1.setClassify(3);
+            userMoneyDetails1.setMoney(shopMoney);
+//        userMoneyDetails1.setCreateTime(format);
+            userMoneyDetails1.setState(2);
+            System.out.println("userMoneyDetails1 = " + userMoneyDetails1);
+//        log.info("订单id【{}】,商户用户钱包收入记录新增成功", orderId);
+
+            //将用户支付的金额转入商户用户钱包
+
+    }
 }