现在已经支持普通表、树形表、左侧树+普通表、左侧树+树形表的代码生成,通过组合的方式,可以生成多种不同类型的业务。下面是普通表的配置信息,如下所示。

1. 生成类型

支持 普通表树形表左侧树+普通表左侧树+树形表的生成类型。

2. 生成功能

支持查询新增修改删除导入导出的业务代码生成,可以选择只生成其中一部分,或全不勾选,则只会生成列表业务代码。

3. 表名、说明

表名:是固定的,不能修改;说明:则是用于生成注释和菜单名称。

4. 类名

会根据表名,自动生成具体的Java类名(不满意则修改)。如果有表前缀没有去掉,也可以去掉(如果全局配置信息指定过滤的表前缀,再重新导入表,自动生成Java类名时,则不会包含表前缀)。

5. 继承

需要在基类管理,配置具体的基类。在生成Entity实体类时,继承了基类的,就不会在Entity实体类里面生成基类字段。

6. 权限级别

页面层级:Controller接口中的权限标识,都会生成一样的,菜单管理也不会有按钮级别的权限授权。
按钮层级:Controller接口中的权限标识,都会生成不一样的,菜单管理也会有按钮级别的权限授权。

7. 表单布局

支持一列、两列表单布局,一列则是一行只显示1个控件,如:input控件占满整行;两列则是一行显示2个控件。

8. 生成方式

zip压缩包:点击生成代码按钮的时候,会生成一个zip压缩包下载,解压后,则包含了前后端代码。
自定义路径(推荐):会把代码生成到对应的目录里面,编译代码并重启服务后,则可看到效果。

9. 新增编辑

新增或编辑时,Form表单是弹窗形式,还是右侧栏展示。

10. 模块名

生成代码的时候,会生成到该模块下面,如包名为:net.maku,模块名为:test,则代码就会生成在net/maku/test目录下面。

11. 功能名

前端api接口文件,会按功能名命名,如功能名为:member,则会生成 member.ts 接口文件。

12. 请求URL

配置Controller的接口地址,默认由模块名+功能名组成,如:/test/member,也可以修改成其他的。

13. 权限标识

用来控制接口权限的,默认由模块名+功能名组成,如:test:member,也可以修改成其他的,如下所示:

@PostMapping
@PreAuthorize("hasAuthority('test:member')")
public Result<String> postRequest(){
    return Result.ok();
}

14. 子表配置

子表支持一对一、一对多配置,如下所示:

其中:

  • 子表名:选择对应的子表,如果没有导入子表,则需要先导入进来,才能选择。
  • 子表外键:选择当前子表与主表关联的字段。
  • 子表描述:子表要展示的名称。
  • 与主表关系:支持一对一、一对多。
  • 排序:如果有多个子表时,会通过排序字段,进行排序。

15. 菜单管理

生成代码,重启项目后,默认前端界面的菜单管理里面,是没有对应菜单的,需要我们单独执行 菜单SQL,这样才会有对应的菜单,如下所示:

16. 注意事项(重要)

直接生成代码到项目目录,或通过拷贝的方式,把代码拷贝到IDEA开发工具里面,默认是不会生效的,需要我们手动编译一下,才会生效,具体操作方式如下: