Skip to content

用户管理

用户管理是系统里维护登录账号的页面,用来决定谁可以进入系统、归属哪个部门、拥有哪些角色、当前是否允许登录

它不是单纯的“员工通讯录”,而是系统权限落地的第一层入口。新员工入职、老员工调岗、账号停用、密码重置、批量导入,通常都从这里开始处理。

菜单路径

系统管理用户管理

这个页面解决什么问题

日常最常见的几类场景:

  • 新员工入职后,需要创建登录账号
  • 员工调岗后,需要同步调整部门、岗位、角色
  • 员工忘记密码后,需要管理员重置密码
  • 员工离职或暂时停用后,需要关闭登录权限但保留历史记录
  • 需要一次性导入一批新账号时,用导入功能批量处理

可以把它理解为“账号入口 + 组织归属 + 权限分配”三件事合在一起的管理页。

页面结构

用户管理采用左侧部门树 + 右侧查询列表的结构,而不是单独一张表。

  • 左侧部门树:用于按部门筛选用户
  • 右侧查询区:用于按账号、姓名、手机号、状态、角色、创建时间进一步筛选
  • 右侧列表区:查看用户当前状态,并执行新增、编辑、删除、导入、导出、重置密码等操作

先理解:部门、岗位、角色分别管什么

很多新手第一次配置时,容易把这三个概念混在一起。

  • 部门:这个人属于哪个组织单元,用于人员归属、树形筛选、部分业务范围区分
  • 岗位:这个人在所属部门中的岗位信息,偏组织身份补充
  • 角色:这个人能看到哪些菜单、能执行哪些操作,是权限控制的关键

在系统当前实现里,角色是必选项。如果不分配角色,新增/编辑都无法通过后端校验。

对应后端约束:

查询区可以筛什么

右侧查询区当前支持以下条件:

  • 用户账号
  • 用户昵称
  • 手机号码
  • 状态
  • 角色,可多选
  • 创建时间范围

其中,部门不是查询表单里的普通下拉框,而是通过左侧部门树来筛。

列表里实际显示什么

当前列表不是简单的“用户名 + 姓名”二维表,而是包含较完整的账号状态信息。

主要列包括:

  • 用户名列
    • 头像
    • 登录账号
    • 用户昵称
  • 性别
  • 所属部门
  • 角色
  • 邮箱
  • 手机号
  • 状态
  • 创建时间
  • 操作列

其中要特别注意两点:

  1. 登录账号和用户昵称在同一列里上下显示,不是两列分开展示。
  2. 角色列会直接展示当前用户已分配的角色名称,方便快速核对权限归属。

常用操作

新增用户

点击右上角 新增 后,会打开新增抽屉。

新增时需要重点填写:

  • 用户昵称
  • 归属部门
  • 角色,可多选
  • 岗位,可多选
  • 登录账号
  • 手机号
  • 初始密码
  • 邮箱
  • 状态
  • 性别
  • 备注

其中当前实现里有几个关键规则:

  • 登录账号只在新增时填写,编辑时不会再显示
  • 初始密码也只在新增时填写
  • 角色必选
  • 新增时会默认带入当前左侧部门树选中的部门

后端保存时会进一步做这些校验:

  • 账号唯一
  • 手机号唯一(非空时)
  • 邮箱唯一(非空时)
  • 目标部门必须在当前操作者可访问范围内
  • 如果启用了租户能力,还会校验当前租户账号名额是否足够

对应后端实现:

  • 新增接口:
  • 账号/手机号/邮箱校验:
  • 租户名额校验:

新手建议

建议先确保“组织架构”和“角色权限”已经配置好,再回到用户管理新增账号。否则部门能选、角色却不完整,后面还要返工。

编辑用户

点击列表行内的 编辑 按钮,会打开编辑抽屉。

编辑时可以修改:

  • 用户昵称
  • 归属部门
  • 角色
  • 岗位
  • 手机号
  • 邮箱
  • 状态
  • 性别
  • 备注

但当前实现里:

  • 编辑时不会显示“登录账号”输入框

  • 编辑时不会显示“密码”输入框

  • 编辑页面会额外请求用户详情,把该用户已有的角色、岗位、可选角色列表一起加载出来

  • 后端详情接口返回编辑页初始化数据:

后端编辑时还会继续校验:

  • 不允许操作超级管理员用户
  • 当前操作者必须有权访问该用户数据
  • 目标部门必须在可访问范围内
  • 账号/手机号/邮箱仍然不能重复

对应后端实现:

  • 编辑接口:

启用 / 停用用户

列表中的状态列支持直接切换启用或停用,不需要先进入编辑抽屉。

这适合处理两类情况:

  • 员工暂时停用,不希望继续登录系统

  • 员工离职,但仍希望保留历史操作记录

  • 后端状态修改接口:

注意

停用账号通常优先于删除账号。删除更适合确定不再需要保留该账号身份的情况;如果只是暂时不用,建议先停用。

重置密码

如果员工忘记密码,管理员可以在列表行内点击 重置密码

当前实现里,重置密码是单独的抽屉,不是在编辑抽屉里直接修改。

重置密码抽屉会显示:

  • 用户昵称,只读

  • 部门名称,只读

  • 登录账号,只读

  • 新密码,可输入

  • 后端重置密码接口:

后端保存时会:

  • 拦截对超级管理员用户的密码重置
  • 校验当前操作者是否有权访问该用户
  • 对新密码进行加密后再保存

删除用户

用户管理支持:

  • 行内删除单个用户

  • 勾选后批量删除多个用户

  • 后端删除接口:

后端当前还有几个重要限制:

  • 当前登录用户不能删除自己
  • 不允许操作超级管理员用户
  • 删除前会先清理该用户关联的角色和岗位关系
  • 用户本身采用逻辑删除,历史痕迹不会像物理删除那样彻底抹掉

批量导入

当需要一次性创建很多账号时,可以使用导入功能。

当前导入弹窗支持:

  • 上传 Excel 文件
  • 下载导入模板
  • 选择“是否更新已存在数据”
  • 导入完成后查看结果反馈

导入限制:

  • 只支持 Excel (xls) 格式 / Excel (xlsx) 格式
  • 单次只允许上传 1 个文件
  • 文件大小上限 50MB

导入时,系统当前支持的导入字段主要是:

  • 部门名称
  • 登录名称
  • 用户名称
  • 用户邮箱
  • 手机号码
  • 用户性别
  • 账号状态

对应后端定义:

这里要特别注意:

  • 导入里的“更新已存在数据”,主要更新的是基础资料字段
  • 不是完整替代“编辑用户”
  • 角色、岗位这类关系字段并不在导入模板主字段里,不建议把导入当成完整权限维护工具

导出用户

如果需要做账号盘点、部门人员核查或线下归档,可以使用导出功能。

当前导出会按照当前筛选条件导出用户列表,不是无条件导出全部账号。

  • 后端导出接口:

用户与角色的关系

一个用户可以分配多个角色,系统会按角色组合决定他能看到哪些菜单、能操作哪些功能。

当前实现里,用户与角色至少有两种维护入口:

  1. 用户管理的新增/编辑抽屉里为用户分配角色
  2. 角色权限页面中,从角色侧反向给用户分配账号

这意味着:

  • 用户管理更适合从“这个人是谁、属于哪个部门、该给哪些权限”来配置
  • 角色权限更适合从“这个角色应该授权给哪些人”来配置

系统当前的几个关键规则

1)角色必选

新增或编辑用户时,后端要求至少分配一个角色,否则无法保存。

依据:

2)账号、手机号、邮箱不能乱重复

当前后端会校验:

  • 登录账号唯一
  • 手机号非空时唯一
  • 邮箱非空时唯一

依据:

3)超级管理员用户不能被普通方式改动

当前前端和后端都对超级管理员做了额外保护:

  • 前端列表里,管理员账号 的用户不显示普通行操作
  • 状态开关也会禁用
  • 后端也会拦截对超级管理员用户的编辑、删改、停启用、重置密码等操作

依据:

  • 前端保护:、
  • 后端保护入口:

4)不是所有用户、部门、角色都能随便操作

虽然当前控制器里很多传统 权限检查 注解被注释掉了,但这不代表没有任何权限控制

系统仍然保留了几类重要限制:

  • 用户数据范围校验
  • 部门数据范围校验
  • 角色数据范围校验
  • 超级管理员保护
  • 自删保护

也就是说,用户管理不是“谁进来都能改所有人”。实际能改到哪一层,还受当前操作者的数据权限影响。

推荐使用顺序

如果你是第一次配置系统,建议按下面顺序操作:

原因很简单:

  • 没有组织架构,用户挂不到合适部门
  • 没有角色,用户新增后权限不完整
  • 先把基础组织与角色配好,再建用户,返工最少

使用场景

场景一:新员工入职
  1. 先确认该员工所属部门已经存在
  2. 再确认对应岗位和角色已经准备好
  3. 在用户管理中新增账号
  4. 分配部门、岗位、角色
  5. 保存后把登录账号和初始密码交给员工
场景二:员工调岗
  1. 打开用户编辑抽屉
  2. 调整归属部门和岗位
  3. 按新职责重新分配角色
  4. 保存后让员工重新按新权限使用系统
场景三:员工忘记密码
  1. 在列表中找到该员工
  2. 点击重置密码
  3. 输入新密码并保存
  4. 将新密码通知员工登录后自行修改
场景四:员工离职或停用
  1. 优先把账号状态改成停用
  2. 确认该员工不能再登录系统
  3. 如有必要,再由管理员评估是否执行删除

注意事项

注意

  1. 左侧部门树会直接影响右侧列表结果,查不到人时先确认是否筛到了错误部门。
  2. 角色是权限核心,不是装饰字段。看不到菜单、点不了按钮,优先检查角色。
  3. 新增与编辑字段不完全相同:登录账号和密码只在新增时填写。
  4. 导入适合批量建基础账号,不适合做复杂权限调整。涉及角色、岗位时,仍建议进编辑抽屉逐个核对。
  5. 停用通常优先于删除,这样更利于保留历史操作痕迹。
  6. 不要把超级管理员账号当普通账号维护,系统对这类账号有额外保护。

智掌每一单,稳控每一环