From 9930fb4c1f6222c2fb13c98d2426bf5a7439058f Mon Sep 17 00:00:00 2001 From: royalpioneer Date: Tue, 26 Nov 2024 00:48:14 +0800 Subject: [PATCH] =?UTF-8?q?fix(frontend):=20tendbcluster=E3=80=81doris?= =?UTF-8?q?=E7=9A=84tab=E7=BC=BA=E5=A4=B1=20#8175=20#=20Reviewed,=20transa?= =?UTF-8?q?ction=20id:=2025006?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/common/const/clusterTypeInfos.ts | 20 -------- .../frontend/src/common/const/clusterTypes.ts | 11 ++-- .../views/db-configure/business/Detail.vue | 3 ++ .../list/components/hooks/useBaseDetails.ts | 4 +- .../db-configure/components/DetailsBase.vue | 50 +++++++++++++++++-- .../db-configure/components/ReadonlyTable.vue | 12 ++++- 6 files changed, 67 insertions(+), 33 deletions(-) diff --git a/dbm-ui/frontend/src/common/const/clusterTypeInfos.ts b/dbm-ui/frontend/src/common/const/clusterTypeInfos.ts index 2e34f23728..86fc4bdb15 100644 --- a/dbm-ui/frontend/src/common/const/clusterTypeInfos.ts +++ b/dbm-ui/frontend/src/common/const/clusterTypeInfos.ts @@ -275,26 +275,6 @@ const bigdata: InfoType = { name: t('冷_热节点规格'), }, ], - [ClusterTypes.DORIS]: { - id: ClusterTypes.DORIS, - name: 'Doris', - dbType: DBTypes.DORIS, - moduleId: 'bigdata', - machineList: [ - { - id: MachineTypes.DORIS_FOLLOWER, - name: t('Follower节点规格'), - }, - { - id: MachineTypes.DORIS_OBSERVER, - name: t('Observer节点规格'), - }, - { - id: MachineTypes.DORIS_BACKEND, - name: t('冷_热节点规格'), - }, - ], - }, }, }; diff --git a/dbm-ui/frontend/src/common/const/clusterTypes.ts b/dbm-ui/frontend/src/common/const/clusterTypes.ts index 4f6f2fbd69..bc95f091ff 100644 --- a/dbm-ui/frontend/src/common/const/clusterTypes.ts +++ b/dbm-ui/frontend/src/common/const/clusterTypes.ts @@ -25,8 +25,9 @@ export enum ClusterTypes { TENDIS_PLUS_CLUSTER = 'TendisplusCluster', // TendisplusCluster集群 DBMON = 'dbmon', // redis监控 } -// bigdata + export enum ClusterTypes { + // bigdata ES = 'es', KAFKA = 'kafka', HDFS = 'hdfs', @@ -34,15 +35,11 @@ export enum ClusterTypes { PULSAR = 'pulsar', RIAK = 'riak', DORIS = 'doris', -} -// mongo -export enum ClusterTypes { + // mongo MONGO_REPLICA_SET = 'MongoReplicaSet', // Mongo副本集群 MONGO_SHARED_CLUSTER = 'MongoShardedCluster', // Mongo分片集群 MONGODB = 'mongodb', -} -// sqlserver -export enum ClusterTypes { + // sqlserver SQLSERVER_SINGLE = 'sqlserver_single', // SQLServer单节点版 SQLSERVER_HA = 'sqlserver_ha', // SQLServer主从版 } diff --git a/dbm-ui/frontend/src/views/db-configure/business/Detail.vue b/dbm-ui/frontend/src/views/db-configure/business/Detail.vue index 62566ee4fe..5636082677 100644 --- a/dbm-ui/frontend/src/views/db-configure/business/Detail.vue +++ b/dbm-ui/frontend/src/views/db-configure/business/Detail.vue @@ -118,6 +118,9 @@ if (!route.query.form) { router.push({ name: 'DbConfigureList', + params: { + clusterType: props.clusterType, + }, }); return; } diff --git a/dbm-ui/frontend/src/views/db-configure/business/list/components/hooks/useBaseDetails.ts b/dbm-ui/frontend/src/views/db-configure/business/list/components/hooks/useBaseDetails.ts index 6b88e88fe0..28981b0253 100644 --- a/dbm-ui/frontend/src/views/db-configure/business/list/components/hooks/useBaseDetails.ts +++ b/dbm-ui/frontend/src/views/db-configure/business/list/components/hooks/useBaseDetails.ts @@ -31,7 +31,7 @@ interface State { /** * 获取参数管理基本信息 */ -export const useBaseDetails = (immediateFetch = true) => { +export const useBaseDetails = (immediateFetch = true, confName = 'db_version') => { const getFetchParams = (versionKey: 'version' | 'proxy_version', confType = 'dbconf') => { if (treeNode === undefined) { return {} as ServiceParameters; @@ -115,7 +115,7 @@ export const useBaseDetails = (immediateFetch = true) => { getLevelConfig(params) .then((res) => { res.conf_items.forEach((item) => { - if (item.conf_name === 'db_version') { + if (item.conf_name === confName) { state.version = item.conf_value ?? ''; } else if (item.conf_name === 'charset') { state.data.charset = item.conf_value ?? ''; diff --git a/dbm-ui/frontend/src/views/db-configure/components/DetailsBase.vue b/dbm-ui/frontend/src/views/db-configure/components/DetailsBase.vue index a8bc731f01..78fb3645d3 100644 --- a/dbm-ui/frontend/src/views/db-configure/components/DetailsBase.vue +++ b/dbm-ui/frontend/src/views/db-configure/components/DetailsBase.vue @@ -39,7 +39,23 @@ class="details-base__table" :data="configItems" :level="level" - :sticky-top="stickyTop" /> + :sticky-top="stickyTop"> + + { + if (!state.version) { + return [props.data.version]; + } + return [props.data.version, state.data.version]; + }); const cardTitle = computed(() => props.title || t('参数配置')); // 是否为平台级别配置 const isPlat = computed(() => ConfLevels.PLAT === props.level); - const configItems = computed(() => props.data?.conf_items || []); + const configItems = computed(() => { + if (clusterType.value === props.data.version) { + return props.data.conf_items; + } + return state.data.conf_items; + }); const isShowCharset = computed(() => !!props.data.charset); const baseInfoColumns = computed(() => { const baseColumns = [ @@ -161,6 +192,14 @@ return baseColumns; }); + watch( + () => props.data.version, + () => { + clusterType.value = props.data.version; + }, + { immediate: true }, + ); + /** * 基础信息编辑 */ @@ -193,7 +232,12 @@ const name = isPlat.value ? 'PlatformDbConfigureEdit' : 'DbConfigureEdit'; router.push({ name, - params: { ...route.params, ...props.routeParams, ...extra }, + params: { + ...route.params, + ...props.routeParams, + ...extra, + version: clusterType.value, + }, }); }; diff --git a/dbm-ui/frontend/src/views/db-configure/components/ReadonlyTable.vue b/dbm-ui/frontend/src/views/db-configure/components/ReadonlyTable.vue index 50e61416f4..84ece2e6fe 100644 --- a/dbm-ui/frontend/src/views/db-configure/components/ReadonlyTable.vue +++ b/dbm-ui/frontend/src/views/db-configure/components/ReadonlyTable.vue @@ -13,9 +13,11 @@