低代码平台,适合从零代码到高代码的渐进式开发。支持快速系统构建,提供可视化表单和界面设计工具,帮助用户轻松搭建应用。平台支持单点登录,简化用户身份管理;同时提供强大的接口对接与开放能力,方便与其他系统集成。此外,平台支持自定义调度,满足复杂业务需求;内置Groovy代码引擎,方便开发者实现复杂逻辑;还提供在线调试功能,助力高效开发。
源码安装前置,需要安装maven, nodejs
支持 mysql,postgresql,需要安装 mysql 或 postgresql 数据库
quick-build-vue 打包,quick-build-vue 在运行 yarn build 或者 npm run build
将 quick-build-vue 打包后的 dist 下文件复制到 quick-build-web/src/main/resources/static
在 quick-build-web 根目录进行 mavn 打包:mvn clean -Pprod package -f pom.xml
将 target/quick-build-web.jar,quick-build-web/src/main/resources/application-prod.properties 复制到同一目录,并将 application-prod.properties 重命名为 application.properties
使用脚本运行:java -jar quick-build-web.jar --spring.config.location=file:./application.properties
注意修改配置application.properties,
postgresql数据库配置方式:
spring.datasource.druid.url=jdbc:postgresql://数据库IP:数据库端口/数据库名称?currentSchema=数据库schema
spring.datasource.druid.driver-class-name=org.postgresql.Driver
spring.datasource.druid.username=数据库用户名
spring.datasource.druid.password=数据库密码
mysql数据库配置方式:
spring.datasource.druid.url=jdbc:mysql://数据库IP:数据库端口/数据库名称?autoReconnect=true&serverTimezone=GMT%2B8
spring.datasource.druid.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.druid.username=数据库用户名
spring.datasource.druid.password=数据库密码
安装 mysql 或 postgresql 数据库
修改 application.properties 中的数据库配置
postgresql 数据库配置方式:
spring.datasource.druid.url=jdbc:postgresql://数据库IP:数据库端口/数据库名称?currentSchema=数据库schema
spring.datasource.druid.driver-class-name=org.postgresql.Driver
spring.datasource.druid.username=数据库用户名
spring.datasource.druid.password=数据库密码
mysql 数据库配置方式:
spring.datasource.druid.url=jdbc:mysql://数据库IP:数据库端口/数据库名称?autoReconnect=true&serverTimezone=GMT%2B8
spring.datasource.druid.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.druid.username=数据库用户名
spring.datasource.druid.password=数据库密码
使用脚本运行:java -jar quick-build-web.jar --spring.config.location=file:./application.properties
配置表格/表单有哪些字段。
表格:数据查询时显示的表格。
表单:编辑/显示明细数据的表单。
库表:根据【字段管理】中配置的字段在数据库中建表。
视图:【视图名称】来源于【视图配置】中根据sql生成的视图。
配置表格/表单有哪些字段。配置保存后自动生成【表格设计 -> 默认表格】【表单设计 -> 默认表单】
字符:【自动生成】为【是】时,【自动生成序】来源于【系统配置 -> 序号配置】,需要手动添加序配置
联动:与其它数据模型/人员/组织机构/字典表关联,查出特定字段信息
派生:必须与联动字段同时出现,派生配置中的【来源字段】指联动字段关联表中的字段
添加表格:新增一张表格。
基础信息:配置表格显示的字段。
数据排序:配置表格数据的默认排序。
权限过滤:根据角色进行数据过滤。
提示信息:表格顶部/底部显示提示信息。
批量编辑:【是】时,打开的表单为批量信息录入。 初始化脚本:来源于【脚本配置】中配置的脚本,脚本语言为【groovy】。
添加分段:将表单分成不同的段,每段前显示段名称。
根据【触发字段】的内容匹配【来源数据模型】中的【匹配字段】并将【来源数据模型】中的【来源字段】数据填充到【填充字段】。
配置字段根据特定条件显示显示、隐藏或者禁用(不允许修改)。
为js脚本,可参照脚本说明进行编写,脚本中的【字段名称】使用的是【数据模型】字段管理中的【字段名称】。
配置数据库表的索引(仅【模型类型】为库表时有效)。索引名称一致时为联合索引。
当数据显示时根据不同的触发条件,调用不同的【触发脚本】。
脚本语言为 groovy 语言,可到 w3cschool 了解基本语法,语法比较简单、入门快、学习成本低。
通用参数:args,脚本中可通过 println args 打印 args 的内容。
当保存的数据为表单时,args 为表单的数据,如表单中有【姓名】字段时,【姓名】的取值为【args.姓名】。
当提交的数据为批量数据时,数据列表取值为:args.dataList。
当导入excel数据时,数据列表取值为:args.importList。
脚本编写可参考【在线示例】里面的脚本。
脚本执行日志查看可以通过管理后台顶部的【查看日志】查看服务日志信息。
配置sql作为视图,可作为数据模型的视图来源,并配置相应的显示表格/页面。
配置接入本系统接口的【应用标识】、【应用密钥】,根据【应用标识】、【应用密钥】获取接口访问【令牌】。
令牌获取方式:
public static void main(String[] args) {
String url = "http://网站地址/v1/token"; // 网站地址替换为真实的API地址
String json = "{\"appKey\":\"应用标识\", \"appSecret\":\"应用密钥\"}"; // 替换为真实的【应用标识】、【应用密钥】
URL url = new URL(url);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("POST");
connection.setRequestProperty("Content-Type", "application/json; utf-8");
connection.setRequestProperty("Accept", "application/json");
connection.setDoOutput(true);
OutputStream outputStream = connection.getOutputStream();
outputStream.write(json.getBytes());
outputStream.flush();
outputStream.close();
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String line;
StringBuilder response = new StringBuilder();
while ((line = reader.readLine()) != null) {
response.append(line);
}
reader.close();
}
// 结果:{"code": "1", "data": {"token": "...", "expires_in": 3600}}
// code 为 1 时,获取成功,data.token 为令牌, data.expires_in 为有效时间,单位为秒。
所有接口使用的请求方式为 POST 方式,请求数据格式为 json 格式,响应格式同为 json 格式。
路径:接口对外开放的路径,访问地址为:/v1/路径。
请求示例:
public static void main(String[] args) {
String url = "http://网站地址/v1/路径"; // 网站地址替换为真实的API地址,路径替换成接口配置的路径
String authorization = "Bearer token"; // token替换根据【应用标识】、【应用密钥】获取接口访问的【令牌】
String json = "{}"; // 请求提交的参数,json 格式
URL url = new URL(url);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("POST");
connection.setRequestProperty("Content-Type", "application/json; utf-8");
connection.setRequestProperty("Accept", "application/json");
connection.setRequestProperty("Authorization", authorization);
connection.setDoOutput(true);
OutputStream outputStream = connection.getOutputStream();
outputStream.write(json.getBytes());
outputStream.flush();
outputStream.close();
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String line;
StringBuilder response = new StringBuilder();
while ((line = reader.readLine()) != null) {
response.append(line);
}
reader.close();
}
// 结果:{"code": "1", "data": {}}
// code 为 1 时,获取成功,data 为接口返回的数据。
配置数据库连接信息,用于做数据同步,从来源数据源同步到目标数据源。
数据采集,从来源数据源同步到目标数据源。
配置系统分成多少个子系统,在首页中就显示多少个可切换的子系统。
徽标数脚本:首页选择页面中子系统右上角显示的数值。
首页显示图标:首页显示此子系统的图标。
子系统样式:为 css 格式,用于配置此子系统的页面样式。
配置一些常规页面无法满足需求的页面,支持拖拽、可视化(所见即所得)的方式配置页面。
配置子系统有哪些菜单。
类型:区划、单位、部门
单位为划分一组织机构的基本单位。显示组织机构时,只能显示自己的单位的组织机构信息,无法跨单位显示所有组织机构。
可登录系统的人员信息。
默认部门:默认登录的部门。
归属部门:一个人可以归属多个部门。
可配置系统拥有哪些角色,角色可拥有哪些权限。
角色名称右侧按钮【权限配置】可配置角色的权限。
配置系统配置信息:登录配置、密码配置、首页配置、门户配置
配置变量,脚本中可通过 SystemUtil.getVariable(变量名) 获取变量内容。
上传 word、excel 模板,在上传、下载中可直接使用这些脚本,脚本中可通过 OfficeUtil.exportExcel(模板编码, data) 导出数据,具体导出示例可查看脚本编辑右侧【工具 -> Office类】中的示例。
配置字典,用于【数据模型 -> 字段管理 -> 字段类型(联动/字典*) -> 联动字典】。
脚本中也可通过 DictionaryUtil 工具类获取字典内容。
配置定时调度器执行相应的脚本。
配置字典,用于【数据模型 -> 字段管理 -> 字段类型(字符/自动生成为是) -> 自动生成序】。
提供大量可用的图标,也可以手动上传图标。建议上传 svg 等体量小的图标。
系统内置基础按钮,不建议删除,可对按钮图标、字体颜色、背景颜色、边框颜色、提交确认语、排序字段进行修改,不建议对名称、类型、数据数量进行修改。
系统内置数据,提供给脚本编辑 -> 工具的辅助数据,不建议删除,可新增数据作脚本编辑参考,新增后注意数据备份。
备份类型:
系统配置:系统内置的表结构以数据。
子系统配置:非系统内置的表结构,不包含数据。
子系统数据:非系统内置的表数据,不包含结构。
使用数据备份中下载的备份文件进行数据恢复,恢复方式来覆盖恢复,请注意做数据备份。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。