版本号规范: x.y.z
, 其中:
- x: 主版本号,重大更新时。不兼容更新
- y: 子版本号,一些较大的功能升级。可能兼容,也可能不兼容(会特别说明)。
- z: 修正版本号,可能是bug修复,或者小功能升级。一定兼容。
基线版本不保留修正版本号,即为主版本号+次版本号
阐述下这里的基线含义,例如2.3版本,则前后端一定是对应兼容的。即后端2.3.x,前端2.3.x。则这个2.3就是一个基线版本。
如果2.3.x发布后存在bug, 则会在2.3.x上进行bug修复,多次修复并发布则多次自增x, 但是无论修正版本号加到多少。后端的2.3.x和前端的2.3.x一定是兼容的。
若选择某个基线版本的dbmeta,例如2.3版本,则后端可以使用: 2.3
或2.3.x
,也可以用2.3-SNAPSHOT
(2.3还未发布,仍处于开发中的情况,注意,SNAPSHOT不保证可靠);前端的话可以使用:~2.3.0
。
以上规范从2.3开始践行
- 升级vue到2.7,并引入状态管理pinia;
- 利用状态管理pinia, 将这些数据托管起来: 系统配置(appConfig)、登录用户(user)、有权限菜单(menus)、有权限路由(routes)、主题(theme)、tagView;
- 全局菜单搜索(注意权限过滤)
- 字典数据改为单表结构;引入字典类型、父类型,并支持缓存
- 增加【错误码管理】,错误码记录(主表)包含:错误码(唯一)、信息等级;子表包含语言、错误信息(模板)
- 增加业务操作日志
- 升级日志系统:链路追踪,对所有请求追加REQUEST-ID
- 【站内消息模块】(参考鹊桥:系统消息、站内公告)
- 支持首页定制(个人中心定制首页——其实就是定制有权限的菜单跳转入口作为卡片,以及:默认展示站内消息和使用文档链接)
- SearchView增加快速筛选保存功能(保存查询条件,默认内置:今天创建的数据、今天更新的数据)
- 提供数据源维护(dbmeta从配置文件获取数据源,改为从数据库中获取数据源),从而在平台维护下,提供数据源维护模块。以便动态添加数据源
- SearchView增加形态切换(常规形态和简洁形态, 简洁形态: 只展示一个字段的搜索,可通过字段切换来更改要检索的字段)
- SearchView文本检索框默认为模糊匹配,将左匹配、右匹配改为值中的简单语法("*张三", "张三*"),精确匹配使用“=张三"
- 表格类模板支持直接点击表头字段对该字段执行搜索、排序
- 表单引擎增加辅助控件: 文字、分割线、提示、间距组件
- 提供数据库自升级功能; 这个需要记录dbmeta版本到数据库中,进行比对,若不一致,则触发执行自升级操作。内置数据目前不允许删除,计划再加强改为不允许删除和编辑,这样,自升级操作就是目前的"系统重置",确保不会影响用户预期。
- 移除静态配置的ROOT用户,改为从动态user中进行鉴别,user是否为ROOT由业务系统去定义。默认情况下,用户名为ROOT的视为ROOT用户。
- 移除asoco-common的所有依赖
- 将公司内部的oss上传相关代码从dbmeta中移出,以spring-boot-starter的形式自动装配。
- 提供阿里云OSS上传实现,并内置。
- 内置提供DefaultDbMetaConfigurer配置器,默认会自动装配spring容器中的文件服务类(上传/下载)
- 修复当树表中的pid设置为不在表格中显示时,列表无法呈现树结构的问题;
ps: 此项不视作bug, 元字段的"列表显示"配置明确控制的是此列是否被select,如果为false,则内存中无法转为树结构。如果要实现隐藏则通过字段实例配置
hidden
实现 - 修复上传控件(FileBox和ImgBox)在seat模式下删除前面图片导致的前移问题。
- TableView中字段的render改为下拉选择Code Snippet, dbmeta建表支持单独维护。
- 将application.yml中关于
md.app
下的配置改为动态维护, 存储于表meta_app_config
中。 - 提供缓存机制和默认实现。并针对系统设置、代码片段、内置的阿里云oss文件下载(根据链接有效期设置文件缓存有效期)提供缓存。
- 将自定义接口响应的Ret改为java 接口定义。
- 移除基于本地文件的用户服务
- 升级认证鉴权模块,使业务系统满足更多场景。如:1. 用户、角色、权限托管在第三方的场景;
- 表格样式调优, 滚动条限制在表格区域中。
- 表格样式调优, 数据加载时展示loading
略~