From 410e261a251e07b17bba8aa9b098eb21c34de5cb Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期三, 30 七月 2025 16:30:53 +0800
Subject: [PATCH] 添加证联集成

---
 DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java |   69 ++++++++++++++++++++++++++--------
 1 files changed, 52 insertions(+), 17 deletions(-)

diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
index eca95fe..ce50214 100644
--- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
+++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -12,9 +12,12 @@
 import com.stylefeng.guns.modular.system.dao.CarServiceMapper;
 import com.stylefeng.guns.modular.system.dao.RegionMapper;
 import com.stylefeng.guns.modular.system.dao.SystemPriceMapper;
+import com.stylefeng.guns.modular.system.dao.UserInfoMapper;
 import com.stylefeng.guns.modular.system.model.*;
 import com.stylefeng.guns.modular.system.service.*;
 import com.stylefeng.guns.modular.system.util.*;
+import com.stylefeng.guns.modular.system.util.qianyuntong.OrderUtil;
+import com.stylefeng.guns.modular.system.util.qianyuntong.model.CreateTravelItineraryRequest;
 import com.stylefeng.guns.modular.taxi.model.OrderTaxi;
 import com.stylefeng.guns.modular.taxi.service.IOrderTaxiService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -89,6 +92,13 @@
     
     @Resource
     private CarServiceMapper carServiceMapper;
+
+    @Resource
+    private UserInfoMapper userInfoMapper;
+
+
+    @Autowired
+    private TDriverPromotionActivityService driverPromotionActivityService;
     
     @Resource
     private RedisTemplate<String, Object> redisTemplate;
@@ -141,7 +151,7 @@
      * @throws Exception
      */
     @Override
-    public synchronized ResultUtil grabOrder(Integer orderId, Integer uid) throws Exception {
+    public ResultUtil grabOrder(Integer orderId, Integer uid) throws Exception {
         OrderPrivateCar orderPrivateCar = this.selectById(orderId);
         if(null == orderPrivateCar){
             return ResultUtil.error("订单已被抢了");
@@ -215,17 +225,30 @@
         orderPrivateCar.setSnatchOrderTime(new Date());
 
         //调用高德创建轨迹
-        String s = gdFalconUtil.selectTerminal(driver.getPhone());
-        String track = gdFalconUtil.createTrack(s);
-        orderPrivateCar.setTrackId(track);
+//        String s = gdFalconUtil.selectTerminal(driver.getPhone());
+//        String track = gdFalconUtil.createTrack(s);
+//        orderPrivateCar.setTrackId(track);
 
         //调用移动的小号接口
-        Map<String, String> map = chinaMobileUtil.midAxbBindSend(orderPrivateCar.getPassengersPhone(), driver.getPhone(), (System.currentTimeMillis() + 86400000));
-            if(String.valueOf(map.get("code")).equals("200")){
-            orderPrivateCar.setTelX(map.get("telX"));
-            orderPrivateCar.setBindId(map.get("bindId"));
-        }
+//        Map<String, String> map = chinaMobileUtil.midAxbBindSend(orderPrivateCar.getPassengersPhone(), driver.getPhone(), (System.currentTimeMillis() + 86400000));
+//            if(String.valueOf(map.get("code")).equals("200")){
+//            orderPrivateCar.setTelX(map.get("telX"));
+//            orderPrivateCar.setBindId(map.get("bindId"));
+//        }
 
+
+
+        // 是否推广订单
+        Integer promotion = isPromotion(uid);
+        orderPrivateCar.setPromotion(promotion);
+        UserInfo userInfo = userInfoMapper.selectById(orderPrivateCar.getUserId());
+        //调三方订单中心创建行程单
+        CreateTravelItineraryRequest request = new CreateTravelItineraryRequest();
+        request.setOrderNo("PR" + orderPrivateCar.getId());
+        request.setCustomerId(userInfo.getOnconUUID());
+        request.setDriverId(driver.getEmpId().toString());
+        String travelItinerary = OrderUtil.createTravelItinerary(request);
+//        orderPrivateCar.set
         this.updateById(orderPrivateCar);
 
         //处理摆渡车的情况
@@ -293,23 +316,35 @@
 
         systemNoticeService.addSystemNotice(2, "您已成功抢得快车订单,请及时联系客户!", orderPrivateCar.getDriverId(), 1);
         systemNoticeService.addSystemNotice(1, "您的订单已指派给" + driver.getName().substring(0, 1) + "师傅,请保持电话畅通!", orderPrivateCar.getUserId(), 1);
-
-        new Thread(new Runnable() {
-            @Override
-            public void run() {
-                if(pushMinistryOfTransport){
+    
+        if(pushMinistryOfTransport){
+            new Thread(new Runnable() {
+                @Override
+                public void run() {
                     //上传数据
                     pushMinistryOfTransportUtil.orderCreate(orderId);
                     pushMinistryOfTransportUtil.orderMatch(orderId);
                 }
-            }
-        }).start();
-
+            }).start();
+        }
+        
+    
         return ResultUtil.success(orderPrivateCar.getId());
     }
 
 
+    private Integer isPromotion(Integer userId){
+        UserInfo userInfo = userInfoMapper.selectById(userId);
+        if(userInfo.getBindDriverId()!=null && userInfo.getBindExpireDate().getTime()<=System.currentTimeMillis()){
+            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(" + 1 + ", bizType) limit 1"));
+            if(tDriverPromotionActivity!=null){
+                return 2;
+            }
+        }
+        return null;
 
+    }
     /**
      * 获取订单详情页(服务中的页面)
      * @param orderId

--
Gitblit v1.7.1