Camunda大杂烩(四:待办)

用户

按照我自己的理解,Camunda有自己的用户体系,后台管理端实际上可以新建user以及group,如果做到系统同步用户体系到camunda,理论上可以做到自动流转,但是大多数情况,可能还是需要依靠业务系统的用户体系进行流转

 

 

 待办

在前几张的拓扑图的基础上进行修改,待办方式应该有很多种,这里试验一种Candidate users

 

 

 

复制代码
    /**
     * 开启流程
     *
     * @param processDefinitionKey 流程定义key
     * @param map                  参数
     * @return 流程
     */
    public ProcessInstance startProcess(String processDefinitionKey, Map<String, Object> map) {
        ProcessInstance instance = runtimeService.startProcessInstanceByKey(processDefinitionKey, map);
        if (instance == null) {
            throw new RuntimeException("开启流程失败");
        }
        return instance;
    }
复制代码

在开启流程时,将对应user参数传入即可:

{
  "map": {"waitApprovers":"话离小小灰"},
  "processDefineKey": "TEST_DEMO"
}

查看对应的task可以发现:

 

 

 此处新增一个方法,根据taskId获取:

复制代码
    /**
     * 获取审批人
     * @param taskId 任务Id
     * @return 审批人列表
     */
    @Override
    public List<IdentityLink> getIdentityLink(String taskId) {
        return taskService.getIdentityLinksForTask(taskId);
    }
复制代码

可以看到,我们传过去的用户已经可以获取到了

 

 然后通过以下方法:

复制代码
   /**
     * 根据用户获取任务列表
     *
     * @param userId 用户ID
     * @return 任务列表
     */
    public List<Task> getTasksListByUser(String userId) {
        return taskService.createTaskQuery().taskCandidateUser(userId).list();
    }
复制代码

我们可以发现,已经可以通过用户信息获取到对应的task了

 

posted @   糖醋小灰  阅读(1596)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
点击右上角即可分享
微信分享提示