发明内容
本说明书描述了一种业务规则的管理方法,通过提供一个可视化的业务规则的管理平台,可以实现更加方便、快捷地对业务规则的存储和维护。
根据第一方面,提供一种业务规则的管理方法,所述方法包括:
接收工作人员基于业务规则编辑模版输入的针对业务规则进行配置的第一数据,所述第一数据中至少包括用于定义所述业务规则的规则条件的多个数据项;将所述多个数据项解析成具有预定格式的系统代码;将所述系统代码存储在数据库中。
在一个实施例中,其中将所述多个数据项解析成具有预定格式的系统代码,包括:调用与所述多个数据项中各个数据项所对应的解析器,对所述各个数据项进行解析,得到对应的数据项代码;基于所述对应的数据项代码,形成所述具有预定格式的系统代码。
进一步地,在一个具体的实施例中,其中形成所述具有预定格式的系统代码,包括:将所述对应的数据项代码进行组合,得到所述系统代码。
在另一个具体的实施例中,所述多个数据项中包括至少一个运算符、至少一个值类型和与所述至少一个值类型对应的至少一项值内容,其中每个值类型和对应的每项值内容构成一组运算内容。
更进一步地,在一个例子中,所述调用与所述多个数据项中各个数据项所对应的解析器,对所述各个数据项进行解析,包括:调用与所述至少一个运算符中的各个运算符对应的运算符解析器,对所述各个运算符进行解析;调用与所述至少一个值类型中的各个值类型对应的值解析器,对与所述各个值类型对应的各组运算内容进行解析。
在另一个例子中,其中:所述业务规则模版包括运算符下拉框,所述运算符下拉框中包括多个备选运算符,用于引导所述工作人员从中选定多个数据项中包括的各个运算符;所述业务规则模版中还包括值类型下拉框,所述值类型下拉框中包括多个备选值类型,用于引导所述工作人员从中选定多个数据项中包括的各个值类型;所述业务规则模版中还包括文本框,用于引导所述工作人员输入与所述各个值类型对应的值内容。
再进一步地,在一个具体的例子中,其中,所述多个备选运算符包括以下中的多种:加法运算符,判断值存在运算符,在取值范围内运算符,超出取值范围运算符,包含关系运算符,非包含关系运算符,值相等运算符,值不相等运算符,正则运算符,起始关系运算符;所述多个备选值类型包括以下中的多种:数组、数值、字符和参数。
在一个实施例中,其中在将所述系统代码存储在数据库中之后,还包括:响应于工作人员针对所述业务规则的操作指令,从所述数据库中调用所述系统代码;对所述系统代码进行逆解析,得到所述多个数据项;基于所述多个数据项生成业务规则展示界面,用于展示所述业务规则。
进一步地,在一个具体的实施例中,其中,所述业务规则展示界面中包括,规则表达式。
在另一个具体的实施例中,所述操作指令包括查询指令或编辑指令。
在一个实施例中,其中,所述业务规则还包括规则配置信息,所述第一数据中还包括针对所述规则配置信息的至少一个信息项,所述至少一个信息项包括以下中的至少一种:规则名称、规则描述、业务场景和系统框架。
根据第二方面,提供一种业务规则的管理平台,所述管理平台包括:接收单元,配置为接收工作人员基于业务规则编辑模版输入的针对业务规则进行配置的第一数据,所述第一数据中至少包括用于定义所述业务规则的规则条件的多个数据项;解析单元,配置为将所述多个数据项解析成具有预定格式的系统代码;存储单元,配置为将所述系统代码存储在数据库中。
根据第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面的方法。
根据第四方面,提供了一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面的方法。
采用本说明书实施例披露的管理方法,使得工作人员可以通过管理平台对业务规则进行创建、存储、查看和编辑。此外,还可以基于存储的业务规则构建接口服务,以供其他程序调用,可以提供业务规则的核对接口、测试接口,等等。如此,通过提供一个可视化的业务规则的管理平台,可以实现更加方便、快捷地对业务规则的存储和维护。
具体实施方式
下面结合附图,对本说明书披露的多个实施例进行描述。
本说明书实施例提供一种业务规则的管理方法。下面,首先对所述方法的发明构思和应用场景进行介绍。
目前,对于业务规则的编辑,包括创建、更改和删除,通常是由工作人员在文档,如excel表格,中进行的。这给业务规则的存储和维护等造成了很大程度的限制和不便。
对此,发明人构建一种管理平台,使工作人员可以基于此管理平台方便、快捷地完成对业务规则的管理。在一个例子中,基于图1中示出的业务规则的编辑界面,工作人员可以快速、准确地完成业务规则的创建。进一步地,响应于工作人员对界面中提交按钮的点击指令,平台可以对工作人员创建的业务规则进行解析和存储,以便于工作人员在后续中对该业务规则进行其他操作,包括查看、更改等,例如,在图2中的界面中对已创建的业务规则进行可视化显示,以方便工作人员查看。下面,结合具体的实施例,对所述管理方法进行介绍。
图3示出根据一个实施例的业务规则的管理方法流程图,所述方法的执行主体可以为上述构建的管理平台。在一个实施例中,此管理平台可以包括客户端和服务端,其中客户端用于与工作人员进行交互,以接收工作人员输入的数据、指令等,以及向工作人员展示可视化界面,而服务端可以用于获取工作人员输入的数据、指令,对获取的数据进行解析、存储,以及生成可视化界面等。
如图3所示,所述方法流程包括以下步骤:步骤S310,接收工作人员基于业务规则编辑模版输入的针对业务规则进行配置的第一数据,其中第一数据至少包括用于定义所述业务规则的规则条件的多个数据项;步骤S320,将多个数据项解析成具有预定格式的系统代码;步骤S330,将系统代码存储在数据库中。以上步骤具体如下:
首先,在步骤S310,接收工作人员基于业务规则编辑模版输入的针对业务规则进行配置的第一数据,其中第一数据中至少包括用于定义所述业务规则的规则条件的多个数据项。
需要说明的是,业务规则用于描述业务数据的处理规则,业务规则包括规则条件和在规则条件下的操作,具体地,在基于业务规则对业务数据进行处理的过程中,如果满足规则条件,则可以触发对应的操作。在一个例子中,某条业务规则用于对表中的数据进行过滤操作,具体包括对表中小于1000的数据进行保留。相应地,该业务规则中的业务条件为表中的数据小于1000。为了配置该规则条件,需要配置的内容包括:表的名称、用于表示表中数据的参数A、<、1000,以及其中表的名称、参数A和1000所对应的数据类型。
基于此,发明人提出,可以将规则条件划分为多个数据项,具体包括至少一个运算符、至少一个值类型和至少一项值内容,其中每个值类型和对应的值内容构成一组运算内容。在前述的例子中,运算符包括=和<,而值内容包括表的名称、参数A(可以理解为参数A的名称)、1000,对应的值类型分别为表、参数、字符,其中每个值类型和对应的值内容构成一组运算内容,例如,字符和10000构成一组运算内容。
进一步地,发明人提出设计一种业务规则编辑模版,以使工作人员可以基于此模版,对上述规则条件中的多个数据项进行拆分输入,进而便捷、准确地完成对规则条件的配置。
具体地,在一个实施例中,上述业务规则模版中包括运算符下拉框,所述运算符下拉框中包括多个备选运算符,用于引导工作人员从中选定多个数据项中包括的各个运算符。在一个具体的实施例中,多个备选运算符可以包括:加法运算符,判断值存在运算符,在取值范围内运算符,超出取值范围运算符,包含关系运算符,非包含关系运算符,值相等运算符,值不相等运算符,正则运算符,起始关系运算符,等等。在一个具体的例子中,其中各种运算符的表达形式可以由业务规则模版的设计人员预先设置,例如,加法运算符的具体形式可以设置为“+”,包含关系运算符的具体形式可以设置为“contains”。
在一个实施例中,其中业务规则模版中还包括值类型下拉框,其中值类型下拉框中包括多个备选值类型,用于引导工作人员从中选定多个数据项中包括的各个值类型。在一个具体的实施例中,多个备选运算符可以包括:数组、数值、字符和参数.
在一个实施例中,其中业务规则模版中还包括文本框,用于引导工作工作人员输入与各个值类型对应的值内容。
由上,根据一个具体的实施例,业务规则模版中包括至少一个运算符下拉框、至少一个值类型下拉框和与所述至少一个类型下拉框具有相同数量的文本框。进一步地,在一个例子中,工作人员可以根据需要对其中运算符下拉框、值类型下拉框和文本框的数量进行增加或删减,且下拉框和文本框具有预定的排列方式,其中排列方式可以由业务规则模版的设计人员进行设定。
根据一个具体的例子,图4示出的编辑界面中包括业务规则模版,其中包括运算符下拉框、值类型下拉框和文本框。进一步地,基于图4中的业务规则模版,接收的多个数据项可以包括:表(值类型)、attr.param_value(值内容)、参数(值类型)、on param_key(值内容)、=(运算符)、参数(值类型)、batchMaxCount(值内容)、<(运算符)、字符(值类型)、10000(值内容)。
如此,通过设计业务规则模版,可以引导用户更加方便、快捷、准确地完成第一数据的输入。
以上,可以接收工作人员输入的多个数据项。接着,在步骤S320,将多个数据项解析成具有预定格式的系统代码。
在一个实施例中,本步骤可以包括:首先,调用与多个数据项中各个数据项所对应的解析器,对其中各个数据项进行解析,得到对应的数据项代码;然后,基于得到的对应的数据项代码,形成具有预定格式的系统代码。
进一步地,在一个具体的实施例中,如前所述,多个数据项中可以包括至少一个运算符。相应地,可以调用与至少一个运算符中的各个运算符对应的运算符解析器,对所述各个运算符进行解析,得到对应的数据项代码。需要说明的是,管理平台或其他具有处理能力的设备中可以存储有多个运算符解析器,用于解析不同种类的运算符。其中,不同种类的运算符可以包括前述提及的任一种运算符。在一个例子中,至少一个运算符中包括加法运算符“+”,基于此,可以调用加法解析器对“+”进行解析。
在另一个具体的实施例中,如前所述,多个数据项中可以包括至少一个值类型和对应的至少一项值内容,且其中每个值类型和对应的每项值内容构成一组运算内容。相应地,可以调用与至少一个值类型中的各个值类型对应的值解析器,对于各个值类型对应的各组运算内容进行解析。需要说明的是,管理平台或其他具有处理能力的设备中可以存储有多个值解析器,用于解析具有不同种类值类型的值内容。其中,不同种类的值类型可以包括前述提及的任一种值类型。在一个例子中,多个数据项中包括值类型“字符”和对应的值内容“10000”,基于此,可以调用字符解析器对“字符”和“10000”进行解析,以得到对应的数据项代码。例如,基于值类型“字符”进行解析,得到数据项代码"type":1。
以上,可以对多个数据项中的各个数据项进行解析,得到对应的数据项代码。接着,可以基于得到的数据项代码,形成具有预定格式的系统代码。在一个具体的实施例中,其中预定格式可以理解为由管理平台的开发人员预先设定的针对规则条件的代码格式。在一个具体的实施例中,可以将得到的与多个数据项对应数据项代码进行组合,以得到系统代码。
根据一个具体的例子,假定规则条件为,finbatch使用的文件交换码必须在filebridge已定义,在一种可能的实现方式中,用于定义该规则条件的多个数据项可以包括:
表(值类型)、fin_file_template_map.file_exchange_code(值内容)、in(运算符)、表(值类型)、v_file_exchange_code.FILE_EXCHANGE_CODE(值内容)、and(运算符)、表(值类型)、v_file_exchange_code.FILE_EXCHANGE_CODE(值内容)、参数(值类型)、FILE_EXCHANGE_CODE(值内容)、参数(值类型)。
对上述多个数据项进行解析以后,得到的系统代码如下:
{"alterEntry":false,"list":[{"alterEntry":false,"list":
[{"alterEntry":false,"data":"fin_file_template_map.file_exchange_code","operator":false,"type":1,"valid":true},
{"alterEntry":false,"data":"v_file_exchange_code.FILE_EXCHANGE_CODE","operator":false,"type":1,"valid":true}],"op":"in","operator":true,"valid":true}
由上,可以将多个数据项解析成具有预定格式的系统代码。然后,在步骤S230,将系统代码存储在数据库中。
在一个实施例中,可以设置专门用于存储系统代码的数据库,相应地,可以将得到的系统代码存储至此数据库中。在另一个实施例中,可以在数据库中预先划分出用于存储系统代码的区域,相应地,可以将得到的系统代码存储到预先划分的区域中。
由上,可以接收工作人员输入的针对业务规则进行配置的第一数据,并完成对其中多个数据项的解析和存储。
需要说明的是,在一个实施例中,业务规则还包括规则配置信息,相应地,第一数据中还可以包括针对所述规则配置信息的至少一个信息项,且至少一个信息项包括以下中的至少一种:规则名称、规则描述、运行状态、提交人(可以理解为输入第一数据的工作人员)、业务场景和系统框架。在一个具体的实施例中,其中运行状态具体可以包括运行中、运行暂停和禁止运行,等等。在一个具体的实施例中,其中业务场景指在业务执行的过程中可能出现的场景,例如,支付场景、转账场景,生活缴费场景,等等。另一方面,在一个具体的实施例中,对于针对规则配置信息的至少一个信息项的输入,可以在业务规则模版中设置对应的下拉框或文本框。在一个例子中,如图4所示,其中示出的业务规则模版中包括用于选定系统框架和业务场景的下拉框,以及用于输入规则名称和描述的文本框。
此外,根据另一方面的实施例,在步骤S230之后,还可以包括:响应于用户针对业务规则的操作指令,从数据库中调用所述系统代码;对系统代码进行逆解析,得到多个数据项;基于多个数据项生成业务规则展示界面,用于展示所述业务规则。
进一步地,在一个具体的实施例中,其中操作指令可以包括查询指令或编辑指令,等等。在一个具体的实施例中,其中对系统代码进行逆解析,得到多个数据项,可以包括:将系统代码拆分为多个数据项代码,基于所述多个数据项代码,对应得到多个数据项。在另一个具体的实施例中,其中对系统代码进行逆解析,得到多个数据项,可以包括:从系统代码中提取出多个数据项。
在一个具体的实施例中,如前所述,第一数据中还包括针对规则配置信息的至少一个信息项,相应地,可以基于多个数据项和至少一个信息项生成业务规则展示界面。在一个例子中,业务规则展示界面中包括多个数据项而确定的展示信息,展示信息用于对规则条件进行可视化展示,以使工作人员通过查看此展示信息可以清楚、明了的知晓业务规则中的规则条件。进一步地,其中展示信息可以通过多种形式呈现。在一个具体的例子中,展示信息可以为表格的形式。在另一个具体的例子中,如图2所示,针对多个数据项的展示信息可以为规则表达式的形式,例如,bl_use_rule.context(on engines contains"limitProdTrans")contains"limitProdTrans"。在另一个例子中,业务规则展示界面中包括基于至少一个信息项而确定的规则配置信息。
以上,可以实现工作人员对管理平台中存储的业务规则的多种操作,如,查看,编辑、批量删除,等等。
综上可知,采用本说明书实施例披露的管理方法,使得工作人员可以通过管理平台对业务规则进行创建、存储、查看和编辑。此外,还可以基于存储的业务规则构建接口服务,以供其他程序调用,可以提供业务规则的核对接口、测试接口,等等。如此,通过提供一个可视化的业务规则的管理平台,可以实现更加方便、快捷地对业务规则的存储和维护。
根据另一方面的实施例,本说明书还提供一种管理平台。图5示出根据一个实施例的业务规则的管理平台结构图。如图5所示,该平台500包括:
接收单元510,配置为接收工作人员基于业务规则编辑模版输入的针对业务规则进行配置的第一数据,所述第一数据中至少包括用于定义所述业务规则的规则条件的多个数据项;
解析单元520,配置为将所述多个数据项解析成具有预定格式的系统代码;
存储单元530,配置为将所述系统代码存储在数据库中。
在一个实施例中,其中解析单元520具体包括:
调用模块521,配置为调用与所述多个数据项中各个数据项所对应的解析器,对所述各个数据项进行解析,得到对应的数据项代码;
形成模块522,配置为基于所述对应的数据项代码,形成所述具有预定格式的系统代码。
在一个实施例中,其中形成模块522具体配置为:
将所述对应的数据项代码进行组合,得到所述系统代码。
在一个实施例中,其中,所述多个数据项中包括至少一个运算符、至少一个值类型和与所述至少一个值类型对应的至少一项值内容,其中每个值类型和对应的每项值内容构成一组运算内容。
进一步地,在一个具体的实施例中,其中调用模块521具体配置为:
调用与所述至少一个运算符中的各个运算符对应的运算符解析器,对所述各个运算符进行解析;
调用与所述至少一个值类型中的各个值类型对应的值解析器,对与所述各个值类型对应的各组运算内容进行解析。
在另一个具体的实施例中,其中:
所述业务规则模版包括运算符下拉框,所述运算符下拉框中包括多个备选运算符,用于引导所述工作人员从中选定多个数据项中包括的各个运算符;
所述业务规则模版中还包括值类型下拉框,所述值类型下拉框中包括多个备选值类型,用于引导所述工作人员从中选定多个数据项中包括的各个值类型;
所述业务规则模版中还包括文本框,用于引导所述工作人员输入与所述各个值类型对应的值内容。
更进一步地,在一个例子中,其中,所述多个备选运算符包括以下中的多种:加法运算符,判断值存在运算符,在取值范围内运算符,超出取值范围运算符,包含关系运算符,非包含关系运算符,值相等运算符,值不相等运算符,正则运算符,起始关系运算符;所述多个备选值类型包括以下中的多种:数组、数值、字符和参数。
在一个实施例中,所述管理平台500还包括:
响应单元540,配置为响应于工作人员针对所述业务规则的操作指令,从所述数据库中调用所述系统代码;
逆解析单元550,配置为对所述系统代码进行逆解析,得到所述多个数据项;
生成单元560,配置为基于所述多个数据项生成业务规则展示界面,用于展示所述业务规则。
进一步地,在一个具体的实施例中,所述业务规则展示界面中包括,规则表达式。
在另一个具体的实施例中,其中,所述操作指令包括查询指令或编辑指令。
在一个实施例中,所述业务规则还包括规则配置信息,所述第一数据中还包括针对所述规则配置信息的至少一个信息项,所述至少一个信息项包括以下中的至少一种:规则名称、规则描述、业务场景和系统框架。
综上可知,采用本说明书实施例披露的管理平台,使得工作人员可以通过管理平台对业务规则进行创建、存储、查看和编辑。此外,还可以基于存储的业务规则构建接口服务,以供其他程序调用,可以提供业务规则的核对接口、测试接口,等等。如此,通过提供一个可视化的业务规则的管理平台,可以实现更加方便、快捷地对业务规则的存储和维护。
如上,根据再一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图3所描述的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图3所描述的方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本说明书披露的多个实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本说明书披露的多个实施例的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本说明书披露的多个实施例的具体实施方式而已,并不用于限定本说明书披露的多个实施例的保护范围,凡在本说明书披露的多个实施例的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本说明书披露的多个实施例的保护范围之内。