CN110163554A - 工作流的运行方法、装置、服务器和存储介质 - Google Patents

工作流的运行方法、装置、服务器和存储介质 Download PDF

Info

Publication number
CN110163554A
CN110163554A CN201910282101.5A CN201910282101A CN110163554A CN 110163554 A CN110163554 A CN 110163554A CN 201910282101 A CN201910282101 A CN 201910282101A CN 110163554 A CN110163554 A CN 110163554A
Authority
CN
China
Prior art keywords
examination
approval
task
workflow
client
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
Application number
CN201910282101.5A
Other languages
English (en)
Other versions
CN110163554B (zh
Inventor
宋超
汤文强
周志成
艾国信
赵鸿楠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN201910282101.5A priority Critical patent/CN110163554B/zh
Publication of CN110163554A publication Critical patent/CN110163554A/zh
Application granted granted Critical
Publication of CN110163554B publication Critical patent/CN110163554B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/12Accounting
    • G06Q40/125Finance or payroll

Abstract

本发明提供了一种工作流的运行方法、装置、服务器和存储介质,该方法包括:在配置工作流时,接收针对工作流中指定任务节点的接口生成请求,生成指定任务节点对应的节点完成接口;接收工作流执行请求,工作流执行请求包括与工作流对应的审批任务;根据工作流执行请求控制工作流将审批任务传递到指定任务节点时,调用对应的节点完成接口,从数据库中获取指定任务节点对应的审批条件,并基于审批条件运行审批任务,审批条件是动态配置的。本发明在审批条件发生变化时不必再重新配置工作流,只需调用节点完成接口获取预先配置的审批条件即可,避免了重新配置工作流的繁琐,提高了审批条件更改时的工作流运行效率,减少了人力成本。

Description

工作流的运行方法、装置、服务器和存储介质
技术领域
本发明涉及计算机技术领域,特别是涉及一种工作流的运行方法、装置、服务器和存储介质。
背景技术
工作流指业务过程的部分或整体在计算机应用环境下的自动化,是对工作流程及其各操作步骤之间业务规则的抽象、概括描述。工作流解决的主要问题是:为了实现某个业务目标,利用计算机在多个参与者之间按某种预定规则自动传递文档、信息或者任务。
工作流审批是工作流的一个较简单的应用。工作流的任务节点可以根据需要指定给某个人或者某个分组等进行审批,在配置工作流时针对各个任务节点配置了固定的审批条件,当在任务节点指定给某个分组进行审批时,审批条件例如可以是该分组中的特定人同意或者是至少半数以上同意,则节点就算审批完成。但是,在由于员工变动或者业务变动等导致审批条件发生变动时,现有的工作流则不能满足需要的审批条件,这就需要重新配置工作流,即需要开发人员重新编写整个工作流对应的代码并将所述审批条件固定在所述工作流中,导致审批条件更改时的工作流运行效率较低,增加了人力成本。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种工作流的运行方法、装置、服务器和存储介质。
依据本发明的第一方面,提供了一种工作流的运行方法,包括:
服务器在配置工作流时,接收针对所述工作流中指定任务节点的接口生成请求,根据所述接口生成请求生成所述指定任务节点对应的节点完成接口;
所述服务器接收工作流执行请求,所述工作流执行请求包括与所述工作流对应的审批任务;
所述服务器根据所述工作流执行请求控制所述工作流将所述审批任务传递到所述指定任务节点时,调用与所述指定任务节点对应的节点完成接口,从数据库中获取所述指定任务节点对应的审批条件,并基于所述审批条件运行所述审批任务,所述审批条件是动态配置的。
可选的,在所述服务器根据所述工作流执行请求控制所述工作流将所述审批任务传递到所述指定任务节点之前,还包括:
所述服务器接收第一客户端对所述指定任务节点配置的审批条件,并将所述审批条件保存到所述数据库中。
可选的,所述基于所述审批条件运行所述审批任务,包括:
所述服务器从数据库中读取所述指定任务节点对应的多个第二客户端;
所述服务器将所述审批任务发送给所述多个第二客户端,并接收所述多个第二客户端返回的执行结果,所述执行结果为所述第二客户端执行所述审批任务的结果;
所述服务器根据所述执行结果和所述审批条件,确定所述审批任务的运行结果。
可选的,所述服务器根据所述执行结果和所述审批条件,确定所述审批任务的运行结果,包括:
在所述执行结果不满足所述审批条件时,所述服务器判定所述运行结果为未审批完成;
在所述执行结果满足所述审批条件时,所述服务器判定所述运行结果为审批完成。
可选的,在所述服务器根据所述执行结果和所述审批条件,确定所述审批任务的运行结果之前,还包括:
所述服务器统计所述第二客户端的总数量,并将所述总数量赋值给审批总数量变量,将审批通过数量变量初始值设为0;
所述在所述执行结果满足所述审批条件时,所述服务器判定所述运行结果为审批完成,包括:
所述服务器在接收到一个第二客户端的执行结果且该执行结果为审批通过时,将所述审批通过数量变量的值加一,并计算所述审批通过数量变量与所述审批总数量变量的比例;
若所述比例大于或等于所述审批条件中的预设比例,则所述服务器判定所述运行结果为审批完成。
可选的,所述在所述执行结果满足所述审批条件时,所述服务器判定所述运行结果为审批完成,包括:
所述服务器在接收到一个第二客户端的执行结果且该执行结果为审批通过时,判断该第二客户端是否为所述审批条件中的指定第二客户端;
若该第二客户端是所述指定第二客户端,则所述服务器判定所述运行结果为审批完成。
依据本发明的第二方面,提供了一种工作流的运行装置,配置于服务器中,包括:
接口生成模块,用于在配置工作流时,接收针对所述工作流中指定任务节点的接口生成请求,根据所述接口生成请求生成所述指定任务节点对应的节点完成接口;
执行请求接收模块,用于接收工作流执行请求,所述工作流执行请求包括与所述工作流对应的审批任务;
审批任务运行模块,用于根据所述工作流执行请求控制所述工作流将所述审批任务传递到所述指定任务节点时,调用与所述指定任务节点对应的节点完成接口,从数据库中获取所述指定任务节点对应的审批条件,并基于所述审批条件运行所述审批任务,所述审批条件是动态配置的。
可选的,还包括:
审批条件接收模块,用于接收第一客户端对所述指定任务节点配置的审批条件,并将所述审批条件保存到所述数据库中。
可选的,所述审批任务运行模块包括:
第二客户端读取单元,用于从数据库中读取所述指定任务节点对应的多个第二客户端;
执行结果接收单元,用于将所述审批任务发送给所述多个第二客户端,并接收所述多个第二客户端返回的执行结果,所述执行结果为所述第二客户端执行所述审批任务的结果;
运行结果确定单元,用于根据所述执行结果和所述审批条件,确定所述审批任务的运行结果。
可选的,所述运行结果确定单元包括:
第一判定子单元,用于在所述执行结果不满足所述审批条件时,判定所述运行结果为未审批完成;
第二判定子单元,用于在所述执行结果满足所述审批条件时,判定所述运行结果为审批完成。
可选的,所述审批任务运行模块还包括:
初始化单元,用于统计所述第二客户端的总数量,并将所述总数量赋值给审批总数量变量,将审批通过数量变量初始值设为0;
所述第二判定子单元具体用于:
在接收到一个第二客户端的执行结果且该执行结果为审批通过时,将所述审批通过数量变量的值加一,并计算所述审批通过数量变量与所述审批总数量变量的比例;
若所述比例大于或等于所述审批条件中的预设比例,则判定所述运行结果为审批完成。
可选的,所述第二判定子单元具体用于:
在接收到一个第二客户端的执行结果且该执行结果为审批通过时,判断该第二客户端是否为所述审批条件中的指定第二客户端;
若该第二客户端是所述指定第二客户端,则判定所述运行结果为审批完成。
依据本发明的第三方面,提供了一种服务器,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如第一方面中所述的工作流的运行方法。
依据本发明的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面中所述的工作流的运行方法。
针对在先技术,本发明具备如下优点:
本发明提供的工作流的运行方法、装置、服务器和存储介质,通过在配置工作流时,接收针对所述工作流中指定任务节点的接口生成请求,生成所述指定任务节点对应的节点完成接口,接收工作流执行请求,工作流执行请求包括所述工作流对应的审批任务,控制所述工作流将所述审批任务传递到所述指定任务节点时,调用与所述指定任务节点对应的节点完成接口从数据库中获取所述指定任务节点对应的审批条件,并基于所述审批条件运行所述审批任务,所述审批条件可动态配置,从而在审批条件发生变化时不必再重新配置工作流,只需调用节点完成接口获取预先配置的审批条件即可,避免了重新配置工作流的繁琐,提高了审批条件更改时的工作流运行效率,减少了人力成本。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。
图1是本发明实施例提供的一种工作流的运行方法的步骤流程图;
图2是本发明实施例提供的一种工作流的运行方法的步骤流程图;
图3是本发明实施例提供的一种工作流的运行装置的结构框图;
图4是本发明实施例提供的一种工作流的运行装置的结构框图;
图5为本发明实施例提供的一种服务器的结构框图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
图1是本发明实施例提供的一种工作流的运行方法的步骤流程图,如图1所示,该方法可以包括:
步骤101,服务器在配置工作流时,接收针对所述工作流中指定任务节点的接口生成请求,根据所述接口生成请求生成所述指定任务节点对应的节点完成接口。
其中,接口生成请求用于请求生成与指定任务节点对应的节点完成接口。节点完成接口用于在工作流执行到指定任务节点时被调用以获取第一客户端预先配置的审批条件。
工作流配置人员在完成工作流对应的代码后,运行该代码,服务器便接收到工作流配置请求,工作流配置请求中包括指定任务节点的接口生成请求。服务器根据工作流配置请求,按照工作流中各个任务节点的顺序配置工作流,如果一个指定任务节点对应的配置代码中包括节点完成接口的生成代码,则服务器在配置到该指定任务节点时,接收到接口生成请求,从而可以生成该指定任务节点对应的节点完成接口。服务器在配置工作流时,不再为工作流中的每个任务节点配置固定的审批条件,而是可以根据接收到的对指定任务节点的接口生成请求,生成所述指定任务节点对应的节点完成接口,在控制工作流执行到该指定任务节点时,通过调用该节点完成接口获取第一客户端为该指定任务节点动态配置的审批条件,从而在后续指定任务节点的审批条件发生变动时不必再重新配置工作流,只需通过调用节点完成接口获取第一客户端动态配置的审批条件。
在一个具体的实施方案中,在生成指定任务节点对应的节点完成接口时,可以将审批条件修改频繁的任务节点作为指定任务节点,从而在进一步减少开发人员工作量的基础上,保证了指定任务节点审批条件发生变动时可以动态修改审批条件,而不必重新配置工作流。
步骤102,所述服务器接收工作流执行请求,所述工作流执行请求包括与所述工作流对应的审批任务。
在审批任务发起者通过任务发起客户端提交针对一个工作流的审批任务时,任务发起客户端生成包括所述审批任务的工作流执行请求,并将工作流执行请求发送给服务器,服务器接收到工作流执行请求,并基于工作流执行请求控制工作流的运行,即控制各个任务节点对所述审批任务的审批。所述审批任务包括要审批的具体内容,如所述工作流为财务审批工作流时,所述要审批的具体内容可以是财务报表,或者,所述工作流为请假审批工作流时,所述要审批的具体内容可以是请假单。
例如,对于一个配置完成的财务审批工作流,包括一个任务发起者和两个任务节点,任务发起者通过第三客户端上传待审批的财务报表,审批任务为财务报表,第三客户端生成工作流执行请求,并发送给服务器,服务器根据工作流首先将财务报表发送给第一个任务节点对应的多个第二客户端,并基于第一个任务节点的审批条件判断第一个任务节点是否审批完成,在第一个任务节点审批完成时,控制工作流将财务报表发送给第二个任务节点对应的多个第二客户端,基于第二个任务节点的审批条件判断第二个任务节点是否审批完成,在第二个任务节点审批完成时,工作流执行结束。
步骤103,所述服务器根据所述工作流执行请求控制所述工作流将所述审批任务传递到所述指定任务节点时,调用与所述指定任务节点对应的节点完成接口,从数据库中获取所述指定任务节点对应的审批条件,并基于所述审批条件运行所述审批任务,所述审批条件是动态配置的。
其中,审批条件是控制任务节点执行审批任务时判断该任务节点是否将审批任务执行完成的条件。一个任务节点可以对应一个审批分组,一个审批分组可以包括多个第二客户端,这时审批条件可以是设定比例的第二客户端审批通过该任务节点即审批完成,或者,审批条件还可以是指定的一个或多个第二客户端审批通过该任务节点即审批完成。
服务器接收到工作流执行请求后,从数据库中获取工作流的各个任务节点以及各个任务节点之间的前后顺序关系,按照工作流的各个任务节点之间的前后顺序关系,在各个任务节点之间传递所述审批任务,在当前任务节点运行审批任务满足对应的审批条件时,控制工作流将审批任务传递给下一个任务节点。服务器在控制工作流将审批任务传递到指定任务节点时,由于指定任务节点的审批条件可以动态配置,所以调用节点完成接口可以从数据库中获取审批条件,并基于该审批条件运行审批任务。
在一个具体的实施方案中,在所述服务器根据所述工作流执行请求控制所述工作流将所述审批任务传递到所述指定任务节点之前,还包括:所述服务器接收第一客户端对所述指定任务节点配置的审批条件,并将所述审批条件保存到所述数据库中。
在服务器控制工作流将审批任务传递到指定任务节点之前,第一客户端可以为指定任务节点动态配置审批条件,并发送给服务器,服务器接收到第一客户端为指定任务节点动态配置的审批条件后,将该审批条件保存到数据库中,在服务器控制工作流将审批任务传递到指定任务节点时,该审批条件生效,通过该审批条件判断本次指定任务节点对审批任务的运行是否完成。若在指定任务节点运行审批任务的过程中,服务器接收到第一客户端为该指定任务节点动态配置的审批条件,则该审批条件不生效,即本次工作流运行过程中判断指定任务节点对审批任务的运行是否完成时,仍然使用之前的审批条件进行判断,但是,服务器仍然将第一客户端动态配置的审批条件保存到数据库中,并用于下次工作流运行时判定指定任务节点对审批任务的运行结果。
例如,在一个财务审批工作流中,一个指定任务节点有对应三个第二客户端,假设一次工作流运行时的审批任务为支出10万,需要的审批条件为三个第二客户端中有一个第二客户端审批通过即审批完成,这时第一用户可以通过第一客户端配置该审批条件,服务器接收到该审批条件后,将该审批条件保存到数据库中,并在控制工作流执行到指定任务节点时,通过指定任务节点对应的节点完成接口从数据库中调用该审批条件,并基于该审批条件运行审批任务;如果下次工作流运行时的审批任务为支出100万,需要的审批条件为三个第二客户端均审批通过才审批完成,即与上次的审批条件不同,第一用户可以通过第一客户端重新配置本次的审批条件。从而针对业务变动、人员变动等问题,需要兼容历史工作流时,只需通过动态配置审批条件就可以很好的满足这一需求,避免了每次审批条件变动时都需要重新生成工作流的繁琐。
本实施例提供的工作流的运行方法,通过服务器在配置工作流时,接收针对所述工作流中指定任务节点的接口生成请求,生成指定任务节点对应的节点完成接口,在接收到包括审批任务的工作流执行请求时,控制工作流将审批任务传递到指定任务节点,调用与指定任务节点对应的节点完成接口,从数据库中获取指定任务节点对应的审批条件,并基于所述审批条件运行所述审批任务,由于审批条件是动态配置的,从而在审批条件发生变化时不必再重新配置工作流,只需调用节点完成接口获取预先配置的审批条件即可,避免了重新配置工作流的繁琐,提高了审批条件更改时的工作流运行效率,减少了人力成本。
图2是本发明实施例提供的一种工作流的运行方法的步骤流程图,如图2所示,该方法可以包括:
步骤201,服务器在配置工作流时,接收针对所述工作流中指定任务节点的接口生成请求,根据所述接口生成请求生成所述指定任务节点对应的节点完成接口。
步骤202,所述服务器接收工作流执行请求,所述工作流执行请求包括与所述工作流对应的审批任务。
步骤203,所述服务器根据所述工作流执行请求控制所述工作流将所述审批任务传递到所述指定任务节点时,调用与所述指定任务节点对应的节点完成接口,从数据库中获取所述指定任务节点对应的审批条件。
步骤204,所述服务器从数据库中读取所述指定任务节点对应的多个第二客户端。
在服务器控制工作流执行到指定任务节点之前,管理员用户可以通过管理员客户端配置该指定任务节点对应的第二客户端,管理员客户端将指定任务节点对应的第二客户端保存到数据库中,在服务器控制工作流执行到该指定任务节点时,从数据库中读取指定任务节点对应的多个第二客户端。其中,指定任务节点对应的第二客户端属于一个审批分组,一个审批分组中的第二客户端可以由管理员用户根据业务变动或人员变动进行动态修改。
步骤205,所述服务器将所述审批任务发送给所述多个第二客户端,并接收所述多个第二客户端返回的执行结果,所述执行结果为所述第二客户端执行所述审批任务的结果。
在指定任务节点运行审批任务时,服务器将该指定任务节点对应的审批任务发送给指定任务节点对应的多个第二客户端,第二客户端接收到审批任务时显示审批任务,并接收第二用户针对该审批任务给出的执行结果,第二客户端将执行结果返回给服务器。其中,执行结果包括审批通过或审批不通过。
步骤206,所述服务器根据所述执行结果和所述审批条件,确定所述审批任务的运行结果。
在一种具体的实施方案中,所述服务器根据所述执行结果和所述审批条件,确定所述审批任务的运行结果,包括:
在所述执行结果不满足所述审批条件时,所述服务器判定所述运行结果为未审批完成;
在所述执行结果满足所述审批条件时,所述服务器判定所述运行结果为审批完成。
其中,审批条件可以是指定的一个或者多个第二客户端审批通过,或者,还可以是在所有的第二客户端中审批通过的第二客户端在所有第二客户端中的比例达到预设比例。
在审批条件是指定的一个第二客户端审批通过时,所述在所述执行结果满足所述审批条件时,所述服务器判定所述运行结果为审批完成,包括:所述服务器在接收到一个第二客户端的执行结果且该执行结果为审批通过时,判断该第二客户端是否为所述审批条件中的指定第二客户端;若该第二客户端是所述指定第二客户端,则所述服务器判定所述运行结果为审批完成。
多个第二客户端各自独立执行所述审批任务,即每个第二客户端接收到审批任务后,各自提醒对应的第二用户对所述审批任务进行审批,并接收第二用户的审批结果,将审批结果作为该第二用户对应的第二客户端的执行结果,并在执行完毕后将执行结果独立发送给服务器,服务器接收到一个第二客户端的执行结果时,执行一次上述的判断,在执行结果满足审批条件时,确定指定任务节点的审批任务运行结果为审批完成。如果该第二客户端不是审批条件中的指定第二客户端,则确定执行结果不满足审批条件,确定指定任务节点的审批任务运行结果为未审批完成。
在审批条件是在所有的第二客户端中审批通过的第二客户端在所有第二客户端中的比例达到预设比例时,在所述服务器根据所述执行结果和所述审批条件,确定所述任务节点的运行结果之前,所述服务器统计所述第二客户端的总数量,并将所述总数量赋值给审批总数量变量,将审批通过数量变量初始值设为0;所述在所述执行结果满足所述审批条件时,所述服务器在接收到一个第二客户端的执行结果且该执行结果为审批通过时,将所述审批通过数量变量的值加1,并计算所述审批通过数量变量与所述审批总数量变量的比例;若所述比例大于或等于所述审批条件中的预设比例,则所述服务器判定所述运行结果为审批完成。
可以设置两个变量,即设置审批总数量变量(可记为totalAudits)和审批通过数量变量(可记为agreeAudits),审批总数量变量用来记录第二客户端的总数量,审批通过数量变量用来记录审批通过的第二客户端的数量,在从数据库中读取到指定任务节点对应的多个第二客户端后,统计第二客户端的总数量,将总数量赋值给所述审批总数量变量,审批通过数量变量初始值设为0,在有一个第二客户端的执行结果为审批通过时,审批通过数量变量在原有值的基础上加1,并计算审批通过数量变量与审批总数量变量的比例,如果该比例大于或等于审批条件中的预设比例,则确定执行结果满足所述审批条件,确定指定任务节点对审批任务的运行结果为审批完成,可以控制工作流流转至下一任务节点,如果该比例小于审批条件中的预设比例,则确定执行结果不满足所述审批条件,确定指定任务节点对审批任务的运行结果为未审批完成,继续停留在指定任务节点。
例如,在指定任务节点的审批条件为50%同意则审批任务完成时,在服务器调用节点完成接口获取到该审批条件后,可以确定第二客户端的总数量,并将总数量赋值给审批总数量变量,将审批通过数量变量初始值设为0,将审批任务发生给指定任务节点对应的多个第二客户端,并在接收到一个第二客户端的执行结果且该执行结果为审批通过时,将审批通过数量变量的值加1,并计算审批通过数量变量与总数量变量的比例,当该比例大于或等于50%时,则判定指定任务节点对审批任务的运行结果为审批完成。
本实施例提供的工作流的运行方法,通过在服务器基于调用节点完成接口获取到的审批条件运行审批任务时,从数据库中读取指定任务节点对应的多个第二客户端,将审批任务发送给所述多个第二客户端,并接收所述多个第二客户端返回的执行结果,根据所述执行结果和审批条件,确定审批任务的运行结果,实现了基于动态配置的审批条件来控制执行任务节点对审批任务的运行,从而在业务变动等导致指定任务节点对应的第二客户端和审批条件发生变动时,可以从数据库中读取指定任务节点对应的多个第二客户端,调用节点完成接口获取动态配置的审批条件,并根据该审批条件确定审批任务的运行结果,从而避免了重新配置工作流的繁琐。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
图3是本发明实施例提供的一种工作流的运行装置的结构框图,该工作流的运行装置可以应用于服务器中,如图3所示,该工作流的运行装置300可以包括:
接口生成模块301,用于在配置工作流时,接收针对所述工作流中指定任务节点的接口生成请求,根据所述接口生成请求生成所述指定任务节点对应的节点完成接口;
执行请求接收模块302,用于接收工作流执行请求,所述工作流执行请求包括与所述工作流对应的审批任务;
审批任务运行模块303,用于根据所述工作流执行请求控制所述工作流将所述审批任务传递到所述指定任务节点时,调用与所述指定任务节点对应的节点完成接口,从数据库中获取所述指定任务节点对应的审批条件,并基于所述审批条件运行所述审批任务,所述审批条件是动态配置的。
图4是本发明实施例提供的一种工作流的运行装置的结构框图,该工作流的运行装置可以应用于服务器中,如图4所示,该工作流的运行装置400可以包括:接口生成模块401、执行请求接收模块402、审批条件接收模块403和审批任务运行模块404。
其中,接口生成模块401、执行请求接收模块402和审批任务运行模块404分别与接口生成模块301、执行请求接收模块302和审批任务运行模块303的作用相同,这里不再赘述。
审批条件接收模块403,用于接收第一客户端对所述指定任务节点配置的审批条件,并将所述审批条件保存到所述数据库中。
可选的,审批任务运行模块404包括:
第二客户端读取单元4041,用于从数据库中读取所述指定任务节点对应的多个第二客户端;
执行结果接收单元4042,用于将所述审批任务发送给所述多个第二客户端,并接收所述多个第二客户端返回的执行结果,所述执行结果为所述第二客户端执行所述审批任务的结果;
运行结果确定单元4043,用于根据所述执行结果和所述审批条件,确定所述审批任务的运行结果。
可选的,运行结果确定单元4043包括:
第一判定子单元,用于在所述执行结果不满足所述审批条件时,判定所述运行结果为未审批完成;
第二判定子单元,用于在所述执行结果满足所述审批条件时,判定所述运行结果为审批完成。
可选的,审批任务运行模块404还包括:
初始化单元,用于统计所述第二客户端的总数量,并将所述总数量赋值给审批总数量变量,将审批通过数量变量初始值设为0;
所述第二判定子单元具体用于:
在接收到一个第二客户端的执行结果且该执行结果为审批通过时,将所述审批通过数量变量的值加一,并计算所述审批通过数量变量与所述审批总数量变量的比例;
若所述比例大于或等于所述审批条件中的预设比例,则判定所述运行结果为审批完成。
可选的,所述第二判定子单元具体用于:
在接收到一个第二客户端的执行结果且该执行结果为审批通过时,判断该第二客户端是否为所述审批条件中的指定第二客户端;
若该第二客户端是所述指定第二客户端,则判定所述运行结果为审批完成。
本实施例提供的工作流的运行装置,通过接口生成模块在配置工作流时接收针对工作流中指定任务节点的接口生成请求,生成指定任务节点对应的节点完成接口,执行请求接收模块接收工作流执行请求,审批任务运行模块控制工作流将审批任务传递到指定任务节点时调用节点完成接口从数据库中获取指定任务节点对应的审批条件,并基于审批条件运行审批任务,由于审批条件可以动态配置,从而在审批条件发生变化时不必再重新配置工作流,只需调用节点完成接口获取预先配置的审批条件即可,避免了重新配置工作流的繁琐,提高了审批条件更改时的工作流运行效率,减少了人力成本。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
图5为本发明实施例提供的一种服务器的结构框图。如图5所示,该服务器500可以包括与一个或多个数据存储工具连接的处理器501,该数据存储工具可以包括内存单元502和存储介质503。服务器500还可以包括输入接口504和输出接口505,用于与另一装置或系统进行通信。被处理器501的CPU执行的程序代码可存储在内存单元502或存储介质503中。
服务器500中的处理器501调用存储在内存单元502或存储介质503的程序代码,以执行上述实施例中的工作流的运行方法。
其中,存储介质可以是只读存储器(Read-Only Memory,ROM),或是可读写的,例如硬盘、闪存。内存单元可为随机存取存储器(Random Access Memory,RAM)。内存单元可与处理器物理集成或集成在存储器中或构建为单独的单元。
处理器为上述服务器的控制中心,并提供处理装置,用于执行指令,进行中断操作,提供计时功能以及多种其他功能。可选地,处理器包括一个或多个中央处理单元(CPU)。上述服务器中包括一个或者多个的处理器。处理器可为单核(单CPU)处理器或多核(多CPU)处理器。除非另有声明,描述为用于执行任务的例如处理器或存储器的部件可实现为通用部件,其暂时用于在给定时间执行任务,或实现为专门制造用于执行该任务的特定部件。此处所用的术语“处理器”指一个或多个装置,电路和/或处理核,用于处理数据,例如计算机程序指令。
被处理器的CPU执行的程序代码可存储在内存单元或存储介质中。可选地,存储在存储介质中的程序代码可以被复制入内存单元以便处理器的CPU执行。处理器可执行至少一个内核(例如LINUXTM、UNIXTM、WINDOWSTM、ANDROIDTM、IOSTM),众所周知,该内核用于通过控制其他程序或过程的执行、控制与外围装置的通信以及控制计算机设备资源的使用来控制上述服务器的操作。
上述服务器中的上述元件可通过总线彼此连接,总线例如数据总线、地址总线、控制总线、扩展总线和局部总线之一或其任意组合。
根据本发明的一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,存储介质可以是只读存储器(Read-Only Memory,ROM),或是可读写的,例如硬盘、闪存。所述计算机程序被处理器执行时实现前述实施例的工作流的运行方法。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种工作流的运行方法、装置、服务器和存储介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (14)

1.一种工作流的运行方法,其特征在于,包括:
服务器在配置工作流时,接收针对所述工作流中指定任务节点的接口生成请求,根据所述接口生成请求生成所述指定任务节点对应的节点完成接口;
所述服务器接收工作流执行请求,所述工作流执行请求包括与所述工作流对应的审批任务;
所述服务器根据所述工作流执行请求控制所述工作流将所述审批任务传递到所述指定任务节点时,调用与所述指定任务节点对应的节点完成接口,从数据库中获取所述指定任务节点对应的审批条件,并基于所述审批条件运行所述审批任务,所述审批条件是动态配置的。
2.根据权利要求1所述的方法,其特征在于,在所述服务器根据所述工作流执行请求控制所述工作流将所述审批任务传递到所述指定任务节点之前,还包括:
所述服务器接收第一客户端对所述指定任务节点配置的审批条件,并将所述审批条件保存到所述数据库中。
3.根据权利要求1所述的方法,其特征在于,所述基于所述审批条件运行所述审批任务,包括:
所述服务器从数据库中读取所述指定任务节点对应的多个第二客户端;
所述服务器将所述审批任务发送给所述多个第二客户端,并接收所述多个第二客户端返回的执行结果,所述执行结果为所述第二客户端执行所述审批任务的结果;
所述服务器根据所述执行结果和所述审批条件,确定所述审批任务的运行结果。
4.根据权利要求3所述的方法,其特征在于,所述服务器根据所述执行结果和所述审批条件,确定所述审批任务的运行结果,包括:
在所述执行结果不满足所述审批条件时,所述服务器判定所述运行结果为未审批完成;
在所述执行结果满足所述审批条件时,所述服务器判定所述运行结果为审批完成。
5.根据权利要求4所述的方法,其特征在于,在所述服务器根据所述执行结果和所述审批条件,确定所述审批任务的运行结果之前,还包括:
所述服务器统计所述第二客户端的总数量,并将所述总数量赋值给审批总数量变量,将审批通过数量变量初始值设为0;
所述在所述执行结果满足所述审批条件时,所述服务器判定所述运行结果为审批完成,包括:
所述服务器在接收到一个第二客户端的执行结果且该执行结果为审批通过时,将所述审批通过数量变量的值加一,并计算所述审批通过数量变量与所述审批总数量变量的比例;
若所述比例大于或等于所述审批条件中的预设比例,则所述服务器判定所述运行结果为审批完成。
6.根据权利要求4所述的方法,其特征在于,所述在所述执行结果满足所述审批条件时,所述服务器判定所述运行结果为审批完成,包括:
所述服务器在接收到一个第二客户端的执行结果且该执行结果为审批通过时,判断该第二客户端是否为所述审批条件中的指定第二客户端;
若该第二客户端是所述指定第二客户端,则所述服务器判定所述运行结果为审批完成。
7.一种工作流的运行装置,其特征在于,配置于服务器中,包括:
接口生成模块,用于在配置工作流时,接收针对所述工作流中指定任务节点的接口生成请求,根据所述接口生成请求生成所述指定任务节点对应的节点完成接口;
执行请求接收模块,用于接收工作流执行请求,所述工作流执行请求包括与所述工作流对应的审批任务;
审批任务运行模块,用于根据所述工作流执行请求控制所述工作流将所述审批任务传递到所述指定任务节点时,调用与所述指定任务节点对应的节点完成接口,从数据库中获取所述指定任务节点对应的审批条件,并基于所述审批条件运行所述审批任务,所述审批条件是动态配置的。
8.根据权利要求7所述的装置,其特征在于,还包括:
审批条件接收模块,用于接收第一客户端对所述指定任务节点配置的审批条件,并将所述审批条件保存到所述数据库中。
9.根据权利要求7所述的装置,其特征在于,所述审批任务运行模块包括:
第二客户端读取单元,用于从数据库中读取所述指定任务节点对应的多个第二客户端;
执行结果接收单元,用于将所述审批任务发送给所述多个第二客户端,并接收所述多个第二客户端返回的执行结果,所述执行结果为所述第二客户端执行所述审批任务的结果;
运行结果确定单元,用于根据所述执行结果和所述审批条件,确定所述审批任务的运行结果。
10.根据权利要求9所述的装置,其特征在于,所述运行结果确定单元包括:
第一判定子单元,用于在所述执行结果不满足所述审批条件时,判定所述运行结果为未审批完成;
第二判定子单元,用于在所述执行结果满足所述审批条件时,判定所述运行结果为审批完成。
11.根据权利要求10所述的装置,其特征在于,所述审批任务运行模块还包括:
初始化单元,用于统计所述第二客户端的总数量,并将所述总数量赋值给审批总数量变量,将审批通过数量变量初始值设为0;
所述第二判定子单元具体用于:
在接收到一个第二客户端的执行结果且该执行结果为审批通过时,将所述审批通过数量变量的值加一,并计算所述审批通过数量变量与所述审批总数量变量的比例;
若所述比例大于或等于所述审批条件中的预设比例,则判定所述运行结果为审批完成。
12.根据权利要求10所述的装置,其特征在于,所述第二判定子单元具体用于:
在接收到一个第二客户端的执行结果且该执行结果为审批通过时,判断该第二客户端是否为所述审批条件中的指定第二客户端;
若该第二客户端是所述指定第二客户端,则判定所述运行结果为审批完成。
13.一种服务器,其特征在于,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1-6任一项所述的工作流的运行方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-6任一项所述的工作流的运行方法。
CN201910282101.5A 2019-04-09 2019-04-09 工作流的运行方法、装置、服务器和存储介质 Active CN110163554B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910282101.5A CN110163554B (zh) 2019-04-09 2019-04-09 工作流的运行方法、装置、服务器和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910282101.5A CN110163554B (zh) 2019-04-09 2019-04-09 工作流的运行方法、装置、服务器和存储介质

Publications (2)

Publication Number Publication Date
CN110163554A true CN110163554A (zh) 2019-08-23
CN110163554B CN110163554B (zh) 2022-03-08

Family

ID=67638533

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910282101.5A Active CN110163554B (zh) 2019-04-09 2019-04-09 工作流的运行方法、装置、服务器和存储介质

Country Status (1)

Country Link
CN (1) CN110163554B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111222783A (zh) * 2019-12-31 2020-06-02 深圳市创梦天地科技有限公司 处理工作流的方法及电子设备
CN111639918A (zh) * 2020-06-04 2020-09-08 北京字节跳动网络技术有限公司 审批的方法、装置、电子设备及计算机可读介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2529516A (en) * 2014-06-18 2016-02-24 Alfresco Software Inc Configurable and self-optimizing business process applications
CN105404952A (zh) * 2015-09-24 2016-03-16 鲁能集团有限公司 基于sap平台的审批工作流动态配置方法及系统
CN107992537A (zh) * 2017-11-24 2018-05-04 金蝶软件(中国)有限公司 业务属性传递方法、装置、计算机设备及存储介质
CN109087004A (zh) * 2018-08-03 2018-12-25 北京东软望海科技有限公司 一种基于领域模型的公共工作流引擎系统
CN109214785A (zh) * 2018-10-23 2019-01-15 北京奇艺世纪科技有限公司 工作流的实现方法、服务器及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2529516A (en) * 2014-06-18 2016-02-24 Alfresco Software Inc Configurable and self-optimizing business process applications
CN105404952A (zh) * 2015-09-24 2016-03-16 鲁能集团有限公司 基于sap平台的审批工作流动态配置方法及系统
CN107992537A (zh) * 2017-11-24 2018-05-04 金蝶软件(中国)有限公司 业务属性传递方法、装置、计算机设备及存储介质
CN109087004A (zh) * 2018-08-03 2018-12-25 北京东软望海科技有限公司 一种基于领域模型的公共工作流引擎系统
CN109214785A (zh) * 2018-10-23 2019-01-15 北京奇艺世纪科技有限公司 工作流的实现方法、服务器及系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111222783A (zh) * 2019-12-31 2020-06-02 深圳市创梦天地科技有限公司 处理工作流的方法及电子设备
CN111639918A (zh) * 2020-06-04 2020-09-08 北京字节跳动网络技术有限公司 审批的方法、装置、电子设备及计算机可读介质

Also Published As

Publication number Publication date
CN110163554B (zh) 2022-03-08

Similar Documents

Publication Publication Date Title
US10877813B2 (en) Resource control stack based system for multiple domain presentation of cloud computing resource control
CN108595157B (zh) 区块链数据的处理方法、装置、设备和存储介质
CN108614726B (zh) 虚拟机创建方法及装置
US20190020538A1 (en) Fpga-enabled compute instances
US20200065237A1 (en) Application monitoring with a decoupled monitoring tool
US11558311B2 (en) Automated local scaling of compute instances
CN104520814A (zh) 用于配置云计算系统的系统和方法
KR20180105874A (ko) 파워 사용량에 대한 실측을 통해 가상 머신을 선별적으로 제공하는 방법, 장치 및 시스템
CN109739700B (zh) 一种接口测试方法和装置
EP4095700A1 (en) Method and system for micro-service testing, and storage medium
CN103713935A (zh) 一种在线管理Hadoop集群资源的方法和装置
CN110163554A (zh) 工作流的运行方法、装置、服务器和存储介质
CN111124871A (zh) 接口测试方法及装置
US10733043B2 (en) Automatic correcting of computing cluster execution failure
CN109726119A (zh) 测试场景创建方法、申请方法、装置、客户端及服务器
CN109144846B (zh) 用于测试服务器的测试方法和装置
CN115033352A (zh) 多核处理器任务调度方法、装置及设备、存储介质
CN113254240A (zh) 一种管理控制设备的方法、系统、设备及介质
CN115185496A (zh) 一种基于Flowable工作流引擎的业务编排方法
CN110096305A (zh) 灰度发布方法、装置、设备及存储介质
CN109462491B (zh) 用于测试服务器功能的系统、方法和装置
US11037214B2 (en) Generation of performance offerings for interactive applications
CN109766088A (zh) 程序生成方法、装置、数据处理方法及服务器
CN110069395B (zh) 一种模拟异步接口的方法、装置、存储介质及计算机设备
CN113377652A (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