From a2e85a4911dd285f7a1ac9fde312187aec597198 Mon Sep 17 00:00:00 2001
From: zhangnaisong <2434969829@qq.com>
Date: 星期二, 23 七月 2024 16:34:54 +0800
Subject: [PATCH] 异常停车逻辑修改提交
---
ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankLockProcessLogServiceImpl.java | 62 +++++++++++++++++++++++-------
1 files changed, 47 insertions(+), 15 deletions(-)
diff --git a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankLockProcessLogServiceImpl.java b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankLockProcessLogServiceImpl.java
index 3021d43..396fc26 100644
--- a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankLockProcessLogServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankLockProcessLogServiceImpl.java
@@ -1,9 +1,11 @@
package com.ruoyi.sy.service.impl;
import java.awt.geom.Point2D;
+import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.*;
+import com.alibaba.fastjson2.JSON;
import com.ruoyi.common.core.domain.entity.SysConfig;
import com.ruoyi.common.utils.uuid.IdUtils;
import com.ruoyi.sy.domain.ArdSyUser;
@@ -15,6 +17,9 @@
import com.ruoyi.system.mapper.SysConfigMapper;
import com.ruoyi.utils.forest.SYClient;
import com.ruoyi.utils.gps.GeoTools;
+import okhttp3.OkHttpClient;
+import okhttp3.Request;
+import okhttp3.Response;
import org.apache.commons.codec.digest.DigestUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -85,9 +90,9 @@
*/
@Override
public int insertArdTankLockProcessLog(ArdTankLockProcessLog ardTankLockProcessLog) {
- ardTankLockProcessLog.setId(IdUtils.simpleUUID());
- ardTankLockProcessLog.setUserId(SecurityUtils.getUserId());
- return ardTankLockProcessLogMapper.insertArdTankLockProcessLog(ardTankLockProcessLog);
+ ardTankLockProcessLog.setId(IdUtils.simpleUUID());
+ ardTankLockProcessLog.setUserId(SecurityUtils.getUserId());
+ return ardTankLockProcessLogMapper.insertArdTankLockProcessLog(ardTankLockProcessLog);
}
/**
@@ -137,7 +142,6 @@
return "璇ラ攣浣胯兘鍏抽棴锛屾棤娉曟搷鎺�";
}
-
ArdSyUser ardSyUser = ardSyUserMapper.userById(userId);
if(ardSyUser == null){
return "鏈寕鎺ヤ笁涓�璐﹀彿";
@@ -159,10 +163,12 @@
Map<String,Object> syResult = sYClient.getCarNearPositionByCarId(syURL, carId, ardSyUser.getUserId(), sessionId);
if(((String)syResult.get("rspCode")).equals("1")){
Map<String,Object> carMap = ((List<Map<String,Object>>)syResult.get("list")).get(0);
+ if(Integer.parseInt((String)carMap.get("speed")) != 0){
+ return "杞﹁締姝e湪琛岄┒涓�";
+ }
lng = (String) carMap.get("lng");
lat = (String) carMap.get("lat");
carPlate = (String) carMap.get("carName");
-
}else{
return "涓変竴骞冲彴鎶ラ敊";
}
@@ -187,9 +193,9 @@
String lockNumHead = lockNum.substring(0,2);
String lockNumTail = lockNum.substring(2,4);
String checkNum = Integer.toHexString(Integer.parseInt(lockNumHead, 16)//閿佺紪鍙烽珮8浣�
- + Integer.parseInt(lockNumTail, 16)//閿佺紪鍙蜂綆8浣�
- + Integer.parseInt("02", 16)//璁剧疆閿佽姱鐘舵�佸姛鑳界爜02
- + Integer.parseInt(process, 16));//鎿嶄綔
+ + Integer.parseInt(lockNumTail, 16)//閿佺紪鍙蜂綆8浣�
+ + Integer.parseInt("02", 16)//璁剧疆閿佽姱鐘舵�佸姛鑳界爜02
+ + Integer.parseInt(process, 16));//鎿嶄綔
if(checkNum.length() == 1){
checkNum = "0" + checkNum;
}
@@ -199,13 +205,11 @@
String paramsStr = lockNum + "02" + process + checkNum;
paramsStr = "%7B%22type%22%3A%22ff%22%2C%22dataCnt%22%3A%22" + paramsStr + "%22%7D";
-
- Map<String,Object> result = sYClient.sendCmd(syURL, ardSyUser.getUserId(), carId, 199, "DataDownTransfer", paramsStr, sessionId);
-
-
+ Map<String,Object> result = sendCmd(syURL, ardSyUser.getUserId(), carId, 199, "DataDownTransfer", paramsStr, sessionId);
+ System.out.println("111111111111");
+ System.out.println(result);
if(((String)result.get("rspCode")).equals("0")){
- //鍏ュ簱鎿嶄綔
- ArdTankLockProcessLog ardTankLockProcessLog = new ArdTankLockProcessLog();
+ /*ArdTankLockProcessLog ardTankLockProcessLog = new ArdTankLockProcessLog();
ardTankLockProcessLog.setId(IdUtils.simpleUUID());
ardTankLockProcessLog.setLockId(lockId);
ardTankLockProcessLog.setLockNum(lockNum);
@@ -222,7 +226,7 @@
ardTankLockProcessLog.setLongitude(lng);
ardTankLockProcessLog.setLatitude(lat);
ardTankLockProcessLog.setProcessTime(this.sdf.format(new Date()));
- ardTankLockProcessLogMapper.insertArdTankLockProcessLog(ardTankLockProcessLog);
+ ardTankLockProcessLogMapper.insertArdTankLockProcessLog(ardTankLockProcessLog);*/
return "鍙戦�佹垚鍔�";
}else{
return "鍙戦�佸け璐�";
@@ -233,4 +237,32 @@
}
}
}
+
+ public Map<String,Object> sendCmd(String syURL,String userId,String carId,Integer cmdId,String cmd,String paramsStr,String sessionId){
+ OkHttpClient okHttpClient = new OkHttpClient();
+
+ Request request = new Request.Builder()
+ .url(syURL + "/gps-web/api/send_cmd.jsp?params="+paramsStr+"&userId="+userId+"&carId="+carId+"&cmdId="+cmdId+"&cmd="+cmd+"&sessionId="+sessionId)
+ .build();
+ //System.out.println("url = " + syURL + "/gps-web/api/send_cmd.jsp?params="+paramsStr+"&userId="+userId+"&carId="+carId+"&cmdId="+cmdId+"&cmd="+cmd+"&sessionId="+sessionId);
+ Response response = null;
+ try {
+ response = okHttpClient.newCall(request).execute();
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ okhttp3.ResponseBody responseBody = response.body();
+
+ try {
+ String message = responseBody.string();// 鍝嶅簲浣�
+ Map<String,Object> map = (Map<String, Object>) JSON.parse(message);
+ return map;
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ return new HashMap();
+ }
+ }
}
--
Gitblit v1.9.3