From c3ec70d2bd1ebd2421d2fa3e85c1ac43e2322ea6 Mon Sep 17 00:00:00 2001
From: zhangnaisong <2434969829@qq.com>
Date: 星期一, 22 七月 2024 14:44:52 +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