From 656aa4f953eb52502a6414965e46642c31b6e8ee Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期二, 29 四月 2025 15:33:09 +0800
Subject: [PATCH] 设备会在多种功能码上报数据中携带报警与状态数据,这样数据库保存设备报警与状态数据可能很多,为此修改逻辑,当前实现为一设备一个小时内只保存一条报警与状态数据。

---
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealVirCardStateV202404.java |   43 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 43 insertions(+), 0 deletions(-)

diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealVirCardStateV202404.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealVirCardStateV202404.java
new file mode 100644
index 0000000..0a18f1f
--- /dev/null
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealVirCardStateV202404.java
@@ -0,0 +1,43 @@
+package com.dy.rtuMw.server.rtuData.p206V202404;
+
+import com.dy.common.mw.protocol.p206V202404.upVos.AlarmVo;
+import com.dy.rtuMw.server.rtuData.TaskSurpport;
+import com.dy.rtuMw.server.rtuData.dbSv.DbSv;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+
+import java.util.Date;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2024/8/9 9:49
+ * @Description
+ */
+public class TkDealVirCardStateV202404 extends TaskSurpport {
+
+    private static final Logger log = LogManager.getLogger(TkDealVirCardStateV202404.class.getName()) ;
+
+    //绫籌D锛屼竴瀹氫笌Tree.xml閰嶇疆鏂囦欢涓厤缃竴鑷�
+    public static final String taskId = "TkDealVirCardStateV202404" ;
+
+    /**
+     * 鎵ц鑺傜偣浠诲姟锛氳櫄鎷熷崱鍦ㄥ彇姘村彛涓婄殑鍗犵敤鐘舵�佹敼涓洪潪鍗犵敤鐘舵��
+     * @param data 闇�瑕佸鐞嗙殑鏁版嵁
+     */
+    @Override
+    public void execute(Object data) {
+        Object[] objs = this.getTaskResults(TkDealAlarmStatusV202404.taskId);
+        if(objs != null && objs.length >= 2){
+            Long intakeId = (Long)objs[0] ;
+            Byte valveState = (Byte)objs[1] ;
+            if(intakeId != null && valveState.byteValue() == AlarmVo.DevCloseState){
+                objs = this.getTaskResults(TkPreGenObjsV202404.taskId);
+                DbSv sv = (DbSv) objs[0];
+                //铏氭嫙鍗″湪鍙栨按鍙d笂鐨勫崰鐢ㄧ姸鎬佹敼涓洪潪鍗犵敤鐘舵��
+                Date now = new Date() ;
+                sv.updateVirCardNoUseState(intakeId, now);
+            }
+        }
+    }
+
+}

--
Gitblit v1.8.0