From f5781289aaedc8460437154e179d85652995e7b8 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期四, 21 八月 2025 00:50:41 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/QianYunTong

---
 DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java |   32 +++++++++++++++++++++++---------
 1 files changed, 23 insertions(+), 9 deletions(-)

diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
index f3baac8..2efbc8a 100644
--- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
+++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
@@ -20,12 +20,10 @@
 import com.stylefeng.guns.modular.crossCity.warpper.OrderCrossCityWarpper;
 import com.stylefeng.guns.modular.specialTrain.dao.OrderPrivateCarMapper;
 import com.stylefeng.guns.modular.specialTrain.model.OrderPrivateCar;
-import com.stylefeng.guns.modular.system.dao.PhoneMapper;
-import com.stylefeng.guns.modular.system.dao.RegionMapper;
-import com.stylefeng.guns.modular.system.dao.SysIntegralMapper;
-import com.stylefeng.guns.modular.system.dao.UserInfoMapper;
+import com.stylefeng.guns.modular.system.dao.*;
 import com.stylefeng.guns.modular.system.model.*;
 import com.stylefeng.guns.modular.system.service.*;
+import com.stylefeng.guns.modular.system.service.impl.CarServiceImpl;
 import com.stylefeng.guns.modular.system.util.*;
 import com.stylefeng.guns.modular.system.warpper.BaseWarpper;
 import com.stylefeng.guns.modular.system.warpper.MerchantCouponListWarpper;
@@ -160,6 +158,10 @@
 
     @Value("${callbackPath}")
     private String callbackPath;
+    @Autowired
+    private CarModelMapper carModelMapper;
+    @Autowired
+    private CarServiceImpl carServiceImpl;
 
 
     /**
@@ -296,7 +298,13 @@
 
                 //还原座位数
                 LineShiftDriver lineShiftDriver = lineShiftDriverMapper.selectById(orderCrossCity.getLineShiftDriverId());
-                lineShiftDriver.setLaveSeat(lineShiftDriver.getLaveSeat() + orderCrossCity.getPeopleNumber());
+                if(1 == orderCrossCity.getTravelMode()){
+                    lineShiftDriver.setLaveSeat(lineShiftDriver.getLaveSeat() + orderCrossCity.getPeopleNumber());
+                }else{
+                    Car car = carServiceImpl.selectById(driver.getCarId());
+                    CarModel carModel = carModelMapper.selectById(car.getCarModelId());
+                    lineShiftDriver.setLaveSeat(carModel.getSeat() - 1);
+                }
                 lineShiftDriver.setLaveSeatNumber(
                         (ToolUtil.isNotEmpty(lineShiftDriver.getLaveSeatNumber()) ? lineShiftDriver.getLaveSeatNumber() + ","  : "") +
                                 orderCrossCity.getSeatNumber()
@@ -305,7 +313,7 @@
 
                 //修改司机空闲状态
                 List<OrderCrossCity> orderCrossCities = orderCrossCityMapper.queryWithin30Minutes(orderCrossCity.getDriverId(), 2, 3, 4, 5, 11);
-                if(orderCrossCities.size() == 0){
+                if(orderCrossCities.size() <= 1){
                     driver = driverService.selectById(orderCrossCity.getDriverId());
                     driver.setState(2);
                     driverService.updateById(driver);
@@ -393,18 +401,24 @@
     public void promotion(Integer orderId) {
         OrderCrossCity orderCrossCity = this.baseMapper.selectById(orderId);
         UserInfo userInfo = userInfoMapper.selectById(orderCrossCity.getUserId());
-        if(userInfo.getBindDriverId()!=null && userInfo.getBindExpireDate().getTime()<=System.currentTimeMillis()){
+        if(orderCrossCity.getPromotionDriverId()!=null ){
             String registAreaCode = userInfo.getRegistAreaCode();
-            TDriverPromotionActivity tDriverPromotionActivity = driverPromotionActivityService.selectOne(new EntityWrapper<TDriverPromotionActivity>().eq("districtCode", registAreaCode).ge("startTime", new Date()).lt("endTime", new Date()).last("AND FIND_IN_SET(" + 3 + ", bizType) limit 1"));
+            TDriverPromotionActivity tDriverPromotionActivity = driverPromotionActivityService.selectOne(new EntityWrapper<TDriverPromotionActivity>().eq("districtCode", registAreaCode).le("startTime", new Date()).ge("endTime", new Date()).last("AND FIND_IN_SET(" + 3 + ", bizType) limit 1"));
+            System.out.println("ddddd"+tDriverPromotionActivity);
             if(tDriverPromotionActivity!=null){
                 Double payMoney = orderCrossCity.getPayMoney();
+                System.out.println(payMoney);
                 BigDecimal bigDecimal = tDriverPromotionActivity.getCommissionRatio().divide(new BigDecimal(100), 2, RoundingMode.HALF_UP).multiply(new BigDecimal(payMoney)).setScale(2, RoundingMode.HALF_UP);
+                System.out.println(bigDecimal);
                 orderCrossCity.setPromotionDriverId(userInfo.getBindDriverId());
                 orderCrossCity.setPromotionMoney(bigDecimal);
                 orderCrossCity.setPromotionActivityId(tDriverPromotionActivity.getId());
+                orderCrossCity.setSuccessTime(new Date());
                 this.baseMapper.updateById(orderCrossCity);
             }
         }
+
+
 
     }
     /**
@@ -936,7 +950,7 @@
         String lat = orderPosition.getLat();
         OrderCrossCity order = this.selectById(orderId);
         if(null == order){
-            System.err.println("订单数据异常:" + orderId);
+            System.err.println("跨城订单数据异常:" + orderId);
             return false;
         }
 

--
Gitblit v1.7.1