From dfb1f5ab2e8dc03cf2f497ce3327f6ce58700766 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期四, 23 十月 2025 11:35:55 +0800
Subject: [PATCH] 修改bug

---
 UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java |   63 ++++++++++++++++++++++++++++++-
 1 files changed, 60 insertions(+), 3 deletions(-)

diff --git a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
index fee9b60..25ee59b 100644
--- a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
+++ b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
@@ -9,7 +9,9 @@
 import com.stylefeng.guns.modular.call.server.IOrderCallService;
 import com.stylefeng.guns.modular.crossCity.model.OrderCrossCity;
 import com.stylefeng.guns.modular.crossCity.server.IOrderCrossCityService;
+import com.stylefeng.guns.modular.shunfeng.model.DriverRide;
 import com.stylefeng.guns.modular.shunfeng.model.OrderRide;
+import com.stylefeng.guns.modular.shunfeng.service.IDriverRideService;
 import com.stylefeng.guns.modular.shunfeng.service.IOrderRideService;
 import com.stylefeng.guns.modular.smallLogistics.model.OrderLogistics;
 import com.stylefeng.guns.modular.smallLogistics.server.IOrderLogisticsService;
@@ -24,10 +26,15 @@
 import com.stylefeng.guns.modular.system.pdf.TripSheetGenerator;
 import com.stylefeng.guns.modular.system.service.*;
 import com.stylefeng.guns.modular.system.util.*;
+import com.stylefeng.guns.modular.system.util.qianyuntong.EmployeeUtil;
 import com.stylefeng.guns.modular.system.util.qianyuntong.OrderUtil;
+import com.stylefeng.guns.modular.system.util.qianyuntong.model.AddAccountInfoRequest;
 import com.stylefeng.guns.modular.system.util.qianyuntong.model.ModifyTravelItineraryRequest;
 import com.stylefeng.guns.modular.system.util.qianyuntong.model.QYTPaymentCallback;
 import com.stylefeng.guns.modular.system.util.qianyuntong.model.QYTPaymentCallbackData;
+import com.stylefeng.guns.modular.system.util.zhenglian.ZhengLianUtil;
+import com.stylefeng.guns.modular.system.util.zhenglian.model.TradeTerminalInfo;
+import com.stylefeng.guns.modular.system.util.zhenglian.model.ZLUserInfo;
 import com.stylefeng.guns.modular.system.warpper.*;
 import com.stylefeng.guns.modular.taxi.model.OrderTaxi;
 import com.stylefeng.guns.modular.taxi.model.PaymentRecord;
@@ -55,6 +62,8 @@
 import java.io.PrintWriter;
 import java.io.Serializable;
 import java.lang.reflect.InvocationTargetException;
+import java.net.InetAddress;
+import java.net.NetworkInterface;
 import java.text.SimpleDateFormat;
 import java.time.LocalDate;
 import java.time.format.DateTimeFormatter;
@@ -168,6 +177,9 @@
 
     @Autowired
     private IOrderRideService orderRideService;
+    /*顺风车司机*/
+    @Autowired
+    private IDriverRideService driverRideService;
 
 
     /**
@@ -188,6 +200,47 @@
             if (null == uid) {
                 return ResultUtil.tokenErr();
             }
+            UserInfo userInfo = userInfoService.selectById(uid);
+            if(null != userInfo.getDriverId()){
+                DriverRide driverRide = driverRideService.selectById(userInfo.getDriverId());
+                //获取证联数据
+                if(null == driverRide.getCustId() || 0 == driverRide.getAccOpenFlag()){
+                    TradeTerminalInfo tradeTerminalInfo = new TradeTerminalInfo();
+                    tradeTerminalInfo.setTerminal("1");
+                    InetAddress inetAddress = InetAddress.getLocalHost();
+                    String ip = inetAddress.getHostAddress();
+                    tradeTerminalInfo.setIp(ip);
+                    NetworkInterface networkInterface = NetworkInterface.getByInetAddress(inetAddress);
+                    byte[] mac = networkInterface.getHardwareAddress();
+                    StringBuilder macAddress = new StringBuilder();
+                    for (int i = 0; i < mac.length; i++) {
+                        macAddress.append(String.format("%02X%s", mac[i], (i < mac.length - 1) ? "-" : ""));
+                    }
+
+                    tradeTerminalInfo.setMac(macAddress.toString());
+                    ZLUserInfo userInfo1 = ZhengLianUtil.getUserInfo(driverRide.getEmpId().toString(), tradeTerminalInfo);
+                    if(null != userInfo){
+                        driverRide.setCustId(userInfo1.getCustId());
+                        driverRide.setAccOpenFlag(userInfo1.getAccOpenFlag());
+                        driverRideService.updateById(driverRide);
+                    }
+                }
+                //同步到中台
+                if(null != driverRide.getAccOpenFlag() && 1 == driverRide.getAccOpenFlag() && 0 == driverRide.getIsSynchronous()){
+                    AddAccountInfoRequest request1 = new AddAccountInfoRequest();
+                    request1.setCustId(driverRide.getCustId());
+                    request1.setAccountNo(driverRide.getEmpId().toString());
+                    request1.setAccountName(userInfo.getName());
+                    request1.setMobile(userInfo.getPhone());
+                    Integer status = EmployeeUtil.addAccountInfo(request1);
+                    if(0 == status){
+                        driverRide.setIsSynchronous(1);
+                        driverRideService.updateById(driverRide);
+                    }
+                }
+            }
+
+
             List<OrderStatusWarpper> data = new ArrayList<>();
             List<OrderPrivateCar> orderPrivateCars = orderPrivateCarService.queryOrder(uid, 1, 2, 3, 4, 5, 6, 7, 11, 12);
             for (OrderPrivateCar orderPrivateCar : orderPrivateCars) {
@@ -1427,7 +1480,7 @@
                 case 2:
                     return orderTaxiService.payTaxiOrder1(payType, orderId, objectId, objectType, type, path, ip);
                 case 3:
-                    ResultUtil resultUtil = orderCrossCityService.payCrossCityOrder1(payType, orderId, objectId, objectType, type);
+                    ResultUtil resultUtil = orderCrossCityService.payCrossCityOrder1(payType, orderId, objectId, objectType, type, path, ip);
 
                     orderCrossCityService.promotion(orderId);
 
@@ -2186,6 +2239,11 @@
                 orderTaxiService.payOrderTaxiCallback(Integer.valueOf(orderNo), payId, 1, 0);
                 orderTaxiService.promotion(Integer.valueOf(orderNo));
             }
+            //跨城出行
+            if (orderNo.contains("CC")) {
+                orderNo = orderNo.substring(2);
+                orderCrossCityService.payOrderCrossCityCallback(Integer.valueOf(orderNo), payId, 1, null);
+            }
         } catch (Exception e) {
             e.printStackTrace();
             return "error";
@@ -2380,8 +2438,7 @@
             @ApiImplicitParam(value = "行程单信息", name = "tripSheet", required = false, dataType = "com.stylefeng.guns.modular.system.model.vo.TripSheetVo"),
             @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
     })
-    public ResultUtil sendTripSheetEmail(@RequestBody TripSheetVo tripSheet,
-                                         HttpServletRequest request) {
+    public ResultUtil sendTripSheetEmail(@RequestBody TripSheetVo tripSheet, HttpServletRequest request) {
         try {
             // 从Redis中获取当前用户ID
             Integer uid = userInfoService.getUserIdFormRedis(request);

--
Gitblit v1.7.1