Skip to content

用户管理

用户管理模块提供完整的系统用户增删改查操作,包括基于部门的筛选、状态控制、密码管理和角色分配。

功能特性

  • 用户列表,支持分页、搜索和部门树筛选
  • 创建 / 编辑 / 删除用户
  • 启用 / 禁用用户账户
  • 重置用户密码
  • 为用户分配角色
  • 基于部门的组织架构

数据模型

SysUser 实体(sys_user 表)包含以下字段:

字段类型描述
userIdLong主键(自增)
usernameString登录用户名(唯一)
nicknameString显示昵称
emailString邮箱地址
phoneString手机号码
sexInteger性别(0:女,1:男)
avatarString头像 URL
passwordStringBCrypt 加密后的密码
statusInteger账户状态(0:禁用,1:启用)
deptIdLong部门 ID(外键)
remarkString备注
createTimeDateTime创建时间
updateTimeDateTime最后更新时间

API 接口

管理端 API(AdminApiController

方法接口路径描述
POST/admin-api/user查询用户列表(分页,支持筛选)
POST/admin-api/user/create创建新用户
PUT/admin-api/user/update更新用户信息
POST/admin-api/user/delete删除用户
POST/admin-api/user/status切换用户状态
POST/admin-api/user/reset-password重置用户密码
POST/admin-api/user/assign-role为用户分配角色

RESTful API(SysUserController

方法接口路径描述
GET/system/user查询所有用户
GET/system/user/{id}根据 ID 查询用户
GET/system/user/username/{username}根据用户名查询用户
POST/system/user创建用户
PUT/system/user/{id}更新用户
DELETE/system/user/{id}删除用户
POST/system/user/{id}/reset-password重置密码
GET/system/user/active查询活跃用户
GET/system/user/dept/{deptId}按部门查询用户

部门树筛选

用户列表页面左侧包含部门树。点击某个部门节点后,会筛选出该部门及其子部门下的用户。树形数据来源于 SysDept 实体。

密码安全

  • 密码在存储前使用 BCrypt 加密
  • 前端使用服务器的公钥通过 RSA 加密密码后再传输
  • 服务器使用 RSA 私钥解密,然后使用 BCrypt 进行哈希
  • RSA 私钥在 arch-smith.rsa-private-key 中配置

服务层

SysUserServiceUserService 类处理业务逻辑:

  • 用户名唯一性验证
  • 部门存在性检查
  • 创建时分配默认角色
  • 基于 QueryDSL 的动态筛选(SysUserPredicates

相关页面

Released under the MIT License.