liusuyi
2026-03-02 27a2a8d133b99cba028da5934359ff4868506939
ard-work/src/main/java/com/ard/work/component/websocket/handler/TyMessageHandler.java
@@ -317,7 +317,7 @@
        Long userId = Long.parseLong(userIdStr);
        lastDisconnectTime.remove(userId); // 清除断开标记
        WebSocketSessionManager.addSession(userId, session);
        log.info("【ws】【{}】Connected,size: {}",userId, WebSocketSessionManager.getOnlineUserCount());
        log.info("【ws】【{}】Connected,size: {}", userId, WebSocketSessionManager.getOnlineUserCount());
    }
    @Override
@@ -329,7 +329,7 @@
        }
        Long userId = Long.parseLong(userIdStr);
        WebSocketSessionManager.removeSession(userId);
        log.info("【ws】【{}】Disconnected,size: {}",userId, WebSocketSessionManager.getOnlineUserCount());
        log.info("【ws】【{}】Disconnected,size: {}", userId, WebSocketSessionManager.getOnlineUserCount());
        long version = System.currentTimeMillis();
        lastDisconnectTime.put(userId, version);
        // 释放该用户所有 UAV 控制权
@@ -352,7 +352,8 @@
                uavSignalManager.removeSubscribe(userId);
                uavControlManager.removeSubscribe(userId);
                LoginUser loginUser = tokenService.getLoginUserByUserId(userId);
                if (loginUser != null) {
                // 只移除本平台用户token,挂接用户token不移除
                if (loginUser != null && "0".equals(loginUser.getUser().getPlatform())) {
                    tokenService.delLoginUser(loginUser.getToken(), userId);
                    log.info("【cmd】用户 [{}] 超时未重连,已删除 token", userId);
                }