From c89ba258bcea60f6bb7c6bceb782495b7e1a1a40 Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: 星期三, 11 十二月 2024 11:20:59 +0800
Subject: [PATCH] 用户管理过滤掉已禁用部门(IB5H7F)
---
src/views/system/user/index.vue | 31 +++++++++++++++++++++++--------
1 files changed, 23 insertions(+), 8 deletions(-)
diff --git a/src/views/system/user/index.vue b/src/views/system/user/index.vue
index f5fdcaf..4144812 100644
--- a/src/views/system/user/index.vue
+++ b/src/views/system/user/index.vue
@@ -112,7 +112,7 @@
</el-col>
<el-col :span="12">
<el-form-item label="褰掑睘閮ㄩ棬" prop="deptId">
- <el-tree-select v-model="form.deptId" :data="deptOptions" :props="{ value: 'id', label: 'label', children: 'children' }" value-key="id" placeholder="璇烽�夋嫨褰掑睘閮ㄩ棬" check-strictly />
+ <el-tree-select v-model="form.deptId" :data="enabledDeptOptions" :props="{ value: 'id', label: 'label', children: 'children' }" value-key="id" placeholder="璇烽�夋嫨褰掑睘閮ㄩ棬" check-strictly />
</el-form-item>
</el-col>
</el-row>
@@ -237,6 +237,7 @@
const dateRange = ref([]);
const deptName = ref("");
const deptOptions = ref(undefined);
+const enabledDeptOptions = ref(undefined);
const initPassword = ref(undefined);
const postOptions = ref([]);
const roleOptions = ref([]);
@@ -298,13 +299,6 @@
proxy.$refs["deptTreeRef"].filter(val);
});
-/** 鏌ヨ閮ㄩ棬涓嬫媺鏍戠粨鏋� */
-function getDeptTree() {
- deptTreeSelect().then(response => {
- deptOptions.value = response.data;
- });
-};
-
/** 鏌ヨ鐢ㄦ埛鍒楄〃 */
function getList() {
loading.value = true;
@@ -315,6 +309,27 @@
});
};
+/** 鏌ヨ閮ㄩ棬涓嬫媺鏍戠粨鏋� */
+function getDeptTree() {
+ deptTreeSelect().then(response => {
+ deptOptions.value = response.data;
+ enabledDeptOptions.value = filterDisabledDept(JSON.parse(JSON.stringify(response.data)));
+ });
+};
+
+/** 杩囨护绂佺敤鐨勯儴闂� */
+function filterDisabledDept(deptList) {
+ return deptList.filter(dept => {
+ if (dept.disabled) {
+ return false;
+ }
+ if (dept.children && dept.children.length) {
+ dept.children = filterDisabledDept(dept.children);
+ }
+ return true;
+ });
+};
+
/** 鑺傜偣鍗曞嚮浜嬩欢 */
function handleNodeClick(data) {
queryParams.value.deptId = data.id;
--
Gitblit v1.9.3