Activiti个人任务分配
1.Activiti中个人任务分配
1.1分配任务负责人:
1.1.1 固定分配,每一个任务都是固定的人进行执行
1.1.2 表达式分配:
UEL表达式,统一表达式语言,在activiti当中支持两种形式,一种是value,另外一种是method形式
1.1.3 创建流程图,给每一个环节制定assignee值,通过UEL表达式分配任务负责人
1.1.4 流程部署
1.1.5 创建流程实例,制定任务执行人
/** * 启动一个流程实例 */ @Test public void getInstance(){ //获取ProcessEngine对象 默认配置文件名称:activiti.cfg.xml 并且configuration的Bean实例ID为processEngineConfiguration ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine(); //获取RuntimeService RuntimeService runtimeService = processEngine.getRuntimeService(); //定义一个Map集合,存放assignee的值 Map<String,Object> assMap=new HashMap<>(); assMap.put("assignee01","zhuyuan"); assMap.put("assignee02","jingjie"); assMap.put("assignee03","guangge"); assMap.put("assignee04","chaoge"); //启动一个流程实例 ProcessInstance holiday = runtimeService.startProcessInstanceByKey("holiday", assMap); System.out.println("流程实例Name:"+holiday.getName()); }
1.2监听器分配模式
手动创建类实现监听接口,重写方法
public class YHListener implements TaskListener { @Override public void notify(DelegateTask delegateTask) { delegateTask.setAssignee("zhangsan"); } }
然后再bpmn文件指定触发时机
执行效果