From 8b09fbc19a96b57bf1d0e4d7c79b51a76aeca554 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期五, 28 三月 2025 19:57:56 +0800
Subject: [PATCH] 修改bug

---
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ReassignServiceImpl.java    |    4 ++--
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IPhoneService.java               |    2 +-
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CompanyCityServiceImpl.java |    3 +++
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/PhoneController.java                        |   10 ++++++++--
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java       |   10 ++++++++++
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CompanyMapper.xml            |    3 +--
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/PhoneServiceImpl.java       |   23 ++++++++---------------
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GoogleMap/FleetEngineUtil.java      |    5 ++++-
 8 files changed, 37 insertions(+), 23 deletions(-)

diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/PhoneController.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/PhoneController.java
index 8919054..d63c832 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/PhoneController.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/PhoneController.java
@@ -1,6 +1,7 @@
 package com.stylefeng.guns.modular.api;
 
 import com.stylefeng.guns.modular.system.model.Phone;
+import com.stylefeng.guns.modular.system.service.IDriverService;
 import com.stylefeng.guns.modular.system.service.IPhoneService;
 import com.stylefeng.guns.modular.system.util.ResultUtil;
 import io.swagger.annotations.Api;
@@ -13,6 +14,7 @@
 import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.bind.annotation.RestController;
 
+import javax.servlet.http.HttpServletRequest;
 import java.util.List;
 import java.util.Map;
 
@@ -26,6 +28,9 @@
 
     @Autowired
     private IPhoneService phoneService;
+    
+    @Autowired
+    private IDriverService driverService;
 
 
 
@@ -40,9 +45,10 @@
             @ApiImplicitParam(value = "当前定位纬度", name = "lat", required = true, dataType = "double"),
             @ApiImplicitParam(value = "当前定位经度", name = "lnt", required = true, dataType = "double"),
     })
-    public ResultUtil queryCustomerPhone(Double lat, Double lnt){
+    public ResultUtil queryCustomerPhone(Double lat, Double lnt, HttpServletRequest request){
         try {
-            Map<String, Object> map = phoneService.queryCustomerPhone(lat, lnt);
+            Integer uid = driverService.getUserIdFormRedis(request);
+            Map<String, Object> map = phoneService.queryCustomerPhone(uid, lat, lnt);
             return ResultUtil.success(map);
         }catch (Exception e){
             e.printStackTrace();
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CompanyMapper.xml b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CompanyMapper.xml
index af93e1a..e74a86e 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CompanyMapper.xml
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/CompanyMapper.xml
@@ -232,11 +232,10 @@
         flag as flag,
         upload as upload,
         insertTime as insertTime
-        from t_company where flag != 3 and state = 0 and id in (
+        from t_company where flag != 3 and state = 0 and id in
         <foreach collection="ids" item="item" index="index" open="(" separator="," close=")">
             #{item}
         </foreach>
-        )
         <if test="null != type">
             and type = #{type}
         </if>
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IPhoneService.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IPhoneService.java
index 0ac1d98..0ce979e 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IPhoneService.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IPhoneService.java
@@ -21,5 +21,5 @@
      * @return
      * @throws Exception
      */
-    Map<String, Object> queryCustomerPhone(Double lat, Double lnt) throws Exception;
+    Map<String, Object> queryCustomerPhone(Integer uid, Double lat, Double lnt) throws Exception;
 }
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CompanyCityServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CompanyCityServiceImpl.java
index 73cdfc4..2da3fa6 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CompanyCityServiceImpl.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CompanyCityServiceImpl.java
@@ -114,6 +114,9 @@
                 }
             }
         }
+        if(collect.size() == 0){
+            return null;
+        }
         List<Company> query = companyMapper.queryList(collect, 3);
         if(query.size() == 0){
             query = companyMapper.queryList(collect, 2);
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java
index fe0da47..21db73c 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java
@@ -1309,6 +1309,11 @@
             Integer state = privateCar.getState();
             String tripId = privateCar.getTripId();
             String trip = fleetEngineUtil.getTrip(tripId);
+            if("" == trip){
+                privateCar.setIsover(1);
+                orderPrivateCarService.updateById(privateCar);
+                continue;
+            }
             if(ToolUtil.isNotEmpty(trip)){
                 JSONObject jsonObject = JSON.parseObject(trip);
                 String tripStatus = jsonObject.getString("tripStatus");
@@ -1365,6 +1370,11 @@
             Integer state = orderLogistics.getState();
             String tripId = orderLogistics.getTripId();
             String trip = fleetEngineUtil.getTrip(tripId);
+            if("" == trip){
+                orderLogistics.setIsover(1);
+                orderLogisticsService.updateById(orderLogistics);
+                continue;
+            }
             if(ToolUtil.isNotEmpty(trip)){
                 JSONObject jsonObject = JSON.parseObject(trip);
                 String tripStatus = jsonObject.getString("tripStatus");
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/PhoneServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/PhoneServiceImpl.java
index 7ea069f..e91d8de 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/PhoneServiceImpl.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/PhoneServiceImpl.java
@@ -12,6 +12,7 @@
 import com.stylefeng.guns.modular.system.util.GoogleMap.AddressComponentsVo;
 import com.stylefeng.guns.modular.system.util.GoogleMap.GoogleMapUtil;
 import com.stylefeng.guns.modular.system.util.GoogleMap.ReverseGeocodeVo;
+import com.stylefeng.guns.modular.system.util.RedisUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -29,6 +30,9 @@
     
     @Autowired
     private ICompanyCityService companyCityService;
+    
+    @Resource
+    private RedisUtil redisUtil;
 
     /**
      * 获取所有系统电话
@@ -57,30 +61,19 @@
      * @throws Exception
      */
     @Override
-    public Map<String, Object> queryCustomerPhone(Double lat, Double lnt) throws Exception {
-        ReverseGeocodeVo reverseGeocode = GoogleMapUtil.getReverseGeocode(lat, lat, null);
-        if(null == reverseGeocode){
-            System.err.println("获取地图信息出错");
-            return new HashMap<>();
-        }
-        AddressComponentsVo[] addressComponentsVos = reverseGeocode.getAddressComponentsVos();
-        String[] city = new String[addressComponentsVos.length];
-        for (int i = 0; i < addressComponentsVos.length; i++) {
-            city[i] = addressComponentsVos[i].getLongName();
-        }
-
+    public Map<String, Object> queryCustomerPhone(Integer uid, Double lat, Double lnt) throws Exception {
         Map<String, Object> map = new HashMap<>();
         //平台电话
         Phone query = phoneMapper.query(2, 1, null, null, null);
         map.put("platform", null != query ? query.getPhone() : "");
     
-        Company companies = companyCityService.query(city);
+        Company companies = companyCityService.query1(uid, lnt.toString(), lat.toString());
         if(null != companies){
             Integer id = companies.getId();
             Phone phone = this.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", id));
-            map.put("company", phone.getPhone());
+            map.put("company", null == phone ? "" : phone.getPhone());
             phone = this.selectOne(new EntityWrapper<Phone>().eq("type", 3).eq("companyId", id));
-            map.put("scheduling", phone.getPhone());
+            map.put("scheduling", null == phone ? "" : phone.getPhone());
         }
 
         return map;
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ReassignServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ReassignServiceImpl.java
index ef813fd..0493a27 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ReassignServiceImpl.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ReassignServiceImpl.java
@@ -216,7 +216,7 @@
                 List<Driver> list = driverService.queryIdleDriver(orderPrivateCar.getUserId(), 1, orderPrivateCar.getServerCarModelId(), orderPrivateCar.getStartLon(), orderPrivateCar.getStartLat(), pushOrder.getPushDistance(), null);//所有附近空闲司机
                 System.err.println("【" + orderPrivateCar.getId() + "】空闲司机:" + JSON.toJSONString(list));
                 if(list.size() > 0){
-                    Optional<Driver> optional = list.stream().filter(d -> !d.getId().equals(reassign.getOrderId())).findFirst();
+                    Optional<Driver> optional = list.stream().filter(d -> !d.getId().equals(orderPrivateCar.getDriverId())).findFirst();
                     if(optional.isPresent()){
                         Driver driver1 = optional.get();
                         String text = "";
@@ -514,7 +514,7 @@
                 List<Driver> list1 = driverService.queryIdleDriver(orderLogistics.getUserId(), orderLogistics.getType(), orderLogistics.getServerCarModelId(), orderLogistics.getStartLon(), orderLogistics.getStartLat(), pushOrder1.getPushDistance(), null);//所有附近空闲司机
                 System.err.println("【" + orderLogistics.getId() + "】空闲司机:" + JSON.toJSONString(list1));
                 if(list1.size() > 0){
-                    Optional<Driver> optional = list1.stream().filter(d -> !d.getId().equals(reassign.getOrderId())).findFirst();
+                    Optional<Driver> optional = list1.stream().filter(d -> !d.getId().equals(orderLogistics.getDriverId())).findFirst();
                     if(optional.isPresent()){
                         Driver driver1 = optional.get();
                         reassign.setState(3);
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GoogleMap/FleetEngineUtil.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GoogleMap/FleetEngineUtil.java
index fa09cb6..5ca72fb 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GoogleMap/FleetEngineUtil.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GoogleMap/FleetEngineUtil.java
@@ -717,6 +717,9 @@
 					return updateTrip(tripStatus, vehicleId, numberOfPassengers, tripId, start_lat, start_lng, end_lat, end_lng);
 				}
 			}
+			if(code == 404){
+				return true;
+			}
 			logger.error("修改行程异常:  tripId={}  body={}", tripId, response.body());
 			return false;
 		}
@@ -864,7 +867,7 @@
 		if(null != error){
 			Integer code = error.getInteger("code");
 			if(code == 404){
-				return null;
+				return "";
 			}
 			if(code == 401){
 				String status = error.getString("status");

--
Gitblit v1.7.1