Activiti5.2 自動完成第一節點流程
在學習工作流時遇到這麼一種情況,就是員工在提交流程時,應該直接跳到下一級進行審批。但目前卻停留在第一節點,還得自己審批一下自己的流程,才可以進入到下一節點。如下圖:
員工提交完流程之後,比如請假流程,應該直接到專案經理審批環節,不應該停留在“員工提交”環節中。先說一下解決思路。
1、在畫流程圖時,將“員工提交”節點的監聽器設定為自己新寫的監聽器類(TaskFirstComplete)。將其他節點設定為其他監聽器,比如查詢上級領導、角色資訊等監聽器。
2、在員工提交流程時,在程式碼塊中查詢自己的待辦事項,並完成。(如果沒看懂這兩條內容,直接看程式碼吧。)
public class TaskFirstComplete implements TaskListener {
@Override
public void notify(DelegateTask delegateTask) {
// 將任務的待辦人設定為當前登入使用者,也就是提交人自己
delegateTask.setAssignee("已登入使用者名稱");
}
}
接下來,在提交流程的程式碼塊裡完成自己的待辦事項。
// 這個方法是提交申請時的業務邏輯程式碼
public Boolean saveStartProcess(Integer xxid) {
// 這個是啟動流程,應該是你們自己的程式碼。
ProcessInstance processInstance = runtimeService.startProcessInstanceByKeyAndTenantId(key, businessKey,
String.valueOf(TenantContextHolder.getTenantId()));
// 這是需要加入的程式碼。(開始)
Task task = null;
TaskQuery query = taskService.createTaskQuery().taskCandidateOrAssigned("當前登入的使用者名稱").active();
// 獲取申請人的待辦任務列表
List<Task> todoList = query.list();
for (Task tmp : todoList) {
if(tmp.getProcessInstanceId().equals(processInstance.getId())){
//獲取當前流程例項,當前申請人的待辦任務
task = tmp;
break;
}
}
// 完成自己的流程,相當於自己給自己審批通過,進行到下一節點。
taskService.complete(task.getId());
// 這是需要加入的程式碼。(結束)
leaveBillMapper.updateById(leaveBill);
return Boolean.TRUE;
}
好啦,就這樣吧。大致邏輯就是員工自己提交的流程,自己給自己審批了一下。
有不瞭解的,可以隨時提問,我也是剛學習,大家一起交流。
相關文章
- XML節點自動生成簡單例項XML單例
- 前端流程自動化前端
- jenkins 自動化流程Jenkins
- 使用者模型自動完成模型
- 使用joinjs繪製流程圖(七)-實戰-繪製流程圖+節點設定樣式+節點新增事件JS流程圖事件
- Activiti 學習(三)—— Activiti 流程啟動並完成
- 自研平臺功能節點
- 實時渲染流程4步簡單完成【點量雲】
- 助力自動駕駛企業完成向資料驅動的端到端開發流程轉型自動駕駛
- ThinkPHP3.2.3 欄位對映/自動驗證/自動完成PHP
- HDFS動態新增節點
- hadoop動態摘除節點Hadoop
- springboot自動配置原理和啟動流程Spring Boot
- gojs 流程圖框架-節點裝飾器模板(二)GoJS流程圖框架
- Ajax基礎原理及使用教程(來自動力節點ajax教程)
- echart關係圖平分節點刪除時自動平衡問題
- [原始碼解析] PyTorch 分散式之彈性訓練(2)---啟動&單節點流程原始碼PyTorch分散式
- 【RAC】Oracle19.13之後的grid,節點重啟後不會自動驅動Oracle
- 什麼是任務自動化與流程自動化? - infoworld
- 自動駕駛測試全流程自動駕駛
- devops系統自動化部署流程dev
- composer包的自動載入流程
- unix cm單節點啟動
- Excel匯出 並完成後自動開啟Excel
- sweetalert載入彈窗完成自動關閉
- 專案部署點一下按鈕就可以,全流程自動化
- 兩個連結串列的第一個公共節點
- [Kubernetes]node節點pod無法啟動/節點刪除網路重置
- 輕鬆搞定專案流程自動化
- Hadoop 啟動namenode節點失敗Hadoop
- OpenResty + Lua 動態增加 Zuul 節點RESTZuul
- RAC二節點啟動異常
- namenode單節點啟動成功後自動消失/格式化失敗/fsimage載入失敗
- 移動Web前端,遊客點選商品的收藏按鈕,登入完成,回來之後,如何自動收藏Web前端
- 使用joinjs繪製流程圖(六)-自定義節點成html元素JS流程圖HTML
- 關聯線探究,如何連線流程圖的兩個節點流程圖
- 小程式從手動埋點到自動埋點
- 我怎樣用Node.js自動完成工作的Node.js