From cd538c205628f28839323b49b7f77f33196a601f Mon Sep 17 00:00:00 2001
From: zhangnaisong <2434969829@qq.com>
Date: Thu, 11 Jul 2024 15:50:42 +0800
Subject: [PATCH] 电磁锁操控加入判断速度为0提交

---
 ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankLockProcessLogServiceImpl.java |   20 +++++++++-----------
 ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplPosition.java                  |    8 ++++++++
 2 files changed, 17 insertions(+), 11 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplPosition.java b/ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplPosition.java
index c5434de..82412a2 100644
--- a/ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplPosition.java
+++ b/ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplPosition.java
@@ -385,6 +385,14 @@
                 };
                 tankCarParkingAlarmThread.start();
 
+                /*Thread autoProcessThread = new Thread(){//自动操控线程
+                    @Override
+                    public void run() {
+                        ((ArdTankLockProcessLogServiceImpl)SpringUtils.getBean("ardTankLockProcessLogServiceImpl")).autoProcessArdTankLockByLockId(ip, userId, password, gpsMap);
+                    }
+                };
+                autoProcessThread.start();*/
+
                 gpsMap.putAll(result);
                 String ancestors = (String) gpsMap.get("ancestors");//获取父级部门
                 String[] ancestorsArray = ancestors.split(",");
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..99aacaa 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
@@ -85,9 +85,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 +137,6 @@
             return "该锁使能关闭,无法操控";
         }
 
-
         ArdSyUser ardSyUser = ardSyUserMapper.userById(userId);
         if(ardSyUser == null){
             return "未挂接三一账号";
@@ -159,10 +158,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 "车辆正在行驶中";
+            }
             lng = (String) carMap.get("lng");
             lat = (String) carMap.get("lat");
             carPlate = (String) carMap.get("carName");
-
         }else{
             return "三一平台报错";
         }
@@ -187,9 +188,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,12 +200,9 @@
 
                 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);
 
-
                 if(((String)result.get("rspCode")).equals("0")){
-                    //入库操作
                     ArdTankLockProcessLog ardTankLockProcessLog = new ArdTankLockProcessLog();
                     ardTankLockProcessLog.setId(IdUtils.simpleUUID());
                     ardTankLockProcessLog.setLockId(lockId);

--
Gitblit v1.9.3