From 53a4a074f3e59efb05b2e5ca76d364f53939d957 Mon Sep 17 00:00:00 2001
From: 祖安之光 <11848914+light-of-zuan@user.noreply.gitee.com>
Date: Wed, 18 Mar 2026 16:50:44 +0800
Subject: [PATCH] 修改用户管理

---
 src/views/system/user/index.vue |   22 ++++++++++++++++------
 1 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/src/views/system/user/index.vue b/src/views/system/user/index.vue
index 3ba2804..cc2d9f1 100644
--- a/src/views/system/user/index.vue
+++ b/src/views/system/user/index.vue
@@ -143,7 +143,11 @@
                <el-table-column label="用户编号" align="center" key="userId" prop="userId" v-if="columns[0].visible" />
                <el-table-column label="用户名称" align="center" key="userName" prop="userName" v-if="columns[1].visible" :show-overflow-tooltip="true" />
                <el-table-column label="姓名" align="center" key="nickName" prop="nickName" v-if="columns[2].visible" :show-overflow-tooltip="true" />
-               <el-table-column label="部门" align="center" key="deptName" prop="dept.deptName" v-if="columns[3].visible" :show-overflow-tooltip="true" />
+               <el-table-column label="部门" align="center" key="deptName" prop="depts.deptName" v-if="columns[3].visible" :show-overflow-tooltip="true" >
+                  <template #default="scope">
+                     {{ scope.row.depts?scope.row.depts.map(i=>i.deptName).join('/'): '' }}
+                  </template>
+               </el-table-column>
                <el-table-column label="手机号码" align="center" key="phonenumber" prop="phonenumber" v-if="columns[4].visible" width="120" />
                <el-table-column label="状态" align="center" key="status" v-if="columns[5].visible">
                   <template #default="scope">
@@ -197,14 +201,16 @@
                   </el-form-item>
                </el-col>
                <el-col :span="12">
-                  <el-form-item label="归属部门" prop="deptId">
+                  <el-form-item label="归属部门" prop="deptIds">
                      <el-tree-select
-                        v-model="form.deptId"
+                        v-model="form.deptIds"
                         :data="deptOptions"
                         :props="{ value: 'id', label: 'label', children: 'children' }"
                         value-key="id"
                         placeholder="请选择归属部门"
                         check-strictly
+                        multiple
+                        clearable
                      />
                   </el-form-item>
                </el-col>
@@ -273,7 +279,7 @@
                   </el-form-item>
                </el-col>
                <el-col :span="12">
-                  <el-form-item label="角色">
+                  <el-form-item label="角色" prop="roleIds">
                      <el-select v-model="form.roleIds" multiple placeholder="请选择">
                         <el-option
                            v-for="item in roleOptions"
@@ -403,7 +409,8 @@
     nickName: [{ required: true, message: "姓名不能为空", trigger: "blur" }],
     password: [{ required: true, message: "用户密码不能为空", trigger: "blur" }, { min: 5, max: 20, message: "用户密码长度必须介于 5 和 20 之间", trigger: "blur" }],
     email: [{ type: "email", message: "请输入正确的邮箱地址", trigger: ["blur", "change"] }],
-    phonenumber: [{ pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/, message: "请输入正确的手机号码", trigger: "blur" }]
+    phonenumber: [{ pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/, message: "请输入正确的手机号码", trigger: "blur" }],
+    roleIds: [{ required: true, message: "用户角色不能为空", trigger: "blur" }]
   }
 });
 
@@ -556,7 +563,8 @@
     status: "0",
     remark: undefined,
     postIds: [],
-    roleIds: []
+    roleIds: [],
+    deptIds: []
   };
   proxy.resetForm("userRef");
 };
@@ -574,6 +582,7 @@
     open.value = true;
     title.value = "添加用户";
     form.value.password = initPassword.value;
+    form.value.deptId = queryParams.value.deptId || null
   });
 };
 /** 修改按钮操作 */
@@ -586,6 +595,7 @@
     roleOptions.value = response.roles;
     form.value.postIds = response.postIds;
     form.value.roleIds = response.roleIds;
+    form.value.deptIds = response.data.depts?.map(i=>i.deptId)
     open.value = true;
     title.value = "修改用户";
     form.password = "";

--
Gitblit v1.9.2