From df76c06b86c2400068048cbc6e24bc92af3f9879 Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期四, 14 十一月 2024 15:04:19 +0800 Subject: [PATCH] 完善升级演示代码,修改bug --- pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/rtuUpgrage/RtuUpgradeStateReceiverCtrl.java | 83 ++++++++++++++++++++++++++++++----------- 1 files changed, 60 insertions(+), 23 deletions(-) diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/rtuUpgrage/RtuUpgradeStateReceiverCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/rtuUpgrage/RtuUpgradeStateReceiverCtrl.java index 3c7ffa2..f5db8fb 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/rtuUpgrage/RtuUpgradeStateReceiverCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/rtuUpgrage/RtuUpgradeStateReceiverCtrl.java @@ -8,8 +8,8 @@ import com.dy.common.util.DateTime; import com.dy.common.util.ThreadJob; import com.dy.common.webUtil.BaseResponse; -import com.dy.pipIrrGlobal.pojoRm.UgRtuProgram; -import com.dy.pipIrrGlobal.pojoRm.UgRtuTask; +import com.dy.pipIrrGlobal.pojoUg.UgRtuProgram; +import com.dy.pipIrrGlobal.pojoUg.UgRtuTask; import io.swagger.v3.oas.annotations.Hidden; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.extern.slf4j.Slf4j; @@ -112,12 +112,20 @@ private static ThreadJob threadJob ; + protected void resetDemo(){ + if(threadJob != null){ + threadJob.stop() ; + threadJob = null ; + } + cache = null ; + } + protected void demo(){ if(cache == null){ UgRtuTask tpo = this.sv.selectLastTask() ; if(tpo != null) { UgRtuProgram ppo = this.sv.selectProgramById(tpo.programId); - if (ppo == null) { + if (ppo != null) { List<String> taskRtuAddrs = this.sv.selectAllRtuAddrByTask("" + tpo.id); if (taskRtuAddrs != null && taskRtuAddrs.size() > 0) { cache = new UpgradeInfo(); @@ -137,7 +145,17 @@ threadJob = new ThreadJob() { @Override public Object execute() throws Exception { - runDemo() ; + while(!this.stop){ + if(!runDemo()){ + this.stop = true ; + }else{ + try { + Thread.sleep(500); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + } return null; } }; @@ -162,25 +180,11 @@ } } } - private void runDemo(){ - boolean hasRunning = true ; - while (true){ - for(UpgradeRtu rtu : cache.ugRtuStateList){ - this.rtuUpgrade(rtu) ; - hasRunning = this.statisticsNowUpgradeState() ; - if(!hasRunning){ - break ; - } - } - if(!hasRunning){ - break ; - } - try { - Thread.sleep(500); - } catch (InterruptedException e) { - e.printStackTrace(); - } + private boolean runDemo(){ + for(UpgradeRtu rtu : cache.ugRtuStateList){ + this.rtuUpgrade(rtu) ; } + return this.statisticsNowUpgradeState() ; } private void rtuUpgrade(UpgradeRtu rtu){ if(rtu.lastDownDt == null){ @@ -215,13 +219,45 @@ return ; } int n = Integer.parseInt(new CreateRandom().create(2)) ; - if(n == 44 || n == 45 || n == 54){ + if(n == 4 + || n == 14 + || n == 24 + || n == 34 + || n == 44 + || n == 54 + || n == 64 + || n == 74 + || n == 84 + || n == 95 + || n == 45 + || n == 46 + || n == 47 + || n == 48 + || n == 49){ if(rtu.currentPackage == 1){ //1鍖呮 rtu.state = UpgradeRtu.STATE_FAILONE ; return ; } } + + if(n == 40 + || n == 41 + || n == 42 + || n == 43 + || n == 44 + || n == 45 + || n == 46 + || n == 47 + || n == 48 + || n == 49){ + if(rtu.currentPackage != 1){ + //鍗囨 + rtu.state = UpgradeRtu.STATE_FAIL ; + return ; + } + } + if(rtu.currentPackage == rtu.totalPackage){ //鍗囩骇缁撴潫 rtu.state = UpgradeRtu.STATE_SUCCESS ; @@ -244,6 +280,7 @@ public boolean statisticsNowUpgradeState() { boolean hasRunning = false ; if(cache.ugRtuStateList != null && cache.ugRtuStateList.size() > 0){ + cache.ugOverallState.init(); for(UpgradeRtu rtu : cache.ugRtuStateList){ if(rtu.state == UpgradeRtu.STATE_OFFLINE){ cache.ugOverallState.offLineTotal ++ ; -- Gitblit v1.8.0