diff --git a/admin-pc/src/components/jeecg/JTreeSelect.vue b/admin-pc/src/components/jeecg/JTreeSelect.vue
index c681c38..83e815c 100644
--- a/admin-pc/src/components/jeecg/JTreeSelect.vue
+++ b/admin-pc/src/components/jeecg/JTreeSelect.vue
@@ -214,13 +214,37 @@
this.$emit('change', '');
this.treeValue = null
} else if (value instanceof Array) {
- this.$emit('change', value.map(item => item.value).join(','))
+ // 处理多选情况,递归获取所有子节点
+ let allSelectedValues = [];
+ value.forEach(item => {
+ allSelectedValues.push(item.value);
+ // 递归获取所有子节点
+ let childrenValues = this.getAllChildrenValues(item.value, this.treeData);
+ allSelectedValues = allSelectedValues.concat(childrenValues);
+ });
+ // 去重
+ allSelectedValues = [...new Set(allSelectedValues)];
+ this.$emit('change', allSelectedValues.join(','));
this.treeValue = value
} else {
this.$emit('change', value.value,value.label)
this.treeValue = value
}
-
+ },
+ getAllChildrenValues(value, treeData) {
+ let childrenValues = [];
+ for (let item of treeData) {
+ if (item.key === value) {
+ if (item.children && item.children.length > 0) {
+ for (let child of item.children) {
+ childrenValues.push(child.value);
+ childrenValues = childrenValues.concat(this.getAllChildrenValues(child.value, item.children));
+ }
+ }
+ break;
+ }
+ }
+ return childrenValues;
},
onSearch(value){
console.log(value)
diff --git a/admin-pc/src/components/tools/UserMenu.vue b/admin-pc/src/components/tools/UserMenu.vue
index 6efba61..2befd95 100644
--- a/admin-pc/src/components/tools/UserMenu.vue
+++ b/admin-pc/src/components/tools/UserMenu.vue
@@ -31,25 +31,25 @@
-
+