From 1636f02b9cf3f408ebf8b3c4e377237e5b74bf4a Mon Sep 17 00:00:00 2001
From: zhangnaisong <2434969829@qq.com>
Date: 星期五, 26 七月 2024 10:57:30 +0800
Subject: [PATCH] 电磁锁实时状态加入报警详情提交

---
 ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplSerialPort.java |   14 ++++++++++++++
 1 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplSerialPort.java b/ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplSerialPort.java
index f4c1eb8..d0af9ea 100644
--- a/ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplSerialPort.java
+++ b/ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplSerialPort.java
@@ -113,6 +113,20 @@
                     Date now = new Date();
                     try {
                         String data = (String) dataMap.get("data");
+                        if(data.length() %2 != 0){//闀垮害涓嶆槸鍋舵暟锛屽氨杩斿洖
+                            return;
+                        }
+
+                        Integer sum = 0;
+                        for(int i = 0;i <= data.length() - 4;i = i + 2){
+                            String str = data.substring(i, i + 2);
+                            sum = sum + Integer.parseInt(str, 16);
+                        }
+                        String checkNum = data.substring(data.length() - 2, data.length());
+                        if(!checkNum.equals(Integer.toHexString(sum).toUpperCase())){//鏍¢獙涓嶉�氳繃锛屽氨杩斿洖
+                            return;
+                        }
+
                         String lockNum = data.substring(0, 4);
                         String code = data.substring(4, 6);
                         if(code.equals("01")){//鍔熻兘鐮�01涓洪攣瀹炴椂鐘舵��

--
Gitblit v1.9.3