如何将任务分配给组?

时间:2016-11-11 13:29:05

标签: java spring workflow activiti

如何在activiti中将任务分配给用户组。对于单个用户,可以使用以下代码完成。

taskService.setAssignee(taskId, userId);

但是我们如何才能将单个任务分配给一个组,任何属于该组的用户都可以选择该任务。

1 个答案:

答案 0 :(得分:1)

使用TaskService

      /**
   * Convenience shorthand for {@link #addGroupIdentityLink(String, String, String)}; with type {@link IdentityLinkType#CANDIDATE}
   * 
   * @param taskId
   *          id of the task, cannot be null.
   * @param groupId
   *          id of the group to use as candidate, cannot be null.
   * @throws ActivitiObjectNotFoundException
   *           when the task or group doesn't exist.
   */
  void addCandidateGroup(String taskId, String groupId);

添加候选组时,您可以通过以下方式获取任务:

  taskService.addCandidateGroup(task.getId(), "sales");
  assertNotNull(taskService.createTaskQuery().taskCandidateGroup("sales").singleResult());

有关详细信息,请查看“活动来源”中的org.activiti.engine.test.api.task.TaskServiceTest#testDeleteTaskIdentityLink