1.概要

目前我们支持用户在线配置表单进行开发,用户有时候希望,通过配置的表单,生成代码,自己做代码开发。这样用户只需要在线做表单配置,然后在这个基础上进行代码开发。目前平台支持这种开发方式了。

2. 实现思路

基于表单,读取表单的业务模型对象,根据表单和业务模型使用freemark模板渲染出我们需要的代码。

目前生成的代码包括:
1.实体类
2.数据库访问类
3.业务层代码
4.控制器层代码
5.mybatis mapping xml
6.前端访问数据API
7.数据列表
8.编辑页面
9.后端数据JS

3.开发步骤

3.1 配置全局变量

全局变量指的是在页面中需要使用到的一些变量。比如开发人员,日期,生成路径等。这些变量在模板配置中有用。

操作路径:
系统管理=》代码生成配置=》全局变量

注意生成目录需要配置一下,这个目录指的表单服务所在机器上的目录,这个目录用于生成文件,并打包下载,所以也是需要这个目录有写的权限。

相关变量如下:

[
    {"name":"company","comment":"公司","value":"广州软件"},
    {"name":"system","comment":"子系统","value":"system"},
    {"name":"domain","comment":"域名","value":"com.misoft"},
    {"name":"developer","comment":"开发者","value":""},
    {"name":"email","comment":"邮件","value":"ray@misoft.cn"},
    {"name":"genDir","comment":"生成目录","value":""}]

这个变量配置,存在于nacos中,用户在保存时,会保存一份私有的变量到数据库。

数据库表为 : form_codegen_globalvar

3.2 代码模板配置

由于代码生成时通过freemark来生成的,所以我们需要编写对应的模板。

操作路径:
系统管理=》代码生成配置=》代码生成模板管理

名称:就是模板的名称
文件名:指的是我们需要生成的文件名称,这个文件名可以使用变量,变量的使用方法为{变量},注意这个变量分为全局变量和表单的实体变量,每个实体都有自己的实体变量。注意这个变量名称不要冲突。
生成路径:这个值得时我们生成文件时,每一个文件生成到的目录。

这个生成路径也是可以使用变量的。

生成单个文件:这个指的是在生成文件时,生成文件的方式。比如一对多的表单,这个时候,我们生成实体的规则是,每一个实体生成一个文件,但是控制器我们只会生成一个。

内容:这个指的是代码生成的模板。我们需要单独介绍一下模板的写法。

3.3 生成代码

我们可以通过表单方案来生成代码。

操作路径为:

单据中心=》表单方案

点击后,他就会下载一个压缩文件包,我们对其进行解压。

代码样例:

3.4 使用代码

我们将代码 copy到项目中。

后端代码:

前端代码:

我们运行代码,需要将列表配置到菜单,并授权。

效果:

文档更新时间: 2021-09-15 15:47   作者:zyg