From 50f2c8cc6aee99aa7c44577a4610b337030fd119 Mon Sep 17 00:00:00 2001 From: lijiahang Date: Thu, 4 Jan 2024 17:58:20 +0800 Subject: [PATCH] =?UTF-8?q?=E5=89=8D=E7=AB=AF=E4=B8=9A=E5=8A=A1=E6=8B=86?= =?UTF-8?q?=E5=88=86.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/router/routes/modules/asset.ts | 4 -- .../src/router/routes/modules/host-review.ts | 18 ++++++ .../routes/modules/{host-ops.ts => host.ts} | 8 +-- .../src/store/modules/terminal/index.ts | 16 +++-- .../src/store/modules/terminal/types.ts | 2 + .../components/connect-log-table.vue} | 2 +- .../connect-log}/index.vue | 6 +- .../connect-log}/types/const.ts | 0 .../connect-log}/types/table.columns.ts | 0 .../terminal/assets/styles/layout.less | 0 .../components/layout/icon-actions.vue | 0 .../components/layout/terminal-content.vue | 4 -- .../components/layout/terminal-header.vue | 0 .../layout/terminal-left-sidebar.vue | 0 .../layout/terminal-right-sidebar.vue | 0 .../new-connection/host-group-view.vue | 0 .../new-connection/host-list-view.vue | 0 .../components/new-connection/hosts-view.vue | 0 .../new-connection/new-connection-view.vue | 0 .../new-connection/ssh-extra-modal.vue | 0 .../view-setting/terminal-display-block.vue | 0 .../view-setting/terminal-example.vue | 0 .../view-setting/terminal-theme-block.vue | 0 .../view-setting/terminal-view-setting.vue | 0 .../components/xterm/terminal-view.vue | 0 .../{host-ops => host}/terminal/index.vue | 0 .../terminal/types/terminal.const.ts | 0 .../terminal/types/terminal.protocol.ts | 0 .../terminal/types/terminal.theme.ts | 0 .../role/components/role-menu-grant-modal.vue | 64 ++++++++++--------- 30 files changed, 73 insertions(+), 51 deletions(-) create mode 100644 orion-ops-ui/src/router/routes/modules/host-review.ts rename orion-ops-ui/src/router/routes/modules/{host-ops.ts => host.ts} (64%) rename orion-ops-ui/src/views/{asset/host-connect-log/components/host-connect-log-table.vue => host-review/connect-log/components/connect-log-table.vue} (99%) rename orion-ops-ui/src/views/{asset/host-connect-log => host-review/connect-log}/index.vue (84%) rename orion-ops-ui/src/views/{asset/host-connect-log => host-review/connect-log}/types/const.ts (100%) rename orion-ops-ui/src/views/{asset/host-connect-log => host-review/connect-log}/types/table.columns.ts (100%) rename orion-ops-ui/src/views/{host-ops => host}/terminal/assets/styles/layout.less (100%) rename orion-ops-ui/src/views/{host-ops => host}/terminal/components/layout/icon-actions.vue (100%) rename orion-ops-ui/src/views/{host-ops => host}/terminal/components/layout/terminal-content.vue (95%) rename orion-ops-ui/src/views/{host-ops => host}/terminal/components/layout/terminal-header.vue (100%) rename orion-ops-ui/src/views/{host-ops => host}/terminal/components/layout/terminal-left-sidebar.vue (100%) rename orion-ops-ui/src/views/{host-ops => host}/terminal/components/layout/terminal-right-sidebar.vue (100%) rename orion-ops-ui/src/views/{host-ops => host}/terminal/components/new-connection/host-group-view.vue (100%) rename orion-ops-ui/src/views/{host-ops => host}/terminal/components/new-connection/host-list-view.vue (100%) rename orion-ops-ui/src/views/{host-ops => host}/terminal/components/new-connection/hosts-view.vue (100%) rename orion-ops-ui/src/views/{host-ops => host}/terminal/components/new-connection/new-connection-view.vue (100%) rename orion-ops-ui/src/views/{host-ops => host}/terminal/components/new-connection/ssh-extra-modal.vue (100%) rename orion-ops-ui/src/views/{host-ops => host}/terminal/components/view-setting/terminal-display-block.vue (100%) rename orion-ops-ui/src/views/{host-ops => host}/terminal/components/view-setting/terminal-example.vue (100%) rename orion-ops-ui/src/views/{host-ops => host}/terminal/components/view-setting/terminal-theme-block.vue (100%) rename orion-ops-ui/src/views/{host-ops => host}/terminal/components/view-setting/terminal-view-setting.vue (100%) rename orion-ops-ui/src/views/{host-ops => host}/terminal/components/xterm/terminal-view.vue (100%) rename orion-ops-ui/src/views/{host-ops => host}/terminal/index.vue (100%) rename orion-ops-ui/src/views/{host-ops => host}/terminal/types/terminal.const.ts (100%) rename orion-ops-ui/src/views/{host-ops => host}/terminal/types/terminal.protocol.ts (100%) rename orion-ops-ui/src/views/{host-ops => host}/terminal/types/terminal.theme.ts (100%) diff --git a/orion-ops-ui/src/router/routes/modules/asset.ts b/orion-ops-ui/src/router/routes/modules/asset.ts index b15c2314..39ec3617 100644 --- a/orion-ops-ui/src/router/routes/modules/asset.ts +++ b/orion-ops-ui/src/router/routes/modules/asset.ts @@ -22,10 +22,6 @@ const ASSET: AppRouteRecordRaw = { name: 'assetGrant', path: '/asset/grant', component: () => import('@/views/asset/grant/index.vue'), - }, { - name: 'assetHostConnectLog', - path: '/asset/host-connect-log', - component: () => import('@/views/asset/host-connect-log/index.vue'), }, ], }; diff --git a/orion-ops-ui/src/router/routes/modules/host-review.ts b/orion-ops-ui/src/router/routes/modules/host-review.ts new file mode 100644 index 00000000..49f21cd1 --- /dev/null +++ b/orion-ops-ui/src/router/routes/modules/host-review.ts @@ -0,0 +1,18 @@ +import type { AppRouteRecordRaw } from '../types'; +import { DEFAULT_LAYOUT } from '../base'; + +const HOST_REVIEW: AppRouteRecordRaw = + { + name: 'hostReview', + path: '/host-review', + component: DEFAULT_LAYOUT, + children: [ + { + name: 'hostReviewConnectLog', + path: '/host-review/connect-log', + component: () => import('@/views/host-review/connect-log/index.vue'), + }, + ], + }; + +export default HOST_REVIEW; diff --git a/orion-ops-ui/src/router/routes/modules/host-ops.ts b/orion-ops-ui/src/router/routes/modules/host.ts similarity index 64% rename from orion-ops-ui/src/router/routes/modules/host-ops.ts rename to orion-ops-ui/src/router/routes/modules/host.ts index 0cda9012..db8eb615 100644 --- a/orion-ops-ui/src/router/routes/modules/host-ops.ts +++ b/orion-ops-ui/src/router/routes/modules/host.ts @@ -1,15 +1,15 @@ import type { AppRouteRecordRaw } from '../types'; import { FULL_LAYOUT } from '../base'; -const HOST_OPS: AppRouteRecordRaw = { - name: 'hostOps', +const HOST: AppRouteRecordRaw = { + name: 'host', path: '/host', component: FULL_LAYOUT, children: [ { name: 'hostTerminal', path: '/host/terminal', - component: () => import('@/views/host-ops/terminal/index.vue'), + component: () => import('@/views/host/terminal/index.vue'), meta: { noAffix: true } @@ -17,4 +17,4 @@ const HOST_OPS: AppRouteRecordRaw = { ], }; -export default HOST_OPS; +export default HOST; diff --git a/orion-ops-ui/src/store/modules/terminal/index.ts b/orion-ops-ui/src/store/modules/terminal/index.ts index fcf7fc6c..9f0ba01d 100644 --- a/orion-ops-ui/src/store/modules/terminal/index.ts +++ b/orion-ops-ui/src/store/modules/terminal/index.ts @@ -4,8 +4,9 @@ import { defineStore } from 'pinia'; import { getPreference, updatePreference } from '@/api/user/preference'; import { Message } from '@arco-design/web-vue'; import { useDark } from '@vueuse/core'; -import { DEFAULT_SCHEMA } from '@/views/host-ops/terminal/types/terminal.theme'; -import { InnerTabs } from '@/views/host-ops/terminal/types/terminal.const'; +import { DEFAULT_SCHEMA } from '@/views/host/terminal/types/terminal.theme'; +import { InnerTabs } from '@/views/host/terminal/types/terminal.const'; +import { getHostTerminalAccessToken } from '@/api/asset/host-terminal'; // 暗色主题 export const DarkTheme = { @@ -33,7 +34,8 @@ export default defineStore('terminal', { tabs: { active: InnerTabs.NEW_CONNECTION.key, items: [InnerTabs.NEW_CONNECTION, InnerTabs.VIEW_SETTING] - } + }, + access: undefined }), actions: { @@ -139,7 +141,13 @@ export default defineStore('terminal', { }, // 打开终端 - openTerminal(record: HostQueryResponse) { + async openTerminal(record: HostQueryResponse) { + // 获取 access + if (!this.access) { + const { data } = await getHostTerminalAccessToken(); + this.access = data; + } + console.log(this.access); console.log(record); } diff --git a/orion-ops-ui/src/store/modules/terminal/types.ts b/orion-ops-ui/src/store/modules/terminal/types.ts index c2ba6318..e1d8fa53 100644 --- a/orion-ops-ui/src/store/modules/terminal/types.ts +++ b/orion-ops-ui/src/store/modules/terminal/types.ts @@ -1,9 +1,11 @@ import type { Ref } from 'vue'; +import type { HostTerminalAccessResponse } from '@/api/asset/host-terminal'; export interface TerminalState { isDarkTheme: Ref; preference: TerminalPreference; tabs: TerminalTabs; + access?: HostTerminalAccessResponse; } // 终端配置 diff --git a/orion-ops-ui/src/views/asset/host-connect-log/components/host-connect-log-table.vue b/orion-ops-ui/src/views/host-review/connect-log/components/connect-log-table.vue similarity index 99% rename from orion-ops-ui/src/views/asset/host-connect-log/components/host-connect-log-table.vue rename to orion-ops-ui/src/views/host-review/connect-log/components/connect-log-table.vue index 359ea9f1..ccfbc2a5 100644 --- a/orion-ops-ui/src/views/asset/host-connect-log/components/host-connect-log-table.vue +++ b/orion-ops-ui/src/views/host-review/connect-log/components/connect-log-table.vue @@ -97,7 +97,7 @@ diff --git a/orion-ops-ui/src/views/asset/host-connect-log/index.vue b/orion-ops-ui/src/views/host-review/connect-log/index.vue similarity index 84% rename from orion-ops-ui/src/views/asset/host-connect-log/index.vue rename to orion-ops-ui/src/views/host-review/connect-log/index.vue index dafa5dfd..06536bf3 100644 --- a/orion-ops-ui/src/views/asset/host-connect-log/index.vue +++ b/orion-ops-ui/src/views/host-review/connect-log/index.vue @@ -1,18 +1,18 @@