diff --git a/frontend/src/components/layout/Menu.vue b/frontend/src/components/layout/Menu.vue index 63651691..245da8e2 100644 --- a/frontend/src/components/layout/Menu.vue +++ b/frontend/src/components/layout/Menu.vue @@ -74,5 +74,9 @@ const routerList = computed(() => { color: #1cba90 !important; } } + + .ed-sub-menu .ed-icon { + margin-right: 8px; + } } diff --git a/frontend/src/components/layout/Workspace.vue b/frontend/src/components/layout/Workspace.vue index 748c1d70..38374f66 100644 --- a/frontend/src/components/layout/Workspace.vue +++ b/frontend/src/components/layout/Workspace.vue @@ -76,7 +76,9 @@ onMounted(async () => { - {{ currentWorkspace.name }} + {{ + currentWorkspace.name + }} { -
+
- 没有找到相关结果 + {{ $t('model.relevant_results_found') }}
@@ -142,6 +148,7 @@ onMounted(async () => { font-size: 14px; line-height: 22px; margin-left: 8px; + max-width: 120px; } .expand { @@ -203,6 +210,7 @@ onMounted(async () => { font-weight: 400; font-size: 14px; line-height: 22px; + max-width: 180px; } .done { diff --git a/frontend/src/i18n/en.json b/frontend/src/i18n/en.json index 2f2fe1c8..36f089e8 100644 --- a/frontend/src/i18n/en.json +++ b/frontend/src/i18n/en.json @@ -312,6 +312,7 @@ "old_password": "Old password" }, "workspace": { + "relevant_content_found": "No relevant content found", "add_workspace": "Add workspace", "administrator": "Administrator", "ordinary_member": "Ordinary member", diff --git a/frontend/src/i18n/zh-CN.json b/frontend/src/i18n/zh-CN.json index 45eaac16..3a2a5ed6 100644 --- a/frontend/src/i18n/zh-CN.json +++ b/frontend/src/i18n/zh-CN.json @@ -325,6 +325,7 @@ } }, "workspace": { + "relevant_content_found": "找不到相关内容", "add_workspace": "添加工作空间", "administrator": "管理员", "ordinary_member": "普通成员", diff --git a/frontend/src/views/ds/DataTable.vue b/frontend/src/views/ds/DataTable.vue index 2e675c80..ce204535 100644 --- a/frontend/src/views/ds/DataTable.vue +++ b/frontend/src/views/ds/DataTable.vue @@ -8,7 +8,6 @@ import EmptyBackground from '@/views/dashboard/common/EmptyBackground.vue' import edit from '@/assets/svg/icon_edit_outlined.svg' import { useI18n } from 'vue-i18n' import ParamsForm from './ParamsForm.vue' -import icon_add_outlined from '@/assets/svg/icon_add_outlined.svg' interface Table { name: string diff --git a/frontend/src/views/ds/Datasource.vue b/frontend/src/views/ds/Datasource.vue index 910fa801..8fe01004 100644 --- a/frontend/src/views/ds/Datasource.vue +++ b/frontend/src/views/ds/Datasource.vue @@ -275,6 +275,7 @@ const back = () => { diff --git a/frontend/src/views/ds/DatasourceForm.vue b/frontend/src/views/ds/DatasourceForm.vue index 72e1426f..392364c6 100644 --- a/frontend/src/views/ds/DatasourceForm.vue +++ b/frontend/src/views/ds/DatasourceForm.vue @@ -463,10 +463,7 @@ defineExpose({ >
{{ activeName }} - + {{ t('ds.form.support_version') }}:  2012+ 12+ diff --git a/frontend/src/views/system/member/index.vue b/frontend/src/views/system/member/index.vue index ed96c598..1f680d21 100644 --- a/frontend/src/views/system/member/index.vue +++ b/frontend/src/views/system/member/index.vue @@ -440,8 +440,11 @@ const handleCurrentChange = (val: number) => { bottom: 0; border-top: 1px solid #1f232926; display: flex; + background-color: #fff; align-items: center; padding-left: 24px; + background-color: #fff; + z-index: 10; .danger-button { border: 1px solid var(--ed-color-danger); diff --git a/frontend/src/views/system/permission/index.vue b/frontend/src/views/system/permission/index.vue index a251ecad..35bdf73e 100644 --- a/frontend/src/views/system/permission/index.vue +++ b/frontend/src/views/system/permission/index.vue @@ -442,9 +442,10 @@ const savePermission = () => { id, name, permissions: permissionsObj, - users: isCreate.value - ? selectPermissionRef.value.checkedWorkspace.map((ele: any) => ele.id) - : users, + users: + isCreate.value || activeStep.value === 1 + ? selectPermissionRef.value.checkedWorkspace.map((ele: any) => ele.id) + : users, } if (!id) { delete obj.id @@ -764,6 +765,7 @@ const columnRules = { - +
+ +
- -
- -
+
+
+
@@ -193,6 +192,7 @@ @@ -316,6 +316,7 @@ const dialogVisiblePassword = ref(false) const isIndeterminate = ref(true) const drawerMainRef = ref() const userImportRef = ref() +const selectionLoading = ref(false) const filterOption = ref([ { type: 'enum', @@ -359,7 +360,7 @@ const defaultForm = { account: '', oid: 0, email: '', - status: '', + status: 1, phoneNumber: '', oid_list: [], } @@ -451,7 +452,9 @@ const handleConfirmPassword = () => { }) dialogVisiblePassword.value = false } + const handleSelectionChange = (val: any[]) => { + if (selectionLoading.value) return const ids = state.tableData.map((ele: any) => ele.id) multipleSelectionAll.value = [ ...multipleSelectionAll.value.filter((ele) => !ids.includes(ele.id)), @@ -481,6 +484,7 @@ const handleToggleRowSelection = (check: boolean = true) => { } checkAll.value = i === state.tableData.length isIndeterminate.value = !(i === 0 || i === state.tableData.length) + selectionLoading.value = false } const handleSearch = () => { search() @@ -541,6 +545,7 @@ const deleteBatchUser = () => { autofocus: false, }).then(() => { userApi.deleteBatch(multipleSelectionAll.value.map((ele) => ele.id)).then(() => { + multipleSelectionAll.value = [] ElMessage({ type: 'success', message: t('dashboard.delete_success'), @@ -557,13 +562,20 @@ const deleteHandler = (row: any) => { customClass: 'confirm-no_icon', autofocus: false, }).then(() => { - userApi.delete(row.id).then(() => { - ElMessage({ - type: 'success', - message: t('dashboard.delete_success'), - }) - search() + multipleSelectionAll.value = multipleSelectionAll.value.filter((ele) => ele.id !== row.id) + ElMessage({ + type: 'success', + message: t('dashboard.delete_success'), }) + search() + // userApi.delete(row.id).then(() => { + // multipleSelectionAll.value = multipleSelectionAll.value.filter((ele) => ele.id !== row.id) + // ElMessage({ + // type: 'success', + // message: t('dashboard.delete_success'), + // }) + // search() + // }) }) } @@ -613,7 +625,7 @@ const search = () => { .then((res: any) => { state.tableData = res.items state.pageInfo.total = res.total - + selectionLoading.value = true nextTick(() => { handleToggleRowSelection() }) @@ -692,11 +704,13 @@ onMounted(() => { height: 64px; width: calc(100% + 48px); left: -24px; + background-color: #fff; bottom: 0; border-top: 1px solid #1f232926; display: flex; align-items: center; padding-left: 24px; + z-index: 10; .danger-button { border: 1px solid var(--ed-color-danger); @@ -734,12 +748,8 @@ onMounted(() => { .sqlbot-table { border-radius: 6px; width: 100%; - max-height: calc(100vh - 100px); + max-height: calc(100vh - 150px); overflow-y: auto; - - &.is-filter { - max-height: calc(100vh - 256px); - } :deep(.ed-table) { --el-table-header-bg-color: #f5f7fa; --el-table-border-color: #ebeef5; @@ -795,12 +805,13 @@ onMounted(() => { } } } - .pagination-container { - display: flex; - justify-content: end; - align-items: center; - margin-top: 16px; - } + } + + .pagination-container { + display: flex; + justify-content: end; + align-items: center; + margin-top: 16px; } } diff --git a/frontend/src/views/system/workspace/AuthorizedWorkspaceDialog.vue b/frontend/src/views/system/workspace/AuthorizedWorkspaceDialog.vue index f599118b..99583478 100644 --- a/frontend/src/views/system/workspace/AuthorizedWorkspaceDialog.vue +++ b/frontend/src/views/system/workspace/AuthorizedWorkspaceDialog.vue @@ -133,7 +133,7 @@ const open = async (id: any) => { checkAll.value = false isIndeterminate.value = false const systemWorkspaceList = await workspaceOptionUserList({ oid }, 1, 1000) - workspace.value = systemWorkspaceList.items as any + workspace.value = systemWorkspaceList.items.filter((ele: any) => +ele.id !== 1) as any loading.value = false centerDialogVisible.value = true } @@ -203,7 +203,8 @@ defineExpose({ } .w-full { - width: 100%; + height: 100%; + width: 50%; overflow-y: auto; .flex-between { @@ -239,6 +240,8 @@ defineExpose({ .border-r { border-right: 1px solid #dee0e3; + width: 50%; + overflow: hidden; } } diff --git a/frontend/src/views/system/workspace/index.vue b/frontend/src/views/system/workspace/index.vue index 834c7344..4583b6e3 100644 --- a/frontend/src/views/system/workspace/index.vue +++ b/frontend/src/views/system/workspace/index.vue @@ -30,6 +30,7 @@ const multipleSelectionAll = ref([]) const tableList = ref([] as any[]) const keyword = ref('') const keywordsMember = ref('') +const oldKeywordsMember = ref('') const workspaceFormRef = ref() const authorizedWorkspaceDialog = ref() const tableListWithSearch = computed(() => { @@ -210,8 +211,9 @@ const search = () => { pageInfo.currentPage, pageInfo.pageSize ).then((res) => { - fieldList.value = res.items + fieldList.value = res.items.sort((a: any, b: any) => b.weight - a.weight) pageInfo.total = res.total + oldKeywordsMember.value = keywordsMember.value }) } @@ -342,7 +344,7 @@ const handleCurrentChange = (val: number) => {
- {{ $t('workspace.historical_dialogue') }} + {{ $t('workspace.relevant_content_found') }}
@@ -463,31 +465,31 @@ const handleCurrentChange = (val: number) => { -
- -
+ +
+
{ } } + .pagination-container { + display: flex; + justify-content: end; + align-items: center; + margin-top: 16px; + } + .table-content { padding: 0 24px 16px 24px; - height: calc(100% - 104px); - - .pagination-container { - display: flex; - justify-content: end; - align-items: center; - margin-top: 16px; - } + height: calc(100% - 168px); + overflow-y: auto; .preview-or-schema { :deep(.user-source) { @@ -779,7 +782,9 @@ const handleCurrentChange = (val: number) => { border-top: 1px solid #1f232926; display: flex; align-items: center; + background-color: #fff; padding-left: 24px; + z-index: 10; .danger-button { border: 1px solid var(--ed-color-danger);