本申请涉及计算机技术领域,特别是涉及一种工作流数据的统一推送方法、装置及介质。
背景技术:
在企业已有的信息化系统中,往往存在自有引擎并且相对成熟的应用系统。如果要进行引擎切换改造相对困难,这是由于不同的应用系统采用不同的开发平台,不同的引擎,待办任务分布在不同的系统平台中,相互没有联系。
在用户处理生产经营活动时,需要在不同的应用系统中处理待办任务,即处理待办任务中所涉及到的工作流数据存放在各自数据库中,需要从不同的数据库中调用所需的数据,导致工作效率低,无法做到统一管理。
由此可见,面对多个不同应用系统时,如何提高处理待办任务的速度和统一管理是本领域技术人员亟待解决的问题。
技术实现要素:
本申请的目的是提供一种工作流数据的统一推送方法、装置及介质,用于面对多个不同应用系统时,可以提高处理待办任务的速度,并且实现统一管理。
为解决上述技术问题,本申请提供一种工作流数据的统一推送方法,包括:
预先配置数据监听过程中所需的配置参数以及所要监听的监听类型;
启动消息中间件;
在检测到工作流实例对象的当前活动状态更改为所述监听类型中的目标活动状态的情况下开始监听,并读取监听所得到的数据;
将所述数据发送至所述消息中间件以便接收方从所述消息中间件获取所述数据。
优选地,所述将所述数据发送至所述消息中间件包括:
根据预设需求从所述数据中筛选出所需要的数据;
将筛选出的数据发送至所述消息中间件。
优选地,所述将筛选出的数据发送至所述消息中间件包括:
将筛选出的数据加密后发送至所述消息中间件。
优选地,所述接收方为多个。
优选地,还包括:
在所述消息中间件的所述数据发生异常的情况下,向所述消息中间件再次发送所述数据。
优选地,所述工作流实例对象包括流程实例和活动实例。
优选地,所述工作流实例对象为活动实例,所述监听类型包括:
活动实例创建前、活动实例创建后、活动实例启动前、活动实例启动后、活动实例终止前、活动实例终止后、活动实例挂起前、活动实例挂起后、活动实例回复前、活动实例回复后、活动实例完成前、活动实例完成后、活动实例跳转前、活动实例跳转后、活动实例回退前、活动实例回退后、活动实例放回前、活动实例放回后、活动实例追回前、活动实例追回后。
为解决上述技术问题,本申请还提供一种工作流数据的统一推送装置,其特征在于,包括:
配置模块,用于预先配置数据监听过程中所需的配置参数以及所要监听的监听类型;
启动模块,用于启动消息中间件;
监听模块,用于在检测到工作流实例对象的当前活动状态更改为所述监听类型中的目标活动状态的情况下开始监听,并读取监听所得到的数据;
发送模块,用于将所述数据发送至所述消息中间件以便接收方从所述消息中间件获取所述数据。
为解决上述技术问题,本申请还提供一种工作流数据的统一推送装置,包括存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如所述的工作流数据的统一推送方法的步骤。
为解决上述技术问题,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如所述的工作流数据的统一推送方法的步骤。
本申请所提供的工作流数据的统一推送方法,包括:预先配置数据监听过程中所需的配置参数以及所要监听的监听类型;启动消息中间件;在检测到工作流实例对象的当前活动状态更改为监听类型中的目标活动状态的情况下开始监听,并读取监听所得到的数据;将数据发送至消息中间件以便接收方从消息中间件获取数据。应用于本技术方案,可以通过消息中间件的功能将不同工作流引擎所得到的数据进行统一管理,无需从多个不同的数据库中调用所需的数据,提高了工作效率。并且,消息中间件能够实现一对一,以及一对多的提供服务,所以适用于多个不同应用系统的数据融合。
此外,本申请所提供的工作流数据的统一推送装置及介质与上述方法相对应,效果同上。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种工作流数据的统一推送方法的流程图;
图2为本申请实施例提供的一种工作流数据的统一推送装置的结构图;
图3为本申请实施例提供的另一种工作流数据的统一推送装置的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本申请保护范围。
本申请的核心是提供一种工作流数据的统一推送方法、装置及介质。
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。
本申请中所提到的工作流数据的统一推送方法可以由一台服务器实现,所提到的接收方可以是服务器等其它设备,消息中间件在得到数据后,接收方可以读取消息中间件的数据,从而实现数据的获取。
图1为本申请实施例提供的一种工作流数据的统一推送方法的流程图。如图1所示,该方法包括:
s10:预先配置数据监听过程中所需的配置参数以及所要监听的监听类型。
在具体实施中,需要根据实际需求在流程设计器配置相关的配置参数,例如对于活动节点的配置。可以理解的是,监听类型具体不作限定,可以依据工作流实例对象的不同而设置,例如,工作流实例对象为活动实例,监听类型包括:活动实例创建前、活动实例创建后、活动实例启动前、活动实例启动后、活动实例终止前、活动实例终止后、活动实例挂起前、活动实例挂起后、活动实例回复前、活动实例回复后、活动实例完成前、活动实例完成后、活动实例跳转前、活动实例跳转后、活动实例回退前、活动实例回退后、活动实例放回前、活动实例放回后、活动实例追回前、活动实例追回后。
s11:启动消息中间件。
需要说明的是,步骤s10和s11通常情况下,不分先后,优选地,在s10之后,再启动消息中间件。可以理解的是,由于在执行待办任务的过程中必然需要用到引擎,所以还需要启动工作流引擎。工作流引擎在工作流实例对象(如流程实例、活动实例)状态改变时,工作流引擎会对其进行监听,并公开改变前后的事件接口。在启动工作流引擎后,待办任务会按照既有流程执行。
消息中间件是基于队列与消息传递技术,在网络环境中为应用系统提供异步或同步、可靠的消息传输的支撑性软件系统。
s12:在检测到工作流实例对象的当前活动状态更改为监听类型中的目标活动状态的情况下开始监听,并读取监听所得到的数据。
在待办任务执行过程中,工作流实例对象的当前状态会随之变化,如果当前状态更改为s10中所设置的目标活动状态的情况下,则开始触发监听机制,在监听过程中可以获取到相应的数据。
s13:将数据发送至消息中间件以便接收方从消息中间件获取数据。
在具体实施中,为了方便接收快速获取到有用的数据,可以预先对所得到的数据添加数据标志,使得接收方可以根据数据标志快速找到想要获取的数据。另外,为了实现数据传输的安全性,防止被篡改,可以对数据进行加密,利用对称加密算法或非对称加密算法,本实施例不作限定。
接收方可以是一个,也可以是多个,对于消息中间件来说可以接收多个接收方的访问请求。消息中间件在得到数据后,接收方会自动访问从而得到数据,如果接收方未启动,那么消息中间件中的数据未被消费,当接收方启动后可从消息中间件获取数据。
本实施例提供的工作流数据的统一推送方法,包括:预先配置数据监听过程中所需的配置参数以及所要监听的监听类型;启动消息中间件;在检测到工作流实例对象的当前活动状态更改为监听类型中的目标活动状态的情况下开始监听,并读取监听所得到的数据;将数据发送至消息中间件以便接收方从消息中间件获取数据。应用于本技术方案,可以通过消息中间件的功能将不同工作流引擎所得到的数据进行统一管理,无需从多个不同的数据库中调用所需的数据,提高了工作效率。并且,消息中间件能够实现一对一,以及一对多的提供服务,所以适用于多个不同应用系统的数据融合。
在上述实施例的基础上,作为优选地实施方式,将数据发送至消息中间件包括:
根据预设需求从数据中筛选出所需要的数据;
将筛选出的数据发送至消息中间件。
在具体实施中,通过监听说得到的数据通常是状态变化前后的所有数据,而这些数据中,包含了用户需要的数据,也包含了用户不需要的数据,如果将全部数据通过消息中间件发送给接收方,造成了资源浪费。本实施例中,对监听所得到的数据进行筛选,只保留与预设需求对应的数据。可以理解的是,预设需求不作限定,并且可以更改。
在上述实施例的基础上,还包括:
在消息中间件的数据发生异常的情况下,向消息中间件再次发送数据。
在具体实施中,数据的传输中难免会遇到数据传输错误的异常,例如,数据本身发生错误,或者数据丢失都属于异常的情况。通过向消息中间件再次发送数据能够保证接收方所获取到的数据是正常数据。
在上述实施例中,对于工作流数据的统一推送方法进行了详细描述,本申请还提供工作流数据的统一推送装置对应的实施例。需要说明的是,本申请从两个角度对装置部分的实施例进行描述,一种是基于功能模块的角度,另一种是基于硬件结构的角度。
图2为本申请实施例提供的一种工作流数据的统一推送装置的结构图。如图2所示,该装置包括:
配置模块10,用于预先配置数据监听过程中所需的配置参数以及所要监听的监听类型;
启动模块11,用于启动消息中间件;
监听模块12,用于在检测到工作流实例对象的当前活动状态更改为监听类型中的目标活动状态的情况下开始监听,并读取监听所得到的数据;
发送模块13,用于将数据发送至消息中间件以便接收方从消息中间件获取数据。
作为优选地实施方式,还包括:
检测模块,用于在所述消息中间件的所述数据发生异常的情况下,向所述消息中间件再次发送所述数据。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
本实施例提供的工作流数据的统一推送装置,包括:配置模块,用于预先配置数据监听过程中所需的配置参数以及所要监听的监听类型;启动模块,用于启动消息中间件;监听模块,用于在检测到工作流实例对象的当前活动状态更改为监听类型中的目标活动状态的情况下开始监听,并读取监听所得到的数据;发送模块,用于将数据发送至消息中间件以便接收方从消息中间件获取数据。应用于本技术方案,可以通过消息中间件的功能将不同工作流引擎所得到的数据进行统一管理,无需从多个不同的数据库中调用所需的数据,提高了工作效率。并且,消息中间件能够实现一对一,以及一对多的提供服务,所以适用于多个不同应用系统的数据融合。
图3为本申请实施例提供的另一种工作流数据的统一推送装置的结构图。如图3所示,该装置包括存储器20,用于存储计算机程序;
处理器21,用于执行计算机程序时实现如上述实施例记载的工作流数据的统一推送方法的步骤。
本实施例提供的工作流数据的统一推送装置可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用dsp(digitalsignalprocessing,数字信号处理)、fpga(field-programmablegatearray,现场可编程门阵列)、pla(programmablelogicarray,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(centralprocessingunit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21可以在集成有gpu(graphicsprocessingunit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器21还可以包括ai(artificialintelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。
存储器20可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器20还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器20至少用于存储以下计算机程序201,其中,该计算机程序被处理器21加载并执行之后,能够实现前述任一实施例公开的工作流数据的统一推送方法的相关步骤。另外,存储器20所存储的资源还可以包括操作系统202和数据203等,存储方式可以是短暂存储或者永久存储。其中,操作系统202可以包括windows、unix、linux等。数据203可以包括但不限于监听所得到的数据。
在一些实施例中,工作流数据的统一推送装置还可包括有显示屏22、输入输出接口23、通信接口24、电源25以及通信总线26。
本领域技术人员可以理解,图3中示出的结构并不构成对工作流数据的统一推送方法的限定,可以包括比图示更多或更少的组件。
本实施例提供的工作流数据的统一推送装置,包括存储器和处理器,处理器用于在执行存储器所存储的计算机程序时,实现如下方法:预先配置数据监听过程中所需的配置参数以及所要监听的监听类型;启动消息中间件;在检测到工作流实例对象的当前活动状态更改为监听类型中的目标活动状态的情况下开始监听,并读取监听所得到的数据;将数据发送至消息中间件以便接收方从消息中间件获取数据。应用于本技术方案,可以通过消息中间件的功能将不同工作流引擎所得到的数据进行统一管理,无需从多个不同的数据库中调用所需的数据,提高了工作效率。并且,消息中间件能够实现一对一,以及一对多的提供服务,所以适用于多个不同应用系统的数据融合。
最后,本申请还提供一种计算机可读存储介质对应的实施例。计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述方法实施例中记载的步骤。
可以理解的是,如果上述实施例中的方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
以上对本申请所提供的工作流数据的统一推送方法、装置及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
1.一种工作流数据的统一推送方法,其特征在于,包括:
预先配置数据监听过程中所需的配置参数以及所要监听的监听类型;
启动消息中间件;
在检测到工作流实例对象的当前活动状态更改为所述监听类型中的目标活动状态的情况下开始监听,并读取监听所得到的数据;
将所述数据发送至所述消息中间件以便接收方从所述消息中间件获取所述数据。
2.根据权利要求1所述的工作流数据的统一推送方法,其特征在于,所述将所述数据发送至所述消息中间件包括:
根据预设需求从所述数据中筛选出所需要的数据;
将筛选出的数据发送至所述消息中间件。
3.根据权利要求2所述的工作流数据的统一推送方法,其特征在于,所述将筛选出的数据发送至所述消息中间件包括:
将筛选出的数据加密后发送至所述消息中间件。
4.根据权利要求1至3任意一项所述的工作流数据的统一推送方法,其特征在于,所述接收方为多个。
5.根据权利要求1所述的工作流数据的统一推送方法,其特征在于,还包括:
在所述消息中间件的所述数据发生异常的情况下,向所述消息中间件再次发送所述数据。
6.根据权利要求1所述的工作流数据的统一推送方法,其特征在于,所述工作流实例对象包括流程实例和活动实例。
7.根据权利要求6所述的工作流数据的统一推送方法,其特征在于,所述工作流实例对象为活动实例,所述监听类型包括:
活动实例创建前、活动实例创建后、活动实例启动前、活动实例启动后、活动实例终止前、活动实例终止后、活动实例挂起前、活动实例挂起后、活动实例回复前、活动实例回复后、活动实例完成前、活动实例完成后、活动实例跳转前、活动实例跳转后、活动实例回退前、活动实例回退后、活动实例放回前、活动实例放回后、活动实例追回前、活动实例追回后。
8.一种工作流数据的统一推送装置,其特征在于,包括:
配置模块,用于预先配置数据监听过程中所需的配置参数以及所要监听的监听类型;
启动模块,用于启动消息中间件;
监听模块,用于在检测到工作流实例对象的当前活动状态更改为所述监听类型中的目标活动状态的情况下开始监听,并读取监听所得到的数据;
发送模块,用于将所述数据发送至所述消息中间件以便接收方从所述消息中间件获取所述数据。
9.一种工作流数据的统一推送装置,其特征在于,包括存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述的工作流数据的统一推送方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的工作流数据的统一推送方法的步骤。
技术总结