Commit Graph

86 Commits

Author SHA1 Message Date
ca51702035 feat: 新增系统管理/字典管理(列表、新增、修改、删除、导出、查询字典项列表、新增字典项、修改字典项、删除字典项) 2023-09-16 00:36:42 +08:00
a3082e72a9 style: 部分代码优化
1.格式优化:去除部分多余空行(较少代码段区分尽量不添加空行)、注释(代码尽量自解释)
2.完善部分 Swagger 注解信息
3.修复部分前后端警告
2023-09-10 18:01:44 +08:00
a1c20afb1b feat: 完善仪表盘访问趋势区块内容 2023-09-09 21:39:15 +08:00
dc1691f019 feat: 完善仪表盘访客地域分布区块内容 2023-09-09 15:09:05 +08:00
83b2e2a7c0 feat: 完善仪表盘热门模块区块内容
1.完善仪表盘热门模块区块内容
2.sys_log 表增加 module 字段索引
3.优化总计区块图标
2023-09-09 11:28:44 +08:00
3440aa4faa feat: 完善仪表盘总计区块内容 2023-09-09 00:20:50 +08:00
13d2afff37 Merge branch '1.1.x' into dev 2023-09-07 21:10:50 +08:00
63228598d9 chore: 优化后端程序启动成功输出内容 2023-09-07 21:08:26 +08:00
be394f3de4 style: 优化登录用户信息角色相关信息命名
1.roles => roleCodes
2.roleSet => roles
2023-09-02 00:12:45 +08:00
4639d13ba6 perf: 对获取路由信息接口增加缓存处理
1.优化 Spring Cache 配置
2.暂时移除 Jackson 针对数值类型:Long、BigInteger、BigDecimal 的 toString 处理(TreeUtil 疑似在字符串类型 parentId 时会出现转换异常)
2023-08-31 22:05:35 +08:00
9baf341013 refactor: 适配及启用 Arco Design Pro Vue 动态路由
Resolves #1
2023-08-30 21:19:13 +08:00
315c059713 feat: 完善仪表盘公告区块内容 2023-08-23 00:12:35 +08:00
46e125d8c9 feat: 新增系统管理/公告管理(列表、查看详情、新增、修改、删除、导出) 2023-08-23 00:00:41 +08:00
54ea41048a chore: 使用属性变量消除配置文件中分散的 ContiNew Admin 品牌元素
1.项目配置属性前缀由 continew-admin 改为 project(暂时未发现属性前缀 project 冲突)
2.配置文件中涉及到项目元素信息使用的,统一通过变量引用项目配置属性(如此改动之后,仅需要修改项目配置即可快速调整大量项目配置信息)
2023-08-20 10:23:12 +08:00
a61196cd62 refactor: 将验证码唯一标识格式从无符号 UUID 调整为带符号 UUID 2023-08-15 00:26:05 +08:00
190385ed36 docs: 完善公共模块相关接口文档信息 2023-08-15 00:23:58 +08:00
9def265af6 docs: 完善代码生成相关接口文档信息 2023-08-12 23:33:58 +08:00
72399d9226 feat: 新增生成代码接口(后端代码) 2023-08-12 17:52:39 +08:00
76c65463c2 refactor: 移除所有的 @Accessors(chain = true),并全局配置禁止使用 2023-08-11 23:59:44 +08:00
2d0e1f42d4 refactor: 优化代码生成配置相关表名、 API 地址及相关描述
1、列映射表重命名为字段配置表
2023-08-10 23:39:06 +08:00
a265a84f80 refactor: 重构查询列映射信息列表接口,支持对已保存的列映射配置同步最新表结构 2023-08-09 23:19:47 +08:00
0fae13e779 feat: 新增保存代码生成配置信息接口 2023-08-08 23:59:57 +08:00
abae964970 feat: 新增查询生成配置信息接口 2023-08-07 23:34:15 +08:00
f4c6d83ff5 feat: 新增查询列映射信息列表接口
提取 QueryTypeEnum 枚举
2023-08-06 23:32:01 +08:00
bb6f47cfd2 feat: 新增系统工具模块(存放系统工具模块相关功能,例如:代码生成、文件管理等) 2023-08-05 00:08:41 +08:00
d12b0c21ab Merge branch '1.0.x' into dev
# Conflicts:
#	continew-admin-ui/components.d.ts
#	continew-admin-ui/src/components/footer/index.vue
2023-06-28 22:55:08 +08:00
78a5d5ec7a refactor: 优化分组校验 2023-05-07 19:51:14 +08:00
9376d6fd5f style: 优化启动程序打印日志 2023-04-20 22:59:30 +08:00
ae8d294705 refactor: 优化 springdoc-openapi 对象型参数处理
1.使用 default-flat-param-object 全局设置对象型参数展示形式。此设置是在 springdoc-openapi v1.6.11 版本开始添加的新特性(详情请参阅:https://github.com/springdoc/springdoc-openapi/pull/1805),在此之前,只能在所有需要处理的对象型参数类上使用 @ParameterObject,工作量较大。
2.作者在使用上方这个配置时还遇到了一个 Bug,那就是只要在对象型参数前使用了注解,例如:@Validated PageQuery pageQuery,这个配置就不会生效了。此问题已在 GitHub 提交了相应 issue(详情请参阅:https://github.com/springdoc/springdoc-openapi/issues/2181),并且 springdoc-openapi 社区某个小伙伴儿已在当前最新发布的 v2.1.0 和 v1.7.0 中修复。
注意:由于当前使用的 Knife4j 版本其内部引入的 springdoc-openapi 相关依赖非最新版本,所以为了解决配置不生效问题,暂时将部分对象型参数移除了 @Validated 注解(除了 PageQuery,其他类当前也未实际添加校验,所以直接移除了)。当然如果不想移除的话,也可以从依赖上功夫,即移除 Knife4j 内引入的 springdoc-openapi 相关依赖,然后自行添加 springdoc-openapi 相关依赖并指定最新版本即可。
2023-04-09 01:13:23 +08:00
18c54a74fc fix: 完善事务注解 2023-04-03 21:31:29 +08:00
9f25925d46 fix: 调整 BaseController API 方法的访问权限修饰符 2023-03-31 21:17:55 +08:00
8b955a0b1b 修复:补充校验 2023-03-29 23:47:48 +08:00
bc54acd60b 重构:重构获取登录用户信息的代码逻辑
1.用户基本信息调整为实时获取
2.登录用户不再保存基本信息,降低维护成本
3.移除冗余的维护登录用户基本信息的代码
2023-03-26 10:58:23 +08:00
267ad9be13 优化:优化修改角色的代码逻辑
1.变更角色编码、功能权限或数据权限后,关联在线用户会自动下线
2.优化角色和菜单关联、角色和部门关联、用户和角色关联的业务代码(增加返回结果)
3.重构在线用户功能,抽取在线用户业务实现
2023-03-26 00:14:05 +08:00
c5b748fe52 完善:发版前配置梳理 2023-03-24 00:40:49 +08:00
069104c598 优化:优化部分常量命名及使用 2023-03-23 21:56:37 +08:00
a09711c04e 完善:完善菜单相关代码逻辑,优化部分细节 2023-03-20 21:56:20 +08:00
6d3ba478e9 优化:优化校验工具类的使用及部分模板文本写法
1.优化校验工具类,支持传入 {} 模板文本
2.校验工具类增加 throwIf 重载方法,适合于 boolean 类型参数的情况
3.优化一些模板文本的写法
4.优化一些其他细节
2023-03-20 20:44:52 +08:00
25e11ad9bc 优化:优化后端公共 CRUD 组件-修改接口,将 id 从请求体提取到路径变量,更符合 RESTful 风格 2023-03-11 00:26:18 +08:00
d8ceda4654 新增:新增获取路由信息 API(默认前端动态路由处于关闭状态,可通过[页面配置]>[菜单来源于后台]开启)
1.在页面导航栏中通过[页面配置]>[菜单来源于后台]临时启用,刷新后配置失效
2.在前端项目 src/config/setting.json 中,可通过 menuFromServer 配置永久启用
2023-03-09 00:06:02 +08:00
405c821e2a 重构:🔥 基于阿里巴巴 Java 开发手册(黄山版)重构各表基本结构(简化列名)
1.MySQL数据库>建表规约>第9条:
【强制】表必备三字段:id,create_time,update_time。
说明:其中 id 必为主键,类型为 bigint unsigned、单表时自增、步长为 1。create_time,update_time 的类型均为datetime 类型,如果要记录时区信息,那么类型设置为 timestamp。
个人理解:简化列名的目的是为了后续能抽取更多公共能力
2.MySQL数据库>SQL语句>第10条:
【推荐】SQL 语句中表的别名前加 as,并且以 t1、t2、t3、...的顺序依次命名。
说明:
  1)别名可以是表的简称,或者是依照表在 SQL 语句中出现的顺序,以 t1、t2、t3 的方式命名。
  2)别名前加 as 使别名更容易识别。
正例:select t1.name from first_table as t1 , second_table as t2 where t1.id = t2.id;
2023-03-06 00:09:11 +08:00
926aa06bb5 优化:优化项目启动类命名 2023-03-05 12:59:59 +08:00
47fa1422bb 优化:基于阿里巴巴 Java 开发手册(黄山版)优化部分变量和方法命名
1.编程规约>命名风格>第14条:
【推荐】在常量与变量命名时,表示类型的名词放在词尾,以提升辨识度。
正例:startTime / workQueue / nameList / TERMINATED_THREAD_COUNT
反例:startedAt / QueueOfWork / listName / COUNT_TERMINATED_THREAD
2.编程规约>命名风格>第19条:
【参考】各层命名规约:
  A)Service / DAO 层方法命名规约:
  1)获取单个对象的方法用 get 做前缀。
  2)获取多个对象的方法用 list 做前缀,复数结尾,如:listObjects
  3)获取统计值的方法用 count 做前缀。
  4)插入的方法用 save / insert 做前缀。
  5)删除的方法用 remove / delete 做前缀。
  6)修改的方法用 update 做前缀。
个人理解及应用 🔥:
  1)在变量命名方面:
    a)方法体内局部变量,命名时表示类型的名词放在词尾,以提升辨识度;
      正例:nameList、nameArr。
    b)方法声明上参数(局部变量),命名时尽量采用复数形式,以和方法名保持一致;
      正例:List<String> listNameByIds(List<Long> ids);
    c)成员变量,命名时尽量采用复数形式。
  2)在方法命名方面:
    a)CRUD 类方法可以简化命名;
      正例:UserService:page、list、add、update、delete...;
      说明:UserService 是围绕 User 为核心的业务接口,简化命名的方法也很容易理解操作的是什么。
    b)其他方法,查询信息名词采用单数(与其纠结单数、复数,那就用单数,简单粗暴一点),以上述第2条要求为命名前缀。
      正例:RoleService:listNameByIds(根据 ID 查询名称列表)
           RoleService:listRoleCodeByUserId(根据用户 ID 查询角色编码列表)
           UserRoleService:listRoleIdByUserId(根据用户 ID 查询角色 ID 列表)
           UserService:getByUsername(根据用户名查询用户)
2023-03-04 23:03:33 +08:00
1257a4bc35 优化:基于阿里巴巴 Java 开发手册(黄山版)优化常量及包命名
1.编程规约>常量定义>第4条:
【推荐】不要使用一个常量类维护所有常量,要按常量功能进行归类,分开维护。
说明:大而全的常量类,杂乱无章,使用查找功能才能定位到要修改的常量,不利于理解,也不利于维护。
正例:缓存相关常量放在类 CacheConsts 下;系统配置相关常量放在类 SystemConfigConsts 下。
2.编程规约>常量定义>第5条:
【推荐】常量的复用层次有五层:跨应用共享常量、应用内共享常量、子工程内共享常量、包内共享常
量、类内共享常量。
  1)跨应用共享常量:放置在二方库中,通常是 client.jar 中的 constant 目录下。
  2)应用内共享常量:放置在一方库中,通常是子模块中的 constant 目录下。
  反例:易懂常量也要统一定义成应用内共享常量,两个程序员在两个类中分别定义了表示“是”的常量:
  类 A 中:public static final String YES = "yes";
  类 B 中:public static final String YES = "y";
  A.YES.equals(B.YES),预期是 true,但实际返回为 false,导致线上问题。
  3)子工程内部共享常量:即在当前子工程的 constant 目录下。
  4)包内共享常量:即在当前包下单独的 constant 目录下。
  5)类内共享常量:直接在类内部 private static final 定义。
2023-03-03 22:34:19 +08:00
94be1f9553 新增:新增功能权限适配及校验
1.后端 API 注解鉴权使用方式:@SaCheckPermission("system:user:add")
2.前端全局指令函数使用方式:v-permission="['system:user:add']"
3.前端权限判断函数使用方式:checkPermission(['system:user:add'])
2023-03-02 23:39:22 +08:00
ac6d2918d9 删除:删除系统管理/岗位管理(过于偏向行政业务向) 2023-02-27 22:53:36 +08:00
d4fd76dcc1 重构:🔥 重构查询树列表相关 API,并抽取到后端 CRUD 公共组件中
1.基于 Hutool TreeUtil 重构查询树列表相关 API
2.抽取查询树列表 API 到后端 CRUD 公共组件中,大大简化部门管理和菜单管理部分代码
2023-02-27 22:03:27 +08:00
72e5522952 优化:优化新增关键词 create => add 2023-02-26 22:26:17 +08:00
a79b3e0e96 新增:新增公共查询枚举字典 API,优化前端获取枚举数据的方式 2023-02-26 21:49:03 +08:00
8200ea822f 新增:新增系统管理/岗位管理(列表、查看详情、新增、修改、删除、导出) 2023-02-26 00:19:56 +08:00