擴充套件JBPM取得我的任務

2021-08-24 19:57:05 字數 821 閱讀 1439

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

乙個是個人的任務:

taskservice.findpersonaltasks(userid)

另乙個是取得該使用者對應的候選任務:

taskservice.findgrouptasks(userid)

有時我們需要在乙個列表中顯示該任務的所有任務,包括他的個人任務,候選任務,這時直接用jbpm4提供的api完成不了該功能要求。

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

/**

* 取得使用者的對應的任務列表

* @param userid

* @return

*/public listgettasksbyuserid(string userid)

/*** select * from `jbpm4_task` task

left join jbpm4_participation pt on task.`dbid_`=pt.`task_`

where task.`assignee_`='1' or ( pt.`type_` = 'candidate' and (pt.`userid_`='1')

or pt.`groupid_`in ('1'))

*/stringbuffer hqlsb=new stringbuffer();

if(user.getroles().size()>0)

return findbyhql(hqlsb.tostring(), new object);

}

這樣非常方便可以取得使用者的待處理的任務,對於候選的任務,使用者可以申請執行。

jbpm4 4中取的我的任務

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

jbpm的任務管理實現

乙個流程定義有乙個taskmgmtdefinition 乙個taskmgmtdefinition對應多個actor,同時對應多個task 乙個actor有多個task,可以從taskmgmtdefinition中通過task的名稱直接獲取相應的task 乙個流程例項有乙個taskmgmtinstan...

jbpm的任務管理實現

乙個流程定義有乙個taskmgmtdefinition 乙個taskmgmtdefinition對應多個actor,同時對應多個task 乙個actor有多個task,可以從taskmgmtdefinition中通過task的名稱直接獲取相應的task 乙個流程例項有乙個taskmgmtinstan...