Activiti任务认领

Activiti任务认领TaskService taskService;

taskService.setAssignee(String taskId, String userId);
taskService.claim(String taskId, String userId);
taskService.setOwner(String taskId, String userId);

关于上面三个方法的区别:

setAssignee和claim两个的区别是在认领任务时,claim会检查该任务是否已经被认领,如果被认领则会抛出ActivitiTaskAlreadyClaimedException 。而setAssignee不会进行这样的检查,其他方面两个方法效果一致。

 

setOwner和setAssignee的区别在于:

setOwner实在代理任务时使用,代表着任务的归属者,而这时,setAssignee代表的时代理办理者,举个例子来说,公司总经理现在有个任务taskA,去核实一下本年度的财务报表,他现在又很忙没时间,于是将该任务委托给其助理进行办理,此时,就应该这么做:

taskService.setOwner(taskA.getId(), 总经理.getId());

taskService.setAssignee/claim(taskA.getId(), 助理.getId());

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章