From fb50c6c8111fffd16091ce25d5d389ea3fcc560f Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期五, 21 三月 2025 14:44:39 +0800
Subject: [PATCH] 不同协议中的开关阀类型进行兼容
---
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java | 3 +
pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu3rd/src/main/java/com/dy/rtuMw3rd/http4Xjnk/protocol/accessToken/Res4AccessTokenVo.java | 2 +
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_84_Up.java | 2 +
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/CommonV202404.java | 57 ++++++++++++++++++++++++++--
4 files changed, 60 insertions(+), 4 deletions(-)
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/CommonV202404.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/CommonV202404.java
index ac6a41c..1e71d09 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/CommonV202404.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/CommonV202404.java
@@ -270,6 +270,24 @@
};
}
/**
+ * 0x01锛氬埛鍗″紑闃� => p206V1 1
+ * 0x02锛氫腑蹇冪珯寮�闃� => p206V1 3
+ * 0x08锛氱敤鎴稟pp杩滅▼寮�闃� => p206V1 3
+ * 0x0B锛氬贰妫�鍗″紑闃� => p206V1 11
+ * @param type
+ * @return
+ */
+ public static byte openType2P206V1(byte type){
+ return switch (type) {
+ case 1 -> (byte)1 ;
+ case 2 -> (byte)3 ;
+ case 8 -> (byte)3 ;
+ case 11 -> (byte)11 ;
+ default -> (byte)-1;
+ };
+ }
+
+ /**
* 寰楀埌鍏冲紑闃�绫诲瀷鍚嶇О
* 0x00:鍒峰崱闂�
* 0x01:骞冲彴鍏�
@@ -280,10 +298,10 @@
* 0x06:鍓╀綑姘撮噺涓嶈冻鍏�
* 0x07:鍓╀綑閲戦涓�0鍏�
* 0x08:寮�娉�/闃�鍚庣閬撴病鏈夋祦閲忓叧
- * 0x09:鎺夌數鍐嶄笂鐢靛叧锛�
- * 0x0a:姘磋〃鐬椂娴侀噺涓�0鍏筹紝
- * 0x0b:鍒峰崱寮�娉碉紝杩滅▼鍏炽��
- * 0x0c:鐢垫睜浣庣數鍘嬪叧銆�
+ * 0x09:鎺夌數鍐嶄笂鐢靛叧
+ * 0x0a:姘磋〃鐬椂娴侀噺涓�0鍏�
+ * 0x0b:鍒峰崱寮�娉碉紝杩滅▼鍏�
+ * 0x0c:鐢垫睜浣庣數鍘嬪叧
* @param type 瀛楄妭
* @return 鍚嶇О
*/
@@ -305,6 +323,37 @@
default -> "鏈煡";
};
}
+ /**
+ * 寰楀埌鍏冲紑闃�绫诲瀷鍚嶇О
+ * 0x00:鍒峰崱闂� => p206V1 2
+ * 0x01:骞冲彴鍏� => p206V1 4
+ * 0x02:APP鍏� => p206V1 4
+ * 0x03:闈炴硶鍗″叧 => p206V1 12
+ * 0x04:姘磋〃閫氳寮傚父鍏� => p206V1 6
+ * 0x05:鐢佃〃寮傚父鍏� => p206V1 6
+ * 0x06:鍓╀綑姘撮噺涓嶈冻鍏� => p206V1 5
+ * 0x07:鍓╀綑閲戦涓�0鍏� => p206V1 5
+ * 0x08:寮�娉�/闃�鍚庣閬撴病鏈夋祦閲忓叧 => p206V1 16
+ * 0x09:鎺夌數鍐嶄笂鐢靛叧锛� => p206V1 7
+ * 0x0a:姘磋〃鐬椂娴侀噺涓�0鍏筹紝 => p206V1 5
+ * 0x0b:鍒峰崱寮�娉碉紝杩滅▼鍏炽�� => p206V1 9
+ * 0x0c:鐢垫睜浣庣數鍘嬪叧銆� => p206V1 7
+ * @param type 瀛楄妭
+ * @return 鍚嶇О
+ */
+ public static byte closeType2P206V1(byte type){
+ return switch (type) {
+ case 0 -> (byte)2;
+ case 1,2 -> (byte)4;
+ case 3 -> (byte)12;
+ case 4,5 -> (byte)6;
+ case 6,7,10 -> (byte)5;
+ case 8 -> (byte)16;
+ case 9,12 -> (byte)7;
+ case 11 -> (byte)9;
+ default -> (byte)-1;
+ };
+ }
public static String ctrlDevType(String hex){
return switch (hex) {
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_84_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_84_Up.java
index e279612..cc155a8 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_84_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_84_Up.java
@@ -104,6 +104,8 @@
index ++ ;//褰撳墠鐢ㄦ按鏂瑰紡
cdData.opType = bs[index];
+ //杩涜鍏煎杞崲
+ cdData.opType = CommonV202404.openType2P206V1(cdData.opType) ;
index++ ;
cdData.icCardAddr = ByteUtil.bytes2Hex(bs, false, index, 4) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java
index 97dcc4e..960178c 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java
@@ -1,5 +1,6 @@
package com.dy.common.mw.protocol.p206V202404.parse.global;
+import com.dy.common.mw.protocol.p206V202404.CommonV202404;
import com.dy.common.mw.protocol.p206V202404.ProtocolConstantV206V202404;
import com.dy.common.mw.protocol.p206V202404.upVos.*;
import com.dy.common.util.ByteUtil;
@@ -242,6 +243,8 @@
index ++ ;
cdData.clType = bs[index];
+ //杩涜鍏煎杞崲
+ cdData.clType = CommonV202404.closeType2P206V1(cdData.clType) ;
index++ ;
cdData.icCardAddr = ByteUtil.bytes2Hex(bs, false, index, 4) ;
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu3rd/src/main/java/com/dy/rtuMw3rd/http4Xjnk/protocol/accessToken/Res4AccessTokenVo.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu3rd/src/main/java/com/dy/rtuMw3rd/http4Xjnk/protocol/accessToken/Res4AccessTokenVo.java
index 0d319d6..5e5203e 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu3rd/src/main/java/com/dy/rtuMw3rd/http4Xjnk/protocol/accessToken/Res4AccessTokenVo.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu3rd/src/main/java/com/dy/rtuMw3rd/http4Xjnk/protocol/accessToken/Res4AccessTokenVo.java
@@ -2,6 +2,7 @@
import com.dy.rtuMw3rd.http4Xjnk.protocol.XjnkResVo;
import lombok.Data;
+import lombok.EqualsAndHashCode;
/**
* @Author: liurunyu
@@ -9,6 +10,7 @@
* @Description
*/
@Data
+@EqualsAndHashCode(callSuper=false)
public class Res4AccessTokenVo extends XjnkResVo {
public String accessToken ;
public Integer expires ;
--
Gitblit v1.8.0