日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

java代码制作activiti会签_activiti设计器会签人员配置

發(fā)布時(shí)間:2023/12/14 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java代码制作activiti会签_activiti设计器会签人员配置 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

使用activiti設(shè)計(jì)器進(jìn)行流程圖繪制,并且配置會(huì)簽和或簽人員,我也是在學(xué)習(xí)中,通過(guò)不斷查閱資料,總結(jié)了三種方式配置會(huì)簽人員

在配置人員之前,我們先說(shuō)一下多實(shí)例類型 并行和串行

并行:并行代表同時(shí)進(jìn)行,任務(wù)如果分配給兩個(gè)人,那么在這個(gè)節(jié)點(diǎn)的時(shí)候,兩個(gè)人同時(shí)都會(huì)收到任務(wù),各自處理

串行:串行是指任務(wù)由一個(gè)人完成后,才會(huì)流轉(zhuǎn)到第二個(gè)人手上

第一種方式通過(guò)設(shè)置變量

通過(guò)在設(shè)計(jì)器設(shè)置會(huì)簽人員集合,在流程啟動(dòng)之前,將變量值設(shè)置進(jìn)去

頁(yè)面配置:

代碼設(shè)置:

List assigneeList = new ArrayList<>();

assigneeList.add("張三");

assigneeList.add("李四");

vars.put("assigneeList",assigneeList);

ProcessInstance processInstance = runtimeService.startProcessInstanceById(processDefinition.getId(), businessKey, vars);

然后流程在走到會(huì)簽這一步的時(shí)候,會(huì)自動(dòng)將任務(wù)分配給張三和李四

第二種方式通過(guò)任務(wù)監(jiān)聽(tīng)器配置

代碼設(shè)置:

import org.activiti.engine.delegate.DelegateTask;

import org.activiti.engine.delegate.TaskListener;

import java.util.Arrays;

public class TaskListenter implements TaskListener {

@Override

public void notify(DelegateTask delegateTask) {

String[] empLoyees = {"張三","李四"};

// 會(huì)簽設(shè)置審核人/

delegateTask.addCandidateUsers(Arrays.asList(empLoyees));

}

}

然后流程在走到會(huì)簽這一步的時(shí)候,會(huì)自動(dòng)將任務(wù)分配給張三和李四

第三種方式想在頁(yè)面將人員寫死

集合(多實(shí)例): ${testUser.resolveUsersForTask(execution,“張三,李四”)}

代碼:

@Component

public class TestUser {

/**

* 會(huì)簽時(shí),動(dòng)態(tài)獲取審批人

* @param execution

* @return

*/

public List resolveUsersForTask(DelegateExecution execution, String value) {

System.out.println(value);

String[] user = value.split(",");

String instanceId = execution.getProcessInstanceId();

System.out.println("實(shí)例id:"+instanceId);

List users = Arrays.asList(user);

return users;

}

}

以上三種方式 是我自己總結(jié)的設(shè)置會(huì)簽人員的方法

最后附上多實(shí)例完成條件:

nrOfInstances:實(shí)例總數(shù)

nrOfActiveInstances:當(dāng)前活動(dòng)的,比如還沒(méi)完成的,實(shí)例數(shù)量。對(duì)于順序執(zhí)行的多實(shí)例,值一直為1。

nrOfCompletedInstances:已經(jīng)完成實(shí)例的數(shù)目

舉例:

${nrOfCompletedInstances>0} 表示只要有人完成任務(wù)就通過(guò)該節(jié)點(diǎn)

${nrOfCompletedInstances/nrOfInstances==1} 全部完成才能通過(guò)該節(jié)點(diǎn)

本文地址:https://blog.csdn.net/u010796208/article/details/107690399

希望與廣大網(wǎng)友互動(dòng)??

點(diǎn)此進(jìn)行留言吧!

總結(jié)

以上是生活随笔為你收集整理的java代码制作activiti会签_activiti设计器会签人员配置的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。