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