在 activiti 流程引擎中,儘管通過 setassignee(taskid, userid) 可以設定受理人,但這畢竟要先把下一步的任務查出來才能設定,比較繁瑣;借助 activiti 的 activiti:assignee 屬性就可以自動化設定,即在當前任務完成之時就給下乙個任務的受理人賦值。
這本質上是在設定乙個區域性變數,為流程的單個使用者任務服務。
taskservice.complete(task.getid(), vars);
// 下一步的使用者任務
task = taskservice.createtaskquery().processinstanceid(processinstance.getid()).singleresult();
taskservice.setassignee(task.getid(), addmodel.getcurrenttracer().tostring());
為了設定受理人,在已經完成任務後,還需要把下一步的任務再次查詢出來,比較繁瑣。
1.在流程設計中為 assignee 指定變數「$」
其對應的 xml 配置為:
2. 針對變數賦值vars = new hashmap<>();
// 完成任務
vars.put("assigneeuserid", addmodel.getcurrenttracer().tostring());
taskservice.complete(task.getid(), vars);
只需關心完成當前任務即可,activiti 會自動把引數 assigneeuserid 的值作為下一步使用者任務的 assignee_ 欄位的值。
3. 驗證
查詢執行時任務表 act_ru_task 的記錄,可見 assignee_ 字段已經有了值。
Activiti工作流 一 之基本操作介紹
工作流的概念 工作流 workflow 就是 業務過程的部分或整體在計算機應用環境下的自動化 它主要解決的是 使在多個參與者之間按照某種預定義的規則傳遞文件 資訊或任務的過程自動進行,從而實現某個預期的業務目標,或者促使此目標的實現 通俗的說,流程就是多個人在一起合作完成某件事情的步驟,把步驟變成計...
activiti操作之組任務與閘道器
組任務的存在是指定給特定的一批人去操作任務,例如班長審核,既可以是正班長,也可以是副班長,但是並沒有指定某乙個人,只要符合條件的都可以去拾取任務,然後完成任務。任務查詢 list tasklist taskservice.createtaskquery processdefinitionkey de...
Activiti之對使用者任務簽收辦理操作
下文先介紹下使用者任務的辦理相關操作 使用者任務分類 分為4中狀態 未簽收 待辦理 已簽收 辦理中 執行中 辦理中 已完成 已辦結 首先,我們要了解下 taskservice 這個服務的作用 從類 org.activiti.engine.impl.serviceimpl 繼承的字段 所有已實現的介面...