工作流引擎Activiti學習第三天(四)--- 基礎知識學習之流程定義

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);
	}
	
	
	
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章