深海科学与工程研究所安全巡检系统
祖安之光
2026-03-18 53a4a074f3e59efb05b2e5ca76d364f53939d957
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 = "";