activiti 任务中指派人优先级大于候选人

xiaoxiao2021-02-28  44

activiti 任务中指派人其实跟候选人并不平等。指派人优先级大于候选人,当有指派人的时候,会忽略掉候选人。只有未指定指派人的时候,候选人才会生效。这是任务查询命令的sql语句分析。可以发现只有

RES.ASSIGNEE_ is null 的时候才会执行后面的候选人查找。

taskCandidateOrAssigned 实际执行的SQL为  

select distinct RES.* from ACT_RU_TASK RES left join ACT_RU_IDENTITYLINK I on I.TASK_ID_ = RES.ID_ WHERE ( RES.ASSIGNEE_ = ? or ( RES.ASSIGNEE_ is null and ( I.USER_ID_ = ? or I.GROUP_ID_ IN ( select g.GROUP_ID_ from ACT_ID_MEMBERSHIP g where g.USER_ID_ = ? ) ) ) ) taskCandidateGroup实际执行的SQL为   select distinct RES.* from ACT_RU_TASK RES inner join ACT_RU_IDENTITYLINK I on I.TASK_ID_ = RES.ID_ WHERE RES.ASSIGNEE_ is null and I.TYPE_ = 'candidate' and ( I.GROUP_ID_ IN ( ? ) )

转载请注明原文地址: https://www.6miu.com/read-46389.html

最新回复(0)