🔨 下线会话.

This commit is contained in:
lijiahangmax
2025-06-24 20:44:14 +08:00
parent 1a58e40607
commit 603dd89be4
3 changed files with 10 additions and 6 deletions

View File

@@ -117,8 +117,9 @@ public class TerminalConnectLogController {
@PutMapping("/force-offline")
@Operation(summary = "强制断开终端连接")
@PreAuthorize("@ss.hasAnyPermission('asset:terminal-connect-log:management:force-offline', 'asset:terminal-connect-session:management:force-offline')")
public Integer forceOffline(@Validated(Id.class) @RequestBody TerminalConnectLogQueryRequest request) {
return terminalConnectLogService.forceOffline(request);
public Boolean forceOffline(@Validated(Id.class) @RequestBody TerminalConnectLogQueryRequest request) {
terminalConnectLogService.forceOffline(request);
return true;
}
}

View File

@@ -116,9 +116,8 @@ public interface TerminalConnectLogService {
* 强制断开终端连接
*
* @param request request
* @return effect
*/
Integer forceOffline(TerminalConnectLogQueryRequest request);
void forceOffline(TerminalConnectLogQueryRequest request);
/**
* 构建查询 wrapper

View File

@@ -236,7 +236,7 @@ public class TerminalConnectLogServiceImpl implements TerminalConnectLogService
}
@Override
public Integer forceOffline(TerminalConnectLogQueryRequest request) {
public void forceOffline(TerminalConnectLogQueryRequest request) {
Long id = request.getId();
// 查询数据是否存在
TerminalConnectLogDO record = terminalConnectLogDAO.selectById(id);
@@ -251,8 +251,12 @@ public class TerminalConnectLogServiceImpl implements TerminalConnectLogService
// 关闭会话
session.forceOffline();
}
// 再次查询数据
record = terminalConnectLogDAO.selectById(id);
// 更新状态
return this.updateStatus(record, TerminalConnectStatusEnum.FORCE_OFFLINE, null);
if (!record.getStatus().equals(TerminalConnectStatusEnum.FORCE_OFFLINE.name())) {
this.updateStatus(record, TerminalConnectStatusEnum.FORCE_OFFLINE, null);
}
}
@Override