jbpm 個人任務和組任務
阿新 • • 發佈:2019-01-30
jbpm任務分為個人任何和組任務(具體怎麼設定見 jbpm動態指定任務對應的使用者 部落格)
個人任務:任務屬於一個人,該任務已經分配到指定的某一個人,可以直接執行任務(前幾個部落格針對的都是個人任務,不在這再做詳解)。
組任務:任務屬於一個組,這個組裡所有人都可以執行該任務,但執行前提是必須認領該任務將該任務變為個人任務,認領完之後才能執行,可以在認領任務後做退回或轉讓操作(轉讓的使用者也必須在對應的組裡)。
設定組任務:
1:部署之後做啟動操作(動態設定使用者組流程變數)
@Test public void start() { Map<String, String> map = new HashMap<String, String>(); map.put("userids", "lily,lucy,dim,tom,carry"); pe.getExecutionService().startProcessInstanceById("financeGroupApprove-1", map); }
這時在資料庫裡會有一個task但對應的分配使用者為空
2:carry使用者去認領任務
@Test
public void accept()
{
pe.getTaskService().takeTask("560003", "carry");
}
這時資料庫task對應的分配使用者為carry3:當carry使用者不想執行該任務想轉移至lucy使用者。
@Test
public void assign()
{
pe.getTaskService().assignTask("560003", "lucy");
}
這時task表裡對應的使用者變為lily
4:lucy不想執行任務也不想轉移想直接退回任務
@Test
public void returnback()
{
pe.getTaskService().assignTask("560003", null);
}
這時資料庫task對應的分配使用者變為空