CN115238660B - 一种表单动态生成方法、装置、设备及存储介质 - Google Patents
一种表单动态生成方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115238660B CN115238660B CN202211146980.7A CN202211146980A CN115238660B CN 115238660 B CN115238660 B CN 115238660B CN 202211146980 A CN202211146980 A CN 202211146980A CN 115238660 B CN115238660 B CN 115238660B
- Authority
- CN
- China
- Prior art keywords
- data
- object sub
- module
- information
- page
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/177—Editing, e.g. inserting or deleting of tables; using ruled lines
- G06F40/18—Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种表单动态生成方法、装置、设备及存储介质,通过接收表单配置请求,获取待配置表单数据;根据所述待配置表单数据中的编号信息从预设的表单模块库中查询对应的编号模块;根据所述编号信息在预先构建的对象子表单库中查询对应的对象子表单,并获取所述对象子表单对应的表单配置信息;根据所述表单配置信息,结合所述编号模块和所述对象子表单的对应关系,动态配置表单;对所述待配置表单数据进行处理,加载业务数据,对表单属性进行处理,根据所述对象子表单在页面的显示结果生成表单。对表单的配置较为简单,能够满足各种场景下的需求,操作灵活。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种表单动态生成方法、装置、设备及存储介质。
背景技术
近年来,“互联网+医疗健康”服务新模式新业态蓬勃发展,而表单作为互联网医疗应用程序的主要组成部分,其基本原理是通过不同类型的表单(如:输入框、复选框、单选按钮、提交按钮等)的特定结构,形成满足互联网应用程序的特定场景业务所需的表单,通过与用户的交互收集用户的输入数据,是医疗机构采集用户数据信息的核心工具,同时也是产品信息传达给用户的展示媒介。
在传统的前端表单开发中,一般是通过人工书写代码的方式将各个类型的表单组合成一起,然后统一进行格式验证,更加具体地它的设计方法主要采用前端开发人员编写好的静态表单页面,同时后端人员根据HTML文件实现View层,前端开发也依赖于后端的完整开发以便于获取数据库中的固定格式的数据字段。
目前互联网医疗项目开发往往需要根据用户的需求定义表结构,进而为用户的产品需求设计一些必要的字段信息,再根据用户的业务需求开发对应的业务功能。然而现有的技术中,对表单的配置较为复杂,并且只能满足特点场景下的需求,操作不灵活、定制困难、功能简单。
发明内容
为解决上述技术问题,本发明提供一种表单动态生成方法、装置、设备及存储介质,对表单的配置较为简单,能够满足各种场景下的需求,操作灵活。
本发明实施例提供一种表单动态生成方法,所述方法包括:
接收表单配置请求,获取待配置表单数据;
根据所述待配置表单数据中的编号信息从预设的表单模块库中查询对应的编号模块;
根据所述编号信息在预先构建的对象子表单库中查询对应的对象子表单,并获取所述对象子表单对应的表单配置信息;
根据所述表单配置信息,结合所述编号模块和所述对象子表单的对应关系,动态配置表单;
对所述待配置表单数据进行处理,加载业务数据,对表单属性进行处理,根据所述对象子表单在页面的显示结果生成表单。
优选地,所述对象子表单库的构建过程具体包括:
采用所述表单模块库中的不同表单需求的表单模块对应生成不同的对象子表单,并配置初始化版本号;
将生成的不同对象子表单存储到预设的对象子表单库的主表中。
进一步地,在构建所述对象子表单后,所述方法还包括:
创建表单任务,并为创建的表单任务配置基本信息和表单字段。
进一步地,所述基本信息包括表单任务名称、表单标签、表单属性、控件属性、备注信息和有效填报信息;
所述表单字段包括字段名称、输入形式和字段约束。
优选地,所述编号信息包括Category ID和Item_id。
作为一种优选方案,所述方法还包括:
接收用户输入的表单修改请求,确定表单修改需求;
根据所述表单修改需求,对所述对象子表单库中存储的对象子表单的数据结构进行修改;
在生成的表单中插入修改数据,并对修改数据进行判断;
当修改数据确认无误时,触发表单配置的数据库的触发器,并根据触发器更新所述数据库中保存的版本表,对版本表中的版本号进行迭代,并在所述数据库的表单配置表保存最新的版本数据,进行页面刷新,表单调用所述数据库保存的最新版本数据,初始化控件数据,进行页面渲染,并加载渲染后的表单页面。
作为上述方案的改进,所述方法还包括:
当修改数据确认有误时,进行页面刷新,表单调用所述数据库保存的最新版本数据,初始化控件数据,进行页面渲染,并加载渲染后的表单页面。
本发明实施例还提供一种表单动态生成装置,所述装置包括:
请求接收模块,用于接收表单配置请求,获取待配置表单数据;
第一查询模块,用于根据所述待配置表单数据中的编号信息从预设的表单模块库中查询对应的编号模块;
第二查询模块,用于根据所述编号信息在预先构建的对象子表单库中查询对应的对象子表单,并获取所述对象子表单对应的表单配置信息;
表单配置模块,用于根据所述表单配置信息,结合所述编号模块和所述对象子表单的对应关系,动态配置表单;
表单生成模块,用于对所述待配置表单数据进行处理,加载业务数据,对表单属性进行处理,根据所述对象子表单在页面的显示结果生成表单。
优选地,所述对象子表单库的构建过程具体包括:
采用所述表单模块库中的不同表单需求的表单模块对应生成不同的对象子表单,并配置初始化版本号;
将生成的不同对象子表单存储到预设的对象子表单库的主表中。
进一步地,所述装置还包括:
配置模块,用于在构建所述对象子表单后,创建表单任务,并为创建的表单任务配置基本信息和表单字段。
进一步地,所述基本信息包括表单任务名称、表单标签、表单属性、控件属性、备注信息和有效填报信息;
所述表单字段包括字段名称、输入形式和字段约束。
优选地,所述编号信息包括Category ID和Item_id。
作为一种优选方案,所述装置还包括:
表单修改模块,用于:
接收用户输入的表单修改请求,确定表单修改需求;
根据所述表单修改需求,对所述对象子表单库中存储的对象子表单的数据结构进行修改;
在生成的表单中插入修改数据,并对修改数据进行判断;
当修改数据确认无误时,触发表单配置的数据库的触发器,并根据触发器更新所述数据库中保存的版本表,对版本表中的版本号进行迭代,并在所述数据库的表单配置表保存最新的版本数据,进行页面刷新,表单调用所述数据库保存的最新版本数据,初始化控件数据,进行页面渲染,并加载渲染后的表单页面。
作为一种优选方案,所述表单修改模块还用于:
当修改数据确认有误时,进行页面刷新,表单调用所述数据库保存的最新版本数据,初始化控件数据,进行页面渲染,并加载渲染后的表单页面。
本发明另一实施例提供一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行上述发明实施例所述的表单动态生成方法。
本发明另一实施例提供了一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现上述发明实施例所述的表单动态生成方法。
与现有技术相比,本发明提供的一种表单动态生成方法、装置、设备及存储介质,通过接收表单配置请求,获取待配置表单数据;根据所述待配置表单数据中的编号信息从预设的表单模块库中查询对应的编号模块;根据所述编号信息在预先构建的对象子表单库中查询对应的对象子表单,并获取所述对象子表单对应的表单配置信息;根据所述表单配置信息,结合所述编号模块和所述对象子表单的对应关系,动态配置表单;对所述待配置表单数据进行处理,加载业务数据,对表单属性进行处理,根据所述对象子表单在页面的显示结果生成表单。对表单的配置较为简单,能够满足各种场景下的需求,操作灵活。
附图说明
图1是本发明实施例提供的一种表单动态生成方法的流程示意图;
图2是本发明实施例提供的对象子表单生成的流程示意图;
图3是本发明实施例提供的对象子表单存储的流程示意图;
图4是本发明实施例提供的一种动态表单修改的流程示意图;
图5是本发明实施例提供一种表单动态生成装置的结构示意图;
图6是本发明实施例提供的一种终端设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种表单动态生成方法,参见图1,是本发明实施例提供的一种表单动态生成方法的流程示意图,所述方法步骤S1~S5:
S1,接收表单配置请求,获取待配置表单数据;
S2,根据所述待配置表单数据中的编号信息从预设的表单模块库中查询对应的编号模块;
S3,根据所述编号信息在预先构建的对象子表单库中查询对应的对象子表单,并获取所述对象子表单对应的表单配置信息;
S4,根据所述表单配置信息,结合所述编号模块和所述对象子表单的对应关系,动态配置表单;
S5,对所述待配置表单数据进行处理,加载业务数据,对表单属性进行处理,根据所述对象子表单在页面的显示结果生成表单。
在本实施例具体实施时,在现有的表单开发主要通过前端开发人员编写好的静态表单页面,后端人员根据HTML文件实现View层,前端开发也依赖于后端的完整开发以便于获取数据库中的固定格式的数据字段。这种模式只能满足特点场景下的需求,操作不灵活、功能简单,一旦需求发生改变,前后端需要重新对接与开发,降低代码的复用性,这就大大延长了系统的开发周期,也不利于人员对系统的维护。
因此,本实施例在生成表单的流程具体包括:
在接收到表单配置请求时,确定目标信息和目标表单,获取待配置表单数据;
从预设的表单模块库item中查询与所述待配置表单数据的编号信息对应的编号模块;
表1 表单模块库 item
编号信息(Itemid) | 编号模块 |
1 | A |
2 | B |
3 | C |
… | … |
根据待配置表单数据在对象子表单库from 中查询与编号信息对应的对象子表单,并获取所述对象子表单对应的表单配置信息;
表2 对象子表单库from
编号信息(Category ID) | 编号模块 |
1 | 抗原 |
2 | 采样 |
… | … |
根据所述表单配置信息,结合所述编号模块和所述对象子表单的对应关系,动态配置表单;
对所述待配置表单数据进行处理,加载业务数据,对表单属性进行处理,根据所述对象子表单在页面的显示结果生成表单,最后发布表单任务。
需要说明的是,在本实施例中分别以
本实施例通过构建多个表单模块以及表单实例数据,在构建表单时,只需要调用表单模块库以及对象子表单库即可根据预设置的对象子表单库中的预搭建对象子表单有效地构建表单。
在本发明提供的又一实施例中,所述对象子表单库的构建过程具体包括:
采用所述表单模块库中的不同表单需求的表单模块对应生成不同的对象子表单,并配置初始化版本号;
将生成的不同对象子表单存储到预设的对象子表单库的主表中。
在本实施例具体实施时,对象子表单库生成过程包括:
采用所述表单模块库中的不同表单需求的表单模块对应生成不同的对象子表单;
参见图2,是本发明实施例提供的对象子表单生成的流程示意图;所述表单模块库中表单需求为基本信息的第一模块1生成第一对象子表单A,所述表单模块库中表单需求为检测的第二模块2生成第二对象子表单B,所述表单模块库中表单需求为检测的第三模块3生成第三对象子表单C;
将生成的不同对象子表单存储到预设的对象子表单库的主表中,参见图3,是本发明实施例提供的对象子表单存储的流程示意图;将第一对象子表单A存储到对象子表单库的主表的ID1中,将第二对象子表单B存储到对象子表单库的主表的ID2中,将第三对象子表单C存储到对象子表单库的主表的ID3中。
通过表单模块库以及对象子表单库,便于构建表单。
在本发明提供的又一实施例中,在构建所述对象子表单后,所述方法还包括:
创建表单任务,并为创建的表单任务配置基本信息和表单字段。
在本实施例具体实施时,创建所述对象子表单后,创建表单任务,为所述表单任务设置基本信息,并配置表单字段;
设置的基本信息和表单字段具体为根据表单任务具体情况设计的表单结构,能够有效解决通过数据库修改的动态表单配置技术对历史表单配置的影响问题。
在本发明提供的又一实施例中,所述基本信息包括表单任务名称、表单标签、表单属性、控件属性、备注信息和有效填报信息;
所述表单字段包括字段名称、输入形式和字段约束。
在本实施例具体实施时,创建表单任务的设置基本信息包括表单任务名称、表单标签、表单属性、控件属性、备注信息和有效填报信息;
配置的表单字段包括字段名称、输入形式、字段约束,其中设置字段约束时可选择已定义的常用约束或定义一个新的约束;
通过配置的基本信息和表单字段能够为表单配置设定的结构。
在本发明提供的又一实施例中,所述编号信息包括CatagoryID和Item_id。
在本实施例具体实施时,所述编号信息包括CatagoryID和Item_id;
因此,根据所述表单配置信息,结合所述编号模块和所述对象子表单的对应关系,具体为编号信息中的CatagoryID和Item_id同编号模块的ID间的对应关系;
表3,是对象子表单和编号模块间的对应关系表
编号模块的ID | CategoryID | Itemid |
1 | 1 | 1 |
2 | 1 | 2 |
3 | 2 | 1 |
4 | 2 | 3 |
通过编号信息能够查询对应的对象子表单和编号模块,构建对应关系动态配置表单。
在本发明提供的又一实施例中,所述方法还包括:
接收用户输入的表单修改请求,确定表单修改需求;
根据所述表单修改需求,对所述对象子表单库中存储的对象子表单的数据结构进行修改;
在生成的表单中插入修改数据,并对修改数据进行判断;
当修改数据确认无误时,触发表单配置的数据库的触发器,并根据触发器更新所述数据库中保存的版本表,对版本表中的版本号进行迭代,并在所述数据库的表单配置表保存最新的版本数据,进行页面刷新,表单调用所述数据库保存的最新版本数据,初始化控件数据,进行页面渲染,并加载渲染后的表单页面。
在本实施例具体实施时,以上步骤通过动态配置完成了表单生成的全流程,在完成表单配置的时候,当表单信息、内容或排版需要发生变化或修改的时候,本发明创新地通过在数据库上对存储的表单项进行修改,并通过版本控制避免数据库修改对以往生成表单内容的破坏,参见图4,是本发明实施例提供的一种动态表单修改的流程示意图,所述流程包括:
步骤1,接收用户输入的表单修改请求,确定表单修改需求;
步骤2,根据所述表单修改需求,对所述对象子表单库中存储的对象子表单的数据结构进行修改;
步骤3,在生成的表单中插入修改数据,并对修改数据进行判断,如果数据修改内容确认无误,则执行步骤4;
步骤4,触发数据库的触发器;
步骤5,根据触发器更新所述数据库中保存的版本表,对版本表中的版本号进行迭代,版本号由初始1迭代+1;
步骤6,数据库的表单配置表保存最新的版本数据;
步骤7,页面刷新,表单调用数据库的表单配置表所保存的最新版本数据,初始化控件数据;
步骤8,页面渲染;
步骤9,表单界面加载完成。
本专利所构建的动态表单在发布后的修改过程,数据层无需发生前后端代码的修改,而是在数据库进行修改配置,可支持修改前及修改后数据的新增、更新、查询和统计,因此本方案配置的动态表单在数据变化时无需要求系统重启、无需重新发布,优化了表单配置的生成流程。
在本发明提供的又一实施例中,所述方法还包括:
当修改数据确认有误时,进行页面刷新,表单调用所述数据库保存的最新版本数据,初始化控件数据,进行页面渲染,并加载渲染后的表单页面。
在本实施例具体实施时,上述动态表单修改流程中步骤3中,跳转至步骤7,执行:
判定修改数据确认有误时,进行页面刷新,表单调用所述数据库保存的最新版本数据,初始化控件数据,进行页面渲染,并加载渲染后的表单页面。
本实施例所构建的动态表单在发布后的修改过程,数据层无需发生前后端代码的修改,而是在数据库进行修改配置,可支持修改前及修改后数据的新增、更新、查询和统计,因此本方案配置的动态表单在数据变化时无需要求系统重启、无需重新发布,优化了表单配置的生成流程。
在本发明提供的又一实施例中,以某表单为例,表单设计功能主要是录入用户的基本信息和核酸检测信息:
在设计表单之前,对参与表单的对象进行建模,建立用户对象模型和核酸检测信息对象子表单:用户对象子表单包括“姓名”、“年龄”等属性;核酸检测信息对象子表单主要包括:“采样结果”和“采样类型”等属性;初始版本号为:“1”;
{“姓名”:“李某”,“年龄”:“18”,“证件类型”:“居民身份证”,“证件号码”:“440981xxxxxxxx1419”,“采样类型”:“常规采样”,“检测结果”:“阴性”,“version”:1},其中,版本号记录数据生成的时间。
表单数据实例拆分转换后的用户对象实例为:
{“ID”:“1”,“姓名”:“李某”,“年龄”:“18”,“证件类型”:“居民身份证”,“证件号码”:“440981xxxxxxxx1419”,“version”:1}。
此时,数据库存储的表单项为:
Item_id:1 基本信息:
{"label": "姓名", "suffix": "", "siblings":
[{"label": "年龄", "suffix": "", "controlType": "text"};
{"label": "证件类型", "suffix": "", "controlType": "text"};
{"label": "证件号码", "suffix": "", "controlType": "text"}];
"controlType": "text"}。
申请核酸检测对象实例为:
{“采样类型”:“常规采样”,“检测结果”:“阴性”, “version”:1}。
此时,数据库存储的表单项为:
Item_id:2 核酸检测结果:
{"label": "采样类型", "suffix": "";
{"label": "采样结果", "suffix": "", "controlType": "text"};
"controlType": "text"};
根据Item_id和CatagoryID编号读取表单配置信息,并根据对象子表单与模块的对应关系动态配置表单实例为:
{“基本信息”:“1”,“检测信息”: “2”“version”:1}。
此时,加上对对象模块和“核酸检测信息”表单进行动态修改,修改后增加用户“性别”属性支持和“检测信息”中“检测时间”属性支持,并录入新的用户(如杜某)的数据,其中,每个对象子表单配置都有版本号,当同一张问卷,用户“李某”填了,版本号是1,后期对这张问卷修改了,即用户“杜某”填了,则版本号迭代更新为2,依次类推。当表单提交后,生成的表单数据实例为:
{“姓名”:“杜某”,“年龄”:“23”,“性别”:“男”“证件类型”:“居民身份证”,“证件号码”:“440981xxxxxxxx1419”,“采样类型”:“常规采样”,“检测结果”:“阴性”,“采样时间”:“2022-07-28”, “version”:2}。
表单数据实例拆分转换后的用户对象实例为:
{“ID”:“1”,“姓名”:“杜某”,“年龄”:“23”,“性别”:“男”,“证件类型”:“居民身份证”,“证件号码”:“440981xxxxxxxx1419”,“version”:2}。
此时,数据库存储的表单项修改为:
Item_id:1 基本信息:
{"label": "姓名", "suffix": "", "siblings":
[{"label": "年龄", "suffix": "", "controlTyp": "text"};
{"label": "性别", "suffix": "", "options":[{“key”: “1”, “value”:“男”},{“key”: “2”, “value”:“女”}]};
{"label": "证件类型", "suffix": "", "controlType": "text"};
{"label": "证件号码", "suffix": "", "controlType": "text"}];
"controlType": "text"};
核酸检测信息对象实例为:
{“采样类型”:“常规采样”,“检测结果”:“阴性”,“采样时间”:“2022-07-28”,“version”:1}。
此时,数据库存储的表单项修改为:
Item_id:2 核酸检测结果:
{"label": "采样类型", "suffix": "";
{"label": "采样结果", "suffix": "", "controlType": "text"};
{"label": "采样时间", "suffix": "", "options": []};
"controlType": "text"};
在数据库完成修改后,根据Item_id和CatagoryID编号读取表单配置信息,并根据对象子表单与模块的对应关系进行动态配置表单如下所示:
{“基本信息”:“1”,“检测信息”: “2”“version”:2};
当表单数据发生更新时,如更新用户“杜某”的常规采样为阳性,本方法将更新请求转换为新增请求。
{“基本信息”:“1”;“检测信息”: “2”;“请求”:“更新”;“version”:3}。
其中,核酸检测信息对象实例更新为:
{“采样类型”:“常规采样”,“检测结果”:“阳性”,“采样时间”:“2022-07-28”,“version”:3}。
从上述案例可以看出,当表单发生动态变化的时候,收集的尽管对象数据实例中的信息也相应发生变化,但由于数据层无需发生前后端代码的修改,而是在数据库进行修改配置,依然可以支持修改前及修改后数据的新增、更新、查询和统计,因此本方案配置的动态表单在数据变化时无需要求系统重启、无需重新发布,优化了表单配置的生成流程。
另一方面,由于传统的表单修改配置技术涉及前端、后端代码的修改、甚至需要在数据库进行修改配置,然而,通过数据库修改的动态表单配置方法不可避免地存在对历史表单的影响,如,数据的改变、属性的改变等等。本专利通过对各对象子表单配置了对应的初始版本号,并录入新的用户“杜某”的数据,其中,每个对象子表单配置都有版本号,当同一张表单,用户“李某”填了,版本号是1,后期对这张表单修改了,即用户“杜某”填了,则版本号迭代更新为2,依次类推。
在本发明提供的又一实施例中,参见图5,是本发明实施例提供一种表单动态生成装置的结构示意图,所述装置包括:
请求接收模块,用于接收表单配置请求,获取待配置表单数据;
第一查询模块,用于根据所述待配置表单数据中的编号信息从预设的表单模块库中查询对应的编号模块;
第二查询模块,用于根据所述编号信息在预先构建的对象子表单库中查询对应的对象子表单,并获取所述对象子表单对应的表单配置信息;
表单配置模块,用于根据所述表单配置信息,结合所述编号模块和所述对象子表单的对应关系,动态配置表单;
表单生成模块,用于对所述待配置表单数据进行处理,加载业务数据,对表单属性进行处理,根据所述对象子表单在页面的显示结果生成表单。
需要说明的是,本发明实施例提供的一种表单动态生成装置用于执行上述实施例的一种表单动态生成方法的所有流程步骤,两者的工作原理和有益效果一一对应,因而不再赘述。
参见图6,是本发明实施例提供的一种终端设备的结构示意图。该实施例的终端设备包括:处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,例如表单动态生成程序。所述处理器执行所述计算机程序时实现上述各个表单动态生成方法实施例中的步骤,例如图1所示的步骤S1~S5。或者,所述处理器执行所述计算机程序时实现上述各装置实施例中各模块的功能。
示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器中,并由所述处理器执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述终端设备中的执行过程。例如,所述计算机程序可以被分割成多个模块,各模块具体功能再次不作赘述。
所述终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,所述示意图仅仅是终端设备的示例,并不构成对终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器 (Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列 (Field-Programmable Gate Array,FPGA) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述终端设备的控制中心,利用各种接口和线路连接整个终端设备的各个部分。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述终端设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(Secure Digital, SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
其中,所述终端设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
Claims (9)
1.一种表单动态生成方法,其特征在于,所述方法包括:
接收表单配置请求,获取待配置表单数据;
根据所述待配置表单数据中的编号信息从预设的表单模块库中查询对应的编号模块;
根据所述编号信息在预先构建的对象子表单库中查询对应的对象子表单,并获取所述对象子表单对应的表单配置信息;
根据所述表单配置信息,结合所述编号模块和所述对象子表单的对应关系,动态配置表单;
对所述待配置表单数据进行处理,加载业务数据,对表单属性进行处理,根据所述对象子表单在页面的显示结果生成表单;
接收用户输入的表单修改请求,确定表单修改需求;
根据所述表单修改需求,对所述对象子表单库中存储的对象子表单的数据结构进行修改;
在生成的表单中插入修改数据,并对修改数据进行判断;
当修改数据确认无误时,触发表单配置的数据库的触发器,并根据触发器更新所述数据库中保存的版本表,对版本表中的版本号进行迭代,并在所述数据库的表单配置表保存最新的版本数据,进行页面刷新,表单调用所述数据库保存的最新版本数据,初始化控件数据,进行页面渲染,并加载渲染后的表单页面。
2.如权利要求1所述的表单动态生成方法,其特征在于,所述对象子表单库的构建过程具体包括:
采用所述表单模块库中的不同表单需求的表单模块对应生成不同的对象子表单,并配置初始化版本号;
将生成的不同对象子表单存储到预设的对象子表单库的主表中。
3.如权利要求2所述的表单动态生成方法,其特征在于,在构建所述对象子表单后,所述方法还包括:
创建表单任务,并为创建的表单任务配置基本信息和表单字段。
4.如权利要求3所述的表单动态生成方法,其特征在于,所述基本信息包括表单任务名称、表单标签、表单属性、控件属性、备注信息和有效填报信息;
所述表单字段包括字段名称、输入形式和字段约束。
5.如权利要求1所述的表单动态生成方法,其特征在于,所述编号信息包括CategoryID和Item_id。
6.如权利要求5所述的表单动态生成方法,其特征在于,所述方法还包括:
当修改数据确认有误时,进行页面刷新,表单调用所述数据库保存的最新版本数据,初始化控件数据,进行页面渲染,并加载渲染后的表单页面。
7.一种表单动态生成装置,其特征在于,所述装置包括:
请求接收模块,用于接收表单配置请求,获取待配置表单数据;
第一查询模块,用于根据所述待配置表单数据中的编号信息从预设的表单模块库中查询对应的编号模块;
第二查询模块,用于根据所述编号信息在预先构建的对象子表单库中查询对应的对象子表单,并获取所述对象子表单对应的表单配置信息;
表单配置模块,用于根据所述表单配置信息,结合所述编号模块和所述对象子表单的对应关系,动态配置表单;
表单生成模块,用于对所述待配置表单数据进行处理,加载业务数据,对表单属性进行处理,根据所述对象子表单在页面的显示结果生成表单;
表单修改模块,用于:
接收用户输入的表单修改请求,确定表单修改需求;
根据所述表单修改需求,对所述对象子表单库中存储的对象子表单的数据结构进行修改;
在生成的表单中插入修改数据,并对修改数据进行判断;
当修改数据确认无误时,触发表单配置的数据库的触发器,并根据触发器更新所述数据库中保存的版本表,对版本表中的版本号进行迭代,并在所述数据库的表单配置表保存最新的版本数据,进行页面刷新,表单调用所述数据库保存的最新版本数据,初始化控件数据,进行页面渲染,并加载渲染后的表单页面。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如权利要求1至6中任意一项所述的表单动态生成方法。
9.一种终端设备,其特征在于,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至6中任意一项所述的表单动态生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211146980.7A CN115238660B (zh) | 2022-09-21 | 2022-09-21 | 一种表单动态生成方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211146980.7A CN115238660B (zh) | 2022-09-21 | 2022-09-21 | 一种表单动态生成方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115238660A CN115238660A (zh) | 2022-10-25 |
CN115238660B true CN115238660B (zh) | 2023-01-24 |
Family
ID=83680413
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211146980.7A Active CN115238660B (zh) | 2022-09-21 | 2022-09-21 | 一种表单动态生成方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115238660B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140033010A1 (en) * | 2009-09-17 | 2014-01-30 | Adobe Systems Incorporated | Method and system for dynamic assembly of form fragments |
CN114155921A (zh) * | 2021-12-14 | 2022-03-08 | 浙江太美医疗科技股份有限公司 | 医疗表单的配置方法、装置、计算机设备和存储介质 |
CN114692581A (zh) * | 2020-12-28 | 2022-07-01 | 广东飞企互联科技股份有限公司 | 电子表单子表显示方法、装置、设备以及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110222047B (zh) * | 2019-04-28 | 2021-03-16 | 深圳易伙科技有限责任公司 | 一种动态表单生成方法和装置 |
-
2022
- 2022-09-21 CN CN202211146980.7A patent/CN115238660B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140033010A1 (en) * | 2009-09-17 | 2014-01-30 | Adobe Systems Incorporated | Method and system for dynamic assembly of form fragments |
CN114692581A (zh) * | 2020-12-28 | 2022-07-01 | 广东飞企互联科技股份有限公司 | 电子表单子表显示方法、装置、设备以及存储介质 |
CN114155921A (zh) * | 2021-12-14 | 2022-03-08 | 浙江太美医疗科技股份有限公司 | 医疗表单的配置方法、装置、计算机设备和存储介质 |
Non-Patent Citations (2)
Title |
---|
Optimal transmitting diversity degree-of-freedom for statistical MIMO radar;Jia Xu et al.;《2010 IEEE Radar Conference》;20100510;第437-440页 * |
博物馆办公自动化系统工作流组件的研究;张立莹 等;《2005年中国博物馆学会学术研讨会》;20050930;第528-533页 * |
Also Published As
Publication number | Publication date |
---|---|
CN115238660A (zh) | 2022-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2019512816A (ja) | ページリソースの配置方法及び装置 | |
US8682936B2 (en) | Inherited entity storage model | |
CN110781183B (zh) | Hive数据库中增量数据的处理方法、装置以及计算机设备 | |
CN108958731B (zh) | 一种应用程序界面生成方法、装置、设备和存储介质 | |
CN111858872B (zh) | 问答交互方法、装置、电子设备及存储介质 | |
CN112347748A (zh) | 数据报表的生成方法、装置、计算机设备及可读存储介质 | |
CN112131220A (zh) | 数据报表处理方法及装置 | |
CN111476007A (zh) | 表格生成方法、装置、计算机装置及计算机可读存储介质 | |
CN110941634A (zh) | 数据的处理方法及装置、存储介质和电子装置 | |
CN114296737A (zh) | 业务代码生成方法、装置、设备及存储介质 | |
CN114444478A (zh) | 一种凭证可视化方法、装置、电子设备及存储介质 | |
CN115238660B (zh) | 一种表单动态生成方法、装置、设备及存储介质 | |
CN113094776A (zh) | 可视化组件模型数据构建的方法、系统及电子设备 | |
CN114090593A (zh) | 一种数据同步显示方法、装置、终端及存储介质 | |
CN111796808A (zh) | 一种基于DAOTable通用列表组件的实现方法 | |
CN111522840A (zh) | 标签的配置方法、装置、设备及计算机可读存储介质 | |
CN108196921B (zh) | 单据开发方法、装置、计算机设备和存储介质 | |
US20220284371A1 (en) | Method, device and medium for a business function page | |
CN111159384B (zh) | 基于规则的句子生成方法和装置 | |
CN114266233A (zh) | 表单生成方法、装置、设备及介质 | |
CN108984318B (zh) | 基于驱动模型的消息投递方法、装置及可读存储介质 | |
CN113435847A (zh) | 一种信息展示方法、装置、电子设备以及存储介质 | |
CN113326680A (zh) | 生成表格的方法和装置 | |
CN113535304B (zh) | 设计软件中插入、展示、编辑第三方模型的方法与装置 | |
CN114579180B (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 |