From c3b7673c16d026e57f8759b4cee99a42bf3c57f2 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期三, 24 九月 2025 09:15:44 +0800
Subject: [PATCH] 修改bug

---
 DriverZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ReassignServiceImpl.java |   26 +++++++++-----------------
 1 files changed, 9 insertions(+), 17 deletions(-)

diff --git a/DriverZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ReassignServiceImpl.java b/DriverZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ReassignServiceImpl.java
index 651e9bd..069d259 100644
--- a/DriverZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ReassignServiceImpl.java
+++ b/DriverZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ReassignServiceImpl.java
@@ -96,18 +96,9 @@
      */
     @Override
     public ResultUtil saveData(Reassign reassign, Integer uid, Integer type) throws Exception {
-        boolean lock = redisUtil.lock(reassign.getOrderId() + "_reassign", 10);
+        boolean lock = redisUtil.lock(reassign.getOrderId() + "_reassign", 10, 30);
         if(!lock){
-            int num1 = 1;
-            while (num1 <= 10){
-                Thread.sleep(3000);//等待3秒
-                lock = redisUtil.lock(reassign.getOrderId() + "_reassign", 10);
-                if(lock){
-                    break;
-                }else{
-                    num1++;
-                }
-            }
+            return ResultUtil.error("系统繁忙,请稍后重试");
         }
     
         ResultUtil resultUtil = ResultUtil.success();
@@ -190,7 +181,7 @@
                     driver.setBalance(new BigDecimal(balance).subtract(new BigDecimal(aDouble)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
                     driverService.updateById(driver);
                     //添加交易明细
-                    transactionDetailsService.saveData(uid, "司机改派支付", aDouble, 2, 1, 2, reassign.getOrderType(), reassign.getOrderId());
+                    transactionDetailsService.saveDriverData(uid, "司机改派支付", aDouble, 2, 1, 2, reassign.getOrderType(), reassign.getOrderId(), driver.getLaveBusinessMoney());
             
             
                     //修改改派通知状态
@@ -345,8 +336,6 @@
                     query.setState(2);
                     query.setPayTime(new Date());
                     reassignMapper.updateById(query);
-                    //添加交易明细
-                    transactionDetailsService.saveData(uid, "司机改派支付", aDouble, 2, 1, 2, 3, Integer.valueOf(id));
                 }
                 Double balance = driver.getBalance();
                 if(null == balance || balance < totalMoney){
@@ -354,7 +343,10 @@
                 }
                 driver.setBalance(new BigDecimal(balance).subtract(new BigDecimal(totalMoney)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
                 driverService.updateById(driver);
-
+                for(String id : split){
+                    //添加交易明细
+                    transactionDetailsService.saveDriverData(uid, "司机改派支付", aDouble, 2, 1, 2, 3, Integer.valueOf(id),driver.getLaveBusinessMoney());
+                }
 
                 //修改改派通知状态
                 for(String id : split){
@@ -417,7 +409,7 @@
                 PaymentRecord query = paymentRecordService.query(1, null, null, Integer.valueOf(key), 3, type, 1);
                 if(null != query){
                     //添加交易明细
-                    transactionDetailsService.saveData(reassigns.get(0).getOriginalDriverId(), "司机改派支付", reassigns.get(0).getMoney(), 2, 1, 2, 3, Integer.valueOf(key));
+                    transactionDetailsService.saveDriverData(reassigns.get(0).getOriginalDriverId(), "司机改派支付", reassigns.get(0).getMoney(), 2, 1, 2, 3, Integer.valueOf(key),driver.getLaveBusinessMoney());
                     for(Reassign reassign : reassigns){
                         reassign.setState(2);
                         reassign.setPayOrder(order_id);
@@ -461,7 +453,7 @@
             PaymentRecord query = paymentRecordService.query(1, null, null, reassign.getOrderId(), reassign.getOrderType(), type, 1);
             if(null != query){
                 //添加交易明细
-                transactionDetailsService.saveData(reassign.getOriginalDriverId(), "司机改派支付", reassign.getMoney(), 2, 1, 2, reassign.getOrderType(), reassign.getOrderId());
+                transactionDetailsService.saveDriverData(reassign.getOriginalDriverId(), "司机改派支付", reassign.getMoney(), 2, 1, 2, reassign.getOrderType(), reassign.getOrderId(),driver.getLaveBusinessMoney());
                 reassign.setState(2);
                 reassign.setPayOrder(order_id);
                 reassign.setPayTime(new Date());

--
Gitblit v1.7.1