一种调用业务规则的通用接口方法与流程

文档序号:14835599发布日期:2018-06-30 12:16阅读:612来源:国知局
一种调用业务规则的通用接口方法与流程

本发明涉及软件系统通用接口领域,具体来说是一种调用业务规则的通用接口方法。



背景技术:

在临床系统中存在大量需要外部规则判断的场景,这些规则所需要的参数和规则判断后返回的结果都可能各不相同,如果为每个业务规则分别定义不同的接口,在业务系统中调用这些规则的接口也必须是分别处理的,导致任何的变更都需要修改代码对应,这种方式显然无法达到用户要求的响应时间、对产品的交付效率和交付成本都是非常不利的,因此存在响应周期长、交付成本高、交付效率低等问题,需要进行有效的改进。



技术实现要素:

针对于现有技术所存在的响应周期长、交付成本高、交付效率低的缺陷,提供一种调用业务规则的通用接口方法。

为实现上述目的,本发明采用的技术方案是:一种调用业务规则的通用接口方法,具体步骤如下:

(1)、接口定义:

用户通过接口定义描述接口交互的通讯协议数据格式,并且定义规则所需要的参数、参数类型、参数获取方式;

(2)、规则定义:

根据业务逻辑的要求,定义具体规则的判断逻辑,根据输入的参数进行运算和逻辑判断,产生相应的输出或者触发新的处理过程;

(3)、规则参数解析:

对于接收到的请求参数,根据步骤(1)定义的参数列表分别进行解析处理,形成调用规则所需要的完整参数,并传递给规则调用处理子系统;

(4)、规则调用处理:

使用步骤(3)解析出的参数列表,调用请求参数中所指定的规则,执行具体的规则判断或逻辑运算处理,并根据规则定义中定义的结果执行响应的处理过程;

(5)、规则结果编码:

根据步骤(1)中定义的响应结果的数据结构,将步骤(4)中产生的结果进行编码并返回给调用者。

作为优选,所述的步骤(1)中,所述的通讯协议包括SOAP OVER HTTP或RAWHTTP,数据格式为xml或json。

作为优选,所述的步骤(2)中,触发新的处理过程包括发送邮件、发送短信、发送微信或修改外部存储的数据。

本发明相比现有技术具有以下优点:

(1)、本发明所定义的服务接口形式与具体的服务内容无关,调用方可以灵活组装数据调用不同的规则服务而不需要修改代码;

(2)、本发明所定义的服务接口具体参数是可灵活配置的;

(3)、本发明所定义的规则服务所需的数据可以是根据调用方传递的数据从外部存储库中读取的其它关联数据;

(4)、本发明所定义的规则服务的处理结果不只是返回给调用方,还可以通过通讯接口发送到其它设备上。

附图说明

图1是本发明的实施例1的流程图;

图2是本发明的实施例2的流程图;

图3是本发明的实施例3的流程图。

具体实施方式

为使对本发明的结构特征及所达成的功效有更进一步的了解与认识,用以较佳的实施例及附图配合详细的说明,说明如下:

实施例1

定义一个毒麻药剂量监测的规则接口,采用SOAP传输协议,输入输出数据采用JSON编码,输入数据中需要:患者ID、药品编码、药品名称、药品总剂量、药品次剂量,输出数据为当前药品使用是否合适;

定义毒麻药剂量监测的具体规则,设定每种毒麻药的次剂量使用上限、用量限制天数,并使用输入数据与设定值进行比较判断,分别给出不允许开立、次剂量超标、用量超过限制天数、允许开立等结果,如:对于药品“吗啡”,次剂量限制为低于10mg,每个处方限开一次的量;

对于接收到的请求中的输入数据:{"patientId":"325344","drugCode":"200045","drugName":"吗啡","totalDose":"12mg","singleDose":"12mg"},解析出患者325344使用吗啡的总量为12mg,每次剂量为12mg;

使用上面解析出的参数,调用定义好的毒麻药剂量监测规则,得出该次用药的次剂量超标的结果;

根据接口的定义,生成输出结果的JSON:{"result":"0","reason":"次剂量超标"},并返回给调用方。

实施例2

定义一个体温异常监测的规则服务,采用RAW HTTP的传输协议,数据采用JSON编码,输入数据需要:患者ID、体温、主管大夫,输出结果为患者是否疑似感染;

定义体温异常监测的具体规则,设定体温超过39摄氏度的输出为疑似感染,并且需要将结果以短信的形式推送给主管大夫;

对于接收到的请求数据:{"patientId":"325344","temperature":39.3,"doctor":"01523"}解析出患者325344的体温为39.3摄氏度;

使用上面解析出的参数,调用体温异常监测规则,判断出患者体温异常,为疑似感染患者,同时,将规则结果通过短信通知给主管大夫01523;

根据接口的定义,生成输出结果的JSON:{"result":"1","reason":"体温超过39摄氏度,疑似感染患者"},并返回给调用方。

实施例3

定义一个糖尿病人检验项目开立建议的规则服务,采用RAW HTTP的传输协议,数据采用JSON编码,输入数据需要:患者ID,输出结果为患者需要开立的检验项目列表;

定义糖尿病人检验项目开立建议的具体规则,设定糖尿病诊疗指南中定义的检验项目(如糖化血红蛋白、总胆固醇、甘油三酯、低密度脂蛋白胆固醇、高密度脂蛋白胆固醇、血肌酐等)及其检验时间的有效期;

对于接收到的请求数据:{"patientId":"325344"}解析出患者标识为325344,并且根据患者标识从数据中心存储库中查询到该患者最近半年所做过的检验项目及其检验时间列表;

使用上面解析出的患者标识和从数据中心获取的检验列表数据,调用糖尿病人检验项目开立建议规则,判断出需要开立的检验项目为血肌酐;

根据接口的定义,生成输出结果的JSON:{"result":["血肌酐"]},并返回给调用方。

以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是本发明的原理,在不脱离本发明精神和范围的前提下本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明的范围内。本发明要求的保护范围由所附的权利要求书及其等同物界定。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1