package com.activiti.study.helloworld;
import java.util.List;
import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngines;
import org.activiti.engine.repository.Deployment;
import org.activiti.engine.runtime.ProcessInstance;
import org.activiti.engine.task.Task;
import org.junit.Test;
public class a_HelloWorld {
ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
//部署流程定義
@Test
public void testDeployProcessDefinitiomn(){
Deployment deployment = processEngine.getRepositoryService() //與流程定義和部署對象相關的Service
.createDeployment() //創建部署對象
.addClasspathResource("diagrams/MyProcess.bpmn") //加載一個文件
.deploy(); //完成部署
System.out.println("Deployment: "+ deployment.getId() + ", "+deployment.getDeploymentTime() + ", " + deployment.getCategory());
}
//啓動流程實例
@Test
public void testStartProcessInstance(){
String processInstanceByKey = "helloworld";
ProcessInstance pi = processEngine.getRuntimeService().startProcessInstanceByKey(processInstanceByKey);
System.out.println("ProcessInstance: " + pi.getActivityId() + ", " + pi.getBusinessKey() + ", " + pi.getProcessInstanceId());
}
//查詢流程任務
@Test
public void testQueryPersonalTask(){
// ACT_RU_TASK 表
String assignee = "zhangsan";
List<Task> list = processEngine.getTaskService().createTaskQuery().taskAssignee(assignee).list();
System.out.println(list.size());
for(Task task : list ){
System.out.println(task.getAssignee());
System.out.println(task.getId());
}
}
//完成任務
@Test
public void testCompleteTask(){
String taskId = "202";
processEngine.getTaskService().complete(taskId);
System.out.println("完成任務,Id: " + taskId);
}
}