DELL
2025-03-19 21e2e98d7de6273ab542da3abcdd97545deff8ee
ElectLock_Monitor/src/com/dev/lock/comm/Lock_SocketClient_Thread.java
@@ -119,17 +119,17 @@
                     Lock_Task_SQL.insertLock_Ctl_Log_Table(pool, tmp_log);
                  }
               }else if(mLock_param.getOp_cmd() == ElectLock_ComBase.CMD_SetLockAddr) {
                  mRtu_Tx.mkBusRtu(MyModBusRtu.CMD_TYPE_WRITE_STD, ElectLock_ComBase.LOCK_SET_ADDR_ADDR, ElectLock_ComBase.RegCount_Sigle);
                  if(SocketComm(mRtu_Tx, ComBase.mkUInt16Buffer(mLock_param.getLock_addr_set()))) {
                     mLock_param.setOp_cmd(ElectLock_ComBase.CMD_SetLockAddr_Ack);
                     tmp_log = new ElectLock_Ctl_Log(client_id, ElectLock_ComBase.CtlType_SetLockAddr, true,mLock_param.getLock_addr_set(),mLock_param.getCtl_uname());
                     Lock_Task_SQL.insertLock_Ctl_Log_Table(pool, tmp_log);
                  } else {
                     mLock_param.setOp_cmd(ElectLock_ComBase.CMD_Fail);
                     tmp_log = new ElectLock_Ctl_Log(client_id, ElectLock_ComBase.CtlType_SetLockAddr, false,mLock_param.getLock_addr_set(),mLock_param.getCtl_uname());
                     Lock_Task_SQL.insertLock_Ctl_Log_Table(pool, tmp_log);
                  }
//                  mRtu_Tx.mkBusRtu(MyModBusRtu.CMD_TYPE_WRITE_STD, ElectLock_ComBase.LOCK_SET_ADDR_ADDR, ElectLock_ComBase.RegCount_Sigle);
//                  if(SocketComm(mRtu_Tx, ComBase.mkUInt16Buffer(mLock_param.getLock_addr_set()))) {
//                     mLock_param.setOp_cmd(ElectLock_ComBase.CMD_SetLockAddr_Ack);
//
//                     tmp_log = new ElectLock_Ctl_Log(client_id, ElectLock_ComBase.CtlType_SetLockAddr, true,mLock_param.getLock_addr_set(),mLock_param.getCtl_uname());
//                     Lock_Task_SQL.insertLock_Ctl_Log_Table(pool, tmp_log);
//                  } else {
//                     mLock_param.setOp_cmd(ElectLock_ComBase.CMD_Fail);
//                     tmp_log = new ElectLock_Ctl_Log(client_id, ElectLock_ComBase.CtlType_SetLockAddr, false,mLock_param.getLock_addr_set(),mLock_param.getCtl_uname());
//                     Lock_Task_SQL.insertLock_Ctl_Log_Table(pool, tmp_log);
//                  }
               }else if(mLock_param.getOp_cmd() == ElectLock_ComBase.CMD_AddIdCard) {
                  //添加ID卡授权
                  mRtu_Tx.mkBusRtu(MyModBusRtu.CMD_TYPE_WRITE_MULTY, ElectLock_ComBase.LOCK_Add_ID_AUTH_ADDR, ElectLock_ComBase.RegCount_Double);
@@ -187,7 +187,17 @@
                        logger.info("LockID:"+client_id + " Start change Model :");
                        
                        mRtu_Tx.mkBusRtu(MyModBusRtu.CMD_TYPE_WRITE_STD, ElectLock_ComBase.LOCK_SET_Model_ADDR, ElectLock_ComBase.RegCount_Sigle);
                        SocketComm(mRtu_Tx, ComBase.mkUInt16Buffer(plat_model));
                        if(SocketComm(mRtu_Tx, ComBase.mkUInt16Buffer(plat_model))) {
                           //远程设置锁具在离线模式后最多重启设备3次
                           for(int k = 0 ;k < 3;k++) {
                              mRtu_Tx.mkBusRtu(MyModBusRtu.CMD_TYPE_WRITE_YC, ElectLock_ComBase.LOCK_RESTART_ADDR, ElectLock_ComBase.RegCount_Sigle);
                              if(SocketComm(mRtu_Tx, ComBase.mkUInt16Buffer(ElectLock_ComBase.Control_Value))) {
                                 //重启锁具成功
                                 break;
                              }
                           }
                           Thread.sleep(1000);
                        }
                     }
                  }
               }
@@ -246,6 +256,8 @@
      } finally {
         logger.info("设备断开连接:DevIp:" + client_ip + " DevId:" + mLock_State.getLockDevId());
         mLock_State.setLock_online(0);
         //重置mac地址会影响app开始,待定逻辑
         //mLock_State.resetLockMacAddr();
         Lock_Task_SQL.updateLock_Inf_Table(pool,ele_lock,mLock_State);
      }