package com.zcc.activiti05;

import org.activiti.engine.*;
import org.activiti.engine.repository.Deployment;
import org.activiti.engine.runtime.ProcessInstance;
import org.activiti.engine.task.Task; import javax.sound.midi.Soundbank;
import java.util.List; /**
* 组任务测试
*/
public class GroupTest {
//部署流程
/*public static void main(String[] args) {
//创建流程引擎配置类
ProcessEngineConfiguration processEngineConfiguration=
ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml");
//流程引擎对象
ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();
//创建RepositoryService
RepositoryService repositoryService = processEngine.getRepositoryService();
//部署对象
Deployment deployment = repositoryService.createDeployment().
addClasspathResource("diagram/my5.bpmn")
.name("请假流程").deploy();
System.out.println(deployment.getName());
System.out.println(deployment.getId());
}*/ //启动流程实例
/*public static void main(String[] args) {
//创建流程引擎配置类
ProcessEngineConfiguration processEngineConfiguration=
ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml");
//流程引擎对象
ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();
//获取RuntimeService
RuntimeService runtimeService = processEngine.getRuntimeService();
//根据key启动流程实例
ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("myProcess5");
System.out.println("流程部署id"+processInstance.getDeploymentId());
System.out.println("流程实例id"+processInstance.getId());//2501
System.out.println("活动id"+processInstance.getActivityId()); }*/ //完成个人任务
/* public static void main(String[] args) {
//创建流程引擎配置类
ProcessEngineConfiguration processEngineConfiguration=
ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml");
//流程引擎对象
ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();
//获取taskService
TaskService taskService = processEngine.getTaskService();
//处理当前任务(要先查询当前用户下的任务id)
Task task = taskService.createTaskQuery().processDefinitionKey("myProcess5").taskAssignee("xiaozhang").singleResult();
if (task!=null){
taskService.complete(task.getId());
System.out.println(task.getId());//2505
System.out.println("当前用户完成了当前任务");
} }*/ /* //查询候选用户组任务
public static void main(String[] args) {
//创建流程引擎配置类
ProcessEngineConfiguration processEngineConfiguration=
ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml");
//流程引擎对象
ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();
//获取taskService
TaskService taskService = processEngine.getTaskService(); //设置查询条件
String key="myProcess5";
String candidateUser="zhangsan"; //查询
List<Task> list = taskService.createTaskQuery().processDefinitionKey(key).taskCandidateUser(candidateUser).list(); for (Task task : list) {
System.out.println("----------------------------");
System.out.println("流程实例id:" + task.getProcessInstanceId());
System.out.println("任务id:" + task.getId());
System.out.println("任务负责人:" + task.getAssignee());
System.out.println("任务名称:" + task.getName());
}
}*/ /*//测试zhangsan拾取组任务
//拾取任务的过程就是将候选用户设置为真正的任务处理人
public static void main(String[] args) {
//创建流程引擎配置类
ProcessEngineConfiguration processEngineConfiguration=
ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml");
//流程引擎对象
ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();
//获取taskService
TaskService taskService = processEngine.getTaskService(); //设置查询条件
String key="myProcess5";
String candidateUser="zhangsan"; //查询
Task task = taskService.createTaskQuery().processDefinitionKey(key).taskCandidateUser(candidateUser).singleResult();
if (task!=null){
taskService.claim(task.getId(),candidateUser);
System.out.println("任务拾取完毕!");
} }*/ //当前用户查询自己所有的任务
/*public static void main(String[] args) {
//创建流程引擎配置类
ProcessEngineConfiguration processEngineConfiguration =
ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml");
//流程引擎对象
ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();
//获取taskService
TaskService taskService = processEngine.getTaskService(); //设置查询条件
String key = "myProcess5";
String assignee = "zhangsan"; //查询
List<Task> list = taskService.createTaskQuery().processDefinitionKey(key).taskAssignee(assignee)//设置任务处理人
.list(); for (Task task : list) {
System.out.println("----------------------------");
System.out.println("流程实例id:" + task.getProcessInstanceId());
System.out.println("任务id:" + task.getId());
System.out.println("任务负责人:" + task.getAssignee());
System.out.println("任务名称:" + task.getName());
}
}*/ //当前用户完成任务
/*public static void main(String[] args) {
//创建流程引擎配置类
ProcessEngineConfiguration processEngineConfiguration =
ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml");
//流程引擎对象
ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();
//获取taskService
TaskService taskService = processEngine.getTaskService(); //设置查询条件
String key = "myProcess5";
String assignee = "zhangsan"; //查询
Task task = taskService.createTaskQuery().processDefinitionKey(key).taskAssignee(assignee)//设置任务处理人
.singleResult(); if (task!=null){
taskService.complete(task.getId());
System.out.println("任务执行完毕");
} }*/ //归还任务
/*public static void main(String[] args) {
//创建流程引擎配置类
ProcessEngineConfiguration processEngineConfiguration =
ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml");
//流程引擎对象
ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();
//获取taskService
TaskService taskService = processEngine.getTaskService(); //设置查询条件
String key = "myProcess5";
String assignee = "zhangsan"; //查询
Task task = taskService.createTaskQuery().processDefinitionKey(key).taskAssignee(assignee)//设置任务处理人
.singleResult(); if (task!=null){
taskService.setAssignee(task.getId(),null);//把任务归还 把任务执行人设置为null
System.out.println("任务执行完毕");
} }*/ //任务的指定(这个任务指定给候选人来处理)
public static void main(String[] args) {
//创建流程引擎配置类
ProcessEngineConfiguration processEngineConfiguration =
ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml");
//流程引擎对象
ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();
//获取taskService
TaskService taskService = processEngine.getTaskService(); //设置查询条件
String key = "myProcess5";
//当前任务处理人
String assignee = "zhangsan"; //任务候选人
String candidateUser="lisi"; //查询
Task task = taskService.createTaskQuery().processDefinitionKey(key).taskAssignee(assignee)//设置任务处理人
.singleResult(); if (task!=null){
taskService.setAssignee(task.getId(),candidateUser);//张三把当前任务指定给lisi处理
System.out.println("任务执行完毕");
} } }

activiti7组任务测试的更多相关文章

  1. Linux网络编程组播测试代码

    Linux网络编程组播测试代码 (转载)   组播客户端代码如下: #include <sys/types.h>#include <sys/socket.h>#include ...

  2. ranger-hdfs 插件组权限测试

    当hdfs文件对外是公开的则该其他用户就算没有配置相关的权限一样可以进行相关的操作.当hdfs文件对外权限是没有开放的,其他用户若需要进行相关操作则需要通过Ranger进行相关权限的配置. 首先  / ...

  3. RFC3918组播组容量测试——网络测试仪实操

    一.简介 1.RFC3918简介 历史 · 在1999年3月成为正式标准 功能 · 评测网络互连设备或网络系统的性能 · 网络设备: 交换机,路由器- 内容 · 定义了一整套测试方法,为不同厂家的设备 ...

  4. igmp组播测试环境搭建

    2.4G无线组播测试环境搭建: (1)组播源: VLC 或者 pixstream (2)无线: 2.4G AP (3)客户端PC: VLC播放器 有线直连 无线2.4G PC(组播源pixstream ...

  5. 第12组 Beta测试(5/5)

    Header 队名:To Be Done 组长博客 作业博客 团队项目进行情况 燃尽图(组内共享) 展示Git当日代码/文档签入记录(组内共享) 注: 由于GitHub的免费范围内对多人开发存在较多限 ...

  6. 牛客OJ——[编程题]A+B和C__如何输入多组测试数据(测试OK)

    几个要注意的地方: (1)Java OJ,必须将类名写成Main (2)关于如何输入多组测试数据,用二维数组去存储是一个方法,直接在while里面做也可以          但是如果  (3)关于整形 ...

  7. Activiti7 组任务

    需求:在流程定义中在任务节点的assignee固定设置任务负责人,这种情况不是很好,如果有天任务负责人请假了,你想请假,等着吧..没人审批,针对这种情况,可以给任务设置多个候选人,可以从候选中选择参与 ...

  8. Ultimate thread group线程组和Stepping thread group线程组测试场景

    Ultimate thread group线程组 当测试需求是要求进行波浪型的压力测试场景时,使用该线程组,例如:测试场景总共有10个线程,然后分为三个波段进行测试,每个波段负载策略设置为一样,如图:

  9. RFC3918组播转发时延测试——网络测试仪实操

    一.简介 1.RFC3918简介 历史 · 在1999年3月成为正式标准 功能 · 评测网络互连设备或网络系统的性能 · 网络设备: 交换机,路由器- 内容 · 定义了一整套测试方法,为不同厂家的设备 ...

随机推荐

  1. stl源码为什么要大量使用typedef?

    SGI源码download,<stl源码剖析>里展示了vector的部分源码: template <class T, class Alloc = alloc> class ve ...

  2. Scrum 指南总结

    https://wenku.baidu.com/view/86e0979176eeaeaad1f3305a.html 原文地址:

  3. java自学基础、项目实战网站推荐

    推荐一个自学的好平台,有Java前端,后端,基础的内容都有讲解,还有框架的讲解和实战项目,特别适合自学 JAVA 自学网站 JAVA 练习题 Mybatis 教程 Spring MVC 教程 模仿天猫 ...

  4. SSH远程免密码的密钥登录服务(Linux,Linux)

    本次实验基于两台Linux虚拟机之间的实验,一台做服务器,一台做客户机,模拟免密码的密钥登录. 首先两台虚拟机需要可以ping通,用客户机访问服务器. sshd服务主配置文件路径: /etc/ssh/ ...

  5. JavaScript Stack

    function Stack() { var items = []; this.push = function(item) { items.push(item) } this.pop = functi ...

  6. leetcode.排序.75颜色分类-Java

    1. 具体题目 给定一个包含红色.白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色.白色.蓝色顺序排列.此题中,我们使用整数 0. 1 和 2 分别表示红色. ...

  7. 再往DjVu鼓吹者的头上敲一棒子

    最近在某论坛又看到有人在鼓吹DjVu,甚至声称拿到PDG就转成DjVu,忍不住想再敲打敲打. 早几年前就已经有人举出过实例,证明PDG.TIFF转DjVu会因为有损压缩而产生错别字,似乎时间长了一堆新 ...

  8. webpack打包配置中出现的问题

    第一个错误: One CLI for webpack must be installed. These are recommended choices, delivered as separate p ...

  9. 【摘】Linux虚拟地址空间布局以及进程栈和线程栈总结

    在CSDN上看到的一篇文章,讲的还是满好的. 原文地址:Linux虚拟地址空间布局以及进程栈和线程栈总结 一:Linux虚拟地址空间布局 (转自:Linux虚拟地址空间布局) 在多任务操作系统中,每个 ...

  10. css 图片有间隔多个Img标签之间的间隙

    今天写css时发现,图片加起来刚好是900px的三张图片,不能在一个900px宽容器放下,因为图片之间有间隔,我猜是浏览器把两个img标签之间的空格当成了空白节点. 在网上找到了几个不错的解决方法: ...