From 36268a2ea052f07ab28b9f1d4d6a654bf4fbbd13 Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期一, 02 十二月 2024 14:16:31 +0800 Subject: [PATCH] 修改升级协议数据中的CRC16算法为查表法 --- pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/upgrade/UpgradeManager.java | 64 ++++++++++++++++++++++++++------ 1 files changed, 52 insertions(+), 12 deletions(-) diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/upgrade/UpgradeManager.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/upgrade/UpgradeManager.java index 46c1b7f..dc3f161 100644 --- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/upgrade/UpgradeManager.java +++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/upgrade/UpgradeManager.java @@ -64,6 +64,11 @@ this.task = new UpgradeTask(); this.task.initOption(this.failTryTimes, this.ugMaxRtuSameTime); this.task.setTask(vo); + log.info("======================================================") ; + log.info("= =") ; + log.info("=璁剧疆浜嗗崌绾т换鍔★紝娑夊強RTU" + vo.rtuAddrList.size() + "鍙� =") ; + log.info("= =") ; + log.info("======================================================") ; }catch (Exception e){ ex = e ; }finally { @@ -83,12 +88,19 @@ * 鍥犱负寮哄埗缁撴潫鍗囩骇浠诲姟锛屽涓�涓湭鍗囩骇瀹屾垚鐨凴TU灏变細鍗℃锛� * 鎵�浠ュ綋寮哄埗缁撴潫鍗囩骇浠诲姟锛屼唬鐮侀�昏緫骞舵病鏈夊己鍒剁粨鏋淩TU鍗囩骇杩囩▼锛屽鏋滃崌绾ц繃绋嬩篃寮哄埗鍋滄锛岄偅涔圧TU鐪熶細鍗℃ */ - public void forceOverUpgradeTask() { + public String forceOverUpgradeTask() { if(this.task != null){ - this.stop(); - this.task.forceOver(); + this.task.countRunningRtuCount(); + if(this.task.curUgRunningRtuTotal > 0){ + return "褰撳墠瀛樺湪鍗囩骇涓殑璁惧锛屼笉鑳界粨鏉熷崌绾т换鍔�" ; + }else{ + this.stop(); + this.task.forceOver(); + return null ; + } + }else{ + return "褰撳墠娌℃湁鍗囩骇浠诲姟" ; } - this.task = null ; } /** @@ -182,23 +194,51 @@ //鍗囩骇浠诲姟鏈畬鎴� //宸ヤ綔1锛氬垽鏂槸鍚︽棤浠讳綍涓�涓猂TU杩涜杩囧崌绾э紝骞朵笖杈惧埌鏃堕檺锛屽垯璁や负褰撳墠鍗囩骇浠诲姟瀹屾垚 //-1:鏃犱竴RTU鍗囩骇涓旇秴鏃讹紝0锛氭棤RTU鍗囩骇浣嗘湭瓒呮椂绛夊緟锛�1鏈塕TU鍗囩骇姝e父鎵ц - int temp = 1 ; - //int temp = this.task.countNoOneRtuUpgradeInDuration() ; + //int temp = 1 ; + int temp = this.task.countNoOneRtuUpgradeInDuration() ; if(temp == -1){ + //褰撳墠娌℃湁RTU杩涜杩囧崌绾э紝鑰屼笖瓒呮椂浜嗭紝璁や负浠诲姟宸茬粡瀹屾垚 this.task.taskIsOver = true ; - //浠诲姟宸茬粡瀹屾垚 this.stop(); + log.info("===========================================================") ; + log.info("= =") ; + log.info("=鏃燫TU鍗囩骇瓒呮椂锛屽洜鏃犱竴鍙癛TU杩涜鍗囩骇锛屽苟涓旂瓑寰呰秴鏃讹紝寮哄埗璁剧疆鍗囩骇瀹屾垚 =") ; + log.info("= =") ; + log.info("===========================================================") ; }else if(temp == 1){ + //褰撳墠鏈塕TU杩涜杩囧崌绾� //宸ヤ綔2锛氱粺璁″綋鍓嶆鍦ㄥ崌绾х殑RTU鏁伴噺锛屼负鍚屾椂鍗囩骇鏁伴噺闄愬埗鍋氬噯澶� this.task.countRunningRtuCount() ; - //宸ヤ綔3锛氱粺璁¢渶瑕佸崌绾т絾褰撳墠绂荤嚎RTU鐨勬儏鍐碉紝瓒呰繃鏃堕檺鐨勮澶囦负鍗囩骇瀹屾垚 - //this.task.countOffRtuAndSetIfOver() ; - + //宸ヤ綔3锛氱粺璁¢渶瑕佸崌绾т絾褰撳墠绂荤嚎RTU鐨勬儏鍐碉紝瓒呰繃鏃堕檺鐨勮缃负鍗囩骇瀹屾垚 + int tmp = this.task.countOffRtuAndSetIfOver() ; + if(tmp >= 1){ + //瓒呮椂锛屽己鍒惰缃竴浜汻TU鍗囩骇澶辫触骞朵笖鍗囩骇瀹屾垚锛� + log.info("======================================================") ; + log.info("= =") ; + log.info("=鍥犵绾胯秴鏃讹紝寮哄埗璁剧疆" + tmp + "鍙癛TU鍗囩骇澶辫触骞朵笖鍗囩骇瀹屾垚 =") ; + log.info("= =") ; + log.info("======================================================") ; + }else if(tmp == 0){ + log.info("======================================================") ; + log.info("= =") ; + log.info("=绂荤嚎瓒呮椂锛屼絾鏃犱竴鍙癛TU鍥犵绾胯�岃璁剧疆鎴愬崌绾уけ璐ュ苟涓斿崌绾у畬鎴� =") ; + log.info("= =") ; + log.info("======================================================") ; + }else{//tmp = -1 + //鏃犱换鍔¢�昏緫 + } //宸ヤ綔4锛氱粺璁℃槸鍚﹀叏閮ㄥ崌绾у畬鎴� - //this.task.taskIsOver = this.task.countIsAllOver() ; + this.task.taskIsOver = this.task.countIsAllOver() ; + if(this.task.taskIsOver){ + log.info("==================================================") ; + log.info("= =") ; + log.info("= 鍗囩骇鍏ㄩ儴缁撴潫锛岃缃崌绾т换鍔″畬鎴愶紝娑夊強RTU" + this.task.taskVo.rtuAddrList.size() + "鍙� =") ; + log.info("= =") ; + log.info("==================================================") ; + } }else if(temp == 0){ - //涓嶄綔涓� + //褰撳墠娌℃湁涓�涓猂TU杩涜杩囧崌绾э紝涔熸病鏈夎秴鏃讹紝涓嶄綔涓� } if(this.task.taskIsOver){ if(!this.task.taskOverType.equals(UpgradeTask.TaskOverType_Force)){ -- Gitblit v1.8.0