From 561cd3f3fca5099186b5f37a8759e18d4f152121 Mon Sep 17 00:00:00 2001 From: "daiyan.Shen" Date: Thu, 28 Jul 2022 16:02:50 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86=E5=88=A0=E9=99=A4?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E6=89=80=E5=B1=9E=E9=83=A8=E9=97=A8=E6=97=B6?= =?UTF-8?q?=EF=BC=8Cdepartments=E5=AD=97=E6=AE=B5=E4=B8=8D=E4=BC=9A?= =?UTF-8?q?=E5=88=A0=E9=99=A4=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/personnel/user/index.vue | 39 +++++++++++++++++++++--------- 1 file changed, 27 insertions(+), 12 deletions(-) diff --git a/src/views/personnel/user/index.vue b/src/views/personnel/user/index.vue index 78939e9..51815cf 100644 --- a/src/views/personnel/user/index.vue +++ b/src/views/personnel/user/index.vue @@ -162,11 +162,10 @@ :normalizer="normalizer" value-consists-of="ALL" :multiple="true" - flat="true" + :flat="true" no-children-text="没有更多选项" no-results-text="没有匹配的选项" @input="treeselectInput" - @select="onOperatePersonChanged" /> @@ -415,6 +414,29 @@ wLXapv+ZfsjG7NgdawIDAQAB this.dialogFormData.position = row.position }, + // 将 部门id 转换为 部门name + setDepartmentNameByDepartmentId() { + const ids = this.dialogFormData.departmentId + if (!ids || !ids.length) return + const departments = [] + // 深度优先遍函数 + const dfs = (node, cb) => { + if (!node) return + cb(node) + if (node.children && node.children.length) { + node.children.forEach(item => { + dfs(item, cb) + }) + } + } + dfs(this.departmentsOptions[0], node => { + if (ids.includes(node.ID)) { + departments.push(node.groupName) + } + }) + this.dialogFormData.departments = departments.join(',') + }, + // 提交表单 submitForm() { if (this.dialogFormData.nickname === '') { @@ -476,7 +498,8 @@ wLXapv+ZfsjG7NgdawIDAQAB this.$refs['dialogForm'].validate(async valid => { if (valid) { this.submitLoading = true - + // 在这里自动填充下部门字段 + this.setDepartmentNameByDepartmentId() this.dialogFormDataCopy = { ...this.dialogFormData } if (this.dialogFormData.password !== '') { // 密码RSA加密处理 @@ -630,14 +653,6 @@ wLXapv+ZfsjG7NgdawIDAQAB treeselectInput(value) { this.treeselectValue = value }, - onOperatePersonChanged(obj) { - // this.dialogFormData.departmentId = obj.ID - if (this.dialogFormData.departments === '') { - this.dialogFormData.departments = obj.groupName - } else { - this.dialogFormData.departments = this.dialogFormData.departments + ',' + obj.groupName - } - }, syncDingTalkUsers(obj) { this.loading = true syncDingTalkUsersApi().then(res => { @@ -689,7 +704,7 @@ wLXapv+ZfsjG7NgdawIDAQAB }) this.getTableData() this.loading = false - }, + } } }