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. IIS 解决跨域问题

    打开 HTTP响应标头 添加如下三条 名称Access-Control-Allow-Origin  值*名称Access-Control-Allow-Headers  值Content-Type,Ac ...

  2. C++学习书籍推荐

    列出几本侯捷老师推荐的书1. C++程序员必备的书a) <C++ Programming Language> Bjarne Stroustrupb) <C++ Primer> ...

  3. mongo数据库基本查询语句

    D:\MongoDB\Server\3.4\bin>mongo MongoDB shell version v3.-g83c3022fe4 connecting to: mongodb://12 ...

  4. 深入研究浏览器对HTML解析过程

    HTML HTML解析 HTML解析是一个将字节转化为字符,字符解析为标记,标记生成节点,节点构建树的过程. 标记化算法 是词法分析过程,将输入内容解析成多个标记.HTML标记包括起始标记.结束标记. ...

  5. CSS 清除浮动的几种方法

    导读: CSS 的 Float(浮动),会使元素向左或向右移动,其周围的元素也会重新排列,Float(浮动),往往是用于图像,使得文字围绕图片的效果,而它在布局时一样非常有用.不过有利也有弊,使用浮动 ...

  6. 简述ArcGIS的空间连接(Spatial Join)与字段映射(Field Map)操作

    插个广告,制作ArcGIS的Tool工具学习下面的教程就对了:零基础学习Python制作ArcGIS自定义工具 牢骚一下 在使用ArcMap进行空间连接操作的时候,往往会有两种特殊需求,其一是连接重叠 ...

  7. Spring学习笔记(14)——注解零配置

    我们在以前学习  Spring  的时候,其所有的配置信息都写在  applicationContext.xml  里,大致示例如下: java代码: <beans> <bean n ...

  8. 2018-10-8-如何安装-btsync

    title author date CreateTime categories 如何安装 btsync lindexi 2018-10-8 9:15:6 +0800 2018-2-13 17:23:3 ...

  9. CentOS7.6系统安装详解(含真机装系统的采坑之旅)!

    刚开始学习linux操作系统是总是很茫然,无所适从,以下是自己总结的工作经验,仅供参考! 一.准备资源 安装前需要准备的资源有linux系统centos7.6发行版系统镜像,vmware workst ...

  10. 前端学习(二十九)nodejs(笔记)

    后台语言    java     php     .Net     python    Node.js------------------------------------------------- ...