一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种动态表单、字段配置及存储的方法及系统与流程

2022-08-17 19:27:06 来源:中国专利 TAG:
1.本发明属于计算机
技术领域
:,尤其涉及一种动态表单、字段配置及存储的方法及系统。
背景技术
::2.本部分的陈述仅仅是提供了与本发明相关的
背景技术
:信息,不必然构成在先技术。3.远程会诊平台是将病人的基本信息、初步诊断信息及影像学信息上传网络,专家通过网络获取病人信息进行相应诊断,解决医疗资源分布不均等问题;会诊平台部署在云平台上,对接不同的医院端(会诊发起端)和专家端(诊断结果发出端);在实际使用中,不同的医院、第三方检验机构等对于病人信息和格式上的要求有所不同,随着社会的发展,人们生活水平的提高,兽医病理需求也逐渐体现,远程会诊平台能够适应各种不同的需求变得尤为重要。4.远程会诊平台部署时,所有客户用的同一套程序,为了应对客户的不同需求,传统方法是新加方法或者注释相关代码;比如a医院需要在c方法中使用name字段,则更改c方法新加读取name字段代码;但到了b医院不需要使用name字段,往往就要注释掉name字段或者更改b医院的c方法才能满足客户需求;传统方法通过编写多套代码来进行定制化服务,平台工作量较大且代码的扩展性和可维护性较低。技术实现要素:5.为了解决远程会诊平台中不同医院、检验所或兽医病理对于病人信息和格式上的不同要求,本发明提供了一种动态表单、字段配置及存储的方法及系统,基于json/xml的字段格式规则和sql语句动态创建规则,进行动态表单字段的配置和存储,实现动态表单渲染交互,提高字段配置和表单生成的灵活性,解决现有平台工作量大且代码的扩展性和可维护性较低的问题。6.为实现上述目的,本发明的一个或多个实施例提供了如下技术方案:7.本发明第一方面提供了一种动态表单、字段配置及存储的方法;8.一种动态表单、字段配置及存储的方法,包括:9.定义数据库初始字段,定义字段格式规则及sql语句动态创建规则,完成前置条件创建;10.用字段格式规则定义要增加或修改的目标字段,用sql语句动态创建规则完成目标表单和目标字段的动态关联存储;11.获取目标表单的所有字段数据,遍历解析每个字段成html标签,渲染成html页面,对用户在html标签上的输入内容进行校验,对校验通过的输入内容用sql语句动态创建规则进行数据库保存。12.进一步的,所述字段格式规则,是json/xml格式,包括字段类型、字段名称、字段显示名称、校验规则、数据库类型的属性。13.进一步的,所述sql语句动态创建规则,包括新增字段、修改字段类型、查询字段、删除字段、新增数据的sql语句模板。14.进一步的,要增加或修改的目标字段,根据字段格式规则中的属性,补充相应属性的值,得到json/xml格式的目标字段信息。15.进一步的,目标表单和目标字段的动态关联存储,用查询字段的sql语句获取目标表单存储在数据库中的所有字段,判断是否包括目标字段,存在则用修改字段类型、删除字段和新增字段的sql语句更新目标字段的数据库信息,不存在则用新增字段的sql语句保存目标字段,并存储目标表单与目标字段的关联关系。16.进一步的,根据目标表单与目标字段的关联关系,获取目标表单的所有字段数据;17.将每个字段的数据,根据字段格式规则中的字段类型、字段名称、字段显示名称、校验规则、数据库类型属性,解析成html标签。18.进一步的,根据字段格式规则中的校验规则,对用户在html标签上的输入内容进行校验。19.本发明第二方面提供了一种动态表单、字段配置及存储的系统。20.一种动态表单、字段配置及存储的系统,包括前置条件创建模块、动态表单字段存储模块和动态表单渲染交互模块;21.前置条件创建模块,被配置为:定义数据库初始字段,定义字段格式规则及sql语句动态创建规则,完成前置条件创建;22.动态表单字段存储模块,被配置为:用字段格式规则定义要增加或修改的目标字段,用sql语句动态创建规则完成目标表单和目标字段的动态关联存储;23.动态表单渲染交互模块,被配置为:获取目标表单的所有字段数据,遍历解析每个字段成html标签,渲染成html页面,根据字段格式规则,对用户在html页面上的输入进行校验,对校验通过的输入用sql语句动态创建规则进行数据库保存。24.本发明第三方面提供了计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现如本发明第一方面所述的一种动态表单、字段配置及存储的方法中的步骤。25.本发明第四方面提供了电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的程序,所述处理器执行所述程序时实现如本发明第一方面所述的一种动态表单、字段配置及存储的方法中的步骤。26.以上一个或多个技术方案存在以下有益效果:27.本发明提出的动态表单、字段配置及存储的方法,基于json/xml格式的字段格式规则和sql语句动态创建规则,将动态字段与关联的目标表单存储到数据库中,实现表单字段的动态管理;而目标表单的渲染和交互,则是从数据库中获取关联的字段进行动态解析渲染的方式实现的;28.这种动态表单、字段配置及存储的方法,提高了字段配置和表单生成的灵活性,减少了开发人员重复开发的工作量,提高了软件开发效率,解决现有平台工作量大且代码的扩展性和可维护性较低的问题。29.本发明附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。附图说明30.构成本发明的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。31.图1为第一个实施例的前置条件;32.图2为第一个实施例的动态表单字段存储流程图;33.图3为第一个实施例的表单数据;34.图4为第一个实施例的动态表单渲染交互流程图;35.图5为第一个实施例的字段数据;36.图6为第二个实施例的系统结构图。具体实施方式37.应该指出,以下详细说明都是示例性的,旨在对本公开提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本公开所属
技术领域
:的普通技术人员通常理解的相同含义。38.需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本公开的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。39.在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。40.实施例一41.本实施例公开了一种动态表单、字段配置及存储的方法;42.一种动态表单、字段配置及存储的方法,包括:43.步骤1:定义数据库初始字段,定义字段格式规则及sql语句动态创建规则,完成前置条件创建,如图1所示。44.前置条件1:定义数据库初始字段f,例如:姓名、性别、年龄。45.前置条件2:定义字段格式规则h,是json/xml格式,例如:46.{47.type:'input',48.name:'姓名',49.key:'input_name',50.rules:[{[0051]ꢀꢀꢀrequired:false,[0052]ꢀꢀꢀmessage:'必填项',[0053]ꢀꢀꢀregular:'^[a-za-z0-9]{4,40}$'[0054]}],[0055]datatype:'vachar(50)'[0056]}[0057]前置条件3:定义sql语句动态创建规则g,也就是sql语句模板,又分为:[0058]前置条件3.1:添加字段[0059]altertable表名addcolumn'字段名'字段类型默认值;[0060]前置条件3.2:修改字段类型[0061]altertable表名altercolumn'字段名'变更后的字段类型;[0062]前置条件3.3:查询字段[0063]select*frominformation_schema.columnswheretable_name='表名';[0064]前置条件3.4:删除字段[0065]altertable表名dropcolumn'字段名';[0066]前置条件3.5:添加数据[0067]insertinto表名('字段名1','字段名2',……)values('字段1值','字段2值',……)。[0068]步骤2:用字段格式规则定义要增加或修改的目标字段,用sql语句动态创建规则完成目标表单和目标字段的动态关联存储;[0069]用查询字段的sql语句获取目标表单存储在数据库中的所有字段,判断是否包括目标字段,存在则用修改字段类型、删除字段和新增字段的sql语句更新目标字段的数据库信息,不存在则用新增字段的sql语句保存目标字段,并存储目标表单与目标字段的关联关系。[0070]具体的应用场景是管理员在会诊平台的表单字段配置页面上进行动态表单字段的配置和存储,如图2所示,具体步骤为:[0071]步骤2-1:打开会诊平台表单字段配置页面,当表单字段信息发生变化后,点击保存按钮,根据字段格式规则h定义需增加或修改的字段,获取当前表单的json/xml结构数据,如图3所示,将增加或修改的字段信息及当前表单数据,通过http请求发送到服务端;[0072]步骤2-2:服务端收到字段信息和表单信息后,调用不同的json或xml解析方法,将字段信息和表单信息分别解析成字段对象集合m和表单对象u;[0073]步骤2-3:通过sql语句动态创建规则g中的前置条件3.3查询方法获取数据库表中的字段信息列表r;[0074]步骤2-4:通过for循环遍历字段对象集合m,设置i=0;[0075]步骤2-4-1:假设z=m[i],将z.key与表中数据r对比,判断z.key在r中是否存在,存在转到步骤2-4-2,不存在转到步骤2-4-3;[0076]步骤2-4-2:根据sql语句动态创建规则g中的前置条件3.3查询方法获取z.key在r中的字段类型,检测r中的z字段类型datatype与m中的类型是否一致,一致转到步骤2-4-4;不一致则根据m中z的datatype通过sql语句动态创建规则g中的前置条件3.2更改方法动态修改sql表字段类型,转到步骤2-4-4;[0077]步骤2-4-3:通过sql语句动态创建规则g中的前置条件3.1添加方法将z添加到数据库表中,转到步骤2-4-4;[0078]步骤2-4-4:根据m中z的字段名称及字段类型,判断z的表单类型是否为下拉列表,是转到步骤2-4-4-1;不是转到2-4-5;[0079]步骤2-4-4-1:获取数据库中数据字典表值;[0080]步骤2-4-4-2:遍历z的options,设j=0;[0081]步骤2-4-4-3:判断z[j]中的将每个options值是否存在于表中,若不存在则通过sql语句动态创建规则g中的前置条件3.5添加数据规则添加到数据字典表中后转到步骤2-4-4-4;存在的话,则直接转到步骤2-4-4-4;[0082]步骤2-4-4-4:j ,j小于等于z的options的长度则转到步骤2-4-4-3继续循环,大于z的options的长度结束循环转到步骤2-4-5;[0083]步骤2-4-5:从r中根据z.key删除对应字段,i ,i小于等于m的长度则转到步骤4.1继续循环,大于m的长度结束循环转到步骤5;[0084]步骤2-5:判断r的剩余长度是否大于0,等于0则转到步骤2-6;大于0则遍历r,将r中剩余字段通过sql语句动态创建规则g中的前置条件3.4删除方法从数据表中删除相应的列,转到步骤2-6;[0085]步骤2-6:字段存储完成后,根据表单对象u将m更新到数据库动态表单数据表中,动态表单及字段存储结束。[0086]步骤3:获取目标表单的所有字段数据,遍历解析每个字段成html标签,渲染成html页面,对用户在html标签上的输入内容进行校验,对校验通过的输入内容用sql语句动态创建规则进行数据库保存。[0087]根据目标表单与目标字段的关联关系,获取目标表单的所有字段数据;将每个字段的数据,根据字段格式规则中的字段类型、字段名称、字段显示名称、校验规则、数据库类型属性,解析成html标签。根据字段格式规则中的校验规则,对用户在html标签上的输入内容进行校验。[0088]具体的应用场景是管理员采用步骤2的方法配置完动态表单和字段后,如图4所示,动态表单渲染交互的具体步骤为:[0089]步骤3-1:打开会诊平台,根据进入的页面获取当前表单对象u,浏览器w发起http请求根据u获取当前表单的json/xml结构数据,如图3所示,根据目标表单与目标字段的关联关系,获取当前表单的所有字段数据,json/xml结构数据如图5所示;[0090]步骤3-2:浏览器w获取到表单数据和字段数据后,根据获取到的表单json/xml结构遍历获取每个字段的类型、标签、样式及校验规则等信息,根据信息渲染为html页面标签,如input则渲染《inputkey=""value=""》《/input》标签,每渲染一个标签则加载到html页面中,完成后转到步骤3-3;[0091]步骤3-3:用户在页面输入信息后,单击保存,获取模板中所有标签内容t,循环遍历校验t的每一项值,根据校验规则对其进行合法性校验,不符合则跳出循环提示用户不合法,转到步骤3-8;若均符合校验规则转到步骤3-4;[0092]步骤3-4:将内容t通过浏览器w发送到服务端,调用不同的json或xml解析方法,将内容t解析成字段对象集合m和表单对象u,通过规则g中的前置条件3.5添加数据方法将m保存到数据库中,并更新字段对象集合m,返回成功结果和m给浏览器w,转到步骤3-5;[0093]步骤3-5:浏览器w提示用户操作成功,浏览器w获取到字段对象集合后,遍历m,设e=0;[0094]步骤3-6:通过m[e].key,匹配html页面中与m[e].key相同的标签,将m[e]的值回写到标签value中;[0095]步骤3-7:e ,e小于等于m的长度则转到步骤3-6继续进行页面渲染,大于m的长度结束循环转到步骤3-8;[0096]步骤3-8:动态表单渲染交互结束。[0097]实施例二[0098]本实施例公开了一种动态表单、字段配置及存储的系统;[0099]如图6所示,一种动态表单、字段配置及存储的系统,包括前置条件创建模块、动态表单字段存储模块和动态表单渲染交互模块;[0100]前置条件创建模块,被配置为:定义数据库初始字段,定义字段格式规则及sql语句动态创建规则,完成前置条件创建;[0101]动态表单字段存储模块,被配置为:用字段格式规则定义要增加或修改的目标字段,用sql语句动态创建规则完成目标表单和目标字段的动态关联存储;[0102]动态表单渲染交互模块,被配置为:获取目标表单的所有字段数据,遍历解析每个字段成html标签,渲染成html页面,根据字段格式规则,对用户在html页面上的输入进行校验,对校验通过的输入用sql语句动态创建规则进行数据库保存。[0103]实施例三[0104]本实施例的目的是提供计算机可读存储介质。[0105]计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本公开实施例1所述的一种动态表单、字段配置及存储的方法中的步骤。[0106]实施例四[0107]本实施例的目的是提供电子设备。[0108]电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的程序,所述处理器执行所述程序时实现如本公开实施例1所述的一种动态表单、字段配置及存储的方法中的步骤。[0109]以上实施例二、三和四的装置中涉及的各步骤与方法实施例一相对应,具体实施方式可参见实施例一的相关说明部分。术语“计算机可读存储介质”应该理解为包括一个或多个指令集的单个介质或多个介质;还应当被理解为包括任何介质,所述任何介质能够存储、编码或承载用于由处理器执行的指令集并使处理器执行本发明中的任一方法。[0110]本领域技术人员应该明白,上述本发明的各模块或各步骤可以用通用的计算机装置来实现,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。本发明不限制于任何特定的硬件和软件的结合。[0111]上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献