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. Html5 学习笔记 【PC固定布局】 实战1 导航栏

    导航栏html文件: <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset=& ...

  2. tfsenflow队列|tf.train.slice_input_producer|tf.train.Coordinator|tf.train.start_queue_runners

      #### ''' tf.train.slice_input_producer :定义样本放入文件名队列的方式[迭代次数,是否乱序],但此时文件名队列还没有真正写入数据 slice_input_pr ...

  3. java反射(二)--反射应用案例

    一.反射实例化对象 经过一系列的分析之后发现虽然可以获取Class类的实例化对象,但是依然觉得这个对象的获取意义不是很大,因此可以通过以下几个案例去理解反射的核心意义--反射实例化对象:获取Class ...

  4. leetcode.排序.347前k个高频元素-Java

    1. 具体题目 给定一个非空的整数数组,返回其中出现频率前 k 高的元素. 示例 1: 输入: nums = [1,1,1,2,2,3], k = 2 输出: [1,2] 示例 2: 输入: nums ...

  5. [fw]用Kprobes调试(debug)内核

    Kprobes是一种运行时动态调试内核的机制, 你可以用它设置断点并收集调试信息, 甚至改变内核行为. Kprobes分三种, 普通kprobes以及基于普通kprobes的jprobes和kretp ...

  6. 39.Binary Tree Inorder Traversal(二叉树中序遍历)

    Level:   Medium 题目描述: Given a binary tree, return the inorder traversal of its nodes' values. 思路分析: ...

  7. VUE $SET源码

  8. Python之字符串转换为日期、结合时区的日期操作

    一.字符串转换为日期 方法一 s = '2019-01-20' print(datetime.strptime(s, '%Y-%m-%d')) # 2019-01-20 00:00:00 方法二 de ...

  9. org.springframework.dao.InvalidDataAccessResourceUsageException: could not execute query; nested exception is org.hibernate.exception.SQLGrammarException: could not execute query

    原因: 这个问题的解决方案很简单,主要是因为数据库中不存在相关的表或者列. org.springframework.dao.InvalidDataAccessApiUsageException: Pa ...

  10. Linux: 给右键菜单加一个“转换图片为jpg格式”

    Linux上通常都会安装imagemagick这个小巧但又异常强大的工具.这个软件提供了一系列很好用的功能.这里说一说如何使用它的convert命令转换图片为jpg格式,以及如何把它添加到Thunar ...