From 7b38f4ec223e9480c4de2824782fe3695a25d848 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期五, 06 十二月 2024 11:19:16 +0800
Subject: [PATCH] 修改升级过程逻辑,RTU上报数据后触发升级过程中,首先判断是否因为阀门是开启状态而不能升级

---
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/upgrade/UpgradeTask.java |   27 ++++++++++++++++++++++++++-
 1 files changed, 26 insertions(+), 1 deletions(-)

diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/upgrade/UpgradeTask.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/upgrade/UpgradeTask.java
index c5d795e..587b457 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/upgrade/UpgradeTask.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/upgrade/UpgradeTask.java
@@ -35,6 +35,8 @@
     @JSONField(serialize = false)
     protected Integer ugMaxRtuSameTime ;//鍚屾椂鍗囩骇RTU鏈�澶т釜鏁�
     @JSONField(serialize = false)
+    private Boolean openNoUpgrade ;//闃�寮�锛堟车寮�锛変笉鎵ц鍗囩骇
+    @JSONField(serialize = false)
     private Integer lastOpenMaxGoOn ;//闃�寮�锛堟车寮�锛夌姸鎬佽缃互鏉ユ寔缁渶闀挎椂闂达紙绉掗挓锛夛紝瓒呰繃杩欎釜鏃堕棿璁や负鐘舵�佹棤鏁堬紙杩欎釜鏃堕暱鍙栧喅浜庡伐浣滄姤闂撮殧锛�
 
     public String setupDt ;//璁剧疆鏃堕棿(yyyy-mm-dd HH:MM:SS)
@@ -64,7 +66,11 @@
     /**
      *  鍒濆鍖栭厤缃俊鎭�
      */
-    public void initOption(Integer lastOpenMaxGoOn, Integer failTryTimes, Integer ugMaxRtuSameTime) {
+    public void initOption(Boolean openNoUpgrade,
+                           Integer lastOpenMaxGoOn,
+                           Integer failTryTimes,
+                           Integer ugMaxRtuSameTime) {
+        this.openNoUpgrade = openNoUpgrade;
         this.lastOpenMaxGoOn = lastOpenMaxGoOn;
         this.failTryTimes = failTryTimes;
         this.ugMaxRtuSameTime = ugMaxRtuSameTime;
@@ -147,6 +153,25 @@
                     //褰撳墠RTU宸茬粡鍗囩骇瀹屾垚锛屾棤闇�鍐嶅崌绾�
                     return;
                 }else{
+                    if(this.openNoUpgrade){
+                        //棣栧厛鍒ゆ柇鏄惁鏄榾闂ㄦ墦寮�鐘舵��
+                        RtuStatus rtuStatus = RtuStatusDealer.oneStatus(rtuAddr) ;
+                        if(rtuStatus != null
+                                && rtuStatus.valveOpenTrueCloseFalse != null
+                                && rtuStatus.valveOpenTrueCloseFalse.booleanValue() == true
+                                && rtuStatus.valveStatusLastTimeStamp != null){
+                            //鏈夌姸鎬侊紝骞朵笖鏄榾寮�锛堟车寮�锛�
+                            Long now = System.currentTimeMillis() ;
+                            Long gap = now - rtuStatus.valveStatusLastTimeStamp ;
+                            if(gap < this.lastOpenMaxGoOn){
+                                //杩欐椂閲囩撼闃�闂ㄦ墦寮�鐘舵�侊紝杩涜�屼笉鑳藉崌绾�
+                                ugRtu.isOver = true ;
+                                ugRtu.state = UpgradeRtu.STATE_FAILOPEN ;
+                                return;
+                            }
+                        }
+                    }
+
                     if(UpgradeUnit.confVo.ugMaxRtuAtOnce > 0){
                         //璁剧疆浜嗗悓鏃跺崌绾х殑RTU鏈�澶ф暟閲忕殑闄愬埗
                         if(ugRtu.state == UpgradeRtuDev.STATE_OFFLINE){

--
Gitblit v1.8.0