扫码阅读
手机扫码阅读

Flowable 任务如何认领,回退?

46 2024-11-27

我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。

查看原文:Flowable 任务如何认领,回退?
文章来源:
江南一点雨
扫码关注公众号
文章摘要

松哥录制TienChin项目视频与流程图技术分享

松哥正在录制一个以Spring Boot和Vue3为技术栈的TienChin项目视频,探索各种技术并致力于完成一个超90%完成率的项目。

关键技术点概述

  • 绘制流程图
  • 查询任务处理人
  • 认领任务
  • 处理任务
  • 变量与监听器
  • 任务回退
  • 修改任务候选人
  • 查询历史数据

多候选人任务处理

在多候选人情况下,如zhangsan提交的任务可以由lisi或wangwu处理,文章将讨论如何设置流程图并查询处理人。

1. 绘制流程图

使用旧流程图并设置UserTask分配给多个用户。通过XML文件展示配置,如flowable:candidateUsers="javaboy,zhangsan,lisi"

2. 查询任务处理人

部署并启动流程后,通过查询taskAssignee发现ASSIGNEE_字段值为null,因为传统方法无法处理多候选人的情况。

正确查询方法

对于多候选人任务,应使用taskCandidateUser方法查询,该方法会检查数据库中与候选人相关的表。

示例测试


@Test
void test12() {
    List list = taskService.createTaskQuery().taskCandidateUser("javaboy").list();
    for (Task task : list) {
        logger.info("id:{};name:{};taskDefinitionKey:{}", task.getId(), task.getName(), task.getTaskDefinitionKey());
    }
}

通过以上方法,可以有效地查询并处理拥有多个候选人的任务。

想要了解更多内容?

查看原文:Flowable 任务如何认领,回退?
文章来源:
江南一点雨
扫码关注公众号