更新日志
2.1.0
本版本完成管理端 Vben 5.7 升级,并同步调整权限、租户、CRUD 生成器和菜单授权链路。
前端底座
- 管理端底座同步到 Vben 5.7,前端 UI 组件体系切换到 antdv-next 方向。
- 同步 Vben 5.7 的 monorepo、构建、Vite、pnpm workspace 和公共包结构。
- 前端运行环境要求提升为 Node.js
^22.18.0 || ^24.0.0、pnpm>=11.0.0。 - 表格操作列统一使用
VbenTableAction+actions/popConfirm,保留文字按钮交互。 - 修复 antdv-next 表单组件在抽屉、弹窗内首次打开时只显示文本、不显示组件的问题。
- 修复登录验证码、业务响应错误提示、个人中心、租户管理和系统管理页面兼容问题。
- 前端请求层适配 Yi.Abp 统一响应结构,业务失败但 HTTP 200 时仍可触发页面错误提示。
- CRUD 代码生成器同步适配 Vben 5.7 的表格操作列和页面结构,减少后续新页面继续生成旧写法。
权限与租户
- 为了适配Vben5.7,将超管角色常量升级为
SuperAdminRolesCode语义,保留历史admin数据的升级兼容逻辑。 - 明确平台超级管理员语义,宿主机使用
superadmin,普通租户使用admin,避免租户内出现平台超级管理员角色。 - 调整前端权限识别逻辑,支持后端返回
superadmin、admin、*:*:*等权限数据后的页面访问控制。 - 菜单管理允许
superadmin和admin访问;租户管理、租户套餐等平台能力仅面向宿主机平台超管。 - 修复角色菜单授权和
/api/account/router父级菜单补全问题。
多租户种子数据
- 新增默认租户和默认租户套餐种子数据。
- 默认租户套餐包含除“租户管理”“租户套餐”“接口文档”之外的基础菜单与权限,避免租户获得平台治理能力。
- 租户列表补充数据库类型、初始化状态和初始化 loading。
后端框架
- 后端统一框架版本升级到
2.1.0。 - 后端项目将编译警告视为错误进行了大范围的修复。
- 新增
BaseAggregateRoot<TKey>,默认继承BasicAggregateRoot<TKey>并保留ExtraProperties,不再默认带ConcurrencyStamp。 - 调整租户菜单同步逻辑,使租户套餐、租户管理员权限与平台/租户边界保持一致。
CRUD 生成器
- 实体模板默认继承
BaseAggregateRoot<Guid>,未明确要求乐观锁时不生成ConcurrencyStamp。 - 生成流程增加实体规范检查、菜单/字典种子数据和生成后优化检查。
- 前端模板升级到 Vben 5.7/antdv-next 基线,组件从
antdv-next导入,字典常量从#/constants导入。 - 列表列生成规则从“只展示少数字段”升级为按业务语义挑选主标题、编码、枚举、数值、状态、备注和创建时间。
- 抽屉表单生成后要求继续优化关联字段、枚举字典、图片文件、布尔开关、金额数量和长文本组件,避免所有字段机械使用
Input。
升级注意事项
- 已有角色如果是在修复前创建,可能没有写入
RoleMenu,需要重新保存一次角色菜单权限或修复历史关联数据。 - 平台超级管理员应使用
superadmin角色码;租户管理员继续使用admin,不要在租户内创建平台级superadmin。 - 新增 CRUD 默认不包含
ConcurrencyStamp。只有明确需要乐观锁时,才继承 ABP 原生AggregateRoot<Guid>并同步 DTO、前端和异常提示。 - 前端页面按钮权限必须与后端接口权限一致。若后端方法复用
edit动作,前端按钮也应使用对应system:*:edit权限码。 - 升级或重新安装前端依赖前,请先确认本机 Node.js 满足
^22.18.0 || ^24.0.0,pnpm 满足>=11.0.0。