zPaaS低代码平台使用介绍:第一个功能开发
接上一篇《zPaaS低代码开发平台的核心领域对象及组织形式介绍》,本篇主要介绍一下如何使用zPaaS低代码开发平台进行第一个功能的快速开发。
- 开发的功能说明
基于数据库中《my_friends》表,开发管理功能《我的朋友们》对朋友的联系信息进行管理,实现朋友联系信息的查询、新增、修改、查看明细以及删除等功能。
《my_friends》表的建表语句如下所求:
CREATE TABLE `my_friends` (
`id` varchar(32) NOT NULL COMMENT '主键',
`name` varchar(100) NOT NULL COMMENT '姓名',
`phone` varchar(32) DEFAULT NULL COMMENT '手机号码',
`wechat_num` varchar(100) DEFAULT NULL COMMENT '微信号码',
`address` varchar(100) DEFAULT NULL COMMENT '家庭住址',
`birthday` varchar(12) DEFAULT NULL COMMENT '生日',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='我的朋友们';
- 前提条件
目前低代码平台未直接提供对数据库以及数据库表的管理功能,因此需要使用其他工具,提前创建一个数据库,并在数据库中创建好对应的表。
前提工作:
(1)部署mysql数据库
(2)创建一个database,如demo
(3)在demo库中,使用如上的建表语句,创建my_friends表
- 准备工作
(1)登录低代码平台,如示例系统
访问地址:
https://129.153.118.144:11443
试用账户: demo/adl28m2@ma(a!*D2
demo1/adl28m2@ma(a!*D2
(2)使用业务系统管理功能,创建一个业务系统。其中请求上下文件为该业务系统请求url的前缀,整个平台需要保证唯一,不要带“/”
如创建好的示例系统:
(3)点击业务系统卡片上的系统名称进行该业务系统的开发工作台页面,新创建的业务系统的工作台如下:
(4)通过点击工作台左上角的“+”按钮,将前提条件中准备的数据库配置进来
(5)配置好数据库后的工作台如下所求:
(6)通过点击工作台左上角的“+”按钮,创建一个业务域,业务域是业务系统中子模块的逻辑管理单位。
(7)创建完成后,通过“+”按钮旁边的刷新按钮,刷新一下左边的对象树。
(8)如果需要获取登录用户信息,则需要提前配置系统认证信息。
到现在为止,所有的准备工作都已完成, 下面可以正式进入《我的朋友们》功能的开发。
- 功能开发
(1)使用工作台左上角的“+”按钮,创建一个系统功能
(2)通过绑定对象边上的“新建”按钮,选择对应的数据库表
(3)配置完成后的页面如下所示
(4)点击“确定”按钮来完成系统功能的创建。平台自动创建了系统功能“我的朋友们”以及该功能对应的服务对象、领域对象、值传递对象(暂时没有用)和数据库表对象。
(5)通过点击工作台右上角“齿轮”下的“刷新缓存”
(6)缓存刷新完成后,通过“我的朋友们”功能右上角的“预览”按钮,可以对功能进行预览。目前该系统功能已经能够正常运行,只是所有的字段都是文本输入框且在所有的区域所有的字段都显示。后续可以对该功能进行细化调整。
(7)通过“我的朋友们”功能“绑定对象”的“编辑”按钮,对绑定对象以及绑定对象属性上的选项信息进行设置。可设置的信息包括属性之间的联动(类型包括无、属性值联动、属性显示/隐藏联动、属性值联+显示/隐藏联动)、隐藏/显示、属性的可选项(下拉及翻译,配置方式包括固定值、字典值、SQL语句和暴露服务)、弹出选择配置以及查询类型(控制查询区的行为,包括模糊查询、范围查询以及多值查询)等信息,这些信息在一处设置后,在所有的页面中都能生效。具体的配置格式后续再具体说明。设置姓名属性支持模糊查询。
(8)通过“我的朋友们”功能“功能区域”的“可视化设计”按钮,对每个区域属性的排版和展示类型进行配置。明细区的排版与编辑区基本相同,可以通过“其他操作”-“复制属性”-“复制(从本功能)”从编辑区直接复制。通过拖拉拽的方式调如下:
(9)完成配置后,再次刷新缓存并通过“预览”查看功能的效果。
(10)如果后端的业务逻辑也需要调整,则可以通过设计页面的按钮查看对应的后端服务,并在对应的后端服务方法中进行业务逻辑的调整。如增加状态、创建时间、修改时间等默认值,物理删除变更为逻辑删除等。
(11)至此该功能已经开发完成。可以通过地址栏查看该功能的地址,将该功能配置到菜单中。效果与下面的示例功能类型。
- 基于模板快速开发模式的效果说明
目前已经实现的模板包括:
(1)简单管理功能模板:支持单表增删改查类功能的快速开发。根据功能的复杂度不同,一般能够在10~60分钟内开发完成。
(2)多表管理功能模板:支持一主多从,多张表的增删改查类功能的快速开发。根据功能的复杂度不同,一般能够在1~4小时内开发完成。
(3)查询选择子功能模板:支持弹出类的查询选择子页面的快速开发。一般能在10分钟内开发完成。
(4)简单对象/多表增、改、查子功能模板:支持不需要入口页面的子功能页面的快速开发,一般集成到其他功能中。一般能够在10分钟~3小时内开发完成。
(5)自定义功能模板:支持自定交互以及页面布局的功能的开发。该模板目前只实现了基础能力,目前功能还不完善。
(6)统计报表功能模板:支持探索式统计报表的快速开发。根据功能的复杂度不同,一般能够在1~2小时内开发完成。
(7)可视化图表功能模板:支持单个图表功能的快速开发。根据功能的复杂度不同,一般能够在1~2小时内开发完成。
其中1~5的模板,支持属性之间的联动(类型包括无、属性值联动、属性显示/隐藏联动、属性值联+显示/隐藏联动)、隐藏/显示、属性的可选项(下拉及翻译,配置方式包括固定值、字典值、SQL语句和暴露服务)、弹出选择配置以及查询类型(控制查询区的行为,包括模糊查询、范围查询以及多值查询)等信息的统一配置,这些信息在一处设置后,在该功能所有的子页面中都能生效。
- 其他
低代码平台的源码已经提交到GitHub:
https://github.com/zjyzju/zPaaS-lowcode,后续将通过更多的文章,逐步对低代码平台的设计理念/思想、具体的设计、部署以及操作说明进行细化,敬请关注。
另外在一台云服务器上部署了一个演示环境,有兴趣的小伙伴可以通过演示环境进行试用:
访问地址:
https://129.153.118.144:11443
试用账户: demo/adl28m2@ma(a!*D2
demo1/adl28m2@ma(a!*D2
注:
(1)该演示环境部署在一台免费的云服务器上,且位于国外,在国内访问响应会比较慢
(2)系统管理子系统的菜单框架引用的@micro-zoe/micro-app@1.0.0-rc.24组件,该组件在不同浏览器中存在兼容性问题,苹果的safari浏览器访问一切正常,但是windows的Edge和谷可的Chrome会存在页面刷不出来的情况,需要多等一会儿(有解决方案的可以邮件发给我,多谢!
https://github.com/jd-opensource/micro-app/issues/1559#issuecomment-2784997902)。
如果有低代码平台以及AI相关的讨论,可以发送邮件到我的邮箱:zjyzju@163.com 。