From 56062b177a71cf781f8e480c0ec6f5e8394e7a8e Mon Sep 17 00:00:00 2001
From: Xiajijian <1176061145@qq.com>
Date: Thu, 16 Oct 2025 14:51:29 +0800
Subject: [PATCH] 1.修改服务器状态接口优化。 2.无人机盒子对象增加盒子别名字段。 3.动态修改服务状态。

---
 ard-work/src/main/java/com/ard/work/component/netty/TyTcpClientManager.java |   19 ++++++++++++++-----
 1 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/ard-work/src/main/java/com/ard/work/component/netty/TyTcpClientManager.java b/ard-work/src/main/java/com/ard/work/component/netty/TyTcpClientManager.java
index 3a1ec4b..a52c955 100644
--- a/ard-work/src/main/java/com/ard/work/component/netty/TyTcpClientManager.java
+++ b/ard-work/src/main/java/com/ard/work/component/netty/TyTcpClientManager.java
@@ -63,7 +63,9 @@
         return bootstrap;
     }
 
-    /** 新增或重连服务器 */
+    /**
+     * 新增或重连服务器
+     */
     public void connectServer(ArdServerInfo serverInfo) {
         String serverId = serverInfo.getId();
         String host = serverInfo.getHost();
@@ -79,9 +81,13 @@
                 Channel channel = f.channel();
                 channel.attr(AttributeKey.valueOf("serverId")).set(serverId);
                 TyTcpServerCache.putTcpServerCache(serverId, true);
+                // 断开服务器,修改状态为: 0 - 在线
+                ardServerService.updateServerStatus(serverId, "1");
             } else {
                 log.warn("❌ 服务器 [{}] 连接失败", serverId);
                 TyTcpServerCache.putTcpServerCache(serverId, false);
+                // 断开服务器,修改状态为: 0 - 离线
+                ardServerService.updateServerStatus(serverId, "0");
             }
         });
 
@@ -97,12 +103,16 @@
         channels.put(serverId, session);
     }
 
-    /** 断开服务器连接 */
+    /**
+     * 断开服务器连接
+     */
     public void disconnectServer(String serverId) {
         TcpClientSession session = channels.remove(serverId);
         if (session != null && session.getChannelFuture() != null) {
             session.getChannelFuture().channel().close();
             log.info("断开服务器 [{}] 连接", serverId);
+            // 断开服务器,修改状态为: 0 - 离线
+            ardServerService.updateServerStatus(serverId, "0");
         }
         TyTcpServerCache.removeTcpServerCache(serverId);
     }
@@ -140,7 +150,7 @@
     @PostConstruct
     public void initConnectServers() {
         try {
-            var serverList = ardServerService.selectArdServerManagementList(new ArdServerInfo()); // ← 从数据库查询所有服务器配置
+            var serverList = ardServerService.selectArdServerInfoList(new ArdServerInfo()); // ← 从数据库查询所有服务器配置
             if (serverList == null || serverList.isEmpty()) {
                 log.warn("未在数据库中找到边缘服务器配置,跳过连接初始化");
                 return;
@@ -160,7 +170,7 @@
     public void reconnectFailedServers() {
         TyTcpServerCache.getTcpServerCacheMap().forEach((key, state) -> {
             if (Boolean.FALSE.equals(state)) { // 连接失败的服务器
-                ArdServerInfo serverInfo = ardServerService.selectArdServerManagementById(key);
+                ArdServerInfo serverInfo = ardServerService.selectArdServerInfoById(key);
                 if (serverInfo != null) {
                     connectServer(serverInfo);
                 }
@@ -188,5 +198,4 @@
                             session.getServerId(), session.getHost(), session.getPort(), timestamp);
                 });
     }
-
 }

--
Gitblit v1.9.3