CN116431138B - 组件模板的建立方法和装置、表单建立方法和装置 - Google Patents
组件模板的建立方法和装置、表单建立方法和装置 Download PDFInfo
- Publication number
- CN116431138B CN116431138B CN202211485865.2A CN202211485865A CN116431138B CN 116431138 B CN116431138 B CN 116431138B CN 202211485865 A CN202211485865 A CN 202211485865A CN 116431138 B CN116431138 B CN 116431138B
- Authority
- CN
- China
- Prior art keywords
- target
- component
- target component
- information
- attribute information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 84
- 238000012795 verification Methods 0.000 claims abstract description 59
- 230000008676 import Effects 0.000 claims abstract description 10
- 230000006870 function Effects 0.000 claims description 195
- 238000004364 calculation method Methods 0.000 claims description 74
- 230000008520 organization Effects 0.000 claims description 37
- 230000014509 gene expression Effects 0.000 claims description 27
- 230000015654 memory Effects 0.000 claims description 24
- 238000004806 packaging method and process Methods 0.000 claims description 22
- 230000004044 response Effects 0.000 claims description 4
- 238000013461 design Methods 0.000 description 42
- 238000010586 diagram Methods 0.000 description 15
- 238000004891 communication Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 12
- 230000003993 interaction Effects 0.000 description 11
- 230000002093 peripheral effect Effects 0.000 description 10
- 230000001133 acceleration Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 3
- 241000282412 Homo Species 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000000712 assembly Effects 0.000 description 2
- 238000000429 assembly Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 239000000919 ceramic Substances 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 239000010409 thin film Substances 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/35—Creation or generation of source code model driven
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了一种组件模板的建立方法和装置、表单建立方法和装置,属于计算机技术领域。所述方法包括:获取待配置的组件模板的配置信息,其中,所述组件模板包括多个组件;基于所述配置信息,建立组件模板,其中,所述组件模板包括组件的多个属性信息的子模板,所述组件的属性信息包括所述组件的控件标题、控件编码、控件长度、是否只读、是否导入、是否导出、最大长度、提示文字、控件字典、功能联动、控件校验、显示条件、数据逻辑中的至少一种。采用本申请,用户在建立表单时,无需再对组件和组件的属性信息一一进行人工编写,用户可以直接使用建立好的组件和组件的属性信息,从而节省了人力资源,提高了建立表单的效率。
Description
技术领域
本申请涉及计算机技术领域,特别涉及一种组件模板的建立方法和装置、表单建立方法和装置。
背景技术
在应用程序中,通常会通过表单来收集信息,表单中设置有多个组件用于以不同的形式来收集信息。
而当前的建立表单的方法较为繁琐,需要先根据需求在数据库中建表,然后后端开发人员编写表单的后端功能代码,之后,前端开发人员编写表单的前端功能代码,再对该表单进行发布。
在上述建立表单的过程中,每次建立一个表单,均需要开发人员对表单中的组件重新编写功能代码,组件的每种属性信息也均需开发人员重新进行编写设定,这个过程中需要多个工作人员之间的协同配合,需要工作人员手动编写代码,从而导致降低了建立表单的效率。
发明内容
本申请实施例提供了一种组件模板的建立方法和装置、表单建立方法和装置,能够解决现有技术中建立表单的效率较低的问题。
第一方面,提供了一种组件模板的建立方法,所述方法包括:
获取待配置的组件模板的配置信息,其中,所述组件模板包括多个组件;
基于所述配置信息,建立组件模板,其中,所述组件模板包括组件的多个属性信息的子模板,所述组件的属性信息包括所述组件的控件标题、控件编码、控件长度、是否只读、是否导入、是否导出、最大长度、提示文字、控件字典、功能联动、控件校验、显示条件、数据逻辑中的至少一种。
在一种可能的实现方式中,所述组件的属性信息包括功能联动;
建立所述组件的功能联动的子模板,包括:
建立联动表单选项、联动条件选项和联动填充选项,其中,所述联动表单选项用于供用户在数据库中存储的已建立表单中,选择出与待建立表单具有联动关系的联动表单,联动条件选项用于供用户设定所述待建立表单与所述联动表单之间的联动条件,所述联动填充选项用于供用户设定所述待建立表单与所述联动表单之间的联动关系。
在一种可能的实现方式中,所述组件的属性信息包括控件校验;
建立所述组件的控件校验的子模板,包括:
对于所述组件的每种参数类型,建立所述参数类型对应的正则表达式,其中,所述参数类型对应的正则表达式用于验证所述组件的参数信息是否属于所述参数类型。
在一种可能的实现方式中,所述组件的属性信息包括显示条件;
建立所述组件的显示条件的子模板,包括:
建立显示条件选项和显示内容选项,其中,所述显示条件选项用于供用户设定所述组件在待建立表单中进行显示操作的条件,所述显示内容选项用于供用户设定在满足所述显示条件时所述组件对应的在所述待建立表单中的显示内容。
在一种可能的实现方式中,所述组件的属性信息包括数据逻辑;
建立所述组件的数据逻辑的子模板,包括:
建立接口地址选项和入参条件选项,其中,所述接口地址选项用于供用户输入所述组件对应的第三方接口的接口地址,所述入参条件选项用于供用户输入所述组件对应的第三方接口的入参条件。
在一种可能的实现方式中,所述组件的属性信息包括控件关系;
建立所述组件的控件关系的子模板,包括:
建立控件计算选项和计算结果选项,其中,所述控件计算选项用于供用户设定待建立表单中一个或多个第一组件之间的计算关系,所述计算结果选项用于供用户设定所述一个或多个第一组件之间的计算关系计算出的结果所对应的第二组件。
在一种可能的实现方式中,所述组件的属性信息包括所述组件的控件字典;
建立所述组件的控件字典的子模板,包括:
建立所述组件对应的多个字典,其中,每个字典包括多个参数信息。
第二方面,提供了一种表单建立方法,所述方法包括:
响应于目标终端发送的携带有目标账户对应的验证信息的表单建立请求,获取目标账户对应的如上述任一项所述的组件模板,并将所述目标账户对应的组件模板发送至目标终端;
接收所述目标终端发送的所述组件模板中的目标组件的标识信息、所述目标组件的属性信息和/或所述目标组件对应的参考信息、查询条件、查询结果和功能按钮;
当接收到所述目标终端发送的所述目标组件对应的参考信息时,基于所述目标组件对应的参考信息和所述属性信息的子模板,确定所述目标组件的属性信息,并将所述目标组件的属性信息发送至所述目标终端;
响应于所述目标终端发送的表单发布请求,基于所述目标组件的标识信息获取所述目标组件,基于所述目标组件和所述目标组件的属性信息生成数据库表;
基于所述目标组件、所述目标组件的属性信息、所述查询条件、所述查询结果和所述功能按钮,生成前端功能代码和后端功能代码;
对所述后端功能代码进行打包和启动,对所述前端功能代码进行打包和发布;
向所述目标终端发送表单建立成功通知。
在一种可能的实现方式中,所述目标账户的验证信息是所述目标账户对应的JWTtoken(JSON Web Token);
所述响应于目标终端发送的携带有目标账户对应的验证信息的表单建立请求,获取目标账户对应的如上述任一项所述的组件模板之前,所述方法还包括:
接收所述目标终端发送的登录信息;
基于所述登录信息获取所述目标账户对应的账户信息;
基于所述账户信息生成所述账户信息对应的JWTtoken;
向所述目标终端发送登录成功通知和所述目标账户对应的JWTtoken;
所述响应于目标终端发送的携带有目标账户对应的验证信息的表单建立请求,获取目标账户对应的如任一项所述的组件模板,包括:
基于所述目标终端发送的目标账户对应的JWTtoken进行验证,当验证成功时,基于所述目标账户对应的JWTtoken获取所述目标账户对应的组件模板。
在一种可能的实现方式中,所述多个组件包括基础组件、高级组件和布局组件中的至少一种,其中,所述基础组件包括单行文本、多行文本、单选框、多选框、下拉框、年、年月、年月日、时间和年月日时分秒中的至少一种,所述高级组件包括附件、图片、头像、子表、人员单选、人员多选、组单单选、组织多选中的至少一种,所述布局组件包括分文本和TI分割线中的至少一种。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的控件标题和控件编码,所述目标组件对应的参考信息包括所述目标组件的控件标题;
所述基于所述目标组件对应的参考信息和所述属性信息的子模板,确定所述目标组件的属性信息,包括:
获取所述目标组件的控件标题的第一预设数目个首字母,并随机获取第二预设数目个字母;
将所述目标组件的控件标题的第一预设数目个首字母、下划线符号、所述第二预设数目个字母进行组合,得到所述目标组件的控件编码。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的功能联动,所述目标组件对应的参考信息包括联动表单、联动条件和联动填充,所述联动条件包括联动数据项和功能列表属性,所述联动填充包括当前组件和关联表单属性,所述联动数据项和所述当前组件为不同的目标组件,所述功能列表属性和所述关联表单属性均为所述联动表单中的组件;
所述基于所述目标组件对应的参考信息和所述属性信息的子模板,确定所述目标组件的属性信息,包括:
当所述联动数据项的参数信息与所述功能列表属性的参数信息相同时,使用所述功能列表属性的参数信息对应的关联表单属性的参数信息,为所述联动数据项的参数信息对应的当前组件的参数信息赋值,得到所述目标组件的功能联动。
在一种可能的实现方式中,所述联动数据项的组件类型与所述当前组件的组件类型相同,所述功能列表属性的组件类型与所述关联表单属性的组件类型相同。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的控件校验,所述目标组件对应的参考信息包括所述目标组件的目标参数类型对应的目标正则表达式;
所述基于所述目标组件对应的参考信息和所述属性信息的子模板,确定所述目标组件的属性信息,包括:
当接收到所述目标组件对应的参数信息时,基于所述目标正则表达式对所述参数信息进行验证;
当验证所述目标组件对应的参数信息不属于所述目标参数类型时,向所述目标终端发送所述目标正则表达式对应的提示信息。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的显示条件,所述目标组件对应的参考信息包括所述目标组件对应的显示条件和显示内容,所述显示条件包括第一目标组件的参数信息和第二目标组件的参数信息之间的设定数值关系,所述显示内容包括第三目标组件;
所述基于所述目标组件对应的参考信息和所述属性信息的子模板,确定所述目标组件的属性信息,包括:
当所述第一目标组件的参数信息和所述第二目标组件的参数信息不满足所述设定数值关系时,在待建立表单中对所述第三目标组件进行隐藏操作;
当所述第一目标组件的参数信息和所述第二目标组件的参数信息满足所述设定数值关系时,在所述待建立表单中对所述第三目标组件进行显示操作。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的数据逻辑,所述目标组件对应的参考信息包括所述目标组件对应的第三方接口的接口地址和入参条件;
所述基于所述目标组件对应的参考信息和所述属性信息的子模板,确定所述目标组件的属性信息,包括:
基于所述目标组件对应的第三方接口的接口地址和入参条件,通过所述第三方接口获取返回结果列;
使用所述返回结果列,为所述组件的参数信息进行赋值,得到所述目标组件的数据逻辑。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的控件关系,所述目标组件对应的参考信息包括控件计算和计算结果,所述控件计算包括第四目标组件的参数信息和第五目标组件的参数信息之间的计算关系,所述计算结果包括第六目标组件;
所述基于所述目标组件对应的参考信息和所述属性信息的子模板,确定所述目标组件的属性信息,包括:
基于所述计算关系,对所述第四目标组件的参数信息和所述第五目标组件的参数信息进行计算,得到计算值,使用所述计算值对所述第六目标组件的参数信息进行赋值,得到所述目标组件的控件关系。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的控件字典,所述目标组件对应的参考信息包括所述目标组件对应的目标字典,所述目标字典包括多个参数信息;
所述基于所述目标组件对应的参考信息和所述属性信息的子模板,确定所述目标组件的属性信息,包括:
使用所述目标组件对应的目标字典,对所述目标组件进行赋值,得到所述目标组件的控件字典,其中,所述目标字典中的多个参数信息用于被选择为所述目标组件的参数信息。
在一种可能的实现方式中,所述功能按钮包括新增按钮、编辑按钮、详情按钮、删除按钮和URL(Uniform Resource Locator,统一资源定位符)按钮中的至少一种。
在一种可能的实现方式中,所述对所述后端功能代码进行打包和启动,对所述前端功能代码进行打包和发布之前,所述方法还包括:
检验是否存储有git(分布式版本控制系统)目录,若存储有,则对所述git目录进行更新,若未存储,则获取git目录并存储;
将所述前端功能代码和所述后端功能代码添加入所述git目录。
在一种可能的实现方式中,所述对所述后端功能代码进行打包和启动,包括:
执行预设maven(Apache Maven,麦文)命令对所述后端功能代码进行打包,得到所述后端功能代码对应的jar(一种计算机文件格式)文件;
执行预设启动命令,启动所述jar文件。
在一种可能的实现方式中,所述对所述前端功能代码进行打包和发布,包括:
执行预设npm install命令对所述前端功能代码进行打包和发布。
第三方面,提供了一种组件模板的建立装置,所述装置包括:
第一获取模块,用于获取待配置的组件模板的配置信息,其中,所述组件模板包括多个组件;
建立模块,用于基于所述配置信息,建立组件模板,其中,所述组件模板包括组件的多个属性信息的子模板,所述组件的属性信息包括所述组件的控件标题、控件编码、控件长度、是否只读、是否导入、是否导出、最大长度、提示文字、控件字典、功能联动、控件校验、显示条件、数据逻辑中的至少一种。
在一种可能的实现方式中,所述组件的属性信息包括功能联动;
所述建立模块,用于:
建立联动表单选项、联动条件选项和联动填充选项,其中,所述联动表单选项用于供用户在数据库中存储的已建立表单中,选择出与待建立表单具有联动关系的联动表单,联动条件选项用于供用户设定所述待建立表单与所述联动表单之间的联动条件,所述联动填充选项用于供用户设定所述待建立表单与所述联动表单之间的联动关系。
在一种可能的实现方式中,所述组件的属性信息包括控件校验;
所述建立模块,用于:
对于所述组件的每种参数类型,建立所述参数类型对应的正则表达式,其中,所述参数类型对应的正则表达式用于验证所述组件的参数信息是否属于所述参数类型。
在一种可能的实现方式中,所述组件的属性信息包括显示条件;
所述建立模块,用于:
建立显示条件选项和显示内容选项,其中,所述显示条件选项用于供用户设定所述组件在待建立表单中进行显示操作的条件,所述显示内容选项用于供用户设定在满足所述显示条件时所述组件对应的在所述待建立表单中的显示内容。
在一种可能的实现方式中,所述组件的属性信息包括数据逻辑;
所述建立模块,用于:
建立接口地址选项和入参条件选项,其中,所述接口地址选项用于供用户输入所述组件对应的第三方接口的接口地址,所述入参条件选项用于供用户输入所述组件对应的第三方接口的入参条件。
在一种可能的实现方式中,所述组件的属性信息包括控件关系;
所述建立模块,用于:
建立控件计算选项和计算结果选项,其中,所述控件计算选项用于供用户设定待建立表单中一个或多个第一组件之间的计算关系,所述计算结果选项用于供用户设定所述一个或多个第一组件之间的计算关系计算出的结果所对应的第二组件。
在一种可能的实现方式中,所述组件的属性信息包括所述组件的控件字典;
所述建立模块,用于:
建立所述组件对应的多个字典,其中,每个字典包括多个参数信息。
第四方面,提供了一种表单建立方法,所述方法包括:
第二获取模块,用于响应于目标终端发送的携带有目标账户对应的验证信息的表单建立请求,获取目标账户对应的如上述任一项所述的组件模板,并将所述目标账户对应的组件模板发送至目标终端;
接收模块,用于接收所述目标终端发送的所述组件模板中的目标组件的标识信息、所述目标组件的属性信息和/或所述目标组件对应的参考信息、查询条件、查询结果和功能按钮;
确定模块,用于当接收到所述目标终端发送的所述目标组件对应的参考信息时,基于所述目标组件对应的参考信息和所述属性信息的子模板,确定所述目标组件的属性信息,并将所述目标组件的属性信息发送至所述目标终端;
第一生成模块,用于响应于所述目标终端发送的表单发布请求,基于所述目标组件的标识信息获取所述目标组件,基于所述目标组件和所述目标组件的属性信息生成数据库表;
第二生成模块,用于基于所述目标组件、所述目标组件的属性信息、所述查询条件、所述查询结果和所述功能按钮,生成前端功能代码和后端功能代码;对所述后端功能代码进行打包和启动,对所述前端功能代码进行打包和发布;
发送模块,用于向所述目标终端发送表单建立成功通知。
在一种可能的实现方式中,所述目标账户的验证信息是所述目标账户对应的JWTtoken;
所述第二获取模块,还用于:
接收所述目标终端发送的登录信息;
基于所述登录信息获取所述目标账户对应的账户信息;
基于所述账户信息生成所述账户信息对应的JWTtoken;
向所述目标终端发送登录成功通知和所述目标账户对应的JWTtoken;
所述第二获取模块,用于:
基于所述目标终端发送的目标账户对应的JWTtoken进行验证,当验证成功时,基于所述目标账户对应的JWTtoken获取所述目标账户对应的组件模板。
在一种可能的实现方式中,所述多个组件包括基础组件、高级组件和布局组件中的至少一种,其中,所述基础组件包括单行文本、多行文本、单选框、多选框、下拉框、年、年月、年月日、时间和年月日时分秒中的至少一种,所述高级组件包括附件、图片、头像、子表、人员单选、人员多选、组单单选、组织多选中的至少一种,所述布局组件包括分文本和TI分割线中的至少一种。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的控件标题和控件编码,所述目标组件对应的参考信息包括所述目标组件的控件标题;
所述确定模块,用于:
获取所述目标组件的控件标题的第一预设数目个首字母,并随机获取第二预设数目个字母;
将所述目标组件的控件标题的第一预设数目个首字母、下划线符号、所述第二预设数目个字母进行组合,得到所述目标组件的控件编码。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的功能联动,所述目标组件对应的参考信息包括联动表单、联动条件和联动填充,所述联动条件包括联动数据项和功能列表属性,所述联动填充包括当前组件和关联表单属性,所述联动数据项和所述当前组件为不同的目标组件,所述功能列表属性和所述关联表单属性均为所述联动表单中的组件;
所述确定模块,用于:
当所述联动数据项的参数信息与所述功能列表属性的参数信息相同时,使用所述功能列表属性的参数信息对应的关联表单属性的参数信息,为所述联动数据项的参数信息对应的当前组件的参数信息赋值,得到所述目标组件的功能联动。
在一种可能的实现方式中,所述联动数据项的组件类型与所述当前组件的组件类型相同,所述功能列表属性的组件类型与所述关联表单属性的组件类型相同。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的控件校验,所述目标组件对应的参考信息包括所述目标组件的目标参数类型对应的目标正则表达式;
确定模块,用于:
当接收到所述目标组件对应的参数信息时,基于所述目标正则表达式对所述参数信息进行验证;
当验证所述目标组件对应的参数信息不属于所述目标参数类型时,向所述目标终端发送所述目标正则表达式对应的提示信息。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的显示条件,所述目标组件对应的参考信息包括所述目标组件对应的显示条件和显示内容,所述显示条件包括第一目标组件的参数信息和第二目标组件的参数信息之间的设定数值关系,所述显示内容包括第三目标组件;
所述确定模块,用于:
当所述第一目标组件的参数信息和所述第二目标组件的参数信息不满足所述设定数值关系时,在待建立表单中对所述第三目标组件进行隐藏操作;
当所述第一目标组件的参数信息和所述第二目标组件的参数信息满足所述设定数值关系时,在所述待建立表单中对所述第三目标组件进行显示操作。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的数据逻辑,所述目标组件对应的参考信息包括所述目标组件对应的第三方接口的接口地址和入参条件;
所述确定模块,用于:
基于所述目标组件对应的第三方接口的接口地址和入参条件,通过所述第三方接口获取返回结果列;
使用所述返回结果列,为所述组件的参数信息进行赋值,得到所述目标组件的数据逻辑。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的控件关系,所述目标组件对应的参考信息包括控件计算和计算结果,所述控件计算包括第四目标组件的参数信息和第五目标组件的参数信息之间的计算关系,所述计算结果包括第六目标组件;
所述确定模块,用于:
基于所述计算关系,对所述第四目标组件的参数信息和所述第五目标组件的参数信息进行计算,得到计算值,使用所述计算值对所述第六目标组件的参数信息进行赋值,得到所述目标组件的控件关系。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的控件字典,所述目标组件对应的参考信息包括所述目标组件对应的目标字典,所述目标字典包括多个参数信息;
所述确定模块,用于:
使用所述目标组件对应的目标字典,对所述目标组件进行赋值,得到所述目标组件的控件字典,其中,所述目标字典中的多个参数信息用于被选择为所述目标组件的参数信息。
在一种可能的实现方式中,所述功能按钮包括新增按钮、编辑按钮、详情按钮、删除按钮和URL按钮中的至少一种。
在一种可能的实现方式中,所述第二生成模块,还用于:
检验是否存储有git目录,若存储有,则对所述git目录进行更新,若未存储,则获取git目录并存储;
将所述前端功能代码和所述后端功能代码添加入所述git目录。
在一种可能的实现方式中,所述第二生成模块,用于:
执行预设maven命令对所述后端功能代码进行打包,得到所述后端功能代码对应的jar文件;
执行预设启动命令,启动所述jar文件。
在一种可能的实现方式中,所述第二生成模块,用于:
执行预设npm install命令对所述前端功能代码进行打包和发布。
第五方面,本申请实施例提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行,以使计算机设备实现上述任一项所述的组件模板的建立方法或者实现上述任一项所述的表单建立方法。
第六方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以使计算机实现上述任一所述的组件模板的建立方法或者实现上述任一项所述的表单建立方法。
第七方面,还提供了一种计算机程序或计算机程序产品,所述计算机程序或计算机程序产品中存储有至少一条计算机指令,所述至少一条计算机指令由处理器加载并执行,以使计算机实现上述任一种所述的组件模板的建立方法或者实现上述任一项所述的表单建立方法。
本申请实施例提供的技术方案带来的有益效果是:本申请实施例中提到的方案,可以在用户建立表单之前,先基于配置信息建立出组件模板,即建立组件模板中组件和组件的多个属性信息的子模板,这样,用户在建立表单时,无需再对组件和组件的属性信息一一进行人工编写,用户可以直接使用建立好的组件和组件的属性信息,从而节省了人力资源,提高了建立表单的效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种表单建立系统的结构示意图;
图2是本申请实施例提供的一种表单的示意图;
图3是本申请实施例提供的一种表单的示意图;
图4是本申请实施例提供的一种组件模板的建立方法的流程示意图;
图5是本申请实施例提供的一种表单建立方法的流程示意图;
图6是本申请实施例提供的一种表单建立方法的流程示意图;
图7是本申请实施例提供的一种主页面的示意图;
图8是本申请实施例提供的一种功能设计页面的示意图;
图9是本申请实施例提供的一种用于添加信息的页面的示意图;
图10是本申请实施例提供的一种视图设计页面的示意图;
图11是本申请实施例提供的一种查询条件的设置窗口的示意图;
图12是本申请实施例提供的一种视图设计页面的示意图;
图13是本申请实施例提供的一种功能按钮的设置窗口的示意图;
图14是本申请实施例提供的一种数据交互页面的示意图;
图15是本申请实施例提供的一种功能联动的设置窗口的示意图;
图16是本申请实施例提供的一种功能联动的设置窗口的示意图;
图17是本申请实施例提供的一种组件模板的建立装置的结构示意图;
图18是本申请实施例提供的一种表单建立装置的结构示意图;
图19是本申请实施例提供的一种终端的结构框图;
图20是本申请实施例提供的一种服务器的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请实施例提供了一种组件模板的建立方法和表单建立方法,该方法可以通过计算机设备来实现。计算机设备可以包括终端和服务器,终端可以是台式计算机、笔记本计算机、平板电脑、手机等,服务器可以是一台单独的服务器,也可以是运行在实体机上的虚拟机,还可以是一个服务器组,服务器组中的每台服务器可以分别负责方法过程中的不同过程。
图1示出了本申请实施例提供的一种表单建立方法的结构示意图,如图1所示,终端和服务器之间可以相互传输数据。
计算机设备可以包括处理器、存储器、通信部件等。
处理器可以是CPU(Central Processing Unit,中央处理器),处理器可以用于读取指令和对数据进行处理,例如,作为终端一侧的处理器,可以显示主页面、检测表单建立选项的触发指令、显示表单建立页面、检测功能设计选项的触发指令、检测目标组件的选项的触发指令、检测视图设计选项的触发指令、获取在查询条件设置区域输入的查询条件、获取在查询结果设置区域输入的查询结果、获取在功能按钮设置区域输入的功能按钮、检测发布选项的触发指令,等等;作为服务器一侧的处理器,可以基于配置信息建立组件模块、基于目标账户对应的验证信息获取目标账户对应的组件模板、基于目标组件的标识信息获取目标组件、基于目标组件和目标组件对应的属性信息生成数据库表、基于目标组件、目标组件对应的属性信息、查询条件、查询结果和功能按钮生成前端功能代码和后端功能代码、对后端功能代码进行打包和启动、对前端功能代码进行打包和发布,等等。
存储器可以包括ROM(Read-Only Memory,只读存储器)、RAM(RandomAccessMemory,随机存取存储器)、CD-ROM(Compact Disc Read-Only Memory,光盘只读存储器)、磁盘、光数据存储设备等。存储器可以用于数据存储,例如,作为终端一侧的存储器,可以存储目标账户对应的验证信息、可以存储目标组件对应的属性信息和目标组件的标识信息、可以存储在查询条件设置区域输入的查询条件、可以存储在查询结果设置区域输入的查询结果、可以存储在功能按钮设置区域输入的功能按钮,等等;作为服务器一侧的存储器,可以存储组件的多个属性信息的子模板、可以存储目标账户对应的组件模板、可以存储目标组件、可以存储数据库表、可以存储生成的前端功能代码和后端功能代码,等等。
通信部件可以是有线网络连接器、WiFi(Wireless Fidelity,无线保真)模块、蓝牙模块、蜂巢网通信模块等。通信部件可以用于接收和发送信号,例如,作为终端一侧的通信部件,可以向服务器发送表单建立请求、向服务器发送目标组件的标识信息和目标组件对应的属性信息、向服务器发送查询条件、查询结果和功能按钮、向服务器发送表单发布请求、可以接收服务器发送来的信息,等等;作为服务器一侧的通信部件,可以向终端发送目标账户对应的组件模板、可以接收终端发送来的信息,等等。
在本申请实施例中,建立的表单用于收集信息,例如,建立一个用于收集用户姓名、性别和年龄的表单,如图2所示。
用户可以点击图2中的“新增”选项,从而触发显示添加信息的页面,在该页面中,用户需要添加姓名、性别和年龄等参数信息,从而可以得到如图3所示的表单。
图4时本申请实施例提供的一种组件模板的建立方法的流程图。参见图4,该实施例包括:
401、获取待配置的组件模板的配置信息。
在实施中,在开发表单建立平台时,开发人员可以开发好适用于用户直接使用的组件模板,该组件模板包括多个组件,后续用户在表单建立平台上建立表单时,可以在组件模板中选择所需要的组件来对表单直接进行组装,无需再通过编写代码来建立表单,提高了用户建立表单的效率。
工作人员可以在开发前设定好组件的多个属性信息,然后针对不同类型的用户设置对应类型的组件模板,每种类型的组件模板中组件的属性信息可以不同,每种类型的组件模板的配置信息即为该组件模板被配置的多个属性信息。
在建立组件模板时,可以先获取对应类型的组件模板的配置信息。
402、基于配置信息,建立组件模板。
其中,组件模板包括组件的多个属性信息的子模板。
在实施中,可以基于配置信息,确定出该组件模板的多个属性信息,基于此,对每种属性信息的子模板进行建立,从而得到建立好的组件模板。
这样,当用户在表单建立平台上建立表单时,无需再对组件和组件的属性信息一一进行人工编写,用户可以直接使用建立好的组件和组件的属性信息,从而节省了人力资源,提高了建立表单的效率。
在本申请实施例中,组件的属性信息可以包括组件的控件标题、控件编码、控件长度、是否只读、是否导入、是否导出、最大长度、提示文字、控件字典、功能联动、控件校验、显示条件、数据逻辑中的至少一种。
下面,对建立组件的每种属性信息的子模板的方法进行介绍:
1、控件标题
组件的控件标题即为在待建立表单中显示给用户的组件对应的名称,例如,图2中的姓名、性别和年龄。
在建立组件的控件标题的子模板时,只需建立控件标题对应的输入框,供用户输入自行设定的组件名称。
2、控件编码
组件的控件编码即为该组件在待建立表单中的标识。在建立组件的控件编码的子模板时,只需建立控件编码对应的输入框,供用户输入自行设定的标识。
3、控件长度
组件的控件长度指的是组件在待建立表单中所占的长度,可以包括半行和全行,例如,如图8所示,在画布中,设置有半行的单行文本和全行的单行文本。
在建立组件的控件长度的子模板时,只需建立控件长度对应的输入框、以及半行选项和全行选项,供用户选择。
4、是否只读
用于指示用户页面上的目标组件是否只读,而无法编辑。在建立组件的是否只读的子模板时,只需建立是否只读对应的输入框、以及是选项和否选项,供用户选择。
5、是否导入
用于指示用户导入功能里面是否包含这个字段。在建立组件的是否导入的子模板时,只需建立是否导入对应的输入框、以及是选项和否选项,供用户选择。
6、是否导出
用户指示用户导出功能里面是否包含这个字段。在建立组件的是否导出的子模板时,只需建立是否导出对应的输入框、以及是选项和否选项,供用户选择。
7、最大长度
用于指示用户组件可支持的最大长度。在建立组件的最大长度的子模板时,只需建立最大长度对应的输入框,供用户输入自行设定的最大长度。
8、提示文字
用于在组件的输入框内提示用户注意事项。在建立组件的提示文字的子模板时,只需建立提示文字对应的输入框,供用户输入自行设定的提示文字。
9、功能联动
功能联动设置是指调用组件对应的联动表单来填写该组件对应的参数信息。
在建立功能联动的子模板时,可以进行如下设置:建立联动表单选项、联动条件选项和联动填充选项,其中,联动表单选项用于供用户在数据库中存储的已建立表单中,选择出与待建立表单具有联动关系的联动表单,联动条件选项用于供用户设定待建立表单与联动表单之间的联动条件,联动填充选项用于供用户设定待建立表单与联动表单之间的联动关系。
这样设置,使得用户在表单建立平台上使用组件模板时,可以对组件的功能联动进行设置,设置时会显示联动表单选项、联动条件选项和联动填充选项,以供用户进行相应设置。
功能联动的设置,使得用户无需在不同的表单中重复填写重复的内容,从而提高了表单填写的简便性,并且,也避免了用户在填写该表单时还需查询其他表单中相关内容的操作,从该表单中可以直接将其他表单中的内容返显出来,极大地节省了用户的操作时间,提高了操作的简便性。
10、控件校验
控件校验用于验证在组件的输入框中输入的输入信息是否符合要求。
在建立控件校验的子模板时,可以进行如下设置:
对于组件的每种参数类型,建立参数类型对应的正则表达式,其中,参数类型对应的正则表达式用于验证组件的参数信息是否属于所述参数类型。
其中,参数类型可以包括邮箱、必填项、身份证、手机号、数字中的至少一种。
这样设置,使得用户在表单建立平台上使用组件模板时,可以通过选择其中一种参数类型对应的正则表达式,来对组件的参数类型进行限定,在表单建立完成后,用户在表单中输入的该组件的参数信息必须为该参数类型。
控件校验的设置,可以对用户填写的参数信息自行进行校验,在人工校验的基础上,增加了机器校验,从而降低了用户填写参数信息的错误率,提高了表单填写的准确性,避免了因参数信息填写错误而导致的后续的工作量的增加。
11、显示条件
在使用建立完成的表单时,该表单中的组件可以处于显示状态,也可以处于隐藏状态,该显示条件属性信息可以用于控制待建立表单中的组件的显示或隐藏。
在建立显示条件的子模板时,可以进行如下设置:
建立显示条件选项和显示内容选项,其中,显示条件选项用于供用户设定所述组件在待建立表单中进行显示操作的条件,显示内容选项用于供用户设定在满足显示条件时组件对应的在待建立表单中的显示内容。
这样设置,使得用户在表单建立平台上使用组件模板时,可以对组件的显示条件进行设置,设置时会显示显示条件选项和显示内容选项,以供用户进行相应设置。
当满足显示条件时才会将该组件显示出来从而提供给用户进行填写,当不满足显示条件时该组件一直处于隐藏状态,这样设置,将不需要用户填写的组件进行隐藏,使得表单的填写界面更加清晰,提高了用户填写信息的简便性。
对于该显示条件属性信息的具体使用方法,会在下述表单建立方法中进行详细阐述。
12、数据逻辑
数据逻辑设置是指调用组件对应的第三方接口来填写该组件对应的参数信息,而不需要用户自己填写,从而提高了表单填写的简便性。
在建立数据逻辑的子模板时,可以进行如下设置:
建立接口地址选项和入参条件选项,其中,接口地址选项用于供用户输入组件对应的第三方接口的接口地址,入参条件选项用于供用户输入组件对应的第三方接口的入参条件。
这样设置,使得用户在表单建立平台上使用组件模板时,可以对组件的数据逻辑进行设置,设置时会显示接口地址选项和入参条件选项,以供用户进行相应设置。
当满足显示条件时才会将该组件显示出来从而提供给用户进行填写,当不满足显示条件时该组件一直处于隐藏状态,这样设置,将不需要用户填写的组件进行隐藏,使得表单的填写界面更加清晰,提高了用户填写信息的简便性。
对于该数据逻辑属性信息的具体使用方法,会在下述表单建立方法中进行详细阐述。
13、控件关系
表单中的多个目标组件之间还可以存在一定的控件关系。即:在建立表单时,可以将目标组件与表单中的其他目标组件进行绑定,使其形成具有一定规律的控件关系。这样,在用户使用建立完成的表单时,可以在用户将与该组件具有控件关系的其他组件的参数信息填写完成后,基于设置的控件关系自动计算出该组件的参数信息,进行自动填写,而无需用户再自行进行计算和填写,从而提高了用户填写参数信息时的简便性。
在建立控件关系的子模板时,可以进行如下设置:
建立控件计算选项和计算结果选项,其中,控件计算选项用于供用户设定待建立表单中一个或多个第一组件之间的计算关系,计算结果选项用于供用户设定一个或多个第一组件之间的计算关系计算出的结果所对应的第二组件。
这样设置,使得用户在表单建立平台上使用组件模板时,可以对组件的控件关系进行设置,设置时会显示控件计算选项和计算结果选项,以供用户进行相应设置。
14、控件字典
在建立控件字典的子模板时,可以进行如下设置:
建立组件对应的多个字典,其中,每个字典包括多个参数信息。
这样设置,使得用户在表单建立平台上使用组件模板时,可以通过选择其中一种字典,来对组件的参数信息进行限定,在表单建立完成后,当用户想要填写该组件的参数信息时,只需从该组件对应的字典中的多个参数信息中进行选择即可,无需自己手动填写。
图5和图6均是本申请实施例提供的一种表单建立方法的流程图。参见图5和图6,该实施例包括:
501、响应于目标终端发送的携带有目标账户对应的验证信息的表单建立请求,获取目标账户对应的组件模板,并将目标账户对应的组件模板发送至目标终端。
在实施中,用户可以打开目标应用程序,显示目标应用程序的主页面,在该主页面内可以设置有多个不同场景对应的表单建立选项,如图7所示,用户可以根据需求选择需要的场景的表单建立选项。
其中,场景可以是任意合理性的场景,例如,可以是学生统计信息、会议、团体活动,等等,本申请实施例不作限定。
用户可以根据自身需求选择主页面中显示的其中一个场景的表单建立选项,点击该表单建立选项。目标终端在检测到其中一个表单建立选项的触发指令时,可以向服务器发送表单建立请求。
在该表单建立请求中携带有目标终端所属的目标账户对应的验证信息。对于验证信息的类型,工作人员可以根据自身需求预先在服务器一侧进行设置,例如,验证信息可以是目标账户的标识信息,或者更为复杂的验证信息,等等,用于提高数据传输的安全性,本申请实施例对于验证信息的具体类型不作限定。
在实施中,服务器中可以预先存储有该验证信息与组件模板之间的对应关系。在接收到目标终端发送来的验证信息后,服务器可以基于验证信息与组件模板之间的对应关系,获取到该目标账户对应的组件模板,并将该目标账户对应的组件模板发送至目标终端。这里的组件模板可以是上述的任意一种组件模板。
在本申请实施例中,可以为不同的账户设置不同的组件模板,以满足不同账户的不同需求,例如,可以为高等级工作人员设置组件样式较多的组件模板,为普通的工作人员设置组件样式较少、且较为通用的组件模板,等等。或者,可以采用多租户模式,每个账户对应一个相应的租户,即服务器存储有多个预设的租户,每个租户包括多个账户,为不同的租户设置不同的组件模板,例如,A部门与B部门属于不同的租户,则A部门内的工作人员建立表单时使用的组件模板为A部门对应的组件模板,B部门内的工作人员建立表单时使用的组件模板为B部门对应的组件模板。对于不同账户或者租户对应的组件模板,可以根据需求进行对应设置,本申请实施例对此不作限定。
在一种可能的实现方式中,组件模板包括的多个组件,可以包括基础组件、高级组件和布局组件中的至少一种,其中,基础组件包括单行文本、多行文本、单选框、多选框、下拉框、年、年月、年月日、时间和年月日时分秒中的至少一种,高级组件包括附件、图片、头像、子表、人员单选、人员多选、组单单选、组织多选中的至少一种,布局组件包括分文本和TI分割线中的至少一种。
在一种可能的实现方式中,还可以针对不同的组件模板进行针对性设置,例如,高级组件还可以包括多个组织树组件,这多个组织树组件均是针对组件模板所对应的场景进行的设置。例如,A部门内的人员还可以基于不同的类型进行组织划分,将其基于P组织、Q组织、R组织和L组织进行组织树搭建,则该A部门对应的组件模板的高级组件中,还可以包括组单_P组织、组单_Q组织、组单_R组织和组单_L组织这些组织树组件。
目标终端在接收到服务器发送的目标账户对应的组件模板后,可以基于该组件模板显示表单建立页面,其中,表单建立页面中包括功能设计选项、视图设计选项和发布选项,在功能设计页面中,可以显示该目标账户对应的组件模板中包括的组件,来供用户进行选择。
如图8所示,即为表单建立页面,在该表单建立页面中,设置有“功能设计器(即功能设计选项)”、“视图设计器(即视图设计选项)”和“一键发布(即发布选项)”选项。
功能设计选项
在实施中,当用户点击“功能设计选项”时,目标终端可以检测到功能设计选项的触发指令,此时,触发目标终端显示功能设计页面。其中,功能设计页面中包括组件模板中每个组件的选项。
在一种可能的实现方式中,由于在建立表单时,需要先在功能设计页面中选择目标组件,因此,可以直接将功能设计页面设置为表单建立页面的主页面,即在目标终端基于目标账户对应的组件模板显示表单建立页面时,可以直接在显示功能设计选项、视图设计选项和发布选项的同时,默认显示功能设计页面,如图8所示,此时,用户不需要再点击功能设计选项,为用户提供了便捷的使用体验。
在功能设计页面中,设置有目标账户对应的组件模板中包括的每个组件,如图8所示的组件库区域。
当用户选择组件模板中的一个组件时(即选择目标组件时),目标终端可以检测到该目标组件的选项的触发指令,此时,目标终端可以显示该目标组件对应的属性输入页面和数据交互页面,便于用户在属性输入页面和数据交互页面对该目标组件的属性信息和对应的参考信息进行设置。当用户完成目标组件的属性信息和参考信息的设置时,目标终端将目标组件的标识信息、目标组件的属性信息和目标组件对应的参考信息发送至服务器,服务器将其对应存储起来,用于后续的表单建立。
上述的目标组件的属性信息可以包括目标组件的控件标题、控件编码、控件长度、是否只读、是否导入、是否导出、最大长度、提示文字,这些属性信息可以通过用户操作直接进行自行设定,上述的目标组件对应的参考信息可以包括对目标组件的控件字典、功能联动、控件校验、显示条件、数据逻辑等属性信息进行设定的相关参考信息,后续可以根据该参考信息对这些属性信息进行相应设置。
其中,属性输入页面和数据交互页面的显示形式有多种可能,例如,可以是独立的新页面,在该页面内设置有返回选项,用户在对属性输入页面或数据交互页面中的属性信息或参考信息进行了设置后,可以点击返回选项,此时,目标终端检测到返回选项的触发指令,可以返回到功能设计页面,或者,可以是功能设计页面中的一块区域(如图8所示),或者,功能设计页面可以以弹窗的形式显示,等等,本申请实施例对于属性输入页面和数据交互页面的显示形式不作限定。
在一种可能的实现方式中,用户对于功能设计页面中的不同的设置,可以在完成表单建立后,使得表单的用于添加信息的页面不同,目标组件的选项的触发指令的不同,可以对应设置不同的表单内的用于添加信息的页面:
第一种
组件的选项可以包括组件的缩略图,目标组件的选项的触发指令可以是目标组件的缩略图上的点击操作。
在此种情况下,用户在功能设计页面选择了目标组件后,服务器可以基于用户选择目标组件的顺序来为目标组件按顺序排布,从而完成表单的用于添加信息的页面的设计。
例如,用户在功能设计页面中依次点击选择了单行文本、多行文本、多行文本、下拉框来作为目标组件,在生成表单后,显示给用户的用于添加信息的页面即为如图9所示的页面。
第二种
功能设计页面还包括画布,其中,画布即为页面中的空白区域,用户可以选择组件模板中的组件为目标组件,使其显示在画布中,从而对画布进行设置,在生成表单后,显示给用户的用于添加信息的页面即为添加了目标组件后的画布,如图8所示,用户将两个单行文本作为目标组件添加到了画布中。
其中,组件的选项包括组件的缩略图,目标组件的选项的触发指令可以为起点位于目标组件的缩略图、终点位于画布的拖动操作信息,即用户可以将目标组件拖动至画布上的对应位置上,从而完成画布的设置。
视图设计选项
在实施中,当用户在功能设计页面完成对目标组件和目标组件对应的属性信息和参考信息的设置之后,可以点击视图设计选项,此时,目标终端检测到视图设计选项的触发指令,从而触发目标终端显示视图设计页面,其中,视图设计页面中包括查询条件设置区域、查询结果设置区域和功能按钮设置区域,如图10所示。
用户可以在查询条件设置区域进行表单的查询条件的设置,在查询结果设置区域进行表单的查询结果的设置,在功能按钮设置区域进行表单的功能按钮的设置。
在一种可能的实现方式中,目标组件的属性信息包括目标组件的控件标题,查询条件设置区域和查询结果设置区域均包括每个目标组件(用户在功能设置页面选择的目标组件)的控件标题。
这样,在实施中,用户可以选择一个或多个目标组件的控件标题作为查询条件,对应的,可以选择一个或多个目标组件的控件标题作为查询结果,用于后续用户可以在该表单对应的搜索框中通过输入该查询条件对应的参数信息来搜索对应的查询结果。例如,如图3所示的表单,若该表单设置的查询条件是姓名,查询结果是姓名和年龄,则用户可以在图3所示的表单的右上角处的搜索框中搜索表单中的任一姓名,从而触发显示该姓名对应的姓名和年龄,例如,当搜索C时,可以触发显示姓名为C、年龄为27的参数信息。
在一种可能的实现方式中,在查询条件设置区域中,除了可以对目标组件的控件标题进行选择之外,还可以对查询条件进行其他设置,对应如下:
如图10所示,目标组件对应的查询条件设置区域可以显示有“+”选项,当用户想要对该目标组件对应的查询条件进行设置时,可以点击该“+”选项,从而触发显示查询条件设置窗口,如图11所示,该查询条件的设置窗口中显示有数据项、默认值类型、显示名称、PC(Personal Computer,个人计算机)端是否展示、移动端是否展示这多个选项。
其中,数据项对应的输入框中可以输入该表单当前包括的目标组件的控件标题,来作为查询条件。
默认值类型可以包括手动输入精准、手动输入-模糊、创建人-精准、所属组织-精准、最大组织-精准、当前时间-精准、时间区间、组织树和组织树向上查询中的至少一种。每个默认值类型分别对应一个或多个组件,当选择了目标组件作为查询条件后,可以在该目标组件对应的一个或多个默认值类型中选择目标默认值类型,来作为查询方向。
在一种可能的实现方式中,手动输入精准、手动输入-模糊均可以与单行文本、多行文本、单选框、多选框、下拉框这些组件相对应,创建人-精准可以与人员单选、人员多选相对应,所属组织-精准、最大组织-精准、组织树和组织树向上查询均可以与组单单选、组织多选、以及针对不同组件模板设置的多个组织树组件(例如,组单_P组织、组单_Q组织、组单_R组织和组单_L组织)这些组件相对应,当前时间-精准、时间区间均可以与年、年月、年月日、时间和年月日时分秒这些组件相对应。当然,上述对应方式仅是提供的一种可能的实现方式,工作人员可以根据需求对其进行其他设置,本申请实施例对此不作限定。
其中,手动输入精准指的是:当用户在表单中的搜索框中输入搜索内容时,若该搜索内容与手动输入精准对应的组件对应的某一参数信息一致时,可以搜索出该参数信息对应的搜索结果。手动输入-模糊指的是:若手动输入-模糊对应的组件对应的参数信息中包括搜索内容,则可以搜索出包括搜索内容的参数信息对应的搜索结果。创建人-精准指的是:若搜索内容与创建人-精准对应的组件对应的某一参数信息一致时,可以搜索出该参数信息对应的搜索结果。所属组织-精准指的是:若搜索内容与所属组织-精准对应的组件对应的某一参数信息一致时,可以搜索出该参数信息对应的搜索结果。最大组织-精准指的是:若所搜内容与组织树控件中的最大组织对应的某一参数信息一致时,则可以搜索出该参数信息对应的搜索结果。当前时间-精准指的是:若搜索内容与当前时间-精准对应的组件对应的某一参数信息一致时,则可以搜索出该参数信息对应的搜索结果。时间区间指的是:搜索内容为包括起始时间和终止时间的一段时间区间,若时间区间对应的组件对应的参数信息位于该时间区间内,则可以搜索出这些参数信息对应的搜索结果。组织树指的是:若搜索内容为组织树对应的组件中的某一组织对应的参数信息一致,则可以搜索出该组织以及该组织之下的其他组织对应的搜索结果。组织树向上查询指的是:若搜索内容为组织树对应的组件中的某一组织对应的参数信息一致,则可以搜索出该组织以及该组织之上的其他组织对应的搜索结果。
显示名称指的是搜索框内默认显示的文字,用于指示用户搜索框的搜索方法。例如,显示名称可以是“精准查询”、“模糊查询”、“请输入姓名”等等,可以根据需求自行进行设置,本申请实施例对此不作限定。
PC端是否展示指的是:用户在PC端使用该表单时,该表单内是否显示搜索框,若显示搜索框,则用户可以通过搜索框来搜索相关信息,若不显示搜索框,则用户将无法进行搜索。
同理,移动端是否展示指的是:用户在移动端使用该表单时,该表单内是否显示搜索框,若显示,则用户可以在移动端进行搜索,若不显示,则用户无法在移动端进行搜索。
在一种可能的实现方式中,功能按钮可以包括新增按钮、编辑按钮、详情按钮、删除按钮和URL按钮中的至少一种。其中,新增按钮用于在表单中新增参数信息时使用,编辑按钮用于修改表单中的参数信息时使用,详情按钮用于在表单中增加详情参数信息时使用,删除按钮用于删除表单中的参数信息时使用,URL按钮用于从该表单跳转至其他表单时使用。例如,在图3所示的表单中,添加了新增按钮、详情按钮、编辑按钮和删除按钮,用户可以通过这几种功能按钮实现对参数信息的详情查看、修改编辑和删除。
如图10所示,目标组件对应的功能按钮设置区域可以显示有“+”选项的,当用户想要对该目标组件对应的功能按钮进行设置时,可以点击该“+”选项,从而触发显示新增选项、详情选项、编辑选项、删除选项和URL选项,如图12所示。用户可以在如图12所示的界面中选择需要的功能按钮,从而触发显示该功能按钮的设置窗口,用户可以在该设置窗口内对其进行相应设置,例如,在如图13所示的功能按钮的设置窗口中,可以对选择的功能按钮的按钮名称、按钮编码、PC端是否显示、移动端是否显示、按钮在表单中的位置和展示字段进行设置。
通过上述方式,用户在视图设计页面的查询条件设置区域输入了需要的查询条件,在查询结果设置区域输入了需要的查询结果,在功能按钮设置区域输入了需要的功能按钮,目标终端在获取了用户输入的查询条件、查询结果和功能按钮后,将其发送至服务器,服务器在接收到用户输入的查询条件、查询结果和功能按钮后,将其对应存储起来,用于后续的表单建立。
502、接收目标终端发送的组件模板中的目标组件的标识信息、目标组件的属性信息和/或目标组件对应的参考信息、查询条件、查询结果和功能按钮。
在实施中,服务器在接收到目标终端发送的组件模板中的目标组件的标识信息、目标组件的属性信息和/或目标组件对应的参考信息、查询条件、查询结果和功能按钮后,将其对应存储起来,用于后续的表单建立。
503、当接收到目标终端发送的所述目标组件对应的参考信息时,基于目标组件对应的参考信息和属性信息的子模板,确定目标组件的属性信息,并将目标组件的属性信息发送至目标终端。
在实施中,当服务器只接收到目标组件的属性信息、未接收到目标组件对应的参考信息时,可以直接基于目标组件的属性信息进行下一步504的操作。当服务器接收到目标组件对应的参考信息时,可以基于目标组件对应的参考信息和属性信息的子模板,确定出目标组件的属性信息,然后再进行下一步504的操作。
下面,对基于参考信息确定属性信息的方法进行详细的介绍:
控件编码
目标组件的属性信息包括目标组件的控件标题和控件编码,目标组件对应的参考信息包括目标组件的控件标题。
基于上述参考信息确定属性信息方法可以是:获取目标组件的控件标题的第一预设数目个首字母,并随机获取第二预设数目个字母,将目标组件的控件标题的第一预设数目个首字母、下划线符号、第二预设数目个字母进行组合,得到目标组件的控件编码。
在实施中,首先,获取目标组件的控件标题的前两位字母,然后,从26个英文字母中随机选取预设数目个字母,将“控件标题的前两位字母_随机选取的预设数目个字母”作为该目标组件的控件编码,然后在服务器的数据库中检索是否存在该编码,若不存在,则将该编码作为目标组件的控件编码发送至目标终端上进行显示,若存在,则重新在26个字母中随机选取预设数目个字母,得到新的控件编码,再在数据库中进行检索,直到得到该目标组件的控件编码为止。
用户也可以对目标组件的控件编码进行修改编辑,直到得到数据库中不会重复的控件编码为止。
功能联动
目标组件的属性信息包括目标组件的功能联动,目标组件对应的参考信息包括联动表单、联动条件和联动填充,联动条件包括联动数据项和功能列表属性,联动填充包括当前组件和关联表单属性,联动数据项和所述当前组件为不同的目标组件,功能列表属性和所述关联表单属性均为联动表单中的组件。
基于上述参考信息确定属性信息方法可以是:当联动数据项的参数信息与功能列表属性的参数信息相同时,使用功能列表属性的参数信息对应的关联表单属性的参数信息,为联动数据项的参数信息对应的当前组件的参数信息赋值,得到目标组件的功能联动。
在一种可能的实现方式中,联动数据项的组件类型与当前组件的组件类型相同,功能列表属性的组件类型与关联表单属性的组件类型相同。
如图14所示,在数据交互页面中设置有功能联动设置区域。功能联动设置区域可以显示已有的表单,将当前目标组件与其他表单之间建立联系。当表单建立完成后,在该表单的组件对应的输入框中,其需要输入的参数信息并不是由用户直接输入的,而是通过选择其他已建立联系的联动表单,从联动表单中获取到对应的参数信息,从而返显到该表单的组件对应的输入框中。
如图15所示,设置联动条件时需要对联动数据项和功能列表属性进行填充赋值,其中,联动数据项为表单中包括的组件,功能列表属性为联动表单中包括的组件,需要注意的是,用户在填写了联动数据项后,服务器会获取该联动数据项中的组件对应的组件类型,根据联动数据项与功能列表属性的组件类型一致原则,之后用户在填写功能列表属性时,只能在功能列表属性中填写联动表单中的、与联动数据项的组件类型相同的组件,即联动数据项与功能列表属性中填写的组件的组件类型一致,例如,单行文本和多行文本的组件类型一致,则若联动数据项中填写的组件为表单中的单行文本组件,则在功能列表属性中,只能填写联动表单中的单行文本组件或者多行文本组件。而对于组件类型的设置,工作人员可以根据需求自行进行设置,本申请实施例对此不作限定。
设置联动填充时需要对当前组件和关联表单属性进行填充赋值,其中,当前组件为表单中除了联动数据项之外的组件,关联表单属性为关联表单中的组件,同样的,当前组件与关联表单属性也遵循组件类型一致原则。
通过上述方法,在表单建立完成后,当用户在联动数据项对应的组件的输入框中输入A参数信息后,若该参数信息与联动表单中功能列表属性对应的组件中的B参数信息一致时,服务器会将联动表单中B参数信息对应的、在关联表单属性对应的组件中的C参数信息,返显至表单中的当前组件对应的输入框中,这样,用户就不需要在当前组件对应的输入框中再输入相关参数信息,从而节省了时间和人力,提高了操作的简便性。
例如,如图16所示,联动表单设置为日志表单,联动数据项设置为表单中的姓名组件,功能列表属性设置为日志表单中的创建人组件,当前组件设置为表单中的身份证号组件,关联表单属性设置为日志表单中的身份证号组件。这样设置,当表单建立完成后,用户在表单中添加参数信息时,在姓名组件的输入框中填写了“XX”,若在日志表单的创建人组件中也存在“XX”这一参数信息,则可以将日志表单中“XX”相对应的身份证号组件中的参数信息,显示在目标组件中的“XX”对应的身份证号组件的输入框中,这样,对于用户一侧来说,用户只需在姓名组件中输入了“XX”参数信息,身份证号组件中也显示出“XX”对应的身份证号,无需用户再对身份证号组件进行填写,节省了用户的时间和人力,提高了表单操作的简便性。
功能联动的设置,使得用户无需在不同的表单中重复填写重复的内容,从而提高了表单填写的简便性,并且,也避免了用户在填写该表单时还需查询其他表单中相关内容的操作,从该表单中可以直接将其他表单中的内容返显出来,极大地节省了用户的操作时间,提高了操作的简便性。
控件校验
目标组件的属性信息包括目标组件的控件校验,目标组件对应的参考信息包括目标组件的目标参数类型对应的目标正则表达式。
基于上述参考信息确定属性信息方法可以是:当接收到组件的参数信息时,基于目标正则表达式对参数信息进行验证;当验证组件的参数信息不属于目标参数类型时,向目标终端发送目标正则表达式对应的提示信息。
在实施中,如图14所示,在数据交互页面中设置有控件校验设置区域。控件校验设置区域可以显示一个或多个参考类型对应的正则表达式,用于验证在目标组件的输入信息是否符合要求,其中,参数类型可以包括邮箱、必填项、身份证、手机号、数字中的至少一种。例如,若用户在目标组件的控件校验设置区域选择的目标正则表达式是邮箱对应的正则表达式,则当表单建立完成后,当用户在该目标组件对应的输入框中输入参数信息时,服务器可以对其输入内容进行验证,若验证其输入的内容不属于邮箱信息,则会弹出相关提示,提示用户输入的内容不正确,需重新输入。
控件校验的设置,可以对用户填写的参数信息自行进行校验,在人工校验的基础上,增加了机器校验,从而降低了用户填写参数信息的错误率,提高了表单填写的准确性,避免了因参数信息填写错误而导致的后续的工作量的增加。
显示条件
目标组件的属性信息包括目标组件的显示条件,目标组件对应的参考信息包括所述目标组件对应的显示条件和显示内容,显示条件包括第一目标组件的参数信息和第二目标组件的参数信息之间的设定数值关系,显示内容包括第三目标组件。
基于上述参考信息确定属性信息方法可以是:当第一目标组件的参数信息和第二目标组件的参数信息不满足设定数值关系时,在待建立表单中对第三目标组件进行隐藏操作,当第一目标组件的参数信息和第二目标组件的参数信息满足设定数值关系时,在待建立表单中对第三目标组件进行显示操作。
在实施中,如图14所示,在数据交互页面中设置有显示条件设置区域。该显示条件设置区域内可以显示显示条件选项和显示内容选项,用户可以其中设置显示条件和显示内容,在显示条件选项中可以显示有待建立表单中已有的目标组件,在多个目标组件中选择出第一目标组件和第二目标组件,在显示内容选项中也可以显示有待建立表单中已有的目标组件,在这多个目标组件中选择出第三目标组件,选择完成后即设置完成目标组件对应的参考信息。可以理解的是,第一目标组件、第二目标组件和第三目标组件是不同的目标组件。
预设数值关系可以包括多个预设的第一函数选项,用户在显示条件选项中对其进行选择,将其与第一目标组件、第二目标组件拼接成一个完整的显示条件,即得到该目标组件对应的显示条件。其中,预设的第一函数选项可以包括大于、小于、等于中的至少一个。
例如,表单中当前已有的目标组件为A组件、B组件、C组件和D组件,用户可以在A组件对应的显示条件设置区域中对A组件对应的显示条件选项进行设置,A组件对应的显示条件设置区域中显示有大于、小于和等于这三个第一函数选项,还显示有B组件、C组件和D组件这三个表单中包括的其他目标组件,此时,若用户选择设置的预设数值关系为“B组件大于C组件”,则当表单建立完成后,用户在使用该表单时,该表单中的A组件处于隐藏状态,当用户在B组件和C组件对应的输入框中输入了对应的参数信息,且B组件对应的输入框中的参数信息大于C组件对应的输入框中的参数信息(即满足预设数值关系)时,该表单中的A组件处于显示状态,此时,用户可以在A组件对应的输入框中输入对应的参数信息。
例如,上述中的A组件可以是参加的退休活动,B组件可以是当前年龄,C组件可以是退休年龄或预计退休年龄,即当用户在使用表单填写参数信息时,首先A组件处于隐藏状态,此时,当用户填写的当前年龄小于或等于退休年龄或预计退休年龄时,A组件一直处于隐藏状态,当用户填写的当前年龄大于退休年龄或预计退休年龄时,A组件则由隐藏状态变为显示状态,此时,用户可以在A组件对应的输入框中输入参加的退休活动。
当满足预设数值关系时才会将该目标组件显示出来从而提供给用户进行填写,当不满足预设数值关系时该目标组件一直处于隐藏状态,这样设置,将不需要用户填写的组件进行隐藏,使得表单的填写界面更加清晰,提高了用户填写信息的简便性。
数据逻辑
目标组件的属性信息包括目标组件的数据逻辑,目标组件对应的参考信息包括目标组件对应的第三方接口的接口地址和入参条件。
基于上述参考信息确定属性信息方法可以是:基于目标组件对应的第三方接口的接口地址和入参条件,通过第三方接口获取返回结果列,使用返回结果列,为组件的参数信息进行赋值,得到目标组件的数据逻辑。
在实施中,如图14所示,在数据交互页面中设置有数据逻辑设置区域。数据逻辑设置区域可以显示有接口地址选项和入参条件选项。在建立表单时,可以在目标组件对应的数据逻辑设置区域将该目标组件的输入框与接口地址、入参条件进行关联,触发显示数据逻辑填写窗口,用户可以在该窗口中填写被调用数据的接口地址和入参条件,触发服务器调用该第三方接口,将该被调用数据的返回结果列返显到该目标组件对应的输入框中。
数据逻辑设置是指调用目标组件对应的第三方接口来填写该目标组件对应的参数信息,而不需要用户自己填写,从而提高了表单填写的简便性。
控件关系
目标组件的属性信息包括目标组件的控件关系,目标组件对应的参考信息包括控件计算和计算结果,控件计算包括第四目标组件的参数信息和第五目标组件的参数信息之间的计算关系,计算结果包括第六目标组件。
基于上述参考信息确定属性信息方法可以是:基于计算关系,对第四目标组件的参数信息和第五目标组件的参数信息进行计算,得到计算值,使用计算值对第六目标组件的参数信息进行赋值,得到目标组件的控件关系。
在实施中,如图14所示,在数据交互页面中设置有控件关系设置区域。在控件关系设置区域内可以显示有控件计算选项和计算结果选项,控件计算选项中可以显示有待建立表单中已有的目标组件,用户可以从这多个目标组件中选择出第四目标组件和第五目标组件,计算结果选项中也可以显示有待建立表单中已有的目标组件,用户可以从中选择出第六目标组件。
控件计算选项中还显示有多个预设的第二函数选项,用户可以对其进行选择,将其与第四目标组件、第五目标组件拼接呈一个完整的计算关系,即得到该目标组件对应的计算关系。其中,预设的第二函数选项可以包括加、减、乘和除中的至少一个。
例如,A目标组件可以与其他两个目标组件(B目标组件和C目标组件)之间建立控件关系,A目标组件可以是B目标组件加C目标组件,或者,A目标组件可以是B目标组件减C目标组件,或者,A目标组件可以是B目标组件乘C目标组件,或者,A目标组件可以是B目标组件除C目标组件,等等。这样,在表单建立完成后,用户在填写完成B目标组件和C目标组件的参数信息后,目标终端或者服务器可以基于设置的第二函数选项,自动计算出A目标组件的参数信息,并将其显示在A目标组件对应的输入框中,无需用户再进行填写。
控件字典
目标组件的属性信息包括目标组件的控件字典,目标组件对应的参考信息包括目标组件对应的目标字典,目标字典包括多个参数信息。
基于上述参考信息确定属性信息方法可以是:使用目标组件对应的目标字典,对目标组件进行赋值,得到目标组件的控件字典,其中,目标字典中的多个参数信息用于被选择为目标组件的参数信息。
在实施中,用户在建立表单时,可以从多个字典中选择出目标组件对应的目标字典。这样,在完成表单的建立后,用户在填写目标组件的参数信息时,点击该目标组件,即可触发显示目标字典中的多个参数信息,用户可以直接从中进行选择,而无需自行输入,提高了操作效率。
504、响应于目标终端发送的表单发布请求,基于目标组件的标识信息获取目标组件,基于目标组件和目标组件的属性信息生成数据库表。
在实施中,当用户对功能设计页面和视图设计页面完成设置后,可以点击发布选项,此时,目标终端可以检测到发布选项的触发指令,触发目标终端向服务器发送表单发布请求。
服务器在接收到表单发布请求时,可以基于之前存储的目标组件的标识信息获取目标组件,然后基于目标组件和目标组件对应的属性信息生成数据库表,例如,当目标组件的属性信息包括控件标题、控件编码和控件长度时,可以将目标组件的控件编码作为该表单的数据库表的表字段名,将目标组件的控件标题作为该数据库表的表注释名,将目标组件的控件长度作为数据库表的字段长度,将目标组件的类型作为元素类型,从而完成数据库表的建立。
可以理解的是,当数据库中的字段与目标组件对应的属性信息等存在对应关系时,可以根据该对应关系生成数据库表,例如,目标组件的控件长度为10时,由于其在目标终端上的显示是文字的数量,而在数据库中显示的是字符的数量,每个文字对应2个字符,因此,生成的数据库表中的字段长度为20。
505、基于目标组件、目标组件对应的属性信息、查询条件、查询结果和功能按钮,生成前端功能代码和后端功能代码。
在实施中,在生成数据库表后,服务器可以基于目标组件、目标组件对应的属性信息、查询条件、查询结果和功能按钮、以及前端功能代码模板、后端功能代码模板,自动生成该表单对应的前端功能代码和后端功能代码。
506、服务器对后端功能代码进行打包和启动,对前端功能代码进行打包和发布。
在实施中,在生成前端功能代码和后端功能代码后,服务器可以先对后端功能代码进行打包和启动,再对前端功能代码进行打包和发布,从而实现表单的建立。
507、服务器向目标终端发送表单建立成功通知。
在实施中,服务器在完成了表单的建立后,可以向目标终端发送表单建立成功通知,目标终端在接收到表单建立成功通知后,可以显示表单建立成功页面或者表单建立成功弹窗,即提示用户该表单已建立完成,用户查询该表单时,即可以得到如图2所示的表单页面,创建该表单的用户可以对其他用户进行授权,为其他用户提供该表单的使用权限,这样,具有使用权限的用户均可以在表单页面中添加对应的参数信息,从而得到如图3所示的表单。
在一种可能的实现方式中,表单可以采用多租户模式,即每个租户可以包括多个账户,A账户建立的表单只能应用于A账户所在的租户,即A账户可以授权给A账户所在租户内的其他账户,被授权的账户可以在该表单内添加对应的参数信息,所有授权账户添加的参数信息均可以相互共享,但其他租户的账户无法查看或使用该表单,从而提高了用户信息的安全性。
在一种可能的实现方式中,在对后端功能代码进行打包和启动前,还可以进行如下设置:服务器检验是否存储有git目录,若存储有,则对git目录进行更新,若未存储,则获取git目录并存储,将前端功能代码和后端功能代码添加入git目录。
在实施中,git目录通常存储在git远程仓库中,而一个表单的建立通常是由多个工作人员合作完成的,每个工作人员均对应一部分前端功能代码和后端功能代码,而在git远程仓库中无法实现对代码的更新,因此,当需要将前端功能代码和后端功能代码添加入git目录中时,需要将git目录复制入本地服务器中。若本地服务器中已经存储有git目录,则无需再对其进行复制,对该git目录进行了更新后,即可将自动生成的前端功能代码和后端功能代码添加入git目录中。
在一种可能的实现方式中,在本申请实施例中,对后端功能代码进行打包和启动的方式可以是:服务器执行预设maven命令对后端功能代码进行打包,得到后端功能代码对应的jar文件,服务器执行预设启动命令,启动jar文件,其中,服务器可以是linux服务器,预设启动命令可以为linux服务器中内置的启动命令java-jar。
在一种可能的实现方式中,在本申请实施例中,对前端功能代码进行打包和发布的方式可以是:服务器执行预设npm install命令对前端功能代码进行打包和发布。
当然,对后端功能代码进行打包和启动、对前端功能代码进行打包和发布的方式还可以是其他任意合理的方式,本申请实施例对此不作限定。
在一种可能的实现方式中,为提高表单建立时的安全性,还可以对步骤501中的验证信息进行更为复杂的设置,使服务器可以对目标终端发送来的验证信息进行验证,对应的处理可以如下:
首先,在目标终端显示主页面前,本申请实施例中的表单建立方法还可以包括:目标终端显示登录页面,获取到登录页面中输入的登录信息,将登录信息发送至服务器,服务器基于登录信息获取目标账户对应的账户信息,基于账户信息生成目标账户对应的JWTtoken,向目标终端发送登录成功通知和目标账户对应的JWTtoken。
在实施中,用户在打开目标应用程序后,可以先进行登录,在登录页面输入登录信息,通常,登录信息为账号和密码。用户在输入了登录信息后,可以点击登录页面中设置的登录选项,触发目标终端向服务器发送登录请求,该登录请求中携带有登录信息。
服务器在接收到该登录信息后,可以先对该登录信息进行验证,确认账号和密码是否对应,若确认无误,则基于账号获取目标账户对应的账户信息,其中,账户信息可以是ID和姓名,等等,工作人员可以根据需求对其进行设置,本申请实施例对此不作限定。
服务器在获取到目标账户对应的账户信息后,可以基于其生成目标账户对应的JWTtoken。其中,JWTtoken由三部分组成。第一部分为header(头部),在本申请实施例中,header可以设置为hs256(HMAC-SHA256)算法。第二部分为payload(载荷),其可以是目标账户的账户信息。第三部分为signature(签名),其可以基于第一部分、第二部分和服务器中预先存储的密钥生成,在生成签名后,服务器可以将其对应存储起来。
通过上述方式,得到JWTtoken的三个组成部分,将这三个组成部分使用连接符号“.”连接起来,再使用base64加密算法进行加密,从而得到目标账户对应的JWTtoken。
服务器在生成了目标账户对应的JWTtoken之后,可以将登录成功通知和目标账户对应的JWTtoken发送至目标终端。
目标终端在接收到登录成功通知和目标账户对应的JWTtoken后,基于登录成功通知显示目标应用程序的主页面,并将目标账户对应的JWTtoken存储起来。
其次,目标终端向服务器发送的表单建立请求中携带的目标账户对应的验证信息即可以为上述目标终端中存储的JWTtoken。
最后,服务器基于目标账户对应的验证信息获取目标账户对应的组件模板的对应处理可以是:服务器基于目标终端发送的目标账户对应的JWTtoken进行验证,当验证成功时基于目标账户对应的JWTtoken获取目标账户对应的组件模板。
在实施中,服务器在接收到目标终端发送来的验证信息后,可以先使用base64解密算法对目标账户对应的JWTtoken进行解密,从而得到JWTtoken中的三个组成部分,然后使用预先存储的密钥和JWTtoken中的第一部分、第二部分,生成一个签名,将生成的签名与JWTtoken的第三部分的签名进行对比,若两者相同,说明JWTtoken未被篡改,则验证成功,此时,可以基于JWTtoken中的第二部分、以及账户信息与组件模板之间的对应关系,获取目标账户对应的组件模板。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
本申请实施例提供的技术方案带来的有益效果是:本申请实施例中提到的方案,可以在用户建立表单之前,先基于配置信息建立出组件模板,即建立组件模板中组件和组件的多个属性信息的子模板,这样,用户在建立表单时,无需再对组件和组件的属性信息一一进行人工编写,用户可以直接使用建立好的组件和组件的属性信息,从而节省了人力资源,提高了建立表单的效率。
另外,在表单建立方法中,表单建立页面中包括功能设计选项、视图设计选项和发布选项,用户可以根据需求直接在表单建立页面中设计需要的组件、组件的属性、查询条件、查询结果和功能按钮等,然后可以通过一键发布,向服务器发送表单发布请求,服务器可以根据用户在表单建立页面中的输入信息,自动生成对应的前端功能代码和后端功能代码,然后对后端功能代码进行打包和启动,对前端功能代码进行打包和发布,从而实现表单的建立,采用本申请,只需用户根据自身需求在表单建立页面设计表单即可,无需多个工作人员配合工作,也无需开发人员手动编写前后端功能代码,提高了建立表单的效率。
本申请实施例提供了一种组件模板的建立装置,如图17所示,该装置包括:
第一获取模块1710,用于获取待配置的组件模板的配置信息,其中,所述组件模板包括多个组件;
建立模块1720,用于基于所述配置信息,建立组件模板,其中,所述组件模板包括组件的多个属性信息的子模板,所述组件的属性信息包括所述组件的控件标题、控件编码、控件长度、是否只读、是否导入、是否导出、最大长度、提示文字、控件字典、功能联动、控件校验、显示条件、数据逻辑中的至少一种。
在一种可能的实现方式中,所述组件的属性信息包括功能联动;
所述建立模块1720,用于:
建立联动表单选项、联动条件选项和联动填充选项,其中,所述联动表单选项用于供用户在数据库中存储的已建立表单中,选择出与待建立表单具有联动关系的联动表单,联动条件选项用于供用户设定所述待建立表单与所述联动表单之间的联动条件,所述联动填充选项用于供用户设定所述待建立表单与所述联动表单之间的联动关系。
在一种可能的实现方式中,所述组件的属性信息包括控件校验;
所述建立模块1720,用于:
对于所述组件的每种参数类型,建立所述参数类型对应的正则表达式,其中,所述参数类型对应的正则表达式用于验证所述组件的参数信息是否属于所述参数类型。
在一种可能的实现方式中,所述组件的属性信息包括显示条件;
所述建立模块1720,用于:
建立显示条件选项和显示内容选项,其中,所述显示条件选项用于供用户设定所述组件在待建立表单中进行显示操作的条件,所述显示内容选项用于供用户设定在满足所述显示条件时所述组件对应的在所述待建立表单中的显示内容。
在一种可能的实现方式中,所述组件的属性信息包括数据逻辑;
所述建立模块1720,用于:
建立接口地址选项和入参条件选项,其中,所述接口地址选项用于供用户输入所述组件对应的第三方接口的接口地址,所述入参条件选项用于供用户输入所述组件对应的第三方接口的入参条件。
在一种可能的实现方式中,所述组件的属性信息包括控件关系;
所述建立模块1720,用于:
建立控件计算选项和计算结果选项,其中,所述控件计算选项用于供用户设定待建立表单中一个或多个第一组件之间的计算关系,所述计算结果选项用于供用户设定所述一个或多个第一组件之间的计算关系计算出的结果所对应的第二组件。
在一种可能的实现方式中,所述组件的属性信息包括所述组件的控件字典;
所述建立模块1720,用于:
建立所述组件对应的多个字典,其中,每个字典包括多个参数信息。
本申请实施例提供了一种表单建立装置,如图18所示,该装置包括:
第二获取模块1810,用于响应于目标终端发送的携带有目标账户对应的验证信息的表单建立请求,获取目标账户对应的如上述任一项所述的组件模板,并将所述目标账户对应的组件模板发送至目标终端;
接收模块1820,用于接收所述目标终端发送的所述组件模板中的目标组件的标识信息、所述目标组件的属性信息和/或所述目标组件对应的参考信息、查询条件、查询结果和功能按钮;
确定模块1830,用于当接收到所述目标终端发送的所述目标组件对应的参考信息时,基于所述目标组件对应的参考信息和所述属性信息的子模板,确定所述目标组件的属性信息,并将所述目标组件的属性信息发送至所述目标终端;
第一生成模块1840,用于响应于所述目标终端发送的表单发布请求,基于所述目标组件的标识信息获取所述目标组件,基于所述目标组件和所述目标组件的属性信息生成数据库表;
第二生成模块1850,用于基于所述目标组件、所述目标组件的属性信息、所述查询条件、所述查询结果和所述功能按钮,生成前端功能代码和后端功能代码;对所述后端功能代码进行打包和启动,对所述前端功能代码进行打包和发布;
发送模块1860,用于向所述目标终端发送表单建立成功通知。
在一种可能的实现方式中,所述目标账户的验证信息是所述目标账户对应的JWTtoken;
所述第二获取模块1810,还用于:
接收所述目标终端发送的登录信息;
基于所述登录信息获取所述目标账户对应的账户信息;
基于所述账户信息生成所述账户信息对应的JWTtoken;
向所述目标终端发送登录成功通知和所述目标账户对应的JWTtoken;
所述第二获取模块1810,用于:
基于所述目标终端发送的目标账户对应的JWTtoken进行验证,当验证成功时,基于所述目标账户对应的JWTtoken获取所述目标账户对应的组件模板。
在一种可能的实现方式中,所述多个组件包括基础组件、高级组件和布局组件中的至少一种,其中,所述基础组件包括单行文本、多行文本、单选框、多选框、下拉框、年、年月、年月日、时间和年月日时分秒中的至少一种,所述高级组件包括附件、图片、头像、子表、人员单选、人员多选、组单单选、组织多选中的至少一种,所述布局组件包括分文本和TI分割线中的至少一种。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的控件标题和控件编码,所述目标组件对应的参考信息包括所述目标组件的控件标题;
所述确定模块1830,用于:
获取所述目标组件的控件标题的第一预设数目个首字母,并随机获取第二预设数目个字母;
将所述目标组件的控件标题的第一预设数目个首字母、下划线符号、所述第二预设数目个字母进行组合,得到所述目标组件的控件编码。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的功能联动,所述目标组件对应的参考信息包括联动表单、联动条件和联动填充,所述联动条件包括联动数据项和功能列表属性,所述联动填充包括当前组件和关联表单属性,所述联动数据项和所述当前组件为不同的目标组件,所述功能列表属性和所述关联表单属性均为所述联动表单中的组件;
所述确定模块1830,用于:
当所述联动数据项的参数信息与所述功能列表属性的参数信息相同时,使用所述功能列表属性的参数信息对应的关联表单属性的参数信息,为所述联动数据项的参数信息对应的当前组件的参数信息赋值,得到所述目标组件的功能联动。
在一种可能的实现方式中,所述联动数据项的组件类型与所述当前组件的组件类型相同,所述功能列表属性的组件类型与所述关联表单属性的组件类型相同。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的控件校验,所述目标组件对应的参考信息包括所述目标组件的目标参数类型对应的目标正则表达式;
所述确定模块1830,用于:
当接收到所述目标组件对应的参数信息时,基于所述目标正则表达式对所述参数信息进行验证;
当验证所述目标组件对应的参数信息不属于所述目标参数类型时,向所述目标终端发送所述目标正则表达式对应的提示信息。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的显示条件,所述目标组件对应的参考信息包括所述目标组件对应的显示条件和显示内容,所述显示条件包括第一目标组件的参数信息和第二目标组件的参数信息之间的设定数值关系,所述显示内容包括第三目标组件;
所述确定模块1830,用于:
当所述第一目标组件的参数信息和所述第二目标组件的参数信息不满足所述设定数值关系时,在待建立表单中对所述第三目标组件进行隐藏操作;
当所述第一目标组件的参数信息和所述第二目标组件的参数信息满足所述设定数值关系时,在所述待建立表单中对所述第三目标组件进行显示操作。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的数据逻辑,所述目标组件对应的参考信息包括所述目标组件对应的第三方接口的接口地址和入参条件;
所述确定模块1830,用于:
基于所述目标组件对应的第三方接口的接口地址和入参条件,通过所述第三方接口获取返回结果列;
使用所述返回结果列,为所述组件的参数信息进行赋值,得到所述目标组件的数据逻辑。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的控件关系,所述目标组件对应的参考信息包括控件计算和计算结果,所述控件计算包括第四目标组件的参数信息和第五目标组件的参数信息之间的计算关系,所述计算结果包括第六目标组件;
所述确定模块1830,用于:
基于所述计算关系,对所述第四目标组件的参数信息和所述第五目标组件的参数信息进行计算,得到计算值,使用所述计算值对所述第六目标组件的参数信息进行赋值,得到所述目标组件的控件关系。
在一种可能的实现方式中,所述目标组件的属性信息包括所述目标组件的控件字典,所述目标组件对应的参考信息包括所述目标组件对应的目标字典,所述目标字典包括多个参数信息;
所述确定模块1830,用于:
使用所述目标组件对应的目标字典,对所述目标组件进行赋值,得到所述目标组件的控件字典,其中,所述目标字典中的多个参数信息用于被选择为所述目标组件的参数信息。
在一种可能的实现方式中,所述功能按钮包括新增按钮、编辑按钮、详情按钮、删除按钮和URL按钮中的至少一种。
在一种可能的实现方式中,所述第二生成模块1850,还用于:
检验是否存储有git目录,若存储有,则对所述git目录进行更新,若未存储,则获取git目录并存储;
将所述前端功能代码和所述后端功能代码添加入所述git目录。
在一种可能的实现方式中,所述第二生成模块1850,用于:
执行预设maven命令对所述后端功能代码进行打包,得到所述后端功能代码对应的jar文件;
执行预设启动命令,启动所述jar文件。
在一种可能的实现方式中,所述第二生成模块1850,用于:
执行预设npm install命令对所述前端功能代码进行打包和发布。
图19示出了本申请一个示例性实施例提供的终端1900的结构框图。该终端可以是上述实施例中的目标终端。该终端1900可以是:智能手机、平板电脑、MP3播放器(movingpicture experts group audio layer III,动态影像专家压缩标准音频层面3)、MP4(moving picture experts group audio layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端1900还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端1900包括有:处理器1901和存储器1902。
处理器1901可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1901可以采用DSP(digital signal processing,数字信号处理)、FPGA(field-programmable gate array,现场可编程门阵列)、PLA(programmable logic array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1901也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(central processingunit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1901可以在集成有GPU(graphics processing unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1901还可以包括AI(artificial intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1902可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1902还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1902中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1901所执行以实现本申请中方法实施例提供的表单建立方法。
在一些实施例中,终端1900还可选包括有:外围设备接口1903和至少一个外围设备。处理器1901、存储器1902和外围设备接口1903之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1903相连。具体地,外围设备包括:射频电路1904、显示屏1905、摄像头1906、音频电路1907、定位组件1908和电源1909中的至少一种。
外围设备接口1903可被用于将I/O(input/output,输入/输出)相关的至少一个外围设备连接到处理器1901和存储器1902。在一些实施例中,处理器1901、存储器1902和外围设备接口1903被集成在同一芯片或电路板上;在一些其他实施例中,处理器1901、存储器1902和外围设备接口1903中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1904用于接收和发射RF(radio frequency,射频)信号,也称电磁信号。射频电路1904通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1904将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1904包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1904可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(wireless fidelity,无线保真)网络。在一些实施例中,射频电路1904还可以包括NFC(near field communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1905用于显示UI(user interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1905是触摸显示屏时,显示屏1905还具有采集在显示屏1905的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1901进行处理。此时,显示屏1905还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1905可以为一个,设置终端1900的前面板;在另一些实施例中,显示屏1905可以为至少两个,分别设置在终端1900的不同表面或呈折叠设计;在再一些实施例中,显示屏1905可以是柔性显示屏,设置在终端1900的弯曲表面上或折叠面上。甚至,显示屏1905还可以设置成非矩形的不规则图形,也即异形屏。显示屏1905可以采用LCD(liquid crystal display,液晶显示屏)、OLED(organic light-emitting diode,有机发光二极管)等材质制备。
摄像头组件1906用于采集图像或视频。可选地,摄像头组件1906包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(virtual reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1906还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1907可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1901进行处理,或者输入至射频电路1904以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1900的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1901或射频电路1904的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1907还可以包括耳机插孔。
定位组件1908用于定位终端1900的当前地理位置,以实现导航或LBS(locationbased service,基于位置的服务)。定位组件1908可以是基于GPS(global positioningsystem,全球定位系统)、北斗系统、格雷纳斯系统或伽利略系统的定位组件。
电源1909用于为终端1900中的各个组件进行供电。电源1909可以是交流电、直流电、一次性电池或可充电电池。当电源1909包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端1900还包括有一个或多个传感器1910。该一个或多个传感器1910包括但不限于:加速度传感器1911、陀螺仪传感器1912、压力传感器1913、指纹传感器1914、光学传感器1915以及接近传感器1916。
加速度传感器1911可以检测以终端1900建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1911可以用于检测重力加速度在三个坐标轴上的分量。处理器1901可以根据加速度传感器1911采集的重力加速度信号,控制显示屏1905以横向视图或纵向视图进行用户界面的显示。加速度传感器1911还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1912可以检测终端1900的机体方向及转动角度,陀螺仪传感器1912可以与加速度传感器1911协同采集用户对终端1900的3D动作。处理器1901根据陀螺仪传感器1912采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器1913可以设置在终端1900的侧边框和/或显示屏1905的下层。当压力传感器1913设置在终端1900的侧边框时,可以检测用户对终端1900的握持信号,由处理器1901根据压力传感器1913采集的握持信号进行左右手识别或快捷操作。当压力传感器1913设置在显示屏1905的下层时,由处理器1901根据用户对显示屏1905的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器1914用于采集用户的指纹,由处理器1901根据指纹传感器1914采集到的指纹识别用户的身份,或者,由指纹传感器1914根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1901授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1914可以被设置终端1900的正面、背面或侧面。当终端1900上设置有物理按键或厂商Logo时,指纹传感器1914可以与物理按键或厂商Logo集成在一起。
光学传感器1915用于采集环境光强度。在一个实施例中,处理器1901可以根据光学传感器1915采集的环境光强度,控制显示屏1905的显示亮度。具体地,当环境光强度较高时,调高显示屏1905的显示亮度;当环境光强度较低时,调低显示屏1905的显示亮度。在另一个实施例中,处理器1901还可以根据光学传感器1915采集的环境光强度,动态调整摄像头组件1906的拍摄参数。
接近传感器1916,也称距离传感器,通常设置在终端1900的前面板。接近传感器1916用于采集用户与终端1900的正面之间的距离。在一个实施例中,当接近传感器1916检测到用户与终端1900的正面之间的距离逐渐变小时,由处理器1901控制显示屏1905从亮屏状态切换为息屏状态;当接近传感器1916检测到用户与终端1900的正面之间的距离逐渐变大时,由处理器1901控制显示屏1905从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图19中示出的结构并不构成对终端1900的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图20是本申请实施例提供的一种服务器的结构示意图,该服务器2000可以是上述实施例中的服务器。该服务器2000可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)2001和一个或一个以上的存储器2002,其中,所述存储器2002中存储有至少一条指令,所述至少一条指令由所述处理器2001加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
需要说明的是,本申请所涉及的信息(包括但不限于用户设备信息、用户个人信息等)、数据(包括但不限于用于分析的数据、存储的数据、展示的数据等)以及信号(包括但不限于用户终端与其他设备之间传输的信号等),均为经用户授权或者经过各方充分授权的,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。例如,本申请中涉及到的“目标组件对应的属性信息”、“查询条件、查询结果和功能按钮”都是在充分授权的情况下获取的。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (18)
1.一种表单建立方法,其特征在于,所述方法包括:
响应于目标终端发送的携带有目标账户对应的验证信息的表单建立请求,获取目标账户对应的组件模板,并将所述目标账户对应的组件模板发送至目标终端,其中,所述组件模板是基于配置信息建立的,所述组件模板包括多个组件和每个组件的多个属性信息的子模板,所述组件的属性信息包括所述组件的控件标题、控件编码、控件长度、是否只读、是否导入、是否导出、最大长度、提示文字、控件字典、功能联动、控件校验、显示条件、数据逻辑中的至少一种;
接收所述目标终端发送的所述组件模板中的目标组件的标识信息、所述目标组件的属性信息和/或所述目标组件对应的参考信息、查询条件、查询结果和功能按钮;
当接收到所述目标终端发送的所述目标组件对应的参考信息时,基于所述目标组件对应的参考信息和所述属性信息的子模板,确定所述目标组件的属性信息,并将所述目标组件的属性信息发送至所述目标终端;
响应于所述目标终端发送的表单发布请求,基于所述目标组件的标识信息获取所述目标组件,基于所述目标组件和所述目标组件的属性信息生成数据库表;
基于所述目标组件、所述目标组件的属性信息、所述查询条件、所述查询结果和所述功能按钮,生成前端功能代码和后端功能代码;
对所述后端功能代码进行打包和启动,对所述前端功能代码进行打包和发布;
向所述目标终端发送表单建立成功通知。
2.根据权利要求1所述的方法,其特征在于,所述目标账户的验证信息是所述目标账户对应的JWTtoken;
所述响应于目标终端发送的携带有目标账户对应的验证信息的表单建立请求,获取目标账户对应的组件模板之前,所述方法还包括:
接收所述目标终端发送的登录信息;
基于所述登录信息获取所述目标账户对应的账户信息;
基于所述账户信息生成所述账户信息对应的JWTtoken;
向所述目标终端发送登录成功通知和所述目标账户对应的JWTtoken;
所述响应于目标终端发送的携带有目标账户对应的验证信息的表单建立请求,获取目标账户对应的组件模板,包括:
基于所述目标终端发送的目标账户对应的JWTtoken进行验证,当验证成功时,基于所述目标账户对应的JWTtoken获取所述目标账户对应的组件模板。
3.根据权利要求1所述的方法,其特征在于,所述多个组件包括基础组件、高级组件和布局组件中的至少一种,其中,所述基础组件包括单行文本、多行文本、单选框、多选框、下拉框、年、年月、年月日、时间和年月日时分秒中的至少一种,所述高级组件包括附件、图片、头像、子表、人员单选、人员多选、组织多选中的至少一种,所述布局组件包括分文本和TI分割线中的至少一种。
4.根据权利要求1所述的方法,其特征在于,所述目标组件的属性信息包括所述目标组件的控件标题和控件编码,所述目标组件对应的参考信息包括所述目标组件的控件标题;
所述基于所述目标组件对应的参考信息和所述属性信息的子模板,确定所述目标组件的属性信息,包括:
获取所述目标组件的控件标题的第一预设数目个首字母,并随机获取第二预设数目个字母;
将所述目标组件的控件标题的第一预设数目个首字母、下划线符号、所述第二预设数目个字母进行组合,得到所述目标组件的控件编码。
5.根据权利要求1所述的方法,其特征在于,所述目标组件的属性信息包括所述目标组件的功能联动,所述目标组件对应的参考信息包括联动表单、联动条件和联动填充,所述联动条件包括联动数据项和功能列表属性,所述联动填充包括当前组件和关联表单属性,所述联动数据项和所述当前组件为不同的目标组件,所述功能列表属性和所述关联表单属性均为所述联动表单中的组件;
所述基于所述目标组件对应的参考信息和所述属性信息的子模板,确定所述目标组件的属性信息,包括:
当所述联动数据项的参数信息与所述功能列表属性的参数信息相同时,使用所述功能列表属性的参数信息对应的关联表单属性的参数信息,为所述联动数据项的参数信息对应的当前组件的参数信息赋值,得到所述目标组件的功能联动。
6.根据权利要求5所述的方法,其特征在于,所述联动数据项的组件类型与所述当前组件的组件类型相同,所述功能列表属性的组件类型与所述关联表单属性的组件类型相同。
7.根据权利要求1所述的方法,其特征在于,所述目标组件的属性信息包括所述目标组件的控件校验,所述目标组件对应的参考信息包括所述目标组件的目标参数类型对应的目标正则表达式;
所述基于所述目标组件对应的参考信息和所述属性信息的子模板,确定所述目标组件的属性信息,包括:
当接收到所述目标组件对应的参数信息时,基于所述目标正则表达式对所述参数信息进行验证;
当验证所述目标组件对应的参数信息不属于所述目标参数类型时,向所述目标终端发送所述目标正则表达式对应的提示信息。
8.根据权利要求1所述的方法,其特征在于,所述目标组件的属性信息包括所述目标组件的显示条件,所述目标组件对应的参考信息包括所述目标组件对应的显示条件和显示内容,所述显示条件包括第一目标组件的参数信息和第二目标组件的参数信息之间的设定数值关系,所述显示内容包括第三目标组件;
所述基于所述目标组件对应的参考信息和所述属性信息的子模板,确定所述目标组件的属性信息,包括:
当所述第一目标组件的参数信息和所述第二目标组件的参数信息不满足所述设定数值关系时,在待建立表单中对所述第三目标组件进行隐藏操作;
当所述第一目标组件的参数信息和所述第二目标组件的参数信息满足所述设定数值关系时,在所述待建立表单中对所述第三目标组件进行显示操作。
9.根据权利要求1所述的方法,其特征在于,所述目标组件的属性信息包括所述目标组件的数据逻辑,所述目标组件对应的参考信息包括所述目标组件对应的第三方接口的接口地址和入参条件;
所述基于所述目标组件对应的参考信息和所述属性信息的子模板,确定所述目标组件的属性信息,包括:
基于所述目标组件对应的第三方接口的接口地址和入参条件,通过所述第三方接口获取返回结果列;
使用所述返回结果列,为所述组件的参数信息进行赋值,得到所述目标组件的数据逻辑。
10.根据权利要求1所述的方法,其特征在于,所述目标组件的属性信息包括所述目标组件的控件关系,所述目标组件对应的参考信息包括控件计算和计算结果,所述控件计算包括第四目标组件的参数信息和第五目标组件的参数信息之间的计算关系,所述计算结果包括第六目标组件;
所述基于所述目标组件对应的参考信息和所述属性信息的子模板,确定所述目标组件的属性信息,包括:
基于所述计算关系,对所述第四目标组件的参数信息和所述第五目标组件的参数信息进行计算,得到计算值,使用所述计算值对所述第六目标组件的参数信息进行赋值,得到所述目标组件的控件关系。
11.根据权利要求1所述的方法,其特征在于,所述目标组件的属性信息包括所述目标组件的控件字典,所述目标组件对应的参考信息包括所述目标组件对应的目标字典,所述目标字典包括多个参数信息;
所述基于所述目标组件对应的参考信息和所述属性信息的子模板,确定所述目标组件的属性信息,包括:
使用所述目标组件对应的目标字典,对所述目标组件进行赋值,得到所述目标组件的控件字典,其中,所述目标字典中的多个参数信息用于被选择为所述目标组件的参数信息。
12.根据权利要求1所述的方法,其特征在于,所述功能按钮包括新增按钮、编辑按钮、详情按钮、删除按钮和URL按钮中的至少一种。
13.根据权利要求1所述的方法,其特征在于,所述对所述后端功能代码进行打包和启动,对所述前端功能代码进行打包和发布之前,所述方法还包括:
检验是否存储有git目录,若存储有,则对所述git目录进行更新,若未存储,则获取git目录并存储;
将所述前端功能代码和所述后端功能代码添加入所述git目录。
14.根据权利要求1所述的方法,其特征在于,所述对所述后端功能代码进行打包和启动,包括:
执行预设maven命令对所述后端功能代码进行打包,得到所述后端功能代码对应的jar文件;
执行预设启动命令,启动所述jar文件。
15.根据权利要求1所述的方法,其特征在于,所述对所述前端功能代码进行打包和发布,包括:
执行预设npminstall命令对所述前端功能代码进行打包和发布。
16.一种表单建立装置,其特征在于,所述装置包括:
第二获取模块,用于响应于目标终端发送的携带有目标账户对应的验证信息的表单建立请求,获取目标账户对应的组件模板,并将所述目标账户对应的组件模板发送至目标终端,其中,所述组件模板是基于配置信息建立的,所述组件模板包括多个组件和每个组件的多个属性信息的子模板,所述组件的属性信息包括所述组件的控件标题、控件编码、控件长度、是否只读、是否导入、是否导出、最大长度、提示文字、控件字典、功能联动、控件校验、显示条件、数据逻辑中的至少一种;
接收模块,用于接收所述目标终端发送的所述组件模板中的目标组件的标识信息、所述目标组件的属性信息和/或所述目标组件对应的参考信息、查询条件、查询结果和功能按钮;
确定模块,用于当接收到所述目标终端发送的所述目标组件对应的参考信息时,基于所述目标组件对应的参考信息和所述属性信息的子模板,确定所述目标组件的属性信息,并将所述目标组件的属性信息发送至所述目标终端;
第一生成模块,用于响应于所述目标终端发送的表单发布请求,基于所述目标组件的标识信息获取所述目标组件,基于所述目标组件和所述目标组件的属性信息生成数据库表;
第二生成模块,用于基于所述目标组件、所述目标组件的属性信息、所述查询条件、所述查询结果和所述功能按钮,生成前端功能代码和后端功能代码;对所述后端功能代码进行打包和启动,对所述前端功能代码进行打包和发布;
发送模块,用于向所述目标终端发送表单建立成功通知。
17.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行,以使所述计算机设备实现如权利要求1-15任一所述的表单建立方法。
18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以使计算机实现如权利要求1-15任一所述的表单建立方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211485865.2A CN116431138B (zh) | 2022-11-24 | 2022-11-24 | 组件模板的建立方法和装置、表单建立方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211485865.2A CN116431138B (zh) | 2022-11-24 | 2022-11-24 | 组件模板的建立方法和装置、表单建立方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116431138A CN116431138A (zh) | 2023-07-14 |
CN116431138B true CN116431138B (zh) | 2024-04-05 |
Family
ID=87080289
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211485865.2A Active CN116431138B (zh) | 2022-11-24 | 2022-11-24 | 组件模板的建立方法和装置、表单建立方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116431138B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116594604B (zh) * | 2023-07-19 | 2024-02-09 | 云宏信息科技股份有限公司 | 一种基于数据联动的组件配置方法、数据展示方法及装置 |
CN118485055B (zh) * | 2024-07-16 | 2024-09-06 | 北京图众科技有限公司 | 面向掌上调查终端的信息录入方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110109979A (zh) * | 2018-01-16 | 2019-08-09 | 北京京东尚科信息技术有限公司 | 一种配置表单选项方法和装置 |
CN112506494A (zh) * | 2020-11-02 | 2021-03-16 | 福建亿能达信息技术股份有限公司 | 基于vue的可扩展动态组件的实现方法、装置、设备和介质 |
CN114004206A (zh) * | 2021-10-30 | 2022-02-01 | 平安国际智慧城市科技股份有限公司 | 一种表单生成方法、装置、计算机设备和存储介质 |
WO2022048316A1 (zh) * | 2020-09-01 | 2022-03-10 | 北京锐安科技有限公司 | 前端页面设计方法、装置、存储介质及设备 |
-
2022
- 2022-11-24 CN CN202211485865.2A patent/CN116431138B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110109979A (zh) * | 2018-01-16 | 2019-08-09 | 北京京东尚科信息技术有限公司 | 一种配置表单选项方法和装置 |
WO2022048316A1 (zh) * | 2020-09-01 | 2022-03-10 | 北京锐安科技有限公司 | 前端页面设计方法、装置、存储介质及设备 |
CN112506494A (zh) * | 2020-11-02 | 2021-03-16 | 福建亿能达信息技术股份有限公司 | 基于vue的可扩展动态组件的实现方法、装置、设备和介质 |
CN114004206A (zh) * | 2021-10-30 | 2022-02-01 | 平安国际智慧城市科技股份有限公司 | 一种表单生成方法、装置、计算机设备和存储介质 |
Non-Patent Citations (3)
Title |
---|
How to auto-generate advanced forms using Formly;Kristof Horvath;《symflower》;20220308;第1-10页 * |
你还在重复编写表单代码吗?封装一个组件不香吗?;JYeontu;《https://juejin.cn/post/7105444849855234084》;20220605;第1-14页 * |
表单控件续(1)——应用接口来简化和分散代码;金色海洋;《https://developer.aliyun.com/article/306731》;20190601;第1-7页 * |
Also Published As
Publication number | Publication date |
---|---|
CN116431138A (zh) | 2023-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116431138B (zh) | 组件模板的建立方法和装置、表单建立方法和装置 | |
US11853730B2 (en) | Mini program data binding method and apparatus, device, and storage medium | |
CN110020140A (zh) | 推荐内容显示方法、装置及系统 | |
CN111192005A (zh) | 政务业务处理方法、装置、计算机设备及可读存储介质 | |
US11954464B2 (en) | Mini program production method and apparatus, terminal, and storage medium | |
CN113467663B (zh) | 界面配置方法、装置、计算机设备及介质 | |
CN111459466B (zh) | 代码生成方法、装置、设备及存储介质 | |
CN112416485A (zh) | 信息引导方法、装置、终端及存储介质 | |
CN112257006B (zh) | 页面信息的配置方法、装置、设备及计算机可读存储介质 | |
CN111191176A (zh) | 网站内容更新方法、装置、终端及存储介质 | |
CN110704455B (zh) | 生成数据资产目录的方法、装置、终端及存储介质 | |
CN113506086B (zh) | 任务发布方法、装置、计算机设备及介质 | |
CN110245255B (zh) | 歌曲显示方法、装置、设备及存储介质 | |
CN115495169B (zh) | 数据获取、页面生成方法、装置、设备及可读存储介质 | |
CN114911478B (zh) | 页面创建方法、装置、电子设备及存储介质 | |
CN109842593B (zh) | 信息获取方法、装置及计算机可读存储介质 | |
CN114153963B (zh) | 文档推荐方法、装置、计算机设备及介质 | |
CN114222155B (zh) | 资源推荐方法、装置、电子设备以及存储介质 | |
CN116954597A (zh) | 表单页面的生成方法、装置、电子设备、存储介质及产品 | |
CN114138250A (zh) | 系统用例的步骤生成方法、装置、设备及存储介质 | |
CN112732282A (zh) | 安装包的下载方法及装置 | |
CN113722040B (zh) | 作品处理方法、装置、计算机设备及介质 | |
CN114173163B (zh) | 数据处理方法、装置、计算机设备及介质 | |
CN112230906B (zh) | 列表控件的创建方法、装置、设备及可读存储介质 | |
CN114490075B (zh) | 虚拟资源的获取方法、装置、电子设备、存储介质及产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |