CN106897810A - 业务处理方法和***、工作流引擎和***、业务*** - Google Patents
业务处理方法和***、工作流引擎和***、业务*** Download PDFInfo
- Publication number
- CN106897810A CN106897810A CN201510959011.7A CN201510959011A CN106897810A CN 106897810 A CN106897810 A CN 106897810A CN 201510959011 A CN201510959011 A CN 201510959011A CN 106897810 A CN106897810 A CN 106897810A
- Authority
- CN
- China
- Prior art keywords
- node
- workflow
- operation system
- information
- pending
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0633—Workflow analysis
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Operations Research (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Educational Administration (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例公开了一种业务处理方法和***、工作流引擎和***、业务***,其中,方法包括:接收到流程实例创建请求,从工作流数据库获取创建请求中***ID对应的流程ID;从工作流数据库获取工作流程中开始节点的节点信息,包括节点ID和节点属性的参数值;以开始节点作为待执行节点,向业务***返回待执行节点的节点信息;其中,待执行节点预先设置在业务***中;接收到业务***返回的执行结果消息,从工作流数据库获取去向节点的节点信息,并以去向节点作为待执行节点,执行向业务***返回待执行节点的节点信息的操作。本发明实施例可以提高工作流程的可配置性和复用性。
Description
技术领域
本发明涉及数据处理技术,尤其是一种业务处理方法和***、工作流引擎和***、业务***。
背景技术
工作流程是指工作事项的活动流向顺序,包括实际工作过程中的工作环节、步骤和程序。在业务流程的传统实现方式中,许多公司采用纸张表单、手工传递的方式,一级一级审批签字,工作效率非常低下,对于统计报表功能则不能实现。
随着计算机技术、网络技术和数据库技术的发展和普及,各类企业及个人信息化应用层出不穷,工作流(WorkFlow)应运而生。工作流就是工作流程的计算模型,即将工作流程中的工作如何前后组织在一起的逻辑和规则在计算机中以恰当的模型进行表示并对其实施计算。工作流要解决的主要问题是:为实现某个业务目标,在多个参与者之间,利用计算机,按某种预定规则自动传递文档、信息或者任务。采用工作流软件,使用者只需在电脑上填写有关表单,任务会按照定义好的流程自动往下进行,下一级审批者将会收到相关资料,并可以根据需要修改、跟踪、管理、查询、统计、打印等,相对于工作流程的传统实现方式,大大提高了效率,实现了知识管理,提升了公司的核心竞争力。
然而,在实现本发明的过程中,发明人发现:在现有的销售等业务***中,均通过硬编码方式直接配置工作流程,由于工作流程是直接配置在业务***中的一套硬编码,一旦配置完成,调整工作流程引起的业务变更量巨大。
发明内容
本发明实施例所要解决的一个技术问题是:提供一种业务处理方法和***、工作流引擎和***、业务***,以提高工作流程的可配置性和复用性。
为解决上述技术问题,根据本发明实施例的一个方面,提供的一种业务处理方法,包括:
响应于接收到业务***发送的流程实例创建请求,从工作流数据库获取所述创建请求中***ID对应的流程ID;其中,***ID唯一标识所述业务***,流程ID唯一标识一个工作流程;
从工作流数据库获取所述流程ID所标识工作流程中开始节点的节点信息,所述节点信息包括节点ID和节点属性的参数值;
以开始节点作为待执行节点,向业务***返回所述待执行节点的节点信息,以便由所述业务***执行所述待执行节点;其中,所述待执行节点预先设置在所述业务***中;
响应于接收到业务***执行完毕所述待执行节点返回的执行结果消息,从工作流数据库获取来源节点为所述待执行节点的流转条件的去向节点,从工作流数据库获取所述去向节点的节点信息,并以所述去向节点作为待执行节点,执行所述向业务***返回所述待执行节点的节点信息的操作。
在另一实施例的业务处理方法中,所述业务***执行所述待执行节点包括:
所述业务***根据所述待执行节点的节点信息,从业务***获取并执行所述待执行节点,与用户进行信息交互并对用户提交的数据进行处理,记录用户提交的数据与执行的操作。
在另一实施例的业务处理方法中,还包括:
所述业务***对用户提交的数据处理完毕后,获得执行数据结果并存储,以及向工作流引擎返回执行结果消息。
在另一实施例的业务处理方法中,所述工作流数据库中包括流程信息表,用于存储各工作流程的流程基础信息,每个工作流程的流程基础信息包括***ID与流程ID;
所述从工作流数据库获取所述创建请求中***ID对应的流程ID包括:从流程信息表中查询所述创建请求中***ID对应的流程ID。
在另一实施例的业务处理方法中,所述工作流数据库中包括节点信息表,用于存储各节点的节点基础信息,每个节点的节点基础信息包括节点ID、节点所属的工作流程的流程ID、节点类型的参数值和节点属性的参数值;
所述从工作流数据库获取所述流程ID所标识工作流程中开始节点的节点信息包括:从节点信息表中获取包括所述对应的流程ID的所有节点基础信息;从所述所有节点基础信息中获取节点类型的参数值为开始节点的节点基础信息;从节点类型的参数值为开始节点的节点基础信息中获取节点ID和节点属性的参数值。
在另一实施例的业务处理方法中,节点类型的参数值包括:开始节点、结束节点、流转条件节点、普通节点、分支节点或聚合节点;
所述节点属性包括节点类型对应的业务模型或流转条件,所述业务模型包括业务逻辑功能单元、任务的执行角色与处理人员,所述流转条件包括来源节点、去向节点和条件表达式;
节点类型的参数值为流转条件节点、分支节点或聚合节点时,对应的节点属性为流转条件,所述节点属性的参数值具体为:来源节点ID、去向节点ID和具体条件表达式;
节点类型值为开始节点、结束节点或普通节点时,对应的节点属性为业务模型,所述节点属性的参数值具体为:执行角色ID与处理人员的用户ID。
根据本发明实施例的另一个方面,提供的一种工作流引擎,包括:
第一接收单元,用于接收业务***发送的消息;
第一获取单元,用于在第一接收单元接收到业务***发送的流程实例创建请求时,从工作流数据库获取所述创建请求中***ID对应的流程ID;其中,***ID唯一标识所述业务***,流程ID唯一标识一个工作流程;
第二获取单元,用于从工作流数据库获取所述流程ID所标识工作流程中开始节点的节点信息,所述节点信息包括节点ID和节点属性的参数值;
第一发送单元,用于以开始节点作为待执行节点,向业务***返回所述待执行节点的节点信息,以便由所述业务***执行所述待执行节点;其中,所述待执行节点预先设置在所述业务***中;
第三获取单元,用于在第一接收单元接收到业务***执行完毕所述待执行节点返回的执行结果消息时,从工作流数据库获取来源节点为所述待执行节点的流转条件的去向节点,从工作流数据库获取所述去向节点的节点信息,并以所述去向节点作为待执行节点,执行所述向业务***返回所述待执行节点的节点信息的操作。
根据本发明实施例的又一个方面,提供的一种业务***,包括:
第二发送单元,用于向工作流引擎发送流程实例创建请求,所述创建请求中包括***ID;其中,***ID唯一标识所述业务***;以及向工作流引擎返回执行结果消息;
第二接收单元,用于接收工作流引擎返回的待执行节点的节点信息;
业务处理单元,用于根据所述待执行节点的节点信息,从节点库获取并执行所述待执行节点,与用户进行信息交互并对用户提交的数据进行处理,在业务数据库中记录用户提交的数据与执行的操作;并在对用户提交的数据处理完毕后,获得执行数据结果并存储在业务数据库中,以及指示第二发送单元向工作流引擎返回执行结果消息;其中,构成工作流程的各节点预先设置在所述节点库中。
根据本发明实施例的又一个方面,提供的一种工作流***,其特征在于,包括本发明上述实施例所述的工作流引擎
根据本发明实施例的另一个方面,提供的一种业务处理***,包括本发明上述实施例所述的工作流引擎和本发明上述任一实施例所述的业务***。基于本发明上述实施例提供的业务处理方法和***、工作流引擎和***、业务***,构成工作流程的各节点预先设置在业务***中,节点信息,包括节点ID和节点属性的参数值,存储在工作流数据库中,业务***调用工作流程时,可以通过一个装置,例如工作流引擎,按照流程路径从工作流数据库依次查询节点信息发送给业务***,由业务***执行相应节点。本发明实施例中,构成工作流程所需的各节点是单独设置的,节点的设置与其属性参数的配置是独立的过程,在编码上工作流引擎不再与业务业务***同属一个***,实现了代码层面的解耦;在数据存储上,工作流数据库仅保存流程相关信息而不保存业务实体数据,业务***仅保持业务实体数据而不保存流程相关信息,实现了数据层面的解耦合,当业务实体数据发生变化时,工作流程无需变更,提高了工作流程的可配置性和复用性。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
构成说明书的一部分的附图描述了本发明的实施例,并且连同描述一起用于解释本发明的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本发明,其中:
图1为本发明业务处理方法一个实施例的流程图。
图2为本发明业务处理方法另一个实施例的流程图。
图3为本发明业务处理方法又一个实施例的流程图。
图4为本发明业务处理方法再一个实施例的流程图。
图5为本发明业务处理方法还一个实施例的流程图。
图6为本发明工作流引擎一个实施例的结构示意图。
图7为本发明工作流引擎另一个实施例的结构示意图。
图8为本发明业务***一个实施例的结构示意图。
图9为本发明业务***另一个实施例的结构示意图。
图10为本发明工作流***一个实施例的结构示意图。
图11为本发明业务处理***一个实施例的结构示意图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
图1为本发明业务处理方法一个实施例的流程图。本发明各实施例的业务处理方法具体可以由一个业务***外的装置,例如工作流引擎,执行。如图1所示,该实施例的业务处理方法包括:
102,响应于接收到业务***发送的流程实例创建请求,从工作流数据库获取创建请求中***ID对应的流程ID。
其中,***ID唯一标识一个业务***,流程ID唯一标识一个工作流程。
在本发明的一个具体示例中,可以在工作流数据库中存储流程信息表,来存储各工作流程的流程基础信息,每个工作流程的流程基础信息可以包括***ID与流程ID,另外还可以包括流程的创建时间、最后修改时间、流程名称等信息。则可以从流程信息表中查询创建请求中***ID对应的流程ID。
工作流程就是一系列相互衔接、自动进行的业务活动或任务;可以将整个业务过程看作是一条河,其中流过的河水就是待审核的表单。
104,从工作流数据库获取创建请求中流程ID所标识工作流程中开始节点的节点信息,包括节点ID和节点属性的参数值;并以开始节点作为待执行节点,执行操作106。
在本发明的一个具体示例中,可以在工作流数据库中存储节点信息表,用于存储各节点的节点基础信息,每个节点的节点基础信息可以包括节点ID、节点所属的工作流程的流程ID、节点类型的参数值和节点属性的参数值,另外还可以包括节点的创建、最后修改时间等信息。则可以通过如下方式获取开始节点的节点信息:从节点信息表中获取包括上述流程ID的所有节点基础信息;从所有节点基础信息中获取节点类型的参数值为开始节点的节点基础信息;从节点类型的参数值为开始节点的节点基础信息中获取节点ID和节点属性的参数值。
其中,节点类型的参数值例如可以包括:开始节点、结束节点、流转条件节点、普通节点、分支节点或聚合节点;节点属性包括节点类型对应的业务模型或流转条件,业务模型可以包括业务逻辑功能单元、任务的执行角色与处理人员,流转条件可以包括来源节点、去向节点和条件表达式。
其中,开始节点、结束节点是一种特殊的节点,可以固定初始化任务或收尾结束任务。在一个工作流程中,只有一个开始节点,可以有多个结束节点。
其中,流转条件节点是一个带有条件的向量节点,默认条件为true。此节点的条件判断最终产生true或false,以确定能否流转至工作流程中的下一节点。普通节点通常是绑定数据模型的节点,一般可将数据呈现为可以操作的表单等形式,用于人机交互,有用户对表单进行审批等处理。聚合节点也是一种特殊节点,用来汇聚工作流中的分支,此节点是一个绑定数据模型、自动执行的节点。分支节点的作用是实现工作流程的并行流转,因为分支节点的功能特性,决定了其下至少要有两条流出的连线。在一个工作流程中,可以有多个流转条件节点、普通节点、分支节点、聚合节点。
节点类型的参数值为流转条件节点、分支节点或聚合节点时,对应的节点属性为流转条件,节点属性的参数值具体为:来源节点ID、去向节点ID和具体条件表达式。
节点类型值为开始节点、结束节点或普通节点时,对应的节点属性为业务模型,节点属性的参数值具体为:执行角色ID与处理人员的用户ID。
在本发明的一个具体示例中,上述流程信息表和节点信息表可以由一个装置,例如工作流设计器,对业务***中构成工作流程的各节点的属性参数配置参数值时生成,其中的属性参数包括节点ID参数、节点类型与节点属性。
106,向业务***返回待执行节点的节点信息,以便由业务***执行该待执行节点。
其中,各待执行节点即构成工作流程的各节点,预先设置在业务***中。
示例性地,业务***执行该待执行节点,即:业务***根据该待执行节点的节点信息,从业务***获取并执行待执行节点,与用户进行信息交互并对用户提交的数据进行处理,并可以选择性地记录用户提交的数据与执行的操作。另外,业务***对用户提交的数据处理完毕后,获得执行数据结果后还可以存储,并向工作流引擎返回执行结果消息。
108,响应于接收到业务***执行完毕待执行节点返回的执行结果消息,从工作流数据库获取来源节点为待执行节点的流转条件的去向节点。
基于操作104中的示例,可以从节点信息表中查询对应的流程ID的节点基础信息,获取来源节点ID为待执行节点ID的流转条件的参数值中的去向节点ID。
110,从工作流数据库获取去向节点的节点信息,并以去向节点作为待执行节点,执行操作106。
基于本发明上述实施例提供的业务处理方法,构成工作流程的各节点预先设置在业务***中,节点信息存储在工作流数据库中,业务***调用工作流程时,可以通过一个装置,例如工作流引擎,按照流程路径从工作流数据库依次查询节点信息发送给业务***,由业务***执行相应节点。本发明实施例中,构成工作流程所需的各节点是单独设置的,节点的设置与其属性参数的配置是独立的过程,在编码上工作流引擎不再与业务业务***同属一个***,实现了代码层面的解耦;在数据存储上,工作流数据库仅保存流程相关信息而不保存业务实体数据,业务***仅保持业务实体数据而不保存流程相关信息,实现了数据层面的解耦合,当业务实体数据发生变化时,工作流程无需变更,提高了工作流程的可配置性和复用性。
在本发明业务处理方法的另一个实施例中,如果流转条件的参数值中还包括具体条件表达式,相应地,操作108中接收到的执行结果消息中还包括在执行待执行节点的过程中由用户提交的数值,例如请假流程中用户提交的请假天数;则该操作108中,可以将用户提交的数值作为具体条件表达式中自由变量的值进行计算,根据计算结果确定去向节点ID,从而获得去向节点ID(即:下一节点ID)。例如请假流程中,请假条件为:请五天以下假只需经理审批,请五天以上假需要总监审批,则将用户提交的请假天数作为具体条件表达式中自由变量的值进行计算,便可以获知下一节点是经理审批还是总监审批。
如图2所示,为本发明业务处理方法一个实施例的流程图。与图1所示实施例相比,该实施例在图1所示实施例的流程之前,还可以包括:
202,业务***接收用户登录后发送的实例创建指示,该实例创建指示中包括用户ID。
其中,用户ID唯一标识业务***中注册的一个用户。
204,业务***从用户信息库中查询实例创建指示中用户ID对应的执行角色ID,并向工作流引擎发送创建请求,该创建请求中包括***ID、执行角色ID与用户ID。
另外,在操作104之后,还包括:
206,根据开始节点的节点属性的参数值对创建请求中的执行角色ID与用户ID进行权限认证。
只有在创建请求中的执行角色ID与用户ID通过权限认证时,才执行操作106,向业务***返回开始节点的节点信息。否则,不执行本发明实施例的其他操作。
图3为本发明业务处理方法又一个实施例的流程图。如图3所示,该实施例的业务处理方法包括:
302,响应于接收到业务***发送的流程实例创建请求,从工作流数据库获取创建请求中***ID对应的流程ID。
其中,***ID唯一标识一个业务***,流程ID唯一标识一个工作流程。
304,创建上述流程ID所标识工作流程的工作流程实例,并为该工作流程实例分配流程实例ID。
其中,流程实例ID唯一标识一个工作流程实例。
306,在工作流数据库的流程实例表中记录流程ID所标识工作流程的流程实例信息,并设置流程实例状态为未完成。
其中,流程实例信息可以包括流程实例ID、工作流程实例所属工作流程的流程ID、***ID和流程实例状态,流程实例状态包括未完成或已完成。另外,流程实例信息还可以包括流程实例的创建时间、最后修改时间、流程实例的状态是否正常等信息。
308,从工作流数据库获取创建请求中流程ID所标识工作流程中开始节点的节点信息,包括节点ID和节点属性的参数值;并以开始节点作为待执行节点,执行操作310。
310,向业务***返回待执行节点的节点信息,以便由业务***执行该待执行节点。
312,响应于接收到业务***执行完毕待执行节点返回的执行结果消息,根据上述待执行节点的节点信息,识别待执行节点是否结束节点。
若待执行节点不是结束节点,执行操作314。若待执行节点是结束节点,执行操作316。
314,从工作流数据库获取来源节点为上述待执行节点的流转条件的去向节点。
之后,不执行本实施例的后续操作。
316,将流程实例信息中的流程实例状态变更为已完成。
图4为本发明业务处理方法再一个实施例的流程图。如图4所示,与图3所示实施例相比,该实施例中,在操作308之后,还包括:402,激活开始节点,将开始节点的节点状态变更为已激活待处理,并在工作流数据库的实例节点表中记录开始节点的节点实例信息,该节点实例信息包括流程实例ID、开始节点的节点ID、节点状态、节点属性的参数值,另外还可以包括节点实例信息的创建时间、最后修改时间等信息;节点状态包括:未激活、待处理、处理中或者完成。
在操作310之后,还包括:404,将开始节点的节点状态变更为处理中。
进一步地,再参见图4,在本发明业务处理方法的另一个实施例中,还可以在操作314之后,执行:
406,激活去向节点,将去向节点变更为待执行节点,并将来源节点的节点状态变更为完成。
408,将待执行节点的节点状态变更为已激活待处理,并在工作流数据库的实例节点表中记录该待执行节点的节点实例信息,该节点实例信息包括流程实例ID、待执行节点的节点ID、节点状态、节点属性的参数值。
另外,在本发明业务处理方法的进一步实施例中,在操作406之后,若接收到业务***未成功执行待执行节点返回的执行失败消息,将来源节点变更为待执行节点,并将该来源节点的节点状态变更为已激活待处理,然后执行310向业务***返回待执行节点的节点信息的操作。
在本发明的一个可选示例中,业务模型还可以包括回溯处理方式,回溯处理方式的参数值具体为是否需要同一个处理人员处理回溯任务。则该示例中,操作310中向业务***返回的待执行节点的节点信息中还包括回溯处理方式的参数值,以便业务***根据回溯处理方式的参数值确定执行本次任务的处理人员的用户ID,实现了任务分配的合理性、流程的高效性。
另外,在本发明业务处理方法的又一个实施例中,通过操作310向业务***返回待执行节点的节点信息后,还可以包括:业务***向待执行节点的节点信息中的执行角色ID和处理人员的用户ID发送处理任务通知消息,以便相应的用户登录后处理本次任务。
用户登录后,通过本发明如下实施例的操作,可以看到需要由该用户处理的任务:
用户登录业务***收到任务通知消息后,发送任务请求消息,该任务请求消息中包括请求用户的用户ID和被分配的执行角色ID;
业务***将该任务请求消息转发给工作流引擎;
工作流引擎查询工作流数据库中的实例节点表,获取节点状态为已激活待处理、且包括任务请求消息中执行角色ID和用户ID的节点,向业务***返回获取到的节点的节点ID;
业务***根据工作流引擎发送的节点ID,显示相应节点中的任务以便由请求用户处理本次任务。
在本发明业务处理方法的另一个实施例中,业务模型还可以包括任务分配策略,任务分配策略的参数值具体为任务分配策略的类型,例如可以包括指派型、竞争型、动态会签型或者平均分配型。
若配置任务分配策略的类型为指派型,节点属性的参数值中,配置有具体的执行角色ID与处理人员的用户ID;
若配置任务分配策略的类型为竞争型,节点属性的参数值中,配置有具体的执行角色ID未配置处理人员的用户ID;
若配置任务分配策略的类型为动态会签型,节点属性的参数值中,配置具体的执行角色ID,处理人员的参数值配置为执行角色ID中任务执行效率最高的处理人员;
若配置任务分配策略的类型为平均分配型,节点属性的参数值中,配置有具体的执行角色ID,处理人员的参数值被配置为执行角色ID中按照依次轮换方式确定的处理人员。
则在业务模型还可以包括任务分配策略时,业务***显示相应节点中的任务具体是,业务***根据工作流引擎发送的节点ID,从包括该节点ID的节点信息中获取业务模型的参数值,根据该业务模型的参数值确定处理本次任务的用户ID;并向处理本次任务的用户ID显示获取到的节点中的任务以便该用户处理。
图5为本发明业务处理方法还一个实施例的流程图。如图5所示,与本发明上述各实施例的业务处理方法相比,该实施例中,在业务向处理本次任务的用户ID显示获取到的节点中的任务后,还包括:
502,响应于接收到处理本次任务的用户发送的流程实例进度显示请求,业务***向工作流引擎转发流程实例进度显示请求,该流程实例进度显示请求中包括流程实例ID和用户ID。
504,工作流引擎根据流程实例ID,从工作流数据库获取对应的流程ID、该流程ID相关的节点信息表、以及流程实例ID相关的节点实例信息并返回业务***。
506,业务***根据工作流引擎返回的节点信息表和节点实例信息,显示当前的工作流程路径和工作流程实例进度,获取并在表示工作流程实例进度的各节点上显示处理任务的用户ID和用户进行的操作信息。
在本发明各实施例的业务处理方法中,业务***具体可以通过调用耦合设置的工作流引擎的应用程序接口(API),例如采用超文本传输协议(HTTP),与工作流引擎进行信息交互。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
图6为本发明工作流引擎一个实施例的结构示意图。该实施例的工作流引擎可用于实现本发明上述各业务处理方法实施例。如图6所示,该实施例的工作流引擎包括第一接收单元、第一获取单元、第二获取单元、第一发送单元和第三获取单元。其中:
第一接收单元,用于接收业务***发送的消息。
第一获取单元,用于在第一接收单元接收到业务***发送的流程实例创建请求时,从工作流数据库获取创建请求中***ID对应的流程ID。其中,***ID唯一标识一个业务***,流程ID唯一标识一个工作流程。
第二获取单元,用于从工作流数据库获取创建请求中流程ID所标识工作流程中开始节点的节点信息,包括节点ID和节点属性的参数值。
第一发送单元,用于以开始节点作为待执行节点,向业务***返回待执行节点的节点信息,以便由业务***执行待执行节点。其中,待执行节点,即:构成工作流程的各节点,预先设置在业务***中。
第三获取单元,用于在第一接收单元接收到业务***执行完毕待执行节点返回的执行结果消息时,从工作流数据库获取来源节点为待执行节点的流转条件的去向节点,从工作流数据库获取去向节点的节点信息,并以去向节点作为待执行节点,由第一发送单元执行向业务***返回待执行节点的节点信息的操作。
基于本发明上述实施例提供的工作流引擎,构成工作流程的各节点预先设置在业务***中,节点信息,包括节点ID和节点属性的参数值,存储在工作流数据库中,业务***调用工作流程时,工作流引擎按照流程路径从工作流数据库依次查询节点信息发送给业务***,由业务***执行相应节点。本发明实施例中,构成工作流程所需的各节点是单独设置的,节点的设置与其属性参数的配置是独立的过程,在编码上工作流引擎不再与业务业务***同属一个***,实现了代码层面的解耦;在数据存储上,工作流数据库仅保存流程相关信息而不保存业务实体数据,业务***仅保持业务实体数据而不保存流程相关信息,实现了数据层面的解耦合,当业务实体数据发生变化时,工作流程无需变更,提高了工作流程的可配置性和复用性。
作为工作流引擎实施例的一个具体示例,工作流数据库中可以包括流程信息表,用于存储各工作流程的流程基础信息,每个工作流程的流程基础信息包括***ID与流程ID。相应地,第一获取单元具体从流程信息表中查询创建请求中***ID对应的流程ID。
作为工作流引擎实施例的另一个具体示例,工作流数据库中可以包括节点信息表,用于存储各节点的节点基础信息,每个节点的节点基础信息包括节点ID、节点所属的工作流程的流程ID、节点类型的参数值和节点属性的参数值。相应地,第二获取单元,具体从节点信息表中获取包括对应的流程ID的所有节点基础信息;从该所有节点基础信息中获取节点类型的参数值为开始节点的节点基础信息;从节点类型的参数值为开始节点的节点基础信息中获取节点ID和节点属性的参数值。
具体地,节点类型的参数值可以包括:开始节点、结束节点、流转条件节点、普通节点、分支节点或聚合节点。节点属性可以包括节点类型对应的业务模型或流转条件,业务模型包括业务逻辑功能单元、任务的执行角色与处理人员,流转条件包括来源节点、去向节点和条件表达式。
节点类型的参数值为流转条件节点、分支节点或聚合节点时,对应的节点属性为流转条件,节点属性的参数值具体为:来源节点ID、去向节点ID和具体条件表达式。
节点类型值为开始节点、结束节点或普通节点时,对应的节点属性为业务模型,节点属性的参数值具体为:执行角色ID与处理人员的用户ID。
在一个具体示例中,上述流程信息表和节点信息表可以由一个装置,例如工作流设计器,对业务***中构成工作流程的各节点的属性参数配置参数值时生成,其中的属性参数包括节点ID参数、节点类型与节点属性。
作为工作流引擎实施例的又一个具体示例,第三获取单元从工作流数据库获取来源节点为待执行节点的流转条件的去向节点时,具体可以从节点信息表中查询对应的流程ID的节点基础信息,获取来源节点ID为待执行节点ID的流转条件的参数值中的去向节点ID。
在进一步的具体示例中,流转条件的参数值中还可以包括具体条件表达式,执行结果消息中还可以包括在执行待执行节点的过程中由用户提交的数值。则第三获取单元获取来源节点ID为待执行节点ID的流转条件的参数值中的去向节点ID时,具体将用户提交的数值作为具体条件表达式中自由变量的值进行计算,根据计算结果确定去向节点ID。
另外,业务模型还可以包括任务分配策略,任务分配策略的参数值具体为任务分配策略的类型,例如可以包括指派型、竞争型、动态会签型或者平均分配型。
若配置任务分配策略的类型为指派型,节点属性的参数值中,配置有具体的执行角色ID与处理人员的用户ID;
若配置任务分配策略的类型为竞争型,节点属性的参数值中,配置有具体的执行角色ID未配置处理人员的用户ID;
若配置任务分配策略的类型为动态会签型,节点属性的参数值中,配置具体的执行角色ID,处理人员的参数值配置为执行角色ID中任务执行效率最高的处理人员;
若配置任务分配策略的类型为平均分配型,节点属性的参数值中,配置有具体的执行角色ID,处理人员的参数值被配置为执行角色ID中按照依次轮换方式确定的处理人员。
图7为本发明工作流引擎另一个实施例的结构示意图。如图7所示,与图6所示的实施例相比,该实施例的工作流引擎中还包括流程实例管理单元,用于在第一获取单元从工作流数据库获取创建请求中***ID对应的流程ID后:创建该流程ID所标识工作流程的工作流程实例,并为该工作流程实例分配流程实例ID;其中,流程实例ID唯一标识一个工作流程实例;以及在工作流数据库的流程实例表中记录流程ID所标识工作流程的流程实例信息,并设置流程实例状态为未完成;流程实例信息包括流程实例ID、流程ID、***ID和流程实例状态,流程实例状态包括未完成或已完成。
进一步地,再参见图7,在工作流引擎的又一个实施例中,还可以包括识别单元,用于在第一接收单元接收到业务***执行完毕待执行节点返回的执行结果消息后,根据待执行节点的节点信息,识别待执行节点是否结束节点。相应地,在该实施例中,第三获取单元具体根据识别单元的识别结果,在待执行节点不是结束节点时,执行从工作流数据库获取来源节点为待执行节点的流转条件的去向节点的操作。流程实例管理单元还用于根据识别单元的识别结果,在待执行节点是结束节点时,将流程实例信息中的流程实例状态变更为已完成。
进一步地,再参见图7,在工作流引擎的再一个实施例中,还可以包括节点实例管理单元,用于在第二获取单元从工作流数据库获取流程ID所标识工作流程中开始节点的节点信息后,激活开始节点,将开始节点的节点状态变更为已激活待处理,并在工作流数据库的实例节点表中记录开始节点的节点实例信息,该节点实例信息包括流程实例ID、开始节点的节点ID、节点状态、节点属性的参数值;节点状态包括:未激活、待处理、处理中或者完成;以及在第一发送单元向业务***返回待执行节点的节点信息后,将开始节点的节点状态变更为处理中。
另外,在进一步实施例中,节点实例管理单元还可用于在第三获取单元从工作流数据库获取来源节点为待执行节点的流转条件的去向节点后,激活去向节点,将去向节点变更为待执行节点,并将来源节点的节点状态变更为完成;以及将待执行节点的节点状态变更为已激活待处理,并在工作流数据库的实例节点表中记录待执行节点的节点实例信息,该节点实例信息包括流程实例ID、待执行节点的节点ID、节点状态、节点属性的参数值。
或者,节点实例管理单元还可用于在第一接收单元接收到业务***未成功执行待执行节点返回的执行失败消息时,将来源节点变更为待执行节点,并将来源节点的节点状态变更为已激活待处理,以便由第一发送单元执行向业务***返回待执行节点的节点信息的操作。
在工作流引擎的另一个实施例中,业务模型还可以包括回溯处理方式,回溯处理方式的参数值具体为:是否需要同一个处理人员处理回溯任务。相应地,第一发送单元向业务***返回的待执行节点的节点信息中还包括回溯处理方式的参数值,以便业务***根据回溯处理方式的参数值确定执行本次任务的处理人员的用户ID。
再参见图7,在工作流引擎的进一步实施例中,工作流引擎还包括查询单元。该实施例中,第一接收单元还可用于接收业务***发送的该任务请求消息,该任务请求消息中包括请求用户的用户ID和被分配的执行角色ID。相应地,查询单元用于查询工作流数据库中的实例节点表,获取节点状态为已激活待处理、且包括任务请求消息中执行角色ID和用户ID的节点。第一发送单元还用于向业务***返回查询单元获取到的节点的节点ID。
再参见图7,在工作流引擎的进一步实施例中,工作流引擎还包括第四获取单元。该实施例中,第一接收单元还可用于接收业务***发送的流程实例进度显示请求,其中包括流程实例ID和用户ID。第四获取单元用于根据流程实例进度显示请求中的流程实例ID,从工作流数据库获取对应的流程ID、该流程ID相关的节点信息表、以及流程实例ID相关的节点实例信息。相应地,第一发送单元还可用于向业务***返回第四获取单元获取到的节点信息表和节点实例信息,以便业务***根据显示当前的工作流程路径和工作流程实例进度。
图8为本发明业务***一个实施例的结构示意图。该实施例的装置可业务***用于实现本发明上述各业务处理方法实施例中业务***的相应功能。如图8所示,该实施例的业务***包括第二发送单元、第二接收单元和业务处理单元。其中:
第二发送单元,用于向工作流引擎发送流程实例创建请求,创建请求中包括***ID。其中,***ID唯一标识一个业务***;以及向工作流引擎返回执行结果消息。
第二接收单元,用于接收工作流引擎返回的待执行节点的节点信息。
业务处理单元,用于根据待执行节点的节点信息,从节点库获取并执行待执行节点,与用户进行信息交互并对用户提交的数据进行处理,在业务数据库中记录用户提交的数据与执行的操作;并在对用户提交的数据处理完毕后,获得执行数据结果并存储在业务数据库中,以及指示第二发送单元向工作流引擎返回执行结果消息;其中,构成工作流程的各节点预先设置在节点库中。
基于本发明上述实施例提供的业务***,存储有预先设置的各节点在业务***中,节点信息存储在工作流数据库中,业务***调用工作流程时,可以通过一个装置,例如工作流引擎,按照流程路径从工作流数据库依次查询节点信息发送给业务***,由业务***执行相应节点。本发明实施例中,构成工作流程所需的各节点是单独设置的,节点的设置与其属性参数的配置是独立的过程,在编码上工作流引擎不再与业务业务***同属一个***,实现了代码层面的解耦;在数据存储上,工作流数据库仅保存流程相关信息而不保存业务实体数据,业务***仅保持业务实体数据而不保存流程相关信息,实现了数据层面的解耦合,当业务实体数据发生变化时,工作流程无需变更,提高了工作流程的可配置性和复用性。
在本发明业务***的另一个实施例中,第二发送单元还可以用于向待执行节点的节点信息中的执行角色ID和处理人员的用户ID发送处理任务通知消息,以便相应的用户登录后处理本次任务。
图9为本发明业务***另一个实施例的结构示意图。如图9所示,与图8所示的实施例相比,该实施例中还包括人机交互单元。该实施例中,第二接收单元还可用于接收用户发送的任务请求消息,该任务请求消息由用户登录业务***收到任务通知消息后发送,该任务请求消息中包括请求用户的用户ID和被分配的执行角色ID;以及接收工作流引擎查询工作流数据库中的实例节点表后返回的节点ID。第二发送单元还可用于将任务请求消息转发给工作流引擎。人机交互单元用于显示第二接收单元接收到的节点ID所标识节点中的任务,以便由请求用户处理本次任务。
具体地,人机交互单元可以从包括第二接收单元接收到的节点ID的节点信息中获取业务模型的参数值,根据该业务模型的参数值确定处理本次任务的用户ID;以及向处理本次任务的用户ID显示获取到的节点中的任务以便该用户处理。
进一步地,在本发明业务***的再一个实施例中,第二接收单元还可用于接收处理本次任务的用户发送的流程实例进度显示请求;以及接收工作流引擎返回的节点信息表和节点实例信息。相应地,第二发送单元还可用于向工作流引擎转发流程实例进度显示请求,流程实例进度显示请求中包括流程实例ID和用户ID。人机交互单元还可用于根据工作流引擎返回的节点信息表和节点实例信息,显示当前的工作流程路径和工作流程实例进度,获取并在表示工作流程实例进度的各节点上显示处理任务的用户ID和用户进行的操作信息。
再参见图9,在本发明业务***的又一个实施例中,还可以包括节点库、业务数据库与用户信息库中的任意一种或多种。其中:
节点库,用于存储构成工作流程的各节点。
业务数据库,用于存储用户提交的数据与执行的操作,以及执行结果数据。
用户信息库,用于存储在业务***注册用户的用户信息,以及执行角色ID和用户ID之间的对应关系,用户信息包括用户ID。
另外,本发明实施例的业务***中还可以耦合设置工作流引擎的API,第二发送单元与第二接收单元具体可以通过调用API与工作流引擎进行信息交互。
本发明实施例提供的工作流***,可以包括本发明上述任一实施例的工作流引擎,用于实现本发明上述各业务处理方法实施例。
基于本发明上述实施例提供的工作流***,构成工作流程的各节点预先设置在业务***中,节点信息存储在工作流数据库中,业务***调用工作流程时,可以通过工作流引擎,按照流程路径从工作流数据库依次查询节点信息发送给业务***,由业务***执行相应节点。本发明实施例中,构成工作流程所需的各节点是单独设置的,节点的设置与其属性参数的配置是独立的过程,在编码上工作流引擎不再与业务业务***同属一个***,实现了代码层面的解耦;在数据存储上,工作流数据库仅保存流程相关信息而不保存业务实体数据,业务***仅保持业务实体数据而不保存流程相关信息,实现了数据层面的解耦合,当业务实体数据发生变化时,工作流程无需变更,提高了工作流程的可配置性和复用性。
图10为本发明工作流***一个实施例的结构示意图。如图10所示,该实施例的工作流***还包括工作流设计器,用于分别对构成工作流程的各节点的属性参数配置参数值,其中的属性参数包括节点ID参数、节点类型与节点属性。
其中,构成工作流程的各节点预先设置在业务***中,节点ID唯一标识一个节点;节点属性包括业务模型或流转条件,业务模型包括业务逻辑功能单元、任务的执行角色与处理人员,流转条件包括来源节点、去向节点和条件表达式。
另外,在本发明工作流***的另一个实施例中,还可以包括工作流数据库,用于存储流程信息表、节点信息表、流程实例表与实例节点表。其中:
流程信息表,包括工作流程的流程基础信息,流程基础信息包括***ID与流程ID。
节点信息表,包括构成工作流程的各节点的节点基础信息,节点基础信息包括节点ID、节点所属的工作流程的流程ID、节点类型的参数值和节点属性的参数值。
本发明上述实施例的工作流***中还包括工作流设计器,可以在业务***中预先设置构成工作流程所需的各节点,然后再单独对各节点的属性参数配置参数值,即可生成工作流程。由于构成工作流程所需的各节点是单独设置的,且节点的设置与其属性参数的配置是独立的过程,生成工作流程后,若某个节点需要变更功能,仅对单个节点进行修改即可;若需要增加、删除或修改节点,仅需对相关配置参数修改即可,操作简单、易于实现,提高了工作流程的可配置性和复用性;并且,实现该方法的工作流设计器与业务***解耦合,可用于对所有业务***工作流程提供通用性的配置服务。
流程实例表,包括流程ID所标识工作流程的流程实例信息,流程实例信息包括流程实例ID、流程ID、***ID和流程实例状态,流程实例状态包括未完成或已完成。
实例节点表,包括记录开始节点的节点实例信息,节点实例信息包括流程实例ID、开始节点的节点ID、节点状态、节点属性的参数值;节点状态包括:未激活、待处理、处理中或者完成。
示例性地,本发明实施例中的工作流数据库例如可以是MySQL、MSSQL、SqlServer、Oracle等类型的数据库。
图11为本发明业务处理***一个实施例的结构示意图。该实施例的业务处理***可用于实现本发明上述各业务处理方法实施例。如图11所示,该实施例的业务处理***包括本发明任一实施例的工作流引擎和业务***。
另外,在本发明业务处理***的另一个实施例中,还可以包括工作流数据库,用于存储流程信息表、节点信息表、流程实例表与实例节点表。其中:
流程信息表,包括工作流程的流程基础信息,流程基础信息包括***ID与流程ID。
节点信息表,包括构成工作流程的各节点的节点基础信息,节点基础信息包括节点ID、节点所属的工作流程的流程ID、节点类型的参数值和节点属性的参数值。
流程实例表,包括流程ID所标识工作流程实例的流程实例信息,流程实例信息包括流程实例ID、流程ID、***ID和流程实例状态,流程实例状态包括未完成或已完成。
实例节点表,包括记录工作流程实例中各节点的节点实例信息,节点实例信息包括流程实例ID、开始节点的节点ID、节点状态、节点属性的参数值;节点状态包括:未激活、待处理、处理中或者完成。
示例性地,本发明实施例中的工作流数据库例如可以是MySQL、MSSQL、SqlServer、Oracle等类型的数据库。
本发明实施例提供了以下技术方案:
1、一种业务处理方法,包括:
响应于接收到业务***发送的流程实例创建请求,从工作流数据库获取所述创建请求中***ID对应的流程ID;其中,***ID唯一标识所述业务***,流程ID唯一标识一个工作流程;
从工作流数据库获取所述流程ID所标识工作流程中开始节点的节点信息,所述节点信息包括节点ID和节点属性的参数值;
以开始节点作为待执行节点,向业务***返回所述待执行节点的节点信息,以便由所述业务***执行所述待执行节点;其中,所述待执行节点预先设置在所述业务***中;
响应于接收到业务***执行完毕所述待执行节点返回的执行结果消息,从工作流数据库获取来源节点为所述待执行节点的流转条件的去向节点,从工作流数据库获取所述去向节点的节点信息,并以所述去向节点作为待执行节点,执行所述向业务***返回所述待执行节点的节点信息的操作。
2、根据1所述的方法,所述业务***执行所述待执行节点包括:
所述业务***根据所述待执行节点的节点信息,从业务***获取并执行所述待执行节点,与用户进行信息交互并对用户提交的数据进行处理,记录用户提交的数据与执行的操作。
3、根据2所述的方法,还包括:
所述业务***对用户提交的数据处理完毕后,获得执行数据结果并存储,以及向工作流引擎返回执行结果消息。
4、根据3所述的方法,所述工作流数据库中包括流程信息表,用于存储各工作流程的流程基础信息,每个工作流程的流程基础信息包括***ID与流程ID;
所述从工作流数据库获取所述创建请求中***ID对应的流程ID包括:从流程信息表中查询所述创建请求中***ID对应的流程ID。
5、根据4所述的方法,所述工作流数据库中包括节点信息表,用于存储各节点的节点基础信息,每个节点的节点基础信息包括节点ID、节点所属的工作流程的流程ID、节点类型的参数值和节点属性的参数值;
所述从工作流数据库获取所述流程ID所标识工作流程中开始节点的节点信息包括:从节点信息表中获取包括所述对应的流程ID的所有节点基础信息;从所述所有节点基础信息中获取节点类型的参数值为开始节点的节点基础信息;从节点类型的参数值为开始节点的节点基础信息中获取节点ID和节点属性的参数值。
6、根据5所述的方法,节点类型的参数值包括:开始节点、结束节点、流转条件节点、普通节点、分支节点或聚合节点;
所述节点属性包括节点类型对应的业务模型或流转条件,所述业务模型包括业务逻辑功能单元、任务的执行角色与处理人员,所述流转条件包括来源节点、去向节点和条件表达式;
节点类型的参数值为流转条件节点、分支节点或聚合节点时,对应的节点属性为流转条件,所述节点属性的参数值具体为:来源节点ID、去向节点ID和具体条件表达式;
节点类型值为开始节点、结束节点或普通节点时,对应的节点属性为业务模型,所述节点属性的参数值具体为:执行角色ID与处理人员的用户ID。
7、根据6所述的方法,所述从工作流数据库获取来源节点为所述待执行节点的流转条件的去向节点包括:
从节点信息表中查询所述对应的流程ID的节点基础信息,获取来源节点ID为所述待执行节点ID的流转条件的参数值中的去向节点ID。
8、根据7所述的方法,所述流转条件的参数值中还包括具体条件表达式;
所述执行结果消息中还包括在执行所述待执行节点的过程中由用户提交的数值;
所述获取来源节点ID为所述待执行节点ID的流转条件的参数值中的去向节点ID包括:将用户提交的数值作为所述具体条件表达式中自由变量的值进行计算,根据计算结果确定去向节点ID。
9、根据5或6所述的方法,所述流程信息表和所述节点信息表由工作流设计器对业务***中构成所述工作流程的各节点的属性参数配置参数值时生成,所述属性参数包括节点ID参数、节点类型与节点属性。
10、根据1至9任意一项所述的方法,还包括:
业务***接收用户登录后发送的实例创建指示,该实例创建指示中包括用户ID;其中,用户ID唯一标识业务***中注册的一个用户;
业务***从用户信息库中查询所述用户ID对应的执行角色ID,并向工作流引擎发送所述创建请求,所述创建请求中还包括所述执行角色ID与所述用户ID;
从工作流数据库获取所述流程ID所标识工作流程中开始节点的节点信息后,还包括:
根据所述开始节点的节点属性的参数值对所述创建请求中的执行角色ID与用户ID进行权限认证;
响应于所述创建请求中的执行角色ID与用户ID通过权限认证,向业务***返回所述开始节点的节点信息。
11、根据1至10任意一项所述的方法,从工作流数据库获取所述创建请求中***ID对应的流程ID后,还包括:
创建所述流程ID所标识工作流程的工作流程实例,并为该工作流程实例分配流程实例ID;其中,流程实例ID唯一标识一个工作流程实例;
在工作流数据库的流程实例表中记录所述流程ID所标识工作流程的流程实例信息,并设置流程实例状态为未完成;所述流程实例信息包括所述流程实例ID、所述流程ID、所述***ID和流程实例状态,所述流程实例状态包括未完成或已完成。
12、根据11所述的方法,接收到业务***执行完毕所述待执行节点返回的执行结果消息后,还包括:
根据所述待执行节点的节点信息,识别所述待执行节点是否结束节点;
响应于所述待执行节点不是结束节点,执行所述从工作流数据库获取来源节点为所述待执行节点的流转条件的去向节点的操作;
响应于所述待执行节点是结束节点,将所述流程实例信息中的流程实例状态变更为已完成。
13、根据12所述的方法,从工作流数据库获取所述流程ID所标识工作流程中开始节点的节点信息后,还包括:
激活所述开始节点,将所述开始节点的节点状态变更为已激活待处理,并在工作流数据库的实例节点表中记录所述开始节点的节点实例信息,该节点实例信息包括所述流程实例ID、所述开始节点的节点ID、节点状态、节点属性的参数值;所述节点状态包括:未激活、待处理、处理中或者完成;
向业务***返回所述待执行节点的节点信息后,还包括:
将所述开始节点的节点状态变更为处理中。
14、根据13所述的方法,从工作流数据库获取来源节点为所述待执行节点的流转条件的去向节点后,还包括:
激活所述去向节点,将所述去向节点变更为待执行节点,并将所述来源节点的节点状态变更为完成;
将所述待执行节点的节点状态变更为已激活待处理,并在工作流数据库的实例节点表中记录所述待执行节点的节点实例信息,该节点实例信息包括所述流程实例ID、所述待执行节点的节点ID、节点状态、节点属性的参数值。
15、根据14所述的方法,将所述来源节点的节点状态变更为完成后,还包括:
响应于接收到业务***未成功执行所述待执行节点返回的执行失败消息,将所述来源节点变更为待执行节点,并将所述来源节点的节点状态变更为已激活待处理,然后执行所述向业务***返回所述待执行节点的节点信息的操作。
16、根据15所述的方法,所述业务模型还包括回溯处理方式,所述回溯处理方式的参数值包括:是否需要同一个处理人员处理回溯任务;
向业务***返回的所述待执行节点的节点信息中还包括所述回溯处理方式的参数值,以便所述业务***根据所述回溯处理方式的参数值确定执行本次任务的处理人员的用户ID。
17、根据13至16任意一项所述的方法,向业务***返回所述待执行节点的节点信息后,还包括:
业务***向所述待执行节点的节点信息中的执行角色ID和处理人员的用户ID发送处理任务通知消息,以便相应的用户登录后处理本次任务。
18、根据17所述的方法,还包括:
用户登录业务***收到任务通知消息后,发送任务请求消息,该任务请求消息中包括请求用户的用户ID和被分配的执行角色ID;
业务***将该任务请求消息转发给工作流引擎;
工作流引擎查询工作流数据库中的实例节点表,获取节点状态为已激活待处理、且包括任务请求消息中执行角色ID和用户ID的节点,向业务***返回获取到的节点的节点ID;
业务***显示所述获取到的节点中的任务以便由所述请求用户处理本次任务。
19、根据17所述的方法,所述业务模型还包括任务分配策略;所述任务分配策略的参数值具体为任务分配策略的类型。
20、根据19所述的方法,所述任务分配策略的类型包括指派型、竞争型、动态会签型或者平均分配型;
若配置任务分配策略的类型为指派型,所述节点属性的参数值中,配置有具体的执行角色ID与处理人员的用户ID;
若配置任务分配策略的类型为竞争型,所述节点属性的参数值中,配置有具体的执行角色ID未配置处理人员的用户ID;
若配置任务分配策略的类型为动态会签型,所述节点属性的参数值中,配置具体的执行角色ID,处理人员的参数值配置为所述执行角色ID中任务执行效率最高的处理人员;
若配置任务分配策略的类型为平均分配型,所述节点属性的参数值中,配置有具体的执行角色ID,处理人员的参数值被配置为所述执行角色ID中按照依次轮换方式确定的处理人员。
21、根据20所述的方法,所述业务***显示所述获取到的节点中的任务包括:
业务***根据所述获取到的节点的节点ID,从包括该节点ID的节点信息中获取业务模型的参数值,根据该业务模型的参数值确定处理本次任务的用户ID;
业务***向处理本次任务的用户ID显示所述获取到的节点中的任务以便该用户处理。
22、根据21所述的方法,业务***向处理本次任务的用户ID显示所述获取到的节点中的任务后,还包括:
响应于接收到处理本次任务的用户发送的流程实例进度显示请求,业务***向工作流引擎转发所述流程实例进度显示请求,所述流程实例进度显示请求中包括流程实例ID和用户ID;
工作流引擎根据所述流程实例ID,从工作流数据库获取对应的流程ID、该流程ID相关的节点信息表、以及所述流程实例ID相关的节点实例信息并返回所述业务***;
业务***根据工作流引擎返回的节点信息表和节点实例信息,显示当前的工作流程路径和工作流程实例进度,获取并在表示工作流程实例进度的各节点上显示处理任务的用户ID和用户进行的操作信息。
23、根据1至22任意一项所述的方法,所述业务***通过调用耦合设置的工作流引擎的应用程序接口API,与工作流引擎进行信息交互。
24、一种工作流引擎,包括:
第一接收单元,用于接收业务***发送的消息;
第一获取单元,用于在第一接收单元接收到业务***发送的流程实例创建请求时,从工作流数据库获取所述创建请求中***ID对应的流程ID;其中,***ID唯一标识所述业务***,流程ID唯一标识一个工作流程;
第二获取单元,用于从工作流数据库获取所述流程ID所标识工作流程中开始节点的节点信息,所述节点信息包括节点ID和节点属性的参数值;
第一发送单元,用于以开始节点作为待执行节点,向业务***返回所述待执行节点的节点信息,以便由所述业务***执行所述待执行节点;其中,所述待执行节点预先设置在所述业务***中;
第三获取单元,用于在第一接收单元接收到业务***执行完毕所述待执行节点返回的执行结果消息时,从工作流数据库获取来源节点为所述待执行节点的流转条件的去向节点,从工作流数据库获取所述去向节点的节点信息,并以所述去向节点作为待执行节点,执行所述向业务***返回所述待执行节点的节点信息的操作。
25、根据24所述的工作流引擎,所述工作流数据库中包括流程信息表,用于存储各工作流程的流程基础信息,每个工作流程的流程基础信息包括***ID与流程ID;
所述第一获取单元,具体从流程信息表中查询所述创建请求中***ID对应的流程ID。
26、根据25所述的工作流引擎,所述工作流数据库中包括节点信息表,用于存储各节点的节点基础信息,每个节点的节点基础信息包括节点ID、节点所属的工作流程的流程ID、节点类型的参数值和节点属性的参数值;
所述第二获取单元,具体从节点信息表中获取包括所述对应的流程ID的所有节点基础信息;从所述所有节点基础信息中获取节点类型的参数值为开始节点的节点基础信息;从节点类型的参数值为开始节点的节点基础信息中获取节点ID和节点属性的参数值。
27、根据26所述的工作流引擎,节点类型的参数值包括:开始节点、结束节点、流转条件节点、普通节点、分支节点或聚合节点;
所述节点属性包括节点类型对应的业务模型或流转条件,所述业务模型包括业务逻辑功能单元、任务的执行角色与处理人员,所述流转条件包括来源节点、去向节点和条件表达式;
节点类型的参数值为流转条件节点、分支节点或聚合节点时,对应的节点属性为流转条件,所述节点属性的参数值具体为:来源节点ID、去向节点ID和具体条件表达式;
节点类型值为开始节点、结束节点或普通节点时,对应的节点属性为业务模型,所述节点属性的参数值具体为:执行角色ID与处理人员的用户ID。
28、根据27所述的工作流引擎,所述业务模型还包括任务分配策略;所述任务分配策略的参数值具体为任务分配策略的类型。
29、根据28所述的工作流引擎,所述任务分配策略的类型包括指派型、竞争型、动态会签型或者平均分配型;
若配置任务分配策略的类型为指派型,所述节点属性的参数值中,配置有具体的执行角色ID与处理人员的用户ID;
若配置任务分配策略的类型为竞争型,所述节点属性的参数值中,配置有具体的执行角色ID未配置处理人员的用户ID;
若配置任务分配策略的类型为动态会签型,所述节点属性的参数值中,配置具体的执行角色ID,处理人员的参数值配置为所述执行角色ID中任务执行效率最高的处理人员;
若配置任务分配策略的类型为平均分配型,所述节点属性的参数值中,配置有具体的执行角色ID,处理人员的参数值被配置为所述执行角色ID中按照依次轮换方式确定的处理人员。
30、根据29所述的工作流引擎,所述第三获取单元从工作流数据库获取来源节点为所述待执行节点的流转条件的去向节点时,具体从节点信息表中查询所述对应的流程ID的节点基础信息,获取来源节点ID为所述待执行节点ID的流转条件的参数值中的去向节点ID。
31、根据30所述的工作流引擎,所述流转条件的参数值中还包括具体条件表达式;
所述执行结果消息中还包括在执行所述待执行节点的过程中由用户提交的数值;
所述第三获取单元获取来源节点ID为所述待执行节点ID的流转条件的参数值中的去向节点ID时,具体将用户提交的数值作为所述具体条件表达式中自由变量的值进行计算,根据计算结果确定去向节点ID。
32、根据28或29所述的工作流引擎,所述流程信息表和所述节点信息表由工作流设计器对业务***中构成所述工作流程的各节点的属性参数配置参数值时生成,所述属性参数包括节点ID参数、节点类型与节点属性。
33、根据26至32任意一项所述的工作流引擎,还包括流程实例管理单元,用于在第一获取单元从工作流数据库获取所述创建请求中***ID对应的流程ID后:创建所述流程ID所标识工作流程的工作流程实例,并为该工作流程实例分配流程实例ID;其中,流程实例ID唯一标识一个工作流程实例;以及在工作流数据库的流程实例表中记录所述流程ID所标识工作流程的流程实例信息,并设置流程实例状态为未完成;所述流程实例信息包括所述流程实例ID、所述流程ID、所述***ID和流程实例状态,所述流程实例状态包括未完成或已完成。
34、根据33所述的工作流引擎,还包括:
识别单元,用于在第一接收单元接收到业务***执行完毕所述待执行节点返回的执行结果消息后,根据所述待执行节点的节点信息,识别所述待执行节点是否结束节点;
所述第三获取单元,具体根据识别单元的识别结果,在所述待执行节点不是结束节点时,执行所述从工作流数据库获取来源节点为所述待执行节点的流转条件的去向节点的操作;
所述流程实例管理单元,还用于根据识别单元的识别结果,在所述待执行节点是结束节点时,将所述流程实例信息中的流程实例状态变更为已完成。
35、根据34所述的工作流引擎,还包括节点实例管理单元,用于在第二获取单元从工作流数据库获取所述流程ID所标识工作流程中开始节点的节点信息后:
激活所述开始节点,将所述开始节点的节点状态变更为已激活待处理,并在工作流数据库的实例节点表中记录所述开始节点的节点实例信息,该节点实例信息包括所述流程实例ID、所述开始节点的节点ID、节点状态、节点属性的参数值;所述节点状态包括:未激活、待处理、处理中或者完成;以及在第一发送单元向业务***返回所述待执行节点的节点信息后,将所述开始节点的节点状态变更为处理中。
36、根据35所述的工作流引擎,所述节点实例管理单元,还用于在第三获取单元从工作流数据库获取来源节点为所述待执行节点的流转条件的去向节点后:
激活所述去向节点,将所述去向节点变更为待执行节点,并将所述来源节点的节点状态变更为完成;以及
将所述待执行节点的节点状态变更为已激活待处理,并在工作流数据库的实例节点表中记录所述待执行节点的节点实例信息,该节点实例信息包括所述流程实例ID、所述待执行节点的节点ID、节点状态、节点属性的参数值。
37、根据36所述的工作流引擎,所述节点实例管理单元,还用于在第一接收单元接收到业务***未成功执行所述待执行节点返回的执行失败消息时,将所述来源节点变更为待执行节点,并将所述来源节点的节点状态变更为已激活待处理,以便由第一发送单元执行所述向业务***返回所述待执行节点的节点信息的操作。
38、根据37所述的工作流引擎,所述业务模型还包括回溯处理方式,所述回溯处理方式的参数值包括:是否需要同一个处理人员处理回溯任务;
所述第一发送单元向业务***返回的所述待执行节点的节点信息中还包括所述回溯处理方式的参数值,以便所述业务***根据所述回溯处理方式的参数值确定执行本次任务的处理人员的用户ID。
39、根据33至38任意一项所述的工作流引擎,所述第一接收单元,还用于接收业务***发送的该任务请求消息,该任务请求消息中包括请求用户的用户ID和被分配的执行角色ID;
所述工作流引擎还包括查询单元,用于查询工作流数据库中的实例节点表,获取节点状态为已激活待处理、且包括任务请求消息中执行角色ID和用户ID的节点;
所述第一发送单元,还用于向业务***返回查询单元获取到的节点的节点ID。
40、根据35至39任意一项所述的工作流引擎,所述第一接收单元,还用于接收业务***发送的流程实例进度显示请求,所述流程实例进度显示请求中包括流程实例ID和用户ID;
所述工作流引擎还包括第四获取单元,用于根据所述流程实例ID,从工作流数据库获取对应的流程ID、该流程ID相关的节点信息表、以及所述流程实例ID相关的节点实例信息;
所述第一发送单元,还用于向业务***返回第四获取单元获取到的节点信息表和节点实例信息,以便业务***根据显示当前的工作流程路径和工作流程实例进度。
41、一种业务***,包括:
第二发送单元,用于向工作流引擎发送流程实例创建请求,所述创建请求中包括***ID;其中,***ID唯一标识所述业务***;以及向工作流引擎返回执行结果消息;
第二接收单元,用于接收工作流引擎返回的待执行节点的节点信息;
业务处理单元,用于根据所述待执行节点的节点信息,从节点库获取并执行所述待执行节点,与用户进行信息交互并对用户提交的数据进行处理,在业务数据库中记录用户提交的数据与执行的操作;并在对用户提交的数据处理完毕后,获得执行数据结果并存储在业务数据库中,以及指示第二发送单元向工作流引擎返回执行结果消息;其中,构成工作流程的各节点预先设置在所述节点库中。
42、根据41所述的业务***,所述第二发送单元,还用于向所述待执行节点的节点信息中的执行角色ID和处理人员的用户ID发送处理任务通知消息,以便相应的用户登录后处理本次任务。
43、根据42所述的业务***,所述第二接收单元,还用于接收用户发送的任务请求消息,该任务请求消息由用户登录业务***收到任务通知消息后发送,该任务请求消息中包括请求用户的用户ID和被分配的执行角色ID;以及接收工作流引擎查询工作流数据库中的实例节点表后返回的节点ID;
所述第二发送单元,还用于将所述任务请求消息转发给工作流引擎;
所述业务***还包括人机交互单元,用于显示所述第二接收单元接收到的节点ID所标识节点中的任务,以便由所述请求用户处理本次任务。
44、根据43所述的业务***,所述人机交互单元,具体用于:
从包括第二接收单元接收到的节点ID的节点信息中获取业务模型的参数值,根据该业务模型的参数值确定处理本次任务的用户ID;以及
向处理本次任务的用户ID显示所述获取到的节点中的任务以便该用户处理。
45、根据44所述的业务***,所述第二接收单元,还用于接收处理本次任务的用户发送的流程实例进度显示请求;以及接收工作流引擎返回的节点信息表和节点实例信息;
所述第二发送单元,还用于向工作流引擎转发所述流程实例进度显示请求,所述流程实例进度显示请求中包括流程实例ID和用户ID;
所述人机交互单元,还用于根据工作流引擎返回的节点信息表和节点实例信息,显示当前的工作流程路径和工作流程实例进度,获取并在表示工作流程实例进度的各节点上显示处理任务的用户ID和用户进行的操作信息。
46、根据41至45任意一项所述的业务***,还包括:
节点库,用于存储构成工作流程的各节点;和/或
业务数据库,用于存储用户提交的数据与执行的操作,以及执行结果数据;和/或
用户信息库,用于存储在所述业务***注册用户的用户信息,以及执行角色ID和用户ID之间的对应关系,所述用户信息包括用户ID。
47、根据41至46任意一项所述的业务***,所述业务***耦合设置有所述工作流引擎的应用程序接口API,所述第二发送单元与所述第二接收单元具体通过调用所述API与工作流引擎进行信息交互。
48、一种工作流***,包括24至40任意一项所述的工作流引擎;
49、根据48所述的工作流***,还包括工作流设计器,用于分别对构成工作流程的各节点的属性参数配置参数值,所述属性参数包括节点ID参数、节点类型与节点属性;
其中,构成工作流程的各节点预先设置在业务***中,节点ID唯一标识一个节点;所述节点属性包括业务模型或流转条件,所述业务模型包括业务逻辑功能单元、任务的执行角色与处理人员,所述流转条件包括来源节点、去向节点和条件表达式。
50、根据48或49所述的工作流***,还包括工作流数据库,用于存储:
流程信息表,包括工作流程的流程基础信息,所述流程基础信息包括***ID与流程ID;
节点信息表,包括构成所述工作流程的各节点的节点基础信息,所述节点基础信息包括节点ID、节点所属的工作流程的流程ID、节点类型的参数值和节点属性的参数值;
流程实例表,包括所述流程ID所标识工作流程的流程实例信息,所述流程实例信息包括所述流程实例ID、所述流程ID、所述***ID和流程实例状态,所述流程实例状态包括未完成或已完成;
实例节点表,包括记录所述开始节点的节点实例信息,所述节点实例信息包括所述流程实例ID、所述开始节点的节点ID、节点状态、节点属性的参数值;所述节点状态包括:未激活、待处理、处理中或者完成。
51、一种业务处理***,包括24至40任意一项所述的工作流引擎和41至47任意一项所述的业务***。
52、根据51所述的业务处理***,还包括工作流数据库,用于存储:
流程信息表,包括工作流程的流程基础信息,所述流程基础信息包括***ID与流程ID;
节点信息表,包括构成所述工作流程的各节点的节点基础信息,所述节点基础信息包括节点ID、节点所属的工作流程的流程ID、节点类型的参数值和节点属性的参数值;
流程实例表,包括所述流程ID所标识工作流程实例的流程实例信息,所述流程实例信息包括所述流程实例ID、所述流程ID、所述***ID和流程实例状态,所述流程实例状态包括未完成或已完成;
实例节点表,包括记录工作流程实例中各节点的节点实例信息,所述节点实例信息包括所述流程实例ID、所述开始节点的节点ID、节点状态、节点属性的参数值;所述节点状态包括:未激活、待处理、处理中或者完成。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于***实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
可能以许多方式来实现本发明的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
Claims (10)
1.一种业务处理方法,其特征在于,包括:
响应于接收到业务***发送的流程实例创建请求,从工作流数据库获取所述创建请求中***ID对应的流程ID;其中,***ID唯一标识所述业务***,流程ID唯一标识一个工作流程;
从工作流数据库获取所述流程ID所标识工作流程中开始节点的节点信息,所述节点信息包括节点ID和节点属性的参数值;
以开始节点作为待执行节点,向业务***返回所述待执行节点的节点信息,以便由所述业务***执行所述待执行节点;其中,所述待执行节点预先设置在所述业务***中;
响应于接收到业务***执行完毕所述待执行节点返回的执行结果消息,从工作流数据库获取来源节点为所述待执行节点的流转条件的去向节点,从工作流数据库获取所述去向节点的节点信息,并以所述去向节点作为待执行节点,执行所述向业务***返回所述待执行节点的节点信息的操作。
2.根据权利要求1所述的方法,其特征在于,所述业务***执行所述待执行节点包括:
所述业务***根据所述待执行节点的节点信息,从业务***获取并执行所述待执行节点,与用户进行信息交互并对用户提交的数据进行处理,记录用户提交的数据与执行的操作。
3.根据权利要求2所述的方法,其特征在于,还包括:
所述业务***对用户提交的数据处理完毕后,获得执行数据结果并存储,以及向工作流引擎返回执行结果消息。
4.根据权利要求3所述的方法,其特征在于,所述工作流数据库中包括流程信息表,用于存储各工作流程的流程基础信息,每个工作流程的流程基础信息包括***ID与流程ID;
所述从工作流数据库获取所述创建请求中***ID对应的流程ID包括:从流程信息表中查询所述创建请求中***ID对应的流程ID。
5.根据权利要求4所述的方法,其特征在于,所述工作流数据库中包括节点信息表,用于存储各节点的节点基础信息,每个节点的节点基础信息包括节点ID、节点所属的工作流程的流程ID、节点类型的参数值和节点属性的参数值;
所述从工作流数据库获取所述流程ID所标识工作流程中开始节点的节点信息包括:从节点信息表中获取包括所述对应的流程ID的所有节点基础信息;从所述所有节点基础信息中获取节点类型的参数值为开始节点的节点基础信息;从节点类型的参数值为开始节点的节点基础信息中获取节点ID和节点属性的参数值。
6.根据权利要求5所述的方法,其特征在于,节点类型的参数值包括:开始节点、结束节点、流转条件节点、普通节点、分支节点或聚合节点;
所述节点属性包括节点类型对应的业务模型或流转条件,所述业务模型包括业务逻辑功能单元、任务的执行角色与处理人员,所述流转条件包括来源节点、去向节点和条件表达式;
节点类型的参数值为流转条件节点、分支节点或聚合节点时,对应的节点属性为流转条件,所述节点属性的参数值具体为:来源节点ID、去向节点ID和具体条件表达式;
节点类型值为开始节点、结束节点或普通节点时,对应的节点属性为业务模型,所述节点属性的参数值具体为:执行角色ID与处理人员的用户ID。
7.一种工作流引擎,其特征在于,包括:
第一接收单元,用于接收业务***发送的消息;
第一获取单元,用于在第一接收单元接收到业务***发送的流程实例创建请求时,从工作流数据库获取所述创建请求中***ID对应的流程ID;其中,***ID唯一标识所述业务***,流程ID唯一标识一个工作流程;
第二获取单元,用于从工作流数据库获取所述流程ID所标识工作流程中开始节点的节点信息,所述节点信息包括节点ID和节点属性的参数值;
第一发送单元,用于以开始节点作为待执行节点,向业务***返回所述待执行节点的节点信息,以便由所述业务***执行所述待执行节点;其中,所述待执行节点预先设置在所述业务***中;
第三获取单元,用于在第一接收单元接收到业务***执行完毕所述待执行节点返回的执行结果消息时,从工作流数据库获取来源节点为所述待执行节点的流转条件的去向节点,从工作流数据库获取所述去向节点的节点信息,并以所述去向节点作为待执行节点,执行所述向业务***返回所述待执行节点的节点信息的操作。
8.一种业务***,其特征在于,包括:
第二发送单元,用于向工作流引擎发送流程实例创建请求,所述创建请求中包括***ID;其中,***ID唯一标识所述业务***;以及向工作流引擎返回执行结果消息;
第二接收单元,用于接收工作流引擎返回的待执行节点的节点信息;
业务处理单元,用于根据所述待执行节点的节点信息,从节点库获取并执行所述待执行节点,与用户进行信息交互并对用户提交的数据进行处理,在业务数据库中记录用户提交的数据与执行的操作;并在对用户提交的数据处理完毕后,获得执行数据结果并存储在业务数据库中,以及指示第二发送单元向工作流引擎返回执行结果消息;其中,构成工作流程的各节点预先设置在所述节点库中。
9.一种工作流***,其特征在于,包括权利要求7所述的工作流引擎。
10.一种业务处理***,包括权利要求7所述的工作流引擎和权利要求8所述的业务***。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510959011.7A CN106897810B (zh) | 2015-12-17 | 2015-12-17 | 业务处理方法和***、工作流引擎和***、业务*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510959011.7A CN106897810B (zh) | 2015-12-17 | 2015-12-17 | 业务处理方法和***、工作流引擎和***、业务*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106897810A true CN106897810A (zh) | 2017-06-27 |
CN106897810B CN106897810B (zh) | 2021-07-13 |
Family
ID=59191274
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510959011.7A Active CN106897810B (zh) | 2015-12-17 | 2015-12-17 | 业务处理方法和***、工作流引擎和***、业务*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106897810B (zh) |
Cited By (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107592230A (zh) * | 2017-09-22 | 2018-01-16 | 北京奇艺世纪科技有限公司 | 一种跟踪信息获取方法及装置 |
CN107909330A (zh) * | 2017-08-31 | 2018-04-13 | 平安科技(深圳)有限公司 | 工作流数据处理方法、装置、存储介质和计算机设备 |
CN108205440A (zh) * | 2017-12-25 | 2018-06-26 | 国云科技股份有限公司 | 一种支持回滚的任务流框架实现方法 |
CN108255584A (zh) * | 2018-01-30 | 2018-07-06 | 安徽水利开发股份有限公司 | 一种工作流程处理方法和***及计算机可读存储介质 |
CN108683716A (zh) * | 2018-04-26 | 2018-10-19 | 网宿科技股份有限公司 | 基于大数据的业务逻辑学习、防护方法及学习、防护装置 |
CN109241026A (zh) * | 2018-07-18 | 2019-01-18 | 阿里巴巴集团控股有限公司 | 数据管理的方法、装置及*** |
CN109241097A (zh) * | 2018-08-02 | 2019-01-18 | 平安科技(深圳)有限公司 | 一种流程的配置方法、计算机可读存储介质及终端设备 |
CN109472540A (zh) * | 2017-09-07 | 2019-03-15 | 北京京东尚科信息技术有限公司 | 业务处理方法和装置 |
CN109636301A (zh) * | 2018-10-16 | 2019-04-16 | 深圳壹账通智能科技有限公司 | 金融业务的工作流配置方法、***、终端及可读存储介质 |
CN109697569A (zh) * | 2018-12-27 | 2019-04-30 | 金蝶软件(中国)有限公司 | 一种定义工作流的方法及*** |
CN109767198A (zh) * | 2018-10-25 | 2019-05-17 | 绍兴大明电力建设有限公司 | 业务***智能管理方法及装置 |
CN109842500A (zh) * | 2017-11-24 | 2019-06-04 | 阿里巴巴集团控股有限公司 | 一种调度方法及***、工作节点及监控节点 |
CN109933908A (zh) * | 2019-03-14 | 2019-06-25 | 恒生电子股份有限公司 | 一种业务节点模型保存方法、应用方法及装置 |
CN110059233A (zh) * | 2019-03-01 | 2019-07-26 | 阿里巴巴集团控股有限公司 | 业务流程的展示方法和装置 |
CN110187938A (zh) * | 2019-05-24 | 2019-08-30 | 北京神州泰岳软件股份有限公司 | 一种页面工作流的组装方法及装置 |
CN110503408A (zh) * | 2019-08-28 | 2019-11-26 | 清大鲁班(北京)国际信息技术有限公司 | 一种基于自定义配置的业务流程管理*** |
CN110610406A (zh) * | 2019-09-20 | 2019-12-24 | 上海同在互联网科技有限公司 | 业务流程配置方法、装置、计算机设备和存储介质 |
CN110717647A (zh) * | 2019-09-03 | 2020-01-21 | 深圳壹账通智能科技有限公司 | 决策流构建方法、装置、计算机设备和存储介质 |
CN110738389A (zh) * | 2019-09-03 | 2020-01-31 | 深圳壹账通智能科技有限公司 | 工作流处理方法、装置、计算机设备和存储介质 |
CN110782169A (zh) * | 2019-10-29 | 2020-02-11 | 中国联合网络通信集团有限公司 | 更新业务流程方法和装置 |
CN110782223A (zh) * | 2019-10-14 | 2020-02-11 | 浙江讯盟科技有限公司 | Oa***的通用工作流装置及通用工作流实现方法 |
CN110880091A (zh) * | 2018-09-05 | 2020-03-13 | 易保网络技术(上海)有限公司 | 一种微服务的流程处理方法和设备 |
CN111090790A (zh) * | 2019-12-20 | 2020-05-01 | 联想(北京)有限公司 | 一种数据处理方法、装置及电子设备 |
CN111144837A (zh) * | 2019-12-13 | 2020-05-12 | 东软集团股份有限公司 | 流程编排的方法、装置、存储介质及电子设备 |
CN111178815A (zh) * | 2018-11-12 | 2020-05-19 | 北大方正集团有限公司 | 流程实例模板的生成方法、装置及计算机可读存储介质 |
CN111461656A (zh) * | 2020-03-31 | 2020-07-28 | 上海星移软件有限公司 | 一种业务流程管理***的流程数据处理方法及装置 |
CN111966454A (zh) * | 2020-07-31 | 2020-11-20 | 上海泛微网络科技股份有限公司 | 流程预测方法及装置 |
CN112181402A (zh) * | 2020-09-14 | 2021-01-05 | 珠海格力电器股份有限公司 | 业务***的业务处理方法、装置、存储介质及电子设备 |
CN112347160A (zh) * | 2020-11-13 | 2021-02-09 | 广州太信信息科技有限公司 | 一种基于呼叫中心***的工单管理方法、***及存储介质 |
CN112508412A (zh) * | 2020-12-10 | 2021-03-16 | 中信银行股份有限公司 | 机器人流程调用方法、装置、设备及存储介质 |
CN112732227A (zh) * | 2020-12-30 | 2021-04-30 | 城云科技(中国)有限公司 | 一种工作流引擎及其配置方法、装置 |
CN112732763A (zh) * | 2021-01-20 | 2021-04-30 | 北京千方科技股份有限公司 | 数据的聚合方法、装置、电子设备及介质 |
CN113723797A (zh) * | 2021-08-26 | 2021-11-30 | 上海飞机制造有限公司 | 一种工业操作中的管理***及方法 |
CN114169801A (zh) * | 2021-12-27 | 2022-03-11 | 中国建设银行股份有限公司 | 工作流调度方法和装置 |
CN114969809A (zh) * | 2022-05-07 | 2022-08-30 | 苏州砺行信息科技有限公司 | 一种基于流程引擎的跨域多源信息访问控制方法及*** |
CN115129307A (zh) * | 2022-08-26 | 2022-09-30 | 湖南云畅网络科技有限公司 | 一种基于低代码可视化的动作流编排方法及*** |
WO2023093488A1 (zh) * | 2021-11-26 | 2023-06-01 | 北京字跳网络技术有限公司 | 节点状态确定方法、装置、电子设备及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070055558A1 (en) * | 2005-08-19 | 2007-03-08 | Shanahan James G | Method and apparatus for probabilistic workflow mining |
CN101667156A (zh) * | 2009-09-22 | 2010-03-10 | 中兴通讯股份有限公司 | 一种可视化业务流程调试方法和*** |
CN102043625A (zh) * | 2010-12-22 | 2011-05-04 | 中国农业银行股份有限公司 | 一种工作流运行方法及*** |
CN102999816A (zh) * | 2012-12-05 | 2013-03-27 | 福建邮科通信技术有限公司 | 可个性化定制业务流程的工作流引擎 |
CN103065221A (zh) * | 2012-12-27 | 2013-04-24 | 北京仿真中心 | 基于bpel的多学科协同优化流程建模与调度的方法和*** |
US20130174169A1 (en) * | 2007-08-31 | 2013-07-04 | International Business Machines Corporation | Updating workflow nodes in a workflow |
CN103218706A (zh) * | 2013-03-20 | 2013-07-24 | 深圳市赛为智能股份有限公司 | 工作流文件生成方法及设备、生成执行方法及*** |
CN105046408A (zh) * | 2015-06-25 | 2015-11-11 | 国网山东省电力公司 | 一种可配置工作流的实现方法及*** |
CN105069567A (zh) * | 2015-08-05 | 2015-11-18 | 北京恒华伟业科技股份有限公司 | 一种工程设计流程的控制方法及装置 |
-
2015
- 2015-12-17 CN CN201510959011.7A patent/CN106897810B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070055558A1 (en) * | 2005-08-19 | 2007-03-08 | Shanahan James G | Method and apparatus for probabilistic workflow mining |
US20130174169A1 (en) * | 2007-08-31 | 2013-07-04 | International Business Machines Corporation | Updating workflow nodes in a workflow |
CN101667156A (zh) * | 2009-09-22 | 2010-03-10 | 中兴通讯股份有限公司 | 一种可视化业务流程调试方法和*** |
CN102043625A (zh) * | 2010-12-22 | 2011-05-04 | 中国农业银行股份有限公司 | 一种工作流运行方法及*** |
CN102999816A (zh) * | 2012-12-05 | 2013-03-27 | 福建邮科通信技术有限公司 | 可个性化定制业务流程的工作流引擎 |
CN103065221A (zh) * | 2012-12-27 | 2013-04-24 | 北京仿真中心 | 基于bpel的多学科协同优化流程建模与调度的方法和*** |
CN103218706A (zh) * | 2013-03-20 | 2013-07-24 | 深圳市赛为智能股份有限公司 | 工作流文件生成方法及设备、生成执行方法及*** |
CN105046408A (zh) * | 2015-06-25 | 2015-11-11 | 国网山东省电力公司 | 一种可配置工作流的实现方法及*** |
CN105069567A (zh) * | 2015-08-05 | 2015-11-18 | 北京恒华伟业科技股份有限公司 | 一种工程设计流程的控制方法及装置 |
Non-Patent Citations (4)
Title |
---|
LXT008: ""eworkflow自定义工作流***的博客文章"", 《HTTPS://WWW.DOCIN.COM/P-141397542.HTML》 * |
NEWAPPLE1212: ""eWorkFlow操作手册"", 《HTTPS://WWW.DOCIN.COM/P-636433469.HTML》 * |
吴宏森: "基于业务流程可视化的工作流引擎设计", 《镇江高专学报》 * |
葛中泽: "工作流引擎设计关键技术的实现", 《鄂州大学学报》 * |
Cited By (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107909330A (zh) * | 2017-08-31 | 2018-04-13 | 平安科技(深圳)有限公司 | 工作流数据处理方法、装置、存储介质和计算机设备 |
CN107909330B (zh) * | 2017-08-31 | 2020-10-09 | 平安科技(深圳)有限公司 | 工作流数据处理方法、装置、存储介质和计算机设备 |
CN109472540A (zh) * | 2017-09-07 | 2019-03-15 | 北京京东尚科信息技术有限公司 | 业务处理方法和装置 |
CN107592230B (zh) * | 2017-09-22 | 2023-02-21 | 北京奇艺世纪科技有限公司 | 一种跟踪信息获取方法及装置 |
CN107592230A (zh) * | 2017-09-22 | 2018-01-16 | 北京奇艺世纪科技有限公司 | 一种跟踪信息获取方法及装置 |
CN109842500B (zh) * | 2017-11-24 | 2022-05-10 | 阿里巴巴集团控股有限公司 | 一种调度方法及***、工作节点及监控节点 |
CN109842500A (zh) * | 2017-11-24 | 2019-06-04 | 阿里巴巴集团控股有限公司 | 一种调度方法及***、工作节点及监控节点 |
CN108205440A (zh) * | 2017-12-25 | 2018-06-26 | 国云科技股份有限公司 | 一种支持回滚的任务流框架实现方法 |
CN108255584A (zh) * | 2018-01-30 | 2018-07-06 | 安徽水利开发股份有限公司 | 一种工作流程处理方法和***及计算机可读存储介质 |
CN108683716B (zh) * | 2018-04-26 | 2019-12-10 | 网宿科技股份有限公司 | 基于大数据的业务逻辑学习、防护方法及学习、防护装置 |
WO2019205202A1 (zh) * | 2018-04-26 | 2019-10-31 | 网宿科技股份有限公司 | 基于大数据的业务逻辑学习、防护方法及学习、防护装置 |
EP3809675A1 (en) * | 2018-04-26 | 2021-04-21 | Wangsu Science & Technology Co., Ltd. | Big-data-based business logic learning method and protection method and apparatuses thereof |
CN108683716A (zh) * | 2018-04-26 | 2018-10-19 | 网宿科技股份有限公司 | 基于大数据的业务逻辑学习、防护方法及学习、防护装置 |
CN109241026A (zh) * | 2018-07-18 | 2019-01-18 | 阿里巴巴集团控股有限公司 | 数据管理的方法、装置及*** |
CN109241026B (zh) * | 2018-07-18 | 2021-10-15 | 创新先进技术有限公司 | 数据管理的方法、装置及*** |
CN109241097A (zh) * | 2018-08-02 | 2019-01-18 | 平安科技(深圳)有限公司 | 一种流程的配置方法、计算机可读存储介质及终端设备 |
CN110880091A (zh) * | 2018-09-05 | 2020-03-13 | 易保网络技术(上海)有限公司 | 一种微服务的流程处理方法和设备 |
CN109636301A (zh) * | 2018-10-16 | 2019-04-16 | 深圳壹账通智能科技有限公司 | 金融业务的工作流配置方法、***、终端及可读存储介质 |
CN109767198A (zh) * | 2018-10-25 | 2019-05-17 | 绍兴大明电力建设有限公司 | 业务***智能管理方法及装置 |
CN111178815A (zh) * | 2018-11-12 | 2020-05-19 | 北大方正集团有限公司 | 流程实例模板的生成方法、装置及计算机可读存储介质 |
CN109697569A (zh) * | 2018-12-27 | 2019-04-30 | 金蝶软件(中国)有限公司 | 一种定义工作流的方法及*** |
CN110059233A (zh) * | 2019-03-01 | 2019-07-26 | 阿里巴巴集团控股有限公司 | 业务流程的展示方法和装置 |
CN109933908A (zh) * | 2019-03-14 | 2019-06-25 | 恒生电子股份有限公司 | 一种业务节点模型保存方法、应用方法及装置 |
CN110187938A (zh) * | 2019-05-24 | 2019-08-30 | 北京神州泰岳软件股份有限公司 | 一种页面工作流的组装方法及装置 |
CN110503408A (zh) * | 2019-08-28 | 2019-11-26 | 清大鲁班(北京)国际信息技术有限公司 | 一种基于自定义配置的业务流程管理*** |
CN110738389A (zh) * | 2019-09-03 | 2020-01-31 | 深圳壹账通智能科技有限公司 | 工作流处理方法、装置、计算机设备和存储介质 |
CN110717647A (zh) * | 2019-09-03 | 2020-01-21 | 深圳壹账通智能科技有限公司 | 决策流构建方法、装置、计算机设备和存储介质 |
CN110610406B (zh) * | 2019-09-20 | 2022-12-02 | 上海同在互联网科技有限公司 | 业务流程配置方法、装置、计算机设备和存储介质 |
CN110610406A (zh) * | 2019-09-20 | 2019-12-24 | 上海同在互联网科技有限公司 | 业务流程配置方法、装置、计算机设备和存储介质 |
CN110782223A (zh) * | 2019-10-14 | 2020-02-11 | 浙江讯盟科技有限公司 | Oa***的通用工作流装置及通用工作流实现方法 |
CN110782169A (zh) * | 2019-10-29 | 2020-02-11 | 中国联合网络通信集团有限公司 | 更新业务流程方法和装置 |
CN111144837A (zh) * | 2019-12-13 | 2020-05-12 | 东软集团股份有限公司 | 流程编排的方法、装置、存储介质及电子设备 |
CN111090790A (zh) * | 2019-12-20 | 2020-05-01 | 联想(北京)有限公司 | 一种数据处理方法、装置及电子设备 |
CN111090790B (zh) * | 2019-12-20 | 2024-03-29 | 联想(北京)有限公司 | 一种数据处理方法、装置及电子设备 |
CN111461656A (zh) * | 2020-03-31 | 2020-07-28 | 上海星移软件有限公司 | 一种业务流程管理***的流程数据处理方法及装置 |
CN111966454A (zh) * | 2020-07-31 | 2020-11-20 | 上海泛微网络科技股份有限公司 | 流程预测方法及装置 |
CN112181402B (zh) * | 2020-09-14 | 2022-03-18 | 珠海格力电器股份有限公司 | 业务***的业务处理方法、装置、存储介质及电子设备 |
CN112181402A (zh) * | 2020-09-14 | 2021-01-05 | 珠海格力电器股份有限公司 | 业务***的业务处理方法、装置、存储介质及电子设备 |
CN112347160B (zh) * | 2020-11-13 | 2024-05-10 | 广州太信信息科技有限公司 | 一种基于呼叫中心***的工单管理方法、***及存储介质 |
CN112347160A (zh) * | 2020-11-13 | 2021-02-09 | 广州太信信息科技有限公司 | 一种基于呼叫中心***的工单管理方法、***及存储介质 |
CN112508412A (zh) * | 2020-12-10 | 2021-03-16 | 中信银行股份有限公司 | 机器人流程调用方法、装置、设备及存储介质 |
CN112732227A (zh) * | 2020-12-30 | 2021-04-30 | 城云科技(中国)有限公司 | 一种工作流引擎及其配置方法、装置 |
CN112732763A (zh) * | 2021-01-20 | 2021-04-30 | 北京千方科技股份有限公司 | 数据的聚合方法、装置、电子设备及介质 |
CN113723797A (zh) * | 2021-08-26 | 2021-11-30 | 上海飞机制造有限公司 | 一种工业操作中的管理***及方法 |
WO2023093488A1 (zh) * | 2021-11-26 | 2023-06-01 | 北京字跳网络技术有限公司 | 节点状态确定方法、装置、电子设备及存储介质 |
CN114169801A (zh) * | 2021-12-27 | 2022-03-11 | 中国建设银行股份有限公司 | 工作流调度方法和装置 |
CN114969809A (zh) * | 2022-05-07 | 2022-08-30 | 苏州砺行信息科技有限公司 | 一种基于流程引擎的跨域多源信息访问控制方法及*** |
CN115129307A (zh) * | 2022-08-26 | 2022-09-30 | 湖南云畅网络科技有限公司 | 一种基于低代码可视化的动作流编排方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN106897810B (zh) | 2021-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106897810A (zh) | 业务处理方法和***、工作流引擎和***、业务*** | |
CN106897806A (zh) | 工作流程创建方法和***、业务*** | |
CN109710400A (zh) | 线程资源分组的方法及装置 | |
CN103309738B (zh) | 用户作业调度方法及装置 | |
CN109871200A (zh) | 一种用于快速构建业务审批***方法 | |
CN110348820B (zh) | 一种智能工作流管理*** | |
CN109615188A (zh) | 一种预分配结合匈牙利算法的多机器人任务分配方法 | |
CN110008024A (zh) | 一种多维约束下基于延迟决策的容器调度方法以及装置 | |
CN104199912B (zh) | 一种任务处理的方法及装置 | |
CN107888660A (zh) | 云服务资源调配方法、介质、装置和计算设备 | |
CN109992407A (zh) | 一种yarn集群gpu资源调度方法、装置和介质 | |
CN109743346A (zh) | 会话流程配置方法、装置及计算机可读存储介质 | |
CN110471923A (zh) | 一种区块链交易记录的处理方法及装置 | |
Parnreiter | The global city tradition | |
CN106557366A (zh) | 任务分发方法、装置及*** | |
CN106874109A (zh) | 一种分布式作业分发处理方法及*** | |
Shahrbanoo et al. | An Approach for agile SOA development using agile principals | |
CN106097102A (zh) | 一种投资任务规划与管理方法和*** | |
CN109902182A (zh) | 知识数据处理方法、装置、设备及存储介质 | |
CN109934708A (zh) | 一种本地多策略模拟交易方法及***装置 | |
CN103064955A (zh) | 查询规划方法及装置 | |
CN110503555A (zh) | 交易数据的复核方法、装置和服务器 | |
CN104184685B (zh) | 数据中心资源分配方法、装置及*** | |
CN106157138A (zh) | 一种银行交易数据所属群组确定方法及装置 | |
CN109376546A (zh) | 基于全局规则的数据包审计方法、***、装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220802 Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015 Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park) Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Patentee before: Qizhi software (Beijing) Co.,Ltd. |