CN110517018A - 一种基于activiti工作流的节点任意跳转方法及装置 - Google Patents
一种基于activiti工作流的节点任意跳转方法及装置 Download PDFInfo
- Publication number
- CN110517018A CN110517018A CN201910789996.1A CN201910789996A CN110517018A CN 110517018 A CN110517018 A CN 110517018A CN 201910789996 A CN201910789996 A CN 201910789996A CN 110517018 A CN110517018 A CN 110517018A
- Authority
- CN
- China
- Prior art keywords
- node
- task
- present node
- flow direction
- unit
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 230000000694 effects Effects 0.000 title claims abstract description 37
- 230000009467 reduction Effects 0.000 claims description 11
- 230000009191 jumping Effects 0.000 claims description 7
- 210000000352 storage cell Anatomy 0.000 claims description 5
- 238000012217 deletion Methods 0.000 claims description 2
- 230000037430 deletion Effects 0.000 claims description 2
- 230000008569 process Effects 0.000 abstract description 17
- 230000002159 abnormal effect Effects 0.000 abstract description 6
- 230000006870 function Effects 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012550 audit Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
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/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Engineering & Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Operations Research (AREA)
- Economics (AREA)
- Marketing (AREA)
- Data Mining & Analysis (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
本发明公开了一种基于activiti工作流的节点任意跳转方法及装置,其中方法包括:获取activiti工作流中需要进行任务跳转的当前节点;清空当前节点的所有原有任务流向;创建当前节点的新任务流向;设置新任务流向的目标节点;执行当前节点到目标节点的跳转任务。本发明无需为低概率的情况事先制定任务流分支线,只需要在出现异常情况时,直接跳转到对应的目标节点即可,过程简洁,并且灵活度高。
Description
技术领域
本发明涉及activiti工作流,更具体地说是一种基于activiti工作流的节点任意跳转方法及装置。
背景技术
activiti是由TomBaeyens于2010年5月发布首版的Java工作流开源工具,其主要致力于对流程的管理,工作流是由若干活动任务组成的具有一定功能的任务扭转流,故其命名为Activity的复数Activities化简而得。适用业务主要包括:OA、CRM、ERP等***。
现有的activiti工作流的正常流转方式是,在事先需求分析定制好的流程图中根据分支线进行流转,但是经常有一些异常的业务场景出现,异常的业务场景并不是在需求分析的时候能够确定下来的,例如在业务审批的过程中,偶尔会遇到如下的情景,操作人员不小心本来要点通过的,点到拒绝流程了,有些审批流程很长,之前已经审批的节点表单很多,拒绝掉重新发起流程将增加重新审批的时效和操作的重复性。又例如合同撤销流程如果审核通过,需要自动终止放款审批中的流程。这些都需要用到工作流节点的跳转功能,从当前节点跳转到指定的节点,若要实现流程节点的跳转,目前的做法是要为这种特殊情况下的流程,在流程图中画出相应的分支线,在需求分析的时候,也要确定好有哪些异常情况,但通常这些异常情况都是不好预测的。
发明内容
本发明的目的在于克服现有技术的不足,提供一种基于activiti工作流的节点任意跳转方法及装置。
为实现上述目的,本发明采用以下技术方案:
一方面,一种基于activiti工作流的节点任意跳转方法,所述方法包括:
获取activiti工作流中需要进行任务跳转的当前节点;
清空当前节点的所有原有任务流向;
创建当前节点的新任务流向;
设置新任务流向的目标节点;
执行当前节点到目标节点的跳转任务。
其进一步技术方案为:所述获取activiti工作流需要进行任务跳转的当前节点步骤之后还包括以下步骤:
通过当前节点获取其所有原有任务流向并将所有原有任务流向进行临时存储。
其进一步技术方案为:所述执行当前节点到目标节点的跳转任务的步骤之后,包括以下步骤:
删除当前节点的新任务流向;
还原当前节点的原有任务流向。
其进一步技术方案为:所述还原当前节点的原有任务流向的步骤,具体包括以下步骤:
查询原有任务流向的临时存储地址;
从临时存储地址中获取原有任务流向;
将获取的原有任务流向与当前节点重新建立任务流向关系。
另一方面,一种基于activiti工作流的节点任意跳转装置,所述装置包括获取单元、清空单元、创建单元、设置单元以及执行单元;
所述获取单元,用于获取activiti工作流中需要进行任务跳转的当前节点;
所述清空单元,用于清空当前节点的所有原有任务流向;
所述创建单元,用于创建当前节点的新任务流向;
所述设置单元,用于设置新任务流向的目标节点;
所述执行单元,用于执行当前节点到目标节点的跳转任务。
其进一步技术方案为:所述装置还包括临时存储单元;
所述临时存储单元,用于通过当前节点获取其所有原有任务流向并将所有原有任务流向进行临时存储。
其进一步技术方案为:所述装置还包括删除单元以及还原单元;
所述删除单元,用于删除当前节点的新任务流向;
所述还原单元,用于还原当前节点的原有任务流向。
其进一步技术方案为:所述还原单元包括查询模块、获取模块以及建立模块;
所述查询模块,用于查询原有任务流向的临时存储地址;
所述获取模块,用于从临时存储地址中获取原有任务流向;
所述建立模块,用于将获取的原有任务流向与当前节点重新建立任务流向关系。
本发明与现有技术相比的有益效果是:本发明提供的一种基于activiti工作流的节点任意跳转方法及装置,当前节点需要发生任务跳转时,清空当前节点的所有原有任务流向,创建当前节点的新任务流向,并设置新任务流向的目标节点,再执行当前节点到目标节点的跳转任务。无需为低概率的情况事先制定任务流分支线,只需要在出现异常情况时,直接跳转到对应的目标节点即可,过程简洁,并且灵活度高。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明技术手段,可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征及优点能够更明显易懂,以下特举较佳实施例,详细说明如下。
附图说明
图1为本发明一种基于activiti工作流的节点任意跳转方法具体实施例的流程图一;
图2为本发明一种基于activiti工作流的节点任意跳转方法具体实施例的流程图二;
图3为本发明一种基于activiti工作流的节点任意跳转装置具体实施例的结构框图一;
图4为本发明一种基于activiti工作流的节点任意跳转装置具体实施例的结构框图二。
具体实施方式
为了更充分理解本发明的技术内容,下面结合具体实施例对本发明的技术方案进一步介绍和说明,但不局限于此。
应当理解,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体/操作/对象与另一个实体/操作/对象区分开来,而不一定要求或者暗示这些实体/操作/对象之间存在任何这种实际的关系或者顺序。
还应当理解,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者***不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者***所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者***中还存在另外的相同要素。
请参见图1,本实施例提供了一种基于activiti工作流的节点任意跳转方法,该方法包括以下步骤:
S10、获取activiti工作流中需要进行任务跳转的当前节点;
S20、通过当前节点获取其所有原有任务流向并将所有原有任务流向进行临时存储;
S30、清空当前节点的所有原有任务流向;
S40、创建当前节点的新任务流向;
S50、设置新任务流向的目标节点;
S60、执行当前节点到目标节点的跳转任务;
S70、删除当前节点的新任务流向;
S80、还原当前节点的原有任务流向。
对于步骤S10,通过任务ID在任务服务方法来获取当前活动定义任务实体,拿到当前节点ID,再返回当前活动节点对象。
对于步骤S20和S30,通过当前活动节点对象,获取当前节点所有任务流向,并将其进行临时存储,然后清空原有任务流向。
对于步骤S40,使用当前节点对象调用创建新任务流向方法创建新的任务流向。
对于步骤S50和S60,将设置的新任务流向转向到目标节点,并执行当前节点到目标节点的跳转任务。
对于步骤S70,当跳转任务执行完成之后,调用下一个流向的删除方法来删除当前节点的新任务流向。
进一步的,请参见图2,步骤S80具体包括以下步骤:
S801、查询原有任务流向的临时存储地址;
S802、从临时存储地址中获取原有任务流向;
S803、将获取的原有任务流向与当前节点重新建立任务流向关系。
具体的,通过查询原有任务流向的临时存储地址找到原有任务流向,将原有任务流向与当前节点重新建立任务流向关系。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
对应于上述的一种基于activiti工作流的节点任意跳转方法,本实施例还提供了一种基于activiti工作流的节点任意跳转装置。请参见图3,该装置包括获取单元1、临时存储单元2、清空单元3、创建单元4、设置单元5、执行单元6、删除单元7以及还原单元8。
获取单元1,用于获取activiti工作流中需要进行任务跳转的当前节点;
临时存储单元2,用于通过当前节点获取其所有原有任务流向并将所有原有任务流向进行临时存储;
清空单元3,用于清空当前节点的所有原有任务流向;
创建单元4,用于创建当前节点的新任务流向;
设置单元5,用于设置新任务流向的目标节点;
执行单元6,用于执行当前节点到目标节点的跳转任务。
删除单元7,用于删除当前节点的新任务流向;
还原单元8,用于还原当前节点的原有任务流向。
进一步的,请参见图4,还原单元8包括查询模块81、获取模块82以及建立模块83;
查询模块81,用于查询原有任务流向的临时存储地址;
获取模块82,用于从临时存储地址中获取原有任务流向;
建立模块83,用于将获取的原有任务流向与当前节点重新建立任务流向关系。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明中各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述装置中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述仅以实施例来进一步说明本发明的技术内容,以便于读者更容易理解,但不代表本发明的实施方式仅限于此,任何依本发明所做的技术延伸或再创造,均受本发明的保护。本发明的保护范围以权利要求书为准。
Claims (8)
1.一种基于activiti工作流的节点任意跳转方法,其特征在于,所述方法包括:
获取activiti工作流中需要进行任务跳转的当前节点;
清空当前节点的所有原有任务流向;
创建当前节点的新任务流向;
设置新任务流向的目标节点;
执行当前节点到目标节点的跳转任务。
2.根据权利要求1所述的一种基于activiti工作流的节点任意跳转方法,其特征在于,所述获取activiti工作流需要进行任务跳转的当前节点的步骤之后还包括以下步骤:
通过当前节点获取其所有原有任务流向并将所有原有任务流向进行临时存储。
3.根据权利要求2所述的一种基于activiti工作流的节点任意跳转方法,其特征在于,所述执行当前节点到目标节点的跳转任务的步骤之后,包括以下步骤:
删除当前节点的新任务流向;
还原当前节点的原有任务流向。
4.根据权利要求3所述的一种基于activiti工作流的节点任意跳转方法,其特征在于,所述还原当前节点的原有任务流向的步骤,具体包括以下步骤:
查询原有任务流向的临时存储地址;
从临时存储地址中获取原有任务流向;
将获取的原有任务流向与当前节点重新建立任务流向关系。
5.一种基于activiti工作流的节点任意跳转装置,其特征在于,所述装置包括获取单元、清空单元、创建单元、设置单元以及执行单元;
所述获取单元,用于获取activiti工作流中需要进行任务跳转的当前节点;
所述清空单元,用于清空当前节点的所有原有任务流向;
所述创建单元,用于创建当前节点的新任务流向;
所述设置单元,用于设置新任务流向的目标节点;
所述执行单元,用于执行当前节点到目标节点的跳转任务。
6.根据权利要求5所述的一种基于activiti工作流的节点任意跳转装置,其特征在于,所述装置还包括临时存储单元;
所述临时存储单元,用于通过当前节点获取其所有原有任务流向并将所有原有任务流向进行临时存储。
7.根据权利要求6所述的一种基于activiti工作流的节点任意跳转装置,其特征在于,所述装置还包括删除单元以及还原单元;
所述删除单元,用于删除当前节点的新任务流向;
所述还原单元,用于还原当前节点的原有任务流向。
8.根据权利要求7所述的一种基于activiti工作流的节点任意跳转装置,其特征在于,所述还原单元包括查询模块、获取模块以及建立模块;
所述查询模块,用于查询原有任务流向的临时存储地址;
所述获取模块,用于从临时存储地址中获取原有任务流向;
所述建立模块,用于将获取的原有任务流向与当前节点重新建立任务流向关系。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910789996.1A CN110517018A (zh) | 2019-08-26 | 2019-08-26 | 一种基于activiti工作流的节点任意跳转方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910789996.1A CN110517018A (zh) | 2019-08-26 | 2019-08-26 | 一种基于activiti工作流的节点任意跳转方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110517018A true CN110517018A (zh) | 2019-11-29 |
Family
ID=68627033
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910789996.1A Pending CN110517018A (zh) | 2019-08-26 | 2019-08-26 | 一种基于activiti工作流的节点任意跳转方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110517018A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112540812A (zh) * | 2020-12-21 | 2021-03-23 | 珠海格力电器股份有限公司 | 节点的跳转方法和装置、存储介质、电子装置 |
CN112766646A (zh) * | 2020-12-30 | 2021-05-07 | 北京达佳互联信息技术有限公司 | 任务流程的生成、处理方法、装置、设备和存储介质 |
CN113535684A (zh) * | 2021-07-26 | 2021-10-22 | 北京计算机技术及应用研究所 | 一种基于Activiti的自主指挥控制方法 |
CN113687882A (zh) * | 2021-08-24 | 2021-11-23 | 上海浦东发展银行股份有限公司 | 基于activiti的流程回退方法、装置和存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120047078A1 (en) * | 2010-08-18 | 2012-02-23 | Software Ag | System and method for ad-hoc modification of a process during runtime |
CN109684057A (zh) * | 2018-12-11 | 2019-04-26 | 咪咕文化科技有限公司 | 任务处理方法、装置和存储介质 |
-
2019
- 2019-08-26 CN CN201910789996.1A patent/CN110517018A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120047078A1 (en) * | 2010-08-18 | 2012-02-23 | Software Ag | System and method for ad-hoc modification of a process during runtime |
CN109684057A (zh) * | 2018-12-11 | 2019-04-26 | 咪咕文化科技有限公司 | 任务处理方法、装置和存储介质 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112540812A (zh) * | 2020-12-21 | 2021-03-23 | 珠海格力电器股份有限公司 | 节点的跳转方法和装置、存储介质、电子装置 |
CN112766646A (zh) * | 2020-12-30 | 2021-05-07 | 北京达佳互联信息技术有限公司 | 任务流程的生成、处理方法、装置、设备和存储介质 |
CN113535684A (zh) * | 2021-07-26 | 2021-10-22 | 北京计算机技术及应用研究所 | 一种基于Activiti的自主指挥控制方法 |
CN113535684B (zh) * | 2021-07-26 | 2024-02-27 | 北京计算机技术及应用研究所 | 一种基于Activiti的自主指挥控制方法 |
CN113687882A (zh) * | 2021-08-24 | 2021-11-23 | 上海浦东发展银行股份有限公司 | 基于activiti的流程回退方法、装置和存储介质 |
CN113687882B (zh) * | 2021-08-24 | 2024-04-19 | 上海浦东发展银行股份有限公司 | 基于activiti的流程回退方法、装置和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110517018A (zh) | 一种基于activiti工作流的节点任意跳转方法及装置 | |
CN110738389A (zh) | 工作流处理方法、装置、计算机设备和存储介质 | |
CN109951547B (zh) | 事务请求并行处理方法、装置、设备和介质 | |
CN109684057A (zh) | 任务处理方法、装置和存储介质 | |
CN103678446B (zh) | 基于数据视图和数据库表的改进的模式映射 | |
CN105989163A (zh) | 数据实时处理方法及*** | |
CN113052696B (zh) | 金融业务任务处理方法、装置、计算机设备和存储介质 | |
CN111127181A (zh) | 一种凭证记账方法和装置 | |
CN106157030A (zh) | 支付处理方法和装置 | |
US8484065B1 (en) | Small enhancement process workflow manager | |
CN101495978B (zh) | 减少总线连接的消费者和产生者之间的消息流 | |
CN112990769A (zh) | 业务处理方法、装置、电子设备和存储介质 | |
CN115984022B (zh) | 分布式支付***统一对账方法和装置 | |
US8042160B1 (en) | Identity management for application access | |
US8744820B2 (en) | Integration of workflows from various systems | |
CN106845869A (zh) | 基于大数据确定关联企业的方法及*** | |
CN112671567B (zh) | 一种基于服务化接口的5g核心网拓扑发现方法及装置 | |
CN115563160A (zh) | 数据处理方法、装置、计算机设备和计算机可读存储介质 | |
CN111552847B (zh) | 一种变更对象数量的方法和装置 | |
CN111030863B (zh) | 一种节点拓扑信息确定方法、装置、设备及存储介质 | |
CN114036250A (zh) | 高精地图任务处理方法、装置、电子设备和介质 | |
CN104735097A (zh) | 信息的收集方法和*** | |
CN109901933A (zh) | 业务***的操作方法及装置、存储介质、电子装置 | |
CN109214844A (zh) | 一种广告分发方法、装置及电子设备 | |
CN109871331A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191129 |
|
RJ01 | Rejection of invention patent application after publication |