jbpm4 4中取的我的任務

2021-05-23 23:24:25 字數 1469 閱讀 3335

jbpm4.4提供兩個介面可以獲取該使用者的待處理任務:

乙個是個人的任務:taskservice.findpersonaltasks(userid)

另乙個是取得該使用者對應的候選任務:taskservice.findgrouptasks(userid)

有時我們需要在乙個列表中顯示該使用者的所有任務,包括他的個人任務,候選任務,這時直接用

jbpm4.4提供的api完成不了該功能要求。

可以使用以下方式進行擴充套件:

問題流程的個人任務:

select  distinct  task  from  org.jbpm.pvm.internal.task.taskimpl  task

where  task.assignee =  '驗證人員a'  and  task.execution.processdefinitionid  like

'problemprocess%'  order by task.priority desc

問題流程的待選任務(組和個人):

select  distinct  task  from  org.jbpm.pvm.internal.task.taskimpl  task

left  join  task.participations  ppi

where  ppi.task = task.dbid  and  ppi.type='candidate'  and (task.assignee is null)

and  (  ppi.userid ='驗證人員a'   or   ppi.groupid  in  ( select  distinct  g.id   from

org.jbpm.pvm.internal.identity.impl.membershipimpl m  join  m.user u   join m.group g

where  u.id = '驗證人員a' ) )

and   task.execution.processdefinitionid  like 'problemprocess%'

order by task.priority desc

查詢某個人所在的組findgroupsbyuser:

select distinct g from org.jbpm.pvm.internal.identity.impl.membershipimpl m join m.user

u  join m.group g where u.id = :userid

jBPM4 4 完成任務的幾種方法

開始了乙個process,需要完成任務,完成任務有以下幾種方法 1.executionservice來完成任務 如果得到了正在執行的execution 可以通過好幾種途徑獲取 可以通過executionservice來完成這個execution executionservice.signalexec...

jbpm4 4的歷史流程例項查詢的bug

listhpilist historyservice.createhistoryprocessinstancequery processdefinitionid processdefinitionid ended orderasc historyprocessinstancequery.proper...

擴充套件JBPM取得我的任務

jbpm4提供兩個介面可以獲取該使用者的待處理任務,乙個是個人的任務 taskservice.findpersonaltasks userid 另乙個是取得該使用者對應的候選任務 taskservice.findgrouptasks userid 有時我們需要在乙個列表中顯示該任務的所有任務,包括他...