pom.xml
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.activiti.dependencies</groupId>
<artifactId>activiti-dependencies</artifactId>
<version>7.1.0.M4</version>
<scope>import</scope>
<type>pom</type>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<!-- activiti -->
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-spring-boot-starter</artifactId>
</dependency>
<!-- Activiti生成流程圖 -->
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-image-generator</artifactId>
</dependency>
<!--<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-engine</artifactId>
</dependency>-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
</dependencies>
啟動類上加上配置,不使用security
@SpringBootApplication(exclude = {
org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration.class,
org.springframework.boot.actuate.autoconfigure.security.servlet.ManagementWebSecurityAutoConfiguration.class
})
安裝idea插件

創建流程圖 bpmn
在resources/processes 下


測試類
package com.meeno.inner.oa;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.google.common.collect.Maps;
import com.meeno.inner.oa.extend.operaterecord.enums.OperateRecordTypeEnum;
import com.meeno.inner.oa.extend.project.workreport.service.WorkReportService;
import lombok.extern.java.Log;
import org.activiti.engine.RuntimeService;
import org.activiti.engine.TaskService;
import org.activiti.engine.runtime.ProcessInstance;
import org.activiti.engine.task.Task;
import org.assertj.core.util.Lists;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
@RunWith(SpringRunner.class)
@SpringBootTest
@Log
public class OaApplicationTests {
@Autowired
private RuntimeService runtimeService;
@Autowired
private TaskService taskService;
@Test
public void startProcesses(){
//開啟流程
ProcessInstance leave = this.runtimeService.startProcessInstanceByKey("leave");
// 查詢當前任務
Task currentTask = taskService.createTaskQuery().processInstanceId(leave.getId()).singleResult();
//聲明任務
taskService.claim(currentTask.getId(), "wzq");
// taskService.setAssignee();
// 完成任務
//攜帶的參數
Map<String,Object> params = Maps.newHashMap();
params.put("name","吳志奇好帥!");
taskService.complete(currentTask.getId(), params);
System.out.println("1");
}
@Test
public void findProcessesList(){
// / 多此一舉 taskList中包含了以下內容(用戶的任務中包含了所在用戶組的任務)
// Group group = identityService.createGroupQuery().groupMember(userName).singleResult();
// List<Task> list = taskService.createTaskQuery().taskCandidateGroup(group.getId()).list();
// taskList.addAll(list);
/*List<Task> taskList = taskService.createTaskQuery().taskCandidateUser(userName)
.orderByTaskCreateTime().desc().list();*/
List<Task> taskList = taskService.createTaskQuery().taskAssignee("wzq")
.orderByTaskCreateTime().desc().list();
for (Task task : taskList) {
String assignee = task.getAssignee();
String instanceId = task.getProcessInstanceId();
ProcessInstance instance = runtimeService.createProcessInstanceQuery().processInstanceId(instanceId).singleResult();
String name = this.runtimeService.getVariable(instance.getId(), "name", String.class);
System.out.println(name);
}
System.out.println("findProcessesList");
}
/* public void passAudit(String taskId,){
taskService.claim(taskId, userName);
taskService.complete(taskId, vars);
}*/
}
問題1:VERSION_ 找不到
去數據庫中act_re_deployment創建兩個字段

VERSION_ int
PROJECT_RELEASE_VERSION_ varchar
問題2:bpmn中午亂碼問題

添加配置 重啟idea
-Dfile.encoding=UTF-8

問題3:idea插件創建的bpmn啟動報錯

把這個
xmlns=""
刪除保存 在啟動項目就可以了
