掌桥专利:专业的专利平台
掌桥专利
首页

一种基于Drools规则的实时酬金结算系统及方法

文献发布时间:2023-06-19 11:29:13


一种基于Drools规则的实时酬金结算系统及方法

技术领域

本发明涉及电信业务支撑领域,尤其是涉及一种基于Drools规则的实时酬金结算系统及方法。

背景技术

目前,电信运营商的业务销售系统中,铁通行销人员、手机卖场促销员等一线人员销售积极性不高、激励效果不明显,为提高推广业务人员的积极性,满足业务发展对酬金结算管理的更高要求,电信运营商提出酬金日结。

酬金日结的实现可采用drools规则实现,因涉及业务众多,各业务端操作管理员需要手动编写自由业务的结算drools规则,由于drools规则不易理解,故自行编写难以实现,需要建立一套实时结算系统,使业务端操作管理员输入数据信息,通过系统中Drools规则完成酬金结算。

发明内容

针对上述问题,本发明提供了一种基于Drools规则的实时酬金结算系统及方法,通过建立结算平台,将结算规则保存在缓存中,同时将结算规则实时同步个个结算终端,进而在结算时适配规则完成结算。

为实现上述目的,本发明提供了面向JAVA组件的源码深度监控方法,包括:

实体信息管理模块、规则配置模块、结算模块;

所述实体信息管理模块,用于:

注册不同业务的源数据实体和结算输出实体;

对写入的结算订单进行数据采集、预处理和封装获得源数据实体信息;

所述规则配置模块,用于:

配置不同业务的结算规则、规则结算条件;

配置结算规则适配程序;

根据所述结算规则适配程序将所述结算规则和规则结算条件转换为结算Drools规则;

所述结算模块,用于:

读取所述结算Drools规则创建执行器,消费实体信息管理模块的所述源数据实体信息;

判断所述源数据实体信息是否满足规则结算条件;

若满足,则所述结算Drools规则按照所述结算规则对结算订单进行薪酬结算,并输出结算输出实体信息。

作为本发明的进一步改进,所述源数据实体和结算输出实体均为一种数据结构,所述数据结构中包括字段名称和字段类型;

所述源数据实体中的字段包括业务名称,用户状态、入网时间、套餐费、结算对象;

所述结算输出实体中的字段包括结算对象、结算时间和结算金额。

作为本发明的进一步改进,所述结算规则中包括套餐费的返点比例,根据所述源数据实体信息中的套餐费及所述返点比例计算所述结算金额。

作为本发明的进一步改进,所述规则配置模块采用zookeeper对所述结算规则、规则结算条件的状态进行监听,当所述状态发生变化时,实时通知配置在不同主机上的各结算模块;

所述结算模块重新读取所述结算Drools规则。

作为本发明的进一步改进,所述结算Drools规则保存在Redis缓存中,所述结算模块在Redis缓存中读取所述结算Drools规则并创建StatelessKieSession执行器。

本发明还提供了一种基于Drools规则的实时酬金结算系统的方法,包括:

在实体信息管理模块注册不同业务的源数据实体和结算输出实体;

在规则配置模块配置不同业务的结算规则、规则结算条件,通过结算规则适配程序转换为结算Drools规则;

实体信息管理模块对操作管理员写入的结算订单进行数据采集、预处理和封装获得源数据实体信息;

结算模块读取所述结算Drools规则创建执行器,消费实体信息管理模块的所述源数据实体信息;

判断所述源数据实体信息是否满足规则结算条件;

若满足,则所述结算Drools规则按照所述结算规则对结算订单进行薪酬结算,并输出结算输出实体信息。

作为本发明的进一步改进,所述源数据实体和结算输出实体均为一种数据结构,所述数据结构中包括字段名称和字段类型;

所述源数据实体中的字段包括业务名称,用户状态、入网时间、套餐费、结算对象;

所述结算输出实体中的字段包括结算对象、结算时间和结算金额。

作为本发明的进一步改进,所述结算规则中包括套餐费的返点比例,根据所述源数据实体信息中的套餐费及所述返点比例计算所述结算金额。

作为本发明的进一步改进,所述规则配置模块采用zookeeper对所述结算规则、规则结算条件的状态进行监听,当所述状态发生变化时,实时通知配置在不同主机上的各结算模块;

所述结算模块重新读取所述结算Drools规则。

作为本发明的进一步改进,所述结算Drools规则保存在Redis缓存中,所述结算模块在Redis缓存中读取所述结算Drools规则并创建StatelessKieSession执行器。

与现有技术相比,本发明的有益效果为:

本发明为业务配置了结算规则和规则结算条件,并通过结算规则适配程序将其转化为结算Drools规则,使结算Drools规则覆盖于web页面之下,操作业务员不再需要手动编写drools规则,只需配置实体信息管理模块的源数据实体及规则配置模块的规则,即可完成酬金结算系统的配置,酬金系统再对结算订单进行结算,有效地提高了酬金结算效率。

本发明通过结算规则适配程序,在结算规则发生变化时不需要重新编写结算Drools规则,通过结算规则适配程序将数据库中的规则信息转换为Drools规则大大的提升开发效率和实施效率。

本发明还采用zookeeper这一分布式应用程序协调服务,实现了配置在不同主机上的结算模块的同步刷新,避免了规则变化时不同主机中结算规则存在差异的问题,同时,更新后不需要重启结算模块,节省结算时间。

附图说明

图1为本发明一种实施例公开的基于Drools规则的实时酬金结算系统示意图;

图2为本发明一种实施例公开的基于Drools规则的实时酬金结算方法流程图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

下面结合附图对本发明做进一步的详细描述:

如图1所示,本发明提供的一种基于Drools规则的实时酬金结算系统,包括:实体信息管理模块、规则配置模块、结算模块;

实体信息管理模块,用于:

注册不同业务的源数据实体和结算输出实体;

对写入的结算订单进行数据采集、预处理和封装获得源数据实体信息;

其中,

源数据实体和结算输出实体均为一种数据结构,数据结构中包括字段名称和字段类型;源数据实体中的字段包括业务名称,用户状态、入网时间、套餐费、结算对象;结算输出实体中的字段包括结算对象、结算时间和结算金额;

进一步的,根据业务不同,结算对象包括业务员、渠道和门店。

规则配置模块,用于:

配置不同业务的结算规则、规则结算条件;

配置结算规则适配程序;

根据结算规则适配程序将结算规则和规则结算条件转换为结算Drools规则;

其中,

结算规则中包括套餐费的返点比例,根据源数据实体信息中的套餐费及返点比例计算结算金额。

规则配置模块采用zookeeper对结算规则、规则结算条件的状态进行监听,当状态发生变化时,实时通知配置在不同主机上的各结算模块;结算模块重新读取结算Drools规则。

结算模块,用于:

读取结算Drools规则创建执行器,消费实体信息管理模块的源数据实体信息;

判断源数据实体信息是否满足规则结算条件;

若满足,则结算Drools规则按照结算规则对结算订单进行薪酬结算,并输出结算输出实体信息。

其中,

结算Drools规则保存在Redis缓存中,结算模块在Redis缓存中读取结算Drools规则并创建StatelessKieSession执行器。

如图2所示,本发明还提供了一种基于Drools规则的实时酬金结算方法,包括:

S1、在实体信息管理模块注册不同业务的源数据实体和结算输出实体;

其中,

源数据实体和结算输出实体均为一种数据结构,数据结构中包括字段名称和字段类型;

源数据实体中的字段包括业务名称,用户状态、入网时间、套餐费、结算对象;

结算输出实体中的字段包括结算对象、结算时间和结算金额。

进一步的,根据业务不同,结算对象包括业务员、渠道和门店。

S2、在规则配置模块配置不同业务的结算规则、规则结算条件,通过结算规则适配程序转换为结算Drools规则;

其中,

规则结算条件为源数据实体中字段之间的逻辑关系;

结算规则中包括套餐费的返点比例

进一步的,规则配置模块采用zookeeper对结算规则、规则结算条件的状态进行监听,当状态发生变化时,实时通知配置在不同主机上的各结算模块;

S3、实体信息管理模块对操作管理员写入的结算订单进行数据采集、预处理和封装获得源数据实体信息;

S4、结算模块读取结算Drools规则创建执行器,消费实体信息管理模块的源数据实体信息;

其中,结算Drools规则保存在Redis缓存中,结算模块在Redis缓存中读取结算Drools规则并创建StatelessKieSession执行器;

当规则状态发生变化时,结算模块重新读取结算Drools规则。

S5、判断源数据实体信息是否满足规则结算条件;

S6、若满足,则结算Drools规则按照结算规则对结算订单进行薪酬结算,并输出结算输出实体信息。

其中,根据源数据实体信息中的套餐费及返点比例计算结算金额。

实施例:A地移动营业厅营业员办理一张开卡即可获得该卡套餐月费80%的酬金,以营业厅业务员B成功办理一项开卡业务为例;

步骤1、A地移动营业厅结算系统操作管理员,在实体信息管理模块写入结算订单信息,包括业务名称:开卡;用户状态:有效;入网时间:2020.12.21;套餐费50元/月;结算对象:业务员B;

步骤2、实体信息管理模块按照系统中注册的开卡业务的源数据实体中需求信息,采集操作管理员输入的信息,预处理并封装获得源数据实体信息;源数据实体信息包括业务名称:开卡;用户状态:有效;入网时间:2020.12.21;套餐费50元/月;结算对象:业务员B;

步骤3、结算模块读取Redis缓存中的结算Drools规则创建StatelessKieSession执行器,StatelessKieSession执行器消费实体信息管理模块的源数据实体信息;

步骤4、规则结算条件为用户状态等于有效,开卡时间为2020.12.21,判定该结算订单满足该条件;

步骤5、则结算Drools规则按照结算规则对结算订单进行薪酬结算,即套餐费50元*80%=40元;

步骤6、结算输出实体中包括:结算对象、结算时间、结算金额;结算输出实体信息如下所示:

本发明的优点:

为业务配置了结算规则和规则结算条件,并通过结算规则适配程序将其转化为结算Drools规则,使结算Drools规则覆盖于web页面之下,操作业务员不再需要手动编写drools规则,只需配置实体信息管理模块的源数据实体及规则配置模块的规则,即可完成酬金结算系统的配置,酬金系统再对结算订单进行结算,有效地提高了酬金结算效率。

通过结算规则适配程序,在结算规则发生变化时不需要重新编写结算Drools规则,通过结算规则适配程序将数据库中的规则信息转换为Drools规则大大的提升开发效率和实施效率。

采用zookeeper这一分布式应用程序协调服务,实现了配置在不同主机上的结算模块的同步刷新,避免了规则变化时不同主机中结算规则存在差异的问题,同时,更新后不需要重启结算模块,节省结算时间。

以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

相关技术
  • 一种基于Drools规则的实时酬金结算系统及方法
  • 一种基于Drools规则引擎的群养母猪饲喂站物联网管控系统及方法
技术分类

06120112939686