acitivi 流程实例(三)
来源:互联网 发布:数据结构与算法公开课 编辑:程序博客网 时间:2024/06/03 07:12
import java.io.InputStream;import java.util.List;import java.util.zip.ZipInputStream;import org.activiti.engine.ProcessEngine;import org.activiti.engine.ProcessEngines;import org.activiti.engine.history.HistoricProcessInstance;import org.activiti.engine.history.HistoricTaskInstance;import org.activiti.engine.repository.Deployment;import org.activiti.engine.runtime.ProcessInstance;import org.junit.Test;/** * 流程实例 * * @author ZHEN.L * */public class ProcessInstanceTest {ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();/** * 部署 */@Testpublic void deploymentProcess() {InputStream in = this.getClass().getClassLoader().getResourceAsStream("diagrams/LeaveProcess.zip");Deployment deployment = processEngine.getRepositoryService().createDeployment().name("汇信请假流程").addZipInputStream(new ZipInputStream(in)).deploy();System.out.println(deployment.getId());System.out.println(deployment.getName());}/** * 启动流程实例 */@Testpublic void startProcessInstance() {String processInstanceKey = "myProcess";ProcessInstance pi = processEngine.getRuntimeService().startProcessInstanceByKey(processInstanceKey);System.out.println(pi.getId());System.out.println(pi.getProcessInstanceId());System.out.println(pi.getProcessDefinitionId());}/** * 查询流程实例状态 */@Testpublic void isCompleted() {String processInstanceId = "1501";ProcessInstance pi = processEngine.getRuntimeService().createProcessInstanceQuery().processInstanceBusinessKey(processInstanceId).singleResult();if (pi == null) {System.out.println("流程已经结束");} else {System.out.println("未结束");}}/** * 完成流程 */@Testpublic void completeTask() {String processInstanceId = "1501";processEngine.getTaskService().complete(processInstanceId);}/** * 查询历史流程实例 */@Testpublic void findHistoricProcessInstance(){String processInstanceId = "1501";HistoricProcessInstance h = processEngine.getHistoryService().createHistoricProcessInstanceQuery().processDefinitionId(processInstanceId).singleResult();System.out.println(h.getId());System.out.println(h.getProcessDefinitionId());System.out.println(h.getStartTime());System.out.println(h.getEndTime());}/** * 查询历史任务 */@Testpublic void findHistoricTask() {String assignee = "张三";List<HistoricTaskInstance> list = processEngine.getHistoryService().createHistoricTaskInstanceQuery().taskAssignee(assignee).list();if (list != null && list.size() > 0) {for (HistoricTaskInstance h : list) {System.out.println(h.getAssignee() + " " + h.getName() + " "+ h.getStartTime() + " " + h.getEndTime());System.out.println("###################");}}}}
0 0
- acitivi 流程实例(三)
- jbpm学习笔记(三)--管理流程实例
- activiti自定义流程之Spring整合activiti-modeler5.16实例(三):流程模型列表展示
- activiti自定义流程之Spring整合activiti-modeler实例(三):流程模型列表展示
- 流程控制(三)
- 系统启动流程(三)
- SharePoint无代码工作流设计开发实例——交通费报销流程(三)
- SharePoint无代码工作流设计开发实例——交通费报销流程(三)
- Activiti(二)流程实例
- mapreduce(三):自定义二次排序流程实例详解
- Licensing实例(三)
- TweenMax 三(实例)
- RxJava实例(三)
- Mario开发流程(三)
- 软件工程(三)工程流程
- CodeIgniter工作流程(三)
- Activiti(三)流程定义
- Activiti(三)流程定义
- SQL-创建和操纵表
- 内存管理四之工作原理
- Maven学习总结(九)——使用Nexus搭建Maven私服
- 百度登录算法分析和实现(上 - 分析篇)
- PHP代码被浏览器强制注释的问题
- acitivi 流程实例(三)
- untiy3d 5x,network的服务器端和客户端通信
- S7 pdu_type
- 我的博客
- 【题解】HDU.3350.#define is unsafe
- 微信开发(1)
- 怎样实现让输入框随着键盘上浮或者返回
- Python xlrd/xlwt对excel进行操作
- LeetCode 334. Increasing Triplet Subsequence(长度为3的递增子序列)