pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/tasks/RtuUpTask.java
@@ -14,11 +14,11 @@
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.ProtocolCach;
import com.dy.common.mw.protocol.ProtocolCache;
import com.dy.aceMw.server.ServerProperties;
import com.dy.aceMw.server.forTcp.RtuLogDealer;
import com.dy.aceMw.server.forTcp.RtuStatusDealer;
import com.dy.aceMw.server.forTcp.TcpSessionCach;
import com.dy.aceMw.server.forTcp.TcpSessionCache;
import com.dy.common.util.ByteUtil;
public class RtuUpTask extends CoreTask {
@@ -26,7 +26,7 @@
   private static final Logger log = LogManager.getLogger(RtuUpTask.class.getName());
   @Override
   public Integer excute() {
   public Integer execute() {
      Object[] os = (Object[])this.data ;
      IoSession session = (IoSession)os[0] ;
      byte[] upBuf = (byte[])os[1] ;
@@ -72,20 +72,20 @@
               //设置session的属性ID
               TcpUnit.getInstance().setIoSessionArrId(session, rtuAddr);
               //缓存session
               TcpSessionCach.putNewTcpSession(rtuAddr, protocolName, session);
               TcpSessionCache.putNewTcpSession(rtuAddr, protocolName, session);
               
               log.info("RTU(地址:" + rtuAddr + ")上线了。") ;
               log.info("RTU(地址:" + rtuAddr + ",协议:" + protocolName + ")上线了。") ;
            }
         }
      }
      
      if(rtuAddr != null){
         if(protocolName == null){
            protocolName = TcpSessionCach.getTcpProtocolName(rtuAddr) ;
            protocolName = TcpSessionCache.getTcpProtocolName(rtuAddr) ;
         }
         
         //设置收到数据时刻
         TcpSessionCach.cachUpDataTime(rtuAddr);
         TcpSessionCache.cacheUpDataTime(rtuAddr);
         
         if(protocolName != null){
            //对上行数据进行处理
@@ -144,17 +144,17 @@
    * @throws Exception 异常
    */
   private void dealUpData(IoSession session, String rtuAddrAtHead, String protocolName, boolean isOnLine, byte[] upBuf, String upHex) throws Exception{
      Driver dri = ProtocolCach.getDriver(protocolName) ;
      Driver dri = ProtocolCache.getDriver(protocolName) ;
      if(dri == null){
         log.error("严重错误,未能得到协议" + protocolName + "驱动类实例!");
      }else{
         MidResult[] midRs = dri.parseData(ServerProperties.isLowPower, rtuAddrAtHead, upBuf, upHex, new DriverParserDataCallback(){
            @Override
            public void callback(String rtuAddrAtHead, String meterNoAtHead, String code, String upHex, Boolean reportOrResponse_trueOrFalse, boolean parseFail, String rtuAddrInData, String meterNoInData) {
            public void callback(String rtuAddrAtHead, String code, String upHex, Boolean reportOrResponse_trueOrFalse, boolean parseFail, String rtuAddrInData) {
               //更新终端状态
               if(rtuAddrInData != null && !rtuAddrInData.equals(rtuAddrAtHead)){
                  //数据头中的RTU地址与数据中的RTU地址不一致,更换成数据中的RTU地址
                  TcpSessionCach.changeRtuAddr(rtuAddrAtHead, rtuAddrInData, protocolName, session);
                  TcpSessionCache.changeRtuAddr(rtuAddrAtHead, rtuAddrInData, protocolName, session);
                  session.setAttribute(TcpIoSessionAttrIdIsRtuAddr.sessionArrIdKey, rtuAddrInData) ;
               }