From b468cde8bfd9d6e1d7ae7ccc535fc7e8ffb9f818 Mon Sep 17 00:00:00 2001 From: zhangnaisong <2434969829@qq.com> Date: 星期五, 26 七月 2024 22:34:44 +0800 Subject: [PATCH] 电磁锁报警查询提交 --- ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplSerialPort.java | 26 ++++++++++++++++++++++---- 1 files changed, 22 insertions(+), 4 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 666b8bb..ee4a60d 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,25 @@ 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()); + String checkNumComputed = Integer.toHexString(sum).toUpperCase();//璁$畻鏍¢獙 + //褰撴牎楠屾暟鎹ぇ浜�2涓瓧绗︼紝鎴彇鏈�鍚庝袱浣� + if(checkNumComputed.length() != 2){ + checkNumComputed = checkNumComputed.substring(checkNumComputed.length() - 2,checkNumComputed.length()); + } + if(!checkNum.equals(checkNumComputed)){//鏍¢獙涓嶉�氳繃锛屽氨杩斿洖 + return; + } + String lockNum = data.substring(0, 4); String code = data.substring(4, 6); if(code.equals("01")){//鍔熻兘鐮�01涓洪攣瀹炴椂鐘舵�� @@ -182,9 +201,6 @@ } long cha = now.getTime() - sdf.parse(time).getTime(); - /*System.out.println("////////////////"); - System.out.println(time); - System.out.println(cha);*/ if(Math.abs(cha) >= 5 * 1000){ //鏃堕棿鏍″噯 /*String url = "http://" + ip + ":9999"; @@ -314,7 +330,9 @@ ardTankLockState.setUniqueMark(uniqueMark); ((ArdTankLockStateServiceImpl)SpringUtils.getBean("ardTankLockStateServiceImpl")).insertOrUpdateArdTankLockState(ardTankLockState); } - } + }/*else if(code.equals("06")){//鍔熻兘鐮�06涓洪攣鍘嗗彶鎶ヨ + + }*/ }catch (Exception e){ e.printStackTrace(); return;//寮鸿浆澶辫触杩斿洖 -- Gitblit v1.9.3