diff --git a/dbm-ui/frontend/src/locales/zh-cn.json b/dbm-ui/frontend/src/locales/zh-cn.json index 14cc4f8285..e8e39f37b6 100644 --- a/dbm-ui/frontend/src/locales/zh-cn.json +++ b/dbm-ui/frontend/src/locales/zh-cn.json @@ -4022,10 +4022,8 @@ "从资源池选择": "从资源池选择", "还差n台_请先勾选足够的IP": "还差 {n} 台,请先勾选足够的 IP", "已选够n台": "已选够 {n} 台", - "从资源池选择": "从资源池选择", - "还差n台_请先勾选足够的IP": "还差 {n} 台,请先勾选足够的 IP", - "已选够n台": "已选够 {n} 台", "原DB名": "原 DB 名", + "DB已存在": "DB 已存在", "DB不存在": "DB 不存在", "这行勿动!新增翻译请在上一行添加!": "" } diff --git a/dbm-ui/frontend/src/views/db-manage/tendb-cluster/TENDBCLUSTER_RENAME_DATABASE/components/DbNameColumn.vue b/dbm-ui/frontend/src/views/db-manage/common/toolbox-field/column/db-name-column/Index.vue similarity index 76% rename from dbm-ui/frontend/src/views/db-manage/tendb-cluster/TENDBCLUSTER_RENAME_DATABASE/components/DbNameColumn.vue rename to dbm-ui/frontend/src/views/db-manage/common/toolbox-field/column/db-name-column/Index.vue index 7c2e647632..9f783473c0 100644 --- a/dbm-ui/frontend/src/views/db-manage/tendb-cluster/TENDBCLUSTER_RENAME_DATABASE/components/DbNameColumn.vue +++ b/dbm-ui/frontend/src/views/db-manage/common/toolbox-field/column/db-name-column/Index.vue @@ -83,28 +83,45 @@ trigger: 'change', }, { - validator: async (value: string) => { - if (!_.some(value, (item) => !/[*%]/.test(item))) { + validator: (value: string) => { + if (!props.checkExist) { return true; } - const data = await checkClusterDatabase({ + const clearDbList = _.filter(value, (item) => !/[*%]/.test(item)); + if (clearDbList.length < 1) { + return true; + } + return checkClusterDatabase({ infos: [ { cluster_id: props.clusterId, db_names: [value], }, ], - }); - const isExist = Boolean(data[0]?.check_info[value]); - if (isExist && props.checkExist) { - return t('DB已存在'); + }).then((data) => (data.length > 0 ? data[0].check_info[value] : false)); + }, + message: t('DB不存在'), + trigger: 'blur', + }, + { + validator: (value: string) => { + if (!props.checkNotExist) { + return true; } - if (!isExist && props.checkNotExist) { - return t('DB不存在'); + const clearDbList = _.filter(value, (item) => !/[*%]/.test(item)); + if (clearDbList.length < 1) { + return true; } - return true; + return checkClusterDatabase({ + infos: [ + { + cluster_id: props.clusterId, + db_names: [value], + }, + ], + }).then((data) => (data.length > 0 ? !data[0].check_info[value] : true)); }, - message: '', + message: t('DB已存在'), trigger: 'blur', }, ]; diff --git a/dbm-ui/frontend/src/views/db-manage/common/toolbox-field/column/tag-db-name-column/Index.vue b/dbm-ui/frontend/src/views/db-manage/common/toolbox-field/column/tag-db-name-column/Index.vue new file mode 100644 index 0000000000..23b7539a24 --- /dev/null +++ b/dbm-ui/frontend/src/views/db-manage/common/toolbox-field/column/tag-db-name-column/Index.vue @@ -0,0 +1,300 @@ + + + + + diff --git a/dbm-ui/frontend/src/views/db-manage/common/toolbox-field/form-item/check-group/Index.vue b/dbm-ui/frontend/src/views/db-manage/common/toolbox-field/form-item/check-group/Index.vue index 3bd7c7c812..b8cf9fbd4e 100644 --- a/dbm-ui/frontend/src/views/db-manage/common/toolbox-field/form-item/check-group/Index.vue +++ b/dbm-ui/frontend/src/views/db-manage/common/toolbox-field/form-item/check-group/Index.vue @@ -1,16 +1,16 @@