From deac851d71b074885553f538a396936815073fc1 Mon Sep 17 00:00:00 2001 From: zhubaomin <zhubaomin> Date: 星期二, 15 四月 2025 08:46:01 +0800 Subject: [PATCH] 优化命令发布接口(6个),重复时使用新的commandId --- pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuState/RtuStatus.java | 103 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 103 insertions(+), 0 deletions(-) diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuState/RtuStatus.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuState/RtuStatus.java new file mode 100644 index 0000000..ad31ca6 --- /dev/null +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuState/RtuStatus.java @@ -0,0 +1,103 @@ +package com.dy.common.mw.protocol.rtuState; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.dy.common.util.DateTime; +import lombok.Data; + +/** + * RTU鍦ㄩ�氫俊涓棿浠朵腑鐨勮繍琛岀姸鎬� + */ +@Data +public class RtuStatus { + + public String rtuAddr ;//rtu鍦板潃 + public String ip ;//RTU绔疘P + public Integer port ;//RTU绔鍙� + public String onLineDt ;//鏈�杩戜笂绾挎椂鍒� + public String offLineDt ;//鏈�杩戠绾挎椂鍒� + + public String protocolName ;//鍗忚鍚嶇О + public Short protocolVersion ;//鍗忚鐗堟湰鍙� + + public Boolean valveOpenTrueCloseFalse ;//闃�闂ㄧ姸鎬侊紙true涓哄紑鍚姸鎬侊紝false涓哄叧闂�侊級 + public String valveOpenLastDt ;//鏈�鍚庤缃榾闂ㄥ紑鍚姸鎬佹椂鍒� + public String valveCloseLastDt ;//鏈�鍚庤缃榾闂ㄥ叧闂姸鎬佹椂鍒� + @JSONField(serialize = false) + public Long valveStatusLastTimeStamp ;//鏈�鍚庤缃榾闂ㄧ姸鎬佹椂鍒� + + @JSONField(serialize = false) + public String lastUpCode ;//鏈�杩戜竴娆′笂琛屾暟鎹殑鍔熻兘鐮� + public String lastUpCodeName ;//鏈�杩戜竴娆′笂琛屾暟鎹殑鍔熻兘鐮佸悕绉� + public String lastUpDt ;//鏈�杩戜竴娆′笂琛屾暟鎹殑鏃跺埢 + + @JSONField(serialize = false) + public String lastDownCode ;//鏈�杩戜竴娆′笅琛屾暟鎹殑鍔熻兘鐮� + public String lastDownCodeName ;//鏈�杩戜竴娆′笅琛屾暟鎹殑鍔熻兘鐮佸悕绉� + public String lastDownDt ;//鏈�杩戜竴娆′笅琛屾暟鎹殑鏃跺埢 + + @JSONField(serialize = false) + public String lastSuccessCommandCode ;//鏈�杩戜竴娆℃垚鍔熷懡浠ょ殑鍔熻兘鐮� + public String lastSuccessCommandCodeName ;//鏈�杩戜竴娆℃垚鍔熷懡浠ょ殑鍔熻兘鐮佸悕绉� + public String lastSuccessCommandDt ;//鏈�杩戜竴娆℃垚鍔熷懡浠ょ殑鏃跺埢 + + @JSONField(serialize = false) + public String lastFailureCommandCode ;//鏈�杩戜竴娆″け璐ュ懡浠ょ殑鍔熻兘鐮� + public String lastFailureCommandCodeName ;//鏈�杩戜竴娆″け璐ュ懡浠ょ殑鍔熻兘鐮佸悕绉� + public String lastFailureCommandDt ;//鏈�杩戜竴娆″け璐ュ懡浠ょ殑鏃跺埢 + + + public void onLine(String rtuAddr, String ip, Integer port, String protocolName, Short protocolVersion){ + this.rtuAddr = rtuAddr ; + this.ip = ip ; + this.port = port ; + this.onLineDt = DateTime.yyyy_MM_dd_HH_mm_ss() ; + this.protocolName = protocolName ; + this.protocolVersion = protocolVersion ; + } + + public void offLine(){ + this.offLineDt = DateTime.yyyy_MM_dd_HH_mm_ss() ; + } + + public void upData(String code, String codeName, Integer bufferLen){ + this.lastUpCode = code ; + this.lastUpCodeName = codeName ; + this.lastUpDt = DateTime.yyyy_MM_dd_HH_mm_ss() ; + } + + public void downData(String code, String codeName, Integer bufferLen){ + this.lastDownCode = code ; + this.lastDownCodeName = codeName ; + this.lastDownDt = DateTime.yyyy_MM_dd_HH_mm_ss() ; + } + + public void commandSuccess(String code, String codeName){ + this.lastSuccessCommandCode = code ; + this.lastSuccessCommandCodeName = codeName ; + this.lastSuccessCommandDt = DateTime.yyyy_MM_dd_HH_mm_ss() ; + } + + public void commandFailure(String code, String codeName){ + this.lastFailureCommandCode = code ; + this.lastFailureCommandCodeName = codeName ; + this.lastFailureCommandDt = DateTime.yyyy_MM_dd_HH_mm_ss() ; + } + + public void valveOpen(){ + if(this.valveOpenTrueCloseFalse == null || !this.valveOpenTrueCloseFalse.booleanValue()){ + this.valveOpenTrueCloseFalse = true ; + this.valveOpenLastDt = DateTime.yyyy_MM_dd_HH_mm_ss() ; + this.valveCloseLastDt = null ; + this.valveStatusLastTimeStamp = System.currentTimeMillis() ; + } + } + + public void valveClose(){ + if(this.valveOpenTrueCloseFalse == null || this.valveOpenTrueCloseFalse.booleanValue()){ + this.valveOpenTrueCloseFalse = false ; + this.valveCloseLastDt = DateTime.yyyy_MM_dd_HH_mm_ss() ; + this.valveStatusLastTimeStamp = System.currentTimeMillis() ; + } + } + +} -- Gitblit v1.8.0