3.activiti7 流程例項
package com.imooc.activitiweb;
import org.activiti.engine.RuntimeService;
import org.activiti.engine.runtime.ProcessInstance;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.List;
@SpringBootTest
public class Part3_ProcessInstance {
@Autowired
private RuntimeService runtimeService;
//初始化流程例項
@Test
public void initProcessInstance(){
//1、獲取頁面表單填報的內容,請假時間,請假事由,String fromData
//2、fromData 寫入業務表,返回業務表主鍵ID==businessKey
//3、把業務資料與Activiti7流程資料關聯
ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("myProcess_Part1","bKey002");
System.out.println("流程例項ID:"+processInstance.getProcessDefinitionId());
}
//獲取流程例項列表
@Test
public void getProcessInstances(){
List<ProcessInstance> list = runtimeService.createProcessInstanceQuery().list();
for(ProcessInstance pi : list){
System.out.println("--------流程例項------");
System.out.println("ProcessInstanceId:"+pi.getProcessInstanceId());
System.out.println("ProcessDefinitionId:"+pi.getProcessDefinitionId());
System.out.println("isEnded"+pi.isEnded());
System.out.println("isSuspended:"+pi.isSuspended());
}
}
//暫停與啟用流程例項
@Test
public void activitieProcessInstance(){
// runtimeService.suspendProcessInstanceById("73f0fb9a-ce5b-11ea-bf67-dcfb4875e032");
//System.out.println("掛起流程例項");
runtimeService.activateProcessInstanceById("73f0fb9a-ce5b-11ea-bf67-dcfb4875e032");
System.out.println("啟用流程例項");
}
//刪除流程例項
@Test
public void delProcessInstance(){
runtimeService.deleteProcessInstance("73f0fb9a-ce5b-11ea-bf67-dcfb4875e032","刪著玩");
System.out.println("刪除流程例項");
}
}
1.初始化例項
部署完流程後 需要初始化例項
ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("myProcess_Part1","bKey002");
第一個引數是ACT_RE_PROCDEF流程定義表的KEY,第二個引數是對應自己業務表的主鍵id
初始化流程例項後,會在ACT_RU_IDENTITYLINK執行時參與人員與節點關係表與ACT_RU_EXECUTION執行時流程執行例項表生成資料。
在ACT_RU_IDENTITYLINK執行時參與人員與節點關係表中生成相應的型別與參與人的id與流程例項id等資訊。
在ACT_RU_EXECUTION執行時流程執行例項表中生成業務主鍵id等資訊。
2.獲取流程例項列表
流程例項------
ProcessInstanceId:02cd9b83-1445-11eb-a86b-04d9f5f5f42b 流程例項id
ProcessDefinitionId:myProcess_Part1:2:8f783608-143e-11eb-be5b-04d9f5f5f42b 流程定義id :bpm key+uuid
isEndedfalse 是否結束
isSuspended:false 是否掛起
3.暫停與啟用流程例項
runtimeService.suspendProcessInstanceById(“02cd9b83-1445-11eb-a86b-04d9f5f5f42b”);
掛起該欄位為2
runtimeService.activateProcessInstanceById(“02cd9b83-1445-11eb-a86b-04d9f5f5f42b”);
啟用該欄位為1
4.刪除例項
則會同時清空這個表的相關資料
相關文章
- Activiti的流程例項【ProcessInstance】與執行例項【Execution】
- 專案資源管理流程例項
- 研發專案流程例項(轉)
- 響應式瀑布流程式碼例項
- Rest Webservice 環境搭建流程和例項RESTWeb
- javascript函式節流程式碼例項分享JavaScript函式
- 有關jbpm流程例項版本的問題
- Spring中Bean的例項化詳細流程SpringBean
- 機器學習處理流程、特徵工程,模型設計例項機器學習特徵工程模型
- 深入剖析Vue原始碼 - 例項掛載,編譯流程Vue原始碼編譯
- activiti 根據 流程例項ID 獲取發起人
- 單例項刪除ASM例項單例ASM
- 3.3 - Laravel - 5.6 - Route - 載入單個Route例項的主要流程Laravel
- Activiti 學習筆記四:流程例項、任務的執行筆記
- 表單註冊下一步流程程式碼例項
- git常用命令分支策略以及例項操作流程示範Git
- php例項化物件的例項方法PHP物件
- ruby中的類例項變數和例項的例項變數變數
- Flowable啟動流程例項和查詢任務以及完成任務
- 2 Day DBA-管理Oracle例項-Oracle例項和例項管理概覽Oracle
- jQuery 例項jQuery
- OkHttpClient例項HTTPclient
- phpcocket例項PHP
- unittest例項
- RAC 例項 遷移到 單例項 -- 使用RMAN Duplicate單例
- UML用例圖例項解析
- js監聽鍵盤事件程式碼例項例項JS事件
- 演示中斷處理的例項(例項六)(轉)
- SQLMAP 例項COOKBOOKSQL
- ORM 例項教程ORM
- Java例項教程Java
- java介面例項Java
- YACC 例項分析
- Pull解析例項
- 管理 ASM 例項ASM
- 停止ASM例項ASM
- jQueryAjax例項演示jQuery
- 管理ORACLE例項Oracle