refactor: 系统权限模块重构,迁移至PostgreSQL并对齐新设计
- 切换数据库为PostgreSQL,更新依赖与配置 - 重构权限体系,使用sys_user/sys_role/sys_menu等新实体替代旧模型 - 移除旧的用户角色/权限/系统设置相关代码与实体 - 新增字典、菜单管理模块与基础CRUD接口 - 优化鉴权逻辑,基于菜单权限标识进行接口校验 - 前端同步更新API、路由与权限控制逻辑 - 删除冗余的v-permission指令与相关代码
This commit is contained in:
1 parent
98c22f6afb
commit
0a8103f33d
67 files changed
+3263
-1924
No files matched your search
@@ -0,0 +1,47 @@
|
||||
# Checklist - 系统管理与认证授权模块对齐新设计
|
||||
|
||||
## 数据库与配置检查
|
||||
- [x] server 已安装 pg / pg-hstore 依赖
|
||||
- [x] config.default.ts 使用 PostgreSQL(dialect=postgres、port 5432、database=xintong)
|
||||
- [x] database/db_init.sql 在 PostgreSQL 中执行成功
|
||||
- [x] 初始数据齐全:4 角色、11 条菜单(6 顶级 + 5 系统子菜单)、20 条字典、admin 账户、角色菜单绑定
|
||||
- [x] admin 账户密码为 admin123456(bcrypt hash 正确)
|
||||
|
||||
## 后端实体与接口检查
|
||||
- [x] 7 个系统域实体(sysUser/sysRole/sysUserRole/sysMenu/sysRoleMenu/sysDict/sysOperationLog)创建成功且表名正确
|
||||
- [x] 旧实体(user/role/userRole/permission/rolePermission/operationLog)已删除
|
||||
- [x] 登录接口基于 sys_user 校验,返回 userInfo/roles/menus
|
||||
- [x] 刷新 Token 与当前用户接口适配新模型
|
||||
- [x] RbacMiddleware 基于菜单 permission 标识鉴权,ADMIN 放行
|
||||
- [x] 用户管理接口字段为 realName/phone/email,返回不包含密码哈希
|
||||
- [x] 角色管理接口字段为 roleCode/roleName/sortOrder
|
||||
- [x] 角色菜单配置接口(/roles/:id/menus)读写 sys_role_menu 正确
|
||||
- [x] 菜单管理接口:菜单树查询与 CRUD 正常
|
||||
- [x] 数据字典接口:列表/类型筛选/CRUD 正常(修复 types() 的 PostgreSQL GROUP BY/ORDER BY SQL 问题)
|
||||
- [x] 操作日志接口与中间件使用新字段(user_id/module/action/method/params/ip/created_at)
|
||||
- [x] system.controller.ts / system.service.ts 已删除,无残留引用
|
||||
|
||||
## 前端检查
|
||||
- [x] api/auth.ts 返回类型含 realName/roles/menus
|
||||
- [x] api/user.ts、api/role.ts 字段更新,权限接口改为菜单接口
|
||||
- [x] api/menu.ts、api/dict.ts 新增,api/system.ts 已删除
|
||||
- [x] stores/permission.ts 管理用户信息与菜单树(login 完整写入 roles/menus)
|
||||
- [x] 侧边栏菜单由用户菜单树动态渲染(含图标、两级结构)
|
||||
- [x] 路由改为静态全量注册,守卫按菜单权限标识控制;未开发模块显示占位页(替代原动态路由注册方案,修复深层刷新跳登录问题)
|
||||
- [x] 设置页路由与菜单已移除
|
||||
- [x] 用户管理页字段为姓名/手机/邮箱
|
||||
- [x] 角色管理页权限配置为菜单树勾选
|
||||
- [x] 菜单管理页(树形表格 CRUD)可用
|
||||
- [x] 数据字典页(列表+类型筛选 CRUD)可用
|
||||
- [x] 操作日志页字段与筛选更新
|
||||
- [x] v-permission 指令及引用已移除
|
||||
- [x] views/settings 目录已删除
|
||||
|
||||
## 联调与边界检查
|
||||
- [x] admin 登录 → 仪表盘 → 系统管理各子页面全流程走通(含深层链接整页刷新)
|
||||
- [x] 业务员角色仅显示授权菜单,访问未授权接口返回 403(SALESMAN/WORKER 实测 403)
|
||||
- [x] 写操作自动记录操作日志且可查询
|
||||
- [x] 无菜单角色登录不报错,侧边栏仅显示仪表盘(WORKER 实测 menus=0)
|
||||
- [x] 删除被占用角色被拦截
|
||||
- [x] 重复用户名/角色编码校验生效
|
||||
- [x] yarn build(server/client)无 TypeScript 编译错误
|
||||
Reference in new issue
Block a user