From b42645b0ce0603cc20971554c509576c2c7ef6e8 Mon Sep 17 00:00:00 2001 From: lijiahangmax Date: Thu, 10 Jul 2025 03:32:45 +0800 Subject: [PATCH] =?UTF-8?q?:bug:=20=E4=BF=AE=E5=A4=8D=E4=BC=9A=E8=AF=9D?= =?UTF-8?q?=E6=89=93=E5=BC=80=E9=BB=91=E5=B1=8F.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/application-dev.yaml | 2 +- .../handler/host/config/HostVncConfigStrategy.java | 7 ++++++- .../terminal/handler/TerminalConnectHandler.java | 3 +++ .../src/assets/style/host-terminal-layout.less | 4 ++-- orion-visor-ui/src/utils/index.ts | 6 ++---- .../terminal-connect-log/types/table.columns.ts | 11 +++++++++++ .../view/guacd/actions/clipboard-action.vue | 14 +++++++++++--- .../src/views/terminal/interfaces/session.ts | 2 +- .../terminal/service/session/base-guacd-session.ts | 10 ++++++---- 9 files changed, 43 insertions(+), 16 deletions(-) diff --git a/orion-visor-launch/src/main/resources/application-dev.yaml b/orion-visor-launch/src/main/resources/application-dev.yaml index 2c59d903..09ff44f0 100644 --- a/orion-visor-launch/src/main/resources/application-dev.yaml +++ b/orion-visor-launch/src/main/resources/application-dev.yaml @@ -13,7 +13,7 @@ spring: host: ${REDIS_HOST:127.0.0.1} port: ${REDIS_PORT:6379} password: ${REDIS_PASSWORD:Data@123456} - database: ${REDIS_DATABASE:10} + database: ${REDIS_DATABASE:1} data-version: ${REDIS_DATA_VERSION:1} mock: false redisson: diff --git a/orion-visor-modules/orion-visor-module-asset/orion-visor-module-asset-service/src/main/java/org/dromara/visor/module/asset/handler/host/config/HostVncConfigStrategy.java b/orion-visor-modules/orion-visor-module-asset/orion-visor-module-asset-service/src/main/java/org/dromara/visor/module/asset/handler/host/config/HostVncConfigStrategy.java index 290e64f0..b8ed7887 100644 --- a/orion-visor-modules/orion-visor-module-asset/orion-visor-module-asset-service/src/main/java/org/dromara/visor/module/asset/handler/host/config/HostVncConfigStrategy.java +++ b/orion-visor-modules/orion-visor-module-asset/orion-visor-module-asset-service/src/main/java/org/dromara/visor/module/asset/handler/host/config/HostVncConfigStrategy.java @@ -62,6 +62,7 @@ public class HostVncConfigStrategy extends AbstractHostConfigStrategy div) { + & > div { position: relative; z-index: 8; } @@ -647,7 +647,7 @@ body[terminal-theme='dark'] .arco-modal-container { display: flex; align-items: center; justify-content: center; - z-index: 9999; + z-index: 30; } // guacd 工具栏 diff --git a/orion-visor-ui/src/utils/index.ts b/orion-visor-ui/src/utils/index.ts index 7fa30497..7b376dfd 100644 --- a/orion-visor-ui/src/utils/index.ts +++ b/orion-visor-ui/src/utils/index.ts @@ -96,12 +96,10 @@ export function formatSecond(second: number, p = 'HH:mm') { /** * 格式化持续时间 - * @param start - * @param end */ -export function formatDuration(start: number, end?: number): string { +export function formatDuration(start: number, end?: number, none: string = ''): string { if (!end) { - return ''; + return none; } const duration = (end - start) / 1000; if (duration < 1) { diff --git a/orion-visor-ui/src/views/asset-audit/terminal-connect-log/types/table.columns.ts b/orion-visor-ui/src/views/asset-audit/terminal-connect-log/types/table.columns.ts index 80bc928c..5f953e0c 100644 --- a/orion-visor-ui/src/views/asset-audit/terminal-connect-log/types/table.columns.ts +++ b/orion-visor-ui/src/views/asset-audit/terminal-connect-log/types/table.columns.ts @@ -1,4 +1,5 @@ import type { TableColumnData } from '@arco-design/web-vue'; +import { formatDuration } from '@/utils'; export const logColumns = [ { @@ -46,6 +47,16 @@ export const logColumns = [ align: 'left', ellipsis: true, default: true, + }, { + title: '持续时间', + dataIndex: 'duration', + slotName: 'duration', + align: 'left', + width: 142, + render: ({ record }) => { + return formatDuration(record.startTime, record.endTime, '-'); + }, + default: true, }, { title: '连接时间', dataIndex: 'connectTime', diff --git a/orion-visor-ui/src/views/terminal/components/view/guacd/actions/clipboard-action.vue b/orion-visor-ui/src/views/terminal/components/view/guacd/actions/clipboard-action.vue index 884875e3..7b8a41c0 100644 --- a/orion-visor-ui/src/views/terminal/components/view/guacd/actions/clipboard-action.vue +++ b/orion-visor-ui/src/views/terminal/components/view/guacd/actions/clipboard-action.vue @@ -11,10 +11,18 @@ + @click="sendClipboardData(false)"> 发送 + + 粘贴 + @@ -38,8 +46,8 @@ const clipboardData = ref(''); // 发送剪切板数据 - const sendClipboardData = () => { - props.session.paste(clipboardData.value); + const sendClipboardData = (sendPaste: boolean) => { + props.session.paste(clipboardData.value, sendPaste); emits('close'); }; diff --git a/orion-visor-ui/src/views/terminal/interfaces/session.ts b/orion-visor-ui/src/views/terminal/interfaces/session.ts index 0a3fefb2..1d13bdc0 100644 --- a/orion-visor-ui/src/views/terminal/interfaces/session.ts +++ b/orion-visor-ui/src/views/terminal/interfaces/session.ts @@ -176,7 +176,7 @@ export interface IGuacdSession extends ITerminalSession) => void; // 粘贴 - paste: (data: string) => void; + paste: (data: string, sendPaste: boolean) => void; } // RDP 会话定义 diff --git a/orion-visor-ui/src/views/terminal/service/session/base-guacd-session.ts b/orion-visor-ui/src/views/terminal/service/session/base-guacd-session.ts index 67214e3f..d67014f6 100644 --- a/orion-visor-ui/src/views/terminal/service/session/base-guacd-session.ts +++ b/orion-visor-ui/src/views/terminal/service/session/base-guacd-session.ts @@ -141,16 +141,18 @@ export default abstract class BaseGuacdSession extends BaseSession { - this.sendKeys([65507, 118]); - }, 100); + if (sendPaste) { + setTimeout(() => { + this.sendKeys([65507, 118]); + }, 100); + } } // 聚焦