From 7c94f000ca94776eb62e8296bf4f42473085f242 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期六, 23 十一月 2024 13:59:22 +0800
Subject: [PATCH] 改一下

---
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/RtuUpTask.java |   33 ++++++++++++++++++++++++++-------
 1 files changed, 26 insertions(+), 7 deletions(-)

diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/RtuUpTask.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/RtuUpTask.java
index 6981b18..fe6e49c 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/RtuUpTask.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/RtuUpTask.java
@@ -2,6 +2,11 @@
 
 import java.net.InetSocketAddress;
 
+import com.dy.common.mw.protocol.*;
+import com.dy.common.springUtil.SpringContextUtil;
+import com.dy.common.util.Callback;
+import com.dy.rtuMw.server.upgrade.UpgradeUnit;
+import com.dy.rtuMw.web.com.CommandCtrl;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 import org.apache.mina.core.session.IoSession;
@@ -9,12 +14,6 @@
 import com.dy.common.mw.channel.tcp.TcpIoSessionAttrIdIsRtuAddr;
 import com.dy.common.mw.channel.tcp.TcpUnit;
 import com.dy.common.mw.core.CoreTask;
-import com.dy.common.mw.protocol.DriverParserDataCallback;
-import com.dy.common.mw.protocol.MidResult;
-import com.dy.common.mw.protocol.Driver;
-import com.dy.common.mw.protocol.OnLine;
-import com.dy.common.mw.protocol.OnLineHandle;
-import com.dy.common.mw.protocol.ProtocolCache;
 import com.dy.rtuMw.server.ServerProperties;
 import com.dy.rtuMw.server.forTcp.RtuLogDealer;
 import com.dy.rtuMw.server.forTcp.RtuStatusDealer;
@@ -64,7 +63,7 @@
 			//璇存槑鍒氬缓绔嬬綉缁滆繛鎺ワ紝姝ゆ暟鎹簲璇ユ槸涓婄嚎鏁版嵁
 			isOnLine = true ;
 			Object[] rtuAddrProtocolNameVersion = this.parseOnLine(session, upBuf) ;
-			if(rtuAddrProtocolNameVersion.length == 2){
+			if(rtuAddrProtocolNameVersion.length == 3){
 				//瑙f瀽涓婄嚎鏁版嵁鎴愬姛锛屽苟瑙f瀽鍑篟TU鍦板潃鍙婇�氫俊鍗忚鍚嶇О
 				rtuAddr = (String)rtuAddrProtocolNameVersion[0] ;
 				protocolName = (String)rtuAddrProtocolNameVersion[1] ;
@@ -210,6 +209,26 @@
 					}else{
 						RtuLogDealer.log(rtuAddr, (isOnLine?"涓婄嚎鏁版嵁 ":"涓婅鏁版嵁 ") +  code + ("锛�" + codeName + "锛�") + "锛�" + upHex);
 					}
+
+					//瑙﹀彂杩滅▼RTU杞欢鍗囩骇
+					UpgradeUnit.getInstance().trigger(rtuAddr, code, protocolName, protocolVersion, new Callback() {
+						@Override
+						public void call(Object obj) {
+							if(obj != null){
+								Command com = (Command)obj ;
+								CommandCtrl comCtrl = SpringContextUtil.getBean(CommandCtrl.class) ;
+								if(comCtrl != null){
+									comCtrl.sendOutComFromLocal(com) ;
+								}
+							}
+						}
+						@Override
+						public void call(Object... objs) {
+						}
+						@Override
+						public void exception(Exception e) {
+						}
+					});
 				}
 			}) ;
 			if(midRs != null){

--
Gitblit v1.8.0