Activiti7 任务办理人【十三】

Activiti 7系列文章目录

文章代码下载

Activiti7 工作流设计器【一】
Activiti7 创建表【二】
Activiti7 表结构介绍 【三】
Activiti7 设计器创建流程 【四】
Activiti7 部署流程【五】
Activiti7 查询流程【六】
Activiti7 删除流程【七】
Activiti7 生成SVG图片【八】
Activiti7 发起任务【九】
Activiti7 查询任务执行流程图【十】
Activiti7 完成任务【十一】
Activiti7 历史数据【十二】
Activiti7 任务办理人、委派、转办、持有人、候选人、候选人组、审批意见【十三】
Activiti7 监听器【十四】
Activiti7 流程变量【十五】
Activiti7 网关Gateway【十六】
Activiti7 整合SpringBoot【十七】
Activiti7 多种任务类型【十八】
Activiti7 子流程【十九】
Activiti7 流程回退、流程拒绝【二十】

设置任务办理人

image.png

说明

Assignee指定办理人模式:即设置办理人,就是设置Assignee。Assignee 受让人; 受托人,代理人; 被指定人;办理人只能指定一个人,不能使用逗号分隔。默认执行签收操作taskService.claim(taskId, currentUserId);在ACT_HI_TASKINST和ACT_RU_TASK会产生数据,这两个表里面的Assignee_字段就是设置的办理人姓名或者对象的ID

涉及API

//根据用户来查询任务(待办任务)
taskService.createTaskQuery().taskAssignee(param);

//设置办理人
TaskService().setAssignee(taskId,userId);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Activiti中,可以使用多实例子流程处理并发任务。以下是一个简单的示例: 假设我们有一个主流程,其中包含一个子流程,子流程中有一个并发多实例任务,需要同时处理多个子任务。 1. 首先,在子流程中创建一个并发多实例任务,可以使用以下XML代码实现: ``` <subProcess id="subProcess1" name="Sub Process"> <multiInstanceLoopCharacteristics isSequential="false"> <loopCardinality>3</loopCardinality> <completionCondition>${nrOfCompletedInstances/nrOfInstances >= 1}</completionCondition> </multiInstanceLoopCharacteristics> <userTask id="subProcessTask" name="Sub Process Task" /> </subProcess> ``` 上面的代码中,`multiInstanceLoopCharacteristics` 元素表示这是一个多实例任务,`isSequential="false"` 表示任务是并行处理的,`loopCardinality` 表示需要处理的子任务数量,这里设置为3。`completionCondition` 表示任务完成的条件,这里设置为当所有子任务都完成时,子流程才算完成。 2. 在主流程中调用子流程,可以使用以下XML代码实现: ``` <callActivity id="subProcessCall" name="Sub Process Call" calledElement="subProcess1" /> ``` 上面的代码中,`calledElement` 属性指定了被调用的子流程的ID,这里为 `subProcess1`。 3. 在子流程处理多实例任务,可以使用以下Java代码实现: ``` public class SubProcessTaskDelegate implements JavaDelegate { @Override public void execute(DelegateExecution execution) throws Exception { // 获取当前任务的ID String subTaskId = execution.getCurrentActivityId(); // 处理任务 System.out.println("Processing sub task " + subTaskId); } } ``` 上面的代码中,`execute` 方法是任务处理的入口。可以通过 `getCurrentActivityId` 方法获取当前任务的ID,然后处理任务。 以上就是在Activiti处理并发多实例子流程任务的简单示例。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员一灯

请给我打钱!!!谢谢,不客气!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值