diff --git a/src/views/personnel/group/index.vue b/src/views/personnel/group/index.vue
index a82d8d0..d328868 100644
--- a/src/views/personnel/group/index.vue
+++ b/src/views/personnel/group/index.vue
@@ -2,7 +2,6 @@
-
+
+
+ 重置
+
新增
@@ -20,7 +22,7 @@
-
+
@@ -131,6 +133,7 @@ export default {
},
// 表格数据
tableData: [],
+ infoTableData: [],
total: 0,
loading: false,
// 上级目录数据
@@ -204,16 +207,40 @@ export default {
methods: {
// 查询
search() {
- this.params.pageNum = 1
- this.getTableData()
+ // 初始化表格数据
+ this.infoTableData = JSON.parse(JSON.stringify(this.tableData))
+ this.infoTableData = this.deal(this.infoTableData, node => node.groupName.includes(this.params.groupName) || node.remark.includes(this.params.remark))
+ },
+ resetData() {
+ this.infoTableData = JSON.parse(JSON.stringify(this.tableData))
+ },
+ // 页面数据过滤
+ deal(nodes, predicate) {
+ // 如果已经没有节点了,结束递归
+ if (!(nodes && nodes.length)) {
+ return []
+ }
+ const newChildren = []
+ for (const node of nodes) {
+ if (predicate(node)) {
+ // 如果节点符合条件,直接加入新的节点集
+ newChildren.push(node)
+ node.children = this.deal(node.children, predicate)
+ } else {
+ // 如果当前节点不符合条件,递归过滤子节点,
+ // 把符合条件的子节点提升上来,并入新节点集
+ newChildren.push(...this.deal(node.children, predicate))
+ }
+ }
+ return newChildren
},
-
// 获取表格数据
async getTableData() {
this.loading = true
try {
const { data } = await getGroupTree(this.params)
this.tableData = data
+ this.infoTableData = JSON.parse(JSON.stringify(data))
this.treeselectData = [{ ID: 0, groupName: '顶级类目', children: data }]
} finally {
this.loading = false
diff --git a/src/views/personnel/user/index.vue b/src/views/personnel/user/index.vue
index 69c9c9c..81a59dc 100644
--- a/src/views/personnel/user/index.vue
+++ b/src/views/personnel/user/index.vue
@@ -144,6 +144,7 @@
:options="departmentsOptions"
placeholder="请选择部门"
:normalizer="normalizer"
+ :multiple="true"
@input="treeselectInput"
@select="onOperatePersonChanged"
/>
@@ -322,6 +323,14 @@ wLXapv+ZfsjG7NgdawIDAQAB
this.loading = true
try {
const { data } = await getUsers(this.params)
+ data.users.forEach(item => {
+ const dataStrArr = item.departmentId.split(',')
+ const dataIntArr = []
+ dataStrArr.forEach(item => {
+ dataIntArr.push(+item)
+ })
+ item.departmentId = dataIntArr
+ })
this.tableData = data.users
this.total = data.total
} finally {
@@ -337,7 +346,7 @@ wLXapv+ZfsjG7NgdawIDAQAB
pageSize: 1000 // 平常百姓人家应该不会有这么多数据吧
}
const { data } = await getGroupTree(checkParams)
- this.departmentsOptions = [{ ID: 0, groupName: '顶级类目', children: data }]
+ this.departmentsOptions = [{ ID: 0, groupName: '请选择部门信息', groupType: 'T', children: data }]
} finally {
this.loading = false
}
@@ -593,7 +602,7 @@ wLXapv+ZfsjG7NgdawIDAQAB
normalizer(node) {
return {
id: node.ID,
- label: node.groupName,
+ label: node.groupType + '=' + node.groupName,
children: node.children
}
},
@@ -602,7 +611,11 @@ wLXapv+ZfsjG7NgdawIDAQAB
},
onOperatePersonChanged(obj) {
// this.dialogFormData.departmentId = obj.ID
- this.dialogFormData.departments = obj.groupName
+ if (this.dialogFormData.departments === '') {
+ this.dialogFormData.departments = obj.groupName
+ } else {
+ this.dialogFormData.departments = this.dialogFormData.departments + ',' + obj.groupName
+ }
}
}
}