taskService 流程任务组件

本文详细介绍了Activiti工作流引擎中任务的创建、删除、权限设置、查询、参数管理、附件处理、事件记录等核心操作,涉及TaskService接口的各种方法及其应用场景,对于理解Activiti的工作流管理有重要作用。

taskService 流程任务组件

act_ru_task:任务表
act_ru_identitylink:权限表(流程定义和用户组(用户)之间的权限数据)
act_ru_variable:参数表
act_hi_attachment:任务附件(可以以流的方式存储到act_ge_bytearray表中(父表),外键CONTENT_ID_(没有强制物理关系))
act_hi_comment:任务评论和事件记录表(由type决定,"event":事件的记录,"comment":流程的评论数据)
1.创建
//获取任务服务组件
TaskService taskService = engine.getTaskService();
//保存第一个Task,不设置ID
Task task1 = taskService.newTask();
taskService.saveTask(task1);
//保存第二个Task,设置ID
Task task2 = taskService.newTask("审核任务");
taskService.saveTask(task2);
2.删除
// 删除task(不包括历史数据和子任务)
taskService.deleteTask("1");
// 删除task(包括历史数据和子任务)
taskService.deleteTask("2", true);
// 删除多个task(不包括历史数据和子任务)
List<String> ids = new ArrayList<String>();
ids.add("3");
ids.add("4");
taskService.deleteTasks(ids);
//删除多个task(包括历史数据和子任务)
ids = new ArrayList<String>();
ids.add("5");
ids.add("6");
taskService.deleteTasks(ids, true);
// 再删除ID为3的task,此时3的历史数据也会被删除(如果有的话)
taskService.deleteTask("3", true);
3.设置任务持有人
taskService.setOwner(task1.getId(), user.getId());
//该用户持有的任务数量
taskService.createTaskQuery().taskOwner(user.getId()).count()
4. 设置任务受理人
taskService.setAssignee(task1.getId(), user.getId());
//该用户受理的任务数量
taskService.createTaskQuery().taskAssignee(user.getId()).count()
5. 任务候选组(绑定权限) act_ru_identitylink
taskService.addCandidateGroup("task1", groupA.getId());
6.任务候选人(绑定权限) act_ru_identitylink
taskService.addCandidateUser("task1", user.getId());
7. 查询
//根据用户组查询任务
List&l
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值