Explorar o código

组织管理-默认选中第一个
用户管理-默认选中第一个
职位管理-默认选中第一个

like hai 6 meses
pai
achega
78cc88c32b

+ 37 - 20
snowy-admin-web/src/views/sys/org/index.vue

@@ -5,6 +5,7 @@
 				<a-tree
 					v-if="treeData.length > 0"
 					v-model:expandedKeys="defaultExpandedKeys"
+					v-model:selectedKeys="selectedKeys"
 					:tree-data="treeData"
 					:field-names="treeFieldNames"
 					@select="treeSelect"
@@ -107,6 +108,7 @@
 		}
 	]
 	const selectedRowKeys = ref([])
+
 	// 列表选择配置
 	const options = {
 		alert: {
@@ -128,18 +130,23 @@
 	const searchFormState = ref({})
 	// 默认展开的节点
 	const defaultExpandedKeys = ref([])
+	const selectedKeys = ref([]) //默认选中第一个节点
 	const treeData = ref([])
+
 	// 替换treeNode 中 title,key,children
 	const treeFieldNames = { children: 'children', title: 'name', key: 'id' }
 	const cardLoading = ref(true)
+	onMounted(() => {
+		loadTreeData()
+	})
 
 	// 表格查询 返回 Promise 对象
 	const loadData = (parameter) => {
-		loadTreeData()
 		return orgApi.orgPage(Object.assign(parameter, searchFormState.value)).then((res) => {
 			return res
 		})
 	}
+
 	// 重置
 	const reset = () => {
 		searchFormRef.value.resetFields()
@@ -147,28 +154,38 @@
 	}
 	// 加载左侧的树
 	const loadTreeData = () => {
-		orgApi.orgTree().then((res) => {
-			cardLoading.value = false
-			if (res !== null) {
-				treeData.value = res
-				if (isEmpty(defaultExpandedKeys.value)) {
-					// 默认展开2级
-					treeData.value.forEach((item) => {
-						// 因为0的顶级
-						if (item.parentId === '0') {
-							defaultExpandedKeys.value.push(item.id)
-							// 取到下级ID
-							if (item.children) {
-								item.children.forEach((items) => {
-									defaultExpandedKeys.value.push(items.id)
-								})
+		orgApi
+			.orgTree()
+			.then((res) => {
+				cardLoading.value = false
+				if (res !== null) {
+					treeData.value = res
+					if (isEmpty(defaultExpandedKeys.value)) {
+						// 默认展开2级
+						treeData.value.forEach((item) => {
+							// 因为0的顶级
+							if (item.parentId === '0') {
+								defaultExpandedKeys.value.push(item.id)
+								// 取到下级ID
+								if (item.children) {
+									item.children.forEach((items) => {
+										defaultExpandedKeys.value.push(items.id)
+									})
+								}
 							}
-						}
-					})
+						})
+					}
 				}
-			}
-		})
+			})
+			.finally(() => {
+				// 设置默认选中第一个节点
+				if (treeData.value.length > 0) {
+					selectedKeys.value = [treeData.value[0].id] // 选中第一个节点
+					treeSelect(treeData.value[0].id) // 选中第一个节点
+				}
+			})
 	}
+
 	// 点击树查询
 	const treeSelect = (selectedKeys) => {
 		if (selectedKeys.length > 0) {

+ 38 - 21
snowy-admin-web/src/views/sys/position/index.vue

@@ -5,6 +5,7 @@
 				<a-tree
 					v-if="treeData.length > 0"
 					v-model:expandedKeys="defaultExpandedKeys"
+					v-model:selectedKeys="selectedKeys"
 					:tree-data="treeData"
 					:field-names="treeFieldNames"
 					@select="treeSelect"
@@ -130,11 +131,14 @@
 	const searchFormState = ref({})
 	// 默认展开的节点
 	const defaultExpandedKeys = ref([])
+	const selectedKeys = ref([]) //默认选中第一个节点
 	const treeData = ref([])
 	// 替换treeNode 中 title,key,children
 	const treeFieldNames = { children: 'children', title: 'name', key: 'id' }
 	const cardLoading = ref(true)
-
+	onMounted(() => {
+		loadTreeData()
+	})
 	// 表格查询 返回 Promise 对象
 	const loadData = (parameter) => {
 		return positionApi.positionPage(Object.assign(parameter, searchFormState.value)).then((res) => {
@@ -146,28 +150,41 @@
 		searchFormRef.value.resetFields()
 		tableRef.value.refresh(true)
 	}
+
 	// 加载左侧的树
-	orgApi.orgTree().then((res) => {
-		cardLoading.value = false
-		if (res !== null) {
-			treeData.value = res
-			if (isEmpty(defaultExpandedKeys.value)) {
-				// 默认展开2级
-				treeData.value.forEach((item) => {
-					// 因为0的顶级
-					if (item.parentId === '0') {
-						defaultExpandedKeys.value.push(item.id)
-						// 取到下级ID
-						if (item.children) {
-							item.children.forEach((items) => {
-								defaultExpandedKeys.value.push(items.id)
-							})
-						}
+	const loadTreeData = () => {
+		orgApi
+			.orgTree()
+			.then((res) => {
+				cardLoading.value = false
+				if (res !== null) {
+					treeData.value = res
+					if (isEmpty(defaultExpandedKeys.value)) {
+						// 默认展开2级
+						treeData.value.forEach((item) => {
+							// 因为0的顶级
+							if (item.parentId === '0') {
+								defaultExpandedKeys.value.push(item.id)
+								// 取到下级ID
+								if (item.children) {
+									item.children.forEach((items) => {
+										defaultExpandedKeys.value.push(items.id)
+									})
+								}
+							}
+						})
 					}
-				})
-			}
-		}
-	})
+				}
+			})
+			.finally(() => {
+				// 设置默认选中第一个节点
+				if (treeData.value.length > 0) {
+					selectedKeys.value = [treeData.value[0].id] // 选中第一个节点
+					treeSelect(treeData.value[0].id) // 选中第一个节点
+				}
+			})
+	}
+
 	// 点击树查询
 	const treeSelect = (selectedKeys) => {
 		if (selectedKeys.length > 0) {

+ 41 - 21
snowy-admin-web/src/views/sys/user/index.vue

@@ -5,6 +5,7 @@
 				<a-tree
 					v-if="treeData.length > 0"
 					v-model:expandedKeys="defaultExpandedKeys"
+					v-model:selectedKeys="selectedKeys"
 					:tree-data="treeData"
 					:field-names="treeFieldNames"
 					@select="treeSelect"
@@ -219,6 +220,7 @@
 	const statusData = tool.dictList('COMMON_STATUS')
 	const searchFormRef = ref()
 	const defaultExpandedKeys = ref([])
+	const selectedKeys = ref([]) //默认选中第一个节点
 	const searchFormState = ref({})
 	const tableRef = ref(null)
 	const treeData = ref([])
@@ -232,6 +234,44 @@
 	const ImpExpRef = ref()
 	const grantResourceFormRef = ref()
 	const grantPermissionFormRef = ref()
+	onMounted(() => {
+		loadTreeData()
+	})
+
+	// 加载左侧的树
+	const loadTreeData = () => {
+		orgApi
+			.orgTree()
+			.then((res) => {
+				cardLoading.value = false
+				if (res !== null) {
+					treeData.value = res
+					if (isEmpty(defaultExpandedKeys.value)) {
+						// 默认展开2级
+						treeData.value.forEach((item) => {
+							// 因为0的顶级
+							if (item.parentId === '0') {
+								defaultExpandedKeys.value.push(item.id)
+								// 取到下级ID
+								if (item.children) {
+									item.children.forEach((items) => {
+										defaultExpandedKeys.value.push(items.id)
+									})
+								}
+							}
+						})
+					}
+				}
+			})
+			.finally(() => {
+				// 设置默认选中第一个节点
+				if (treeData.value.length > 0) {
+					selectedKeys.value = [treeData.value[0].id] // 选中第一个节点
+					treeSelect(treeData.value[0].id) // 选中第一个节点
+				}
+			})
+	}
+
 	// 表格查询 返回 Promise 对象
 	const loadData = (parameter) => {
 		return userApi.userPage(Object.assign(parameter, searchFormState.value)).then((res) => {
@@ -239,27 +279,7 @@
 		})
 	}
 	// 左侧树查询
-	orgApi.orgTree().then((res) => {
-		cardLoading.value = false
-		if (res !== null) {
-			treeData.value = res
-			if (isEmpty(defaultExpandedKeys.value)) {
-				// 默认展开2级
-				treeData.value.forEach((item) => {
-					// 因为0的顶级
-					if (item.parentId === '0') {
-						defaultExpandedKeys.value.push(item.id)
-						// 取到下级ID
-						if (item.children) {
-							item.children.forEach((items) => {
-								defaultExpandedKeys.value.push(items.id)
-							})
-						}
-					}
-				})
-			}
-		}
-	})
+
 	// 列表选择配置
 	const options = {
 		alert: {