From a8553f9ef7e165b6348243af91caad1a987f8f9c Mon Sep 17 00:00:00 2001
From: wzp <2040239371@qq.com>
Date: 星期三, 03 九月 2025 17:49:52 +0800
Subject: [PATCH] fix: 修复轨迹查询报错问题。 更换了接口地址和增加请求参数

---
 ruoyi-system/src/main/java/com/ruoyi/system/domain/SysGpsConfig.java                |   13 +++++++++++++
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/GpsCollectServiceImpl.java |   19 ++++++-------------
 ruoyi-system/src/main/resources/mapper/system/SysGpsConfigMapper.xml                |    6 +++++-
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/GpsConfigServiceImpl.java  |    3 ++-
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/VehicleGpsController.java |    5 +++--
 ruoyi-system/src/main/java/com/ruoyi/system/service/IGpsConfigService.java          |    2 +-
 ruoyi-system/src/main/java/com/ruoyi/system/domain/GpsLoginResponse.java            |    6 ++++++
 7 files changed, 36 insertions(+), 18 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/VehicleGpsController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/VehicleGpsController.java
index 978f51c..5c3e134 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/VehicleGpsController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/VehicleGpsController.java
@@ -233,13 +233,14 @@
             }
 
             // 澶勭悊寮�濮嬫椂闂�
-                beginTime = beginTime.replace("T", " ").replace(" ","%20");
+                beginTime = beginTime.replace("T", " ");
                 if (beginTime.split(":").length == 2) { // 鍙湁灏忔椂鍜屽垎閽�
                     beginTime += ":00";
                 }
                 
                 // 澶勭悊缁撴潫鏃堕棿
-                endTime = endTime.replace("T", " ").replace(" ","%20");
+//                endTime = endTime.replace("T", " ").replace(" ","%20");
+            endTime = endTime.replace("T", " ");
                 if (endTime.split(":").length == 2) { // 鍙湁灏忔椂鍜屽垎閽�
                     endTime += ":59";
                 }
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/domain/GpsLoginResponse.java b/ruoyi-system/src/main/java/com/ruoyi/system/domain/GpsLoginResponse.java
index 06df1d9..0ddd7fe 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/domain/GpsLoginResponse.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/domain/GpsLoginResponse.java
@@ -22,6 +22,8 @@
      * 娑堟伅
      */
     private String message;
+
+    private Integer serverid;
     
     /**
      * Token
@@ -59,4 +61,8 @@
     public void setToken(String token) {
         this.token = token;
     }
+
+
+    public void setServerid(Integer serviceid){this.serverid=serviceid;}
+    public Integer getServerid(){return this.serverid;}
 } 
\ No newline at end of file
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/domain/SysGpsConfig.java b/ruoyi-system/src/main/java/com/ruoyi/system/domain/SysGpsConfig.java
index 9073e84..573ee20 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/domain/SysGpsConfig.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/domain/SysGpsConfig.java
@@ -42,6 +42,10 @@
     @Excel(name = "鏈�鍚庢煡璇綅缃椂闂�")
     private Long lastquerypositiontime;
 
+    /** 鏈嶅姟鍣↖D */
+    @Excel(name = "鏈嶅姟鍣↖D")
+    private Integer serverid;
+
     public void setConfigId(Long configId) {
         this.configId = configId;
     }
@@ -106,6 +110,14 @@
         this.lastquerypositiontime = lastquerypositiontime;
     }
 
+    public Integer getServerid() {
+        return serverid;
+    }
+
+    public void setServerid(Integer serverid) {
+        this.serverid = serverid;
+    }
+
     @Override
     public String toString() {
         return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
@@ -117,6 +129,7 @@
                 .append("token", getToken())
                 .append("tokenExpireTime", getTokenExpireTime())
                 .append("lastquerypositiontime", getLastquerypositiontime())
+                .append("serverid", getServerid())
                 .append("createBy", getCreateBy())
                 .append("createTime", getCreateTime())
                 .append("updateBy", getUpdateBy())
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/IGpsConfigService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/IGpsConfigService.java
index ed52202..1eb519b 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/IGpsConfigService.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/IGpsConfigService.java
@@ -80,5 +80,5 @@
      * @param expireTime token杩囨湡鏃堕棿
      * @return 鏇存柊缁撴灉
      */
-    public int updateToken(String configKey, String token, Date expireTime);
+    public int updateToken(String configKey, String token,Integer serviceid, Date expireTime);
 } 
\ No newline at end of file
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/GpsCollectServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/GpsCollectServiceImpl.java
index 6385cea..42e8390 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/GpsCollectServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/GpsCollectServiceImpl.java
@@ -78,6 +78,7 @@
                     response.setSuccess(true);
                     response.setMessage("鐧诲綍鎴愬姛");
                     response.setToken(jsonResult.getString("token"));
+                    response.setServerid(jsonResult.getInteger("serverid"));
                     break;
                 case -1:
                     response.setSuccess(false);
@@ -166,9 +167,10 @@
                 if (loginResponse.isSuccess()) {
                     //灏唗oken鍐欏叆gspconfig
                     token = loginResponse.getToken();
+                    Integer serviceid = loginResponse.getServerid();
                     //getTokenExpireTime 杩欎釜鏄病鏈夌殑 闇�瑕佽嚜宸辫绠楋紝褰撳墠鏃堕棿+23灏忔椂
                     Date expireTime = DateUtils.addHours(new Date(), 23);
-                    gpsConfigService.updateToken("gps51", token, expireTime);
+                    gpsConfigService.updateToken("gps51", token,serviceid, expireTime);
                     System.out.println("GPS绯荤粺鐧诲綍鎴愬姛锛宼oken宸叉洿鏂�");
                     return token;
                 } else {
@@ -285,7 +287,7 @@
         
         String username = config.getUsername();
         // 鏋勫缓璇锋眰URL
-        String url = config.getDomain() + "/webapi?action=querymonitorlist&token=" + token;
+        String url = config.getDomain() + "/webapi?action=querymonitorlist&token=" + token+"&serverid="+config.getServerid();
         Map<String, String> params = new HashMap<>();
         params.put("username", username);
         
@@ -381,7 +383,7 @@
         System.out.println("token鑾峰彇鎴愬姛锛�"+token);
 
         // 鏋勫缓璇锋眰URL
-        String url = config.getDomain() + "/webapi?action=lastposition&token="+token;
+        String url = config.getDomain() + "/webapi?action=lastposition&token="+token+"&serverid="+config.getServerid();
         System.out.println("璇锋眰URL锛�"+url);
 
         // 鏋勫缓璇锋眰鍙傛暟
@@ -568,7 +570,7 @@
             System.out.println("Token鑾峰彇鎴愬姛: " + token);
 
             // 鏋勫缓璇锋眰URL
-            String url = config.getDomain() + "/webapi?action=querytracks&token=" + token;
+            String url = config.getDomain() + "/webapi?action=querytracks&token=" + token+"&serverid="+config.getServerid();
             System.out.println("璇锋眰URL: " + url);
             
             // 鏋勫缓璇锋眰鍙傛暟
@@ -603,15 +605,6 @@
             response.setDeviceid(jsonResult.getString("deviceid"));
 
             if (response.getStatus() == 0) {
-
-                if(jsonResult.getJSONObject("result")==null)
-                {
-                    System.err.println("鏌ヨ杞ㄨ抗澶辫触锛岃建杩硅褰曚负绌�");
-                    GpsTrackQueryResponse responseErr = new GpsTrackQueryResponse();
-                    responseErr.setStatus(-1);
-                    responseErr.setCause("杞ㄨ抗璁板綍涓虹┖");
-                    return responseErr;
-                }
 
                 // 瑙f瀽杞ㄨ抗璁板綍鍒楄〃
                 JSONArray recordsArray = jsonResult.getJSONArray("records");
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/GpsConfigServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/GpsConfigServiceImpl.java
index f5c2f16..a3e1b85 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/GpsConfigServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/GpsConfigServiceImpl.java
@@ -77,10 +77,11 @@
     }
 
     @Override
-    public int updateToken(String configKey, String token, Date expireTime) {
+    public int updateToken(String configKey, String token,Integer serviceid, Date expireTime) {
         SysGpsConfig config = new SysGpsConfig();
         config.setConfigKey(configKey);
         config.setToken(token);
+        config.setServerid(serviceid);
         config.setTokenExpireTime(expireTime);
         config.setUpdateTime(new Date());
         
diff --git a/ruoyi-system/src/main/resources/mapper/system/SysGpsConfigMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysGpsConfigMapper.xml
index f6568c6..866c5ed 100644
--- a/ruoyi-system/src/main/resources/mapper/system/SysGpsConfigMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/SysGpsConfigMapper.xml
@@ -13,6 +13,7 @@
         <result property="token"       column="token"        />
         <result property="tokenExpireTime" column="token_expire_time" />
         <result property="lastquerypositiontime" column="lastquerypositiontime" />
+        <result property="serverid"    column="serverid"     />
         <result property="createBy"    column="create_by"    />
         <result property="createTime"  column="create_time"  />
         <result property="updateBy"    column="update_by"    />
@@ -21,7 +22,7 @@
     </resultMap>
 
     <sql id="selectSysGpsConfigVo">
-        select config_id, config_key, domain, username, password, token, token_expire_time, lastquerypositiontime, create_by, create_time, update_by, update_time, remark
+        select config_id, config_key, domain, username, password, token, token_expire_time, lastquerypositiontime, serverid, create_by, create_time, update_by, update_time, remark
         from sys_gps_config
     </sql>
 
@@ -54,6 +55,7 @@
             <if test="token != null">token,</if>
             <if test="tokenExpireTime != null">token_expire_time,</if>
             <if test="lastquerypositiontime != null">lastquerypositiontime,</if>
+            <if test="serverid != null">serverid,</if>
             <if test="createBy != null">create_by,</if>
             <if test="createTime != null">create_time,</if>
             <if test="updateBy != null">update_by,</if>
@@ -68,6 +70,7 @@
             <if test="token != null">#{token},</if>
             <if test="tokenExpireTime != null">#{tokenExpireTime},</if>
             <if test="lastquerypositiontime != null">#{lastquerypositiontime},</if>
+            <if test="serverid != null">#{serverid},</if>
             <if test="createBy != null">#{createBy},</if>
             <if test="createTime != null">#{createTime},</if>
             <if test="updateBy != null">#{updateBy},</if>
@@ -86,6 +89,7 @@
             <if test="token != null and token != ''">token = #{token},</if>
             <if test="tokenExpireTime != null">token_expire_time = #{tokenExpireTime},</if>
             <if test="lastquerypositiontime != null">lastquerypositiontime = #{lastquerypositiontime},</if>
+            <if test="serverid != null and serverid != ''">serverid = #{serverid},</if>
             <if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
             update_time = sysdate()
         </set>

--
Gitblit v1.9.1