update 修改表名

This commit is contained in:
lijiarao
2023-09-28 18:01:29 +08:00
parent cd08e5361a
commit 7110380a66
15 changed files with 65 additions and 114 deletions
+1 -4
View File
@@ -1,6 +1,3 @@
第二行替换为:<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/test">
第二行替换为:<definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/test">
第三行修改为:isExecutable="true"
bpmn: 替换为空
camunda: 替换为 activiti:
dc:Bounds 替换为 omgdc:Bounds
di:waypoint 替换为 omgdi:waypoint
@@ -5,8 +5,8 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.jero.common.api.vo.Result;
import com.jero.common.constant.enums.LanguageEnum;
import com.jero.common.util.MessageUtils;
import com.jero.modules.activiti.entity.LawsProcessNode;
import com.jero.modules.activiti.entity.LawsProcessNodeOrigin;
import com.jero.modules.activiti.entity.ProcessNode;
import com.jero.modules.activiti.entity.ProcessNodeOrigin;
import com.jero.modules.activiti.service.LawsProcessNodeOriginService;
import com.jero.modules.activiti.service.LawsProcessNodeService;
import com.jero.modules.activiti.service.ProcessService;
@@ -77,6 +77,7 @@ public class AController {
//.addClasspathResource("bpmn/business-trips.png") // 添加png资源
//.addClasspathResource(classpathResource)
.addInputStream(resourceName, file.getInputStream())
.disableSchemaValidation()
.key(name)
.name(name)
.deploy();
@@ -167,21 +168,21 @@ public class AController {
map1.put("当前活动Id", processInstance.getActivityId());
//从流程节点源表中保存一份流程节点信息到流程节点表
LambdaQueryWrapper<LawsProcessNodeOrigin> processNodeOriginLambdaQueryWrapper = new LambdaQueryWrapper<>();
processNodeOriginLambdaQueryWrapper.eq(LawsProcessNodeOrigin::getNodeType,"userTask")
.orderByAsc(LawsProcessNodeOrigin::getSort);
LambdaQueryWrapper<ProcessNodeOrigin> processNodeOriginLambdaQueryWrapper = new LambdaQueryWrapper<>();
processNodeOriginLambdaQueryWrapper.eq(ProcessNodeOrigin::getNodeType,"userTask")
.orderByAsc(ProcessNodeOrigin::getSort);
List<LawsProcessNodeOrigin> lawsProcessNodeOrigins = processNodeOriginService.list(processNodeOriginLambdaQueryWrapper);
List<LawsProcessNode> lawsProcessNodes = new ArrayList<>();
for (LawsProcessNodeOrigin lawsProcessNodeOrigin : lawsProcessNodeOrigins) {
LawsProcessNode lawsProcessNode = new LawsProcessNode();
BeanUtils.copyProperties(lawsProcessNodeOrigin,lawsProcessNode);
lawsProcessNode.setId(null);
lawsProcessNodes.add(lawsProcessNode);
List<ProcessNodeOrigin> processNodeOrigins = processNodeOriginService.list(processNodeOriginLambdaQueryWrapper);
List<ProcessNode> processNodes = new ArrayList<>();
for (ProcessNodeOrigin processNodeOrigin : processNodeOrigins) {
ProcessNode processNode = new ProcessNode();
BeanUtils.copyProperties(processNodeOrigin, processNode);
processNode.setId(null);
processNodes.add(processNode);
}
processNodeService.saveBatch(lawsProcessNodes);
for (LawsProcessNode lawsProcessNode : lawsProcessNodes) {
if (lawsProcessNode.getNodeName().equals("填写基本信息,在线编辑,分发其他起草人")) {
processNodeService.saveBatch(processNodes);
for (ProcessNode processNode : processNodes) {
if (processNode.getNodeName().equals("填写基本信息,在线编辑,分发其他起草人")) {
//todo 关联关系
}
}
@@ -16,8 +16,8 @@ import lombok.Data;
*/
@ApiModel(description = "流程节点")
@Data
@TableName(value = "laws_process_node")
public class LawsProcessNode {
@TableName(value = "process_node")
public class ProcessNode {
/**
* 主键id
*/
@@ -15,8 +15,8 @@ import lombok.Data;
*/
@ApiModel(description = "流程节点关联用户部门表")
@Data
@TableName(value = "laws_process_node_link")
public class LawsProcessNodeLink {
@TableName(value = "process_node_link")
public class ProcessNodeLink {
/**
* 主键id
*/
@@ -16,8 +16,8 @@ import lombok.Data;
*/
@ApiModel(description = "流程节点_来源")
@Data
@TableName(value = "laws_process_node_origin")
public class LawsProcessNodeOrigin {
@TableName(value = "process_node_origin")
public class ProcessNodeOrigin {
/**
* 主键id
*/
@@ -1,11 +1,11 @@
package com.jero.modules.activiti.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.jero.modules.activiti.entity.LawsProcessNodeLink;
import com.jero.modules.activiti.entity.ProcessNodeLink;
/**
* @author liJiaRao
* @date 2023-09-26 15:12
*/
public interface LawsProcessNodeLinkMapper extends BaseMapper<LawsProcessNodeLink> {
public interface LawsProcessNodeLinkMapper extends BaseMapper<ProcessNodeLink> {
}
@@ -1,11 +1,11 @@
package com.jero.modules.activiti.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.jero.modules.activiti.entity.LawsProcessNode;
import com.jero.modules.activiti.entity.ProcessNode;
/**
* @author liJiaRao
* @date 2023-09-26 15:12
*/
public interface LawsProcessNodeMapper extends BaseMapper<LawsProcessNode> {
public interface LawsProcessNodeMapper extends BaseMapper<ProcessNode> {
}
@@ -1,7 +1,7 @@
package com.jero.modules.activiti.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.jero.modules.activiti.entity.LawsProcessNodeOrigin;
import com.jero.modules.activiti.entity.ProcessNodeOrigin;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@@ -10,6 +10,6 @@ import java.util.List;
* @author liJiaRao
* @date 2023-09-26 15:12
*/
public interface LawsProcessNodeOriginMapper extends BaseMapper<LawsProcessNodeOrigin> {
int insertList(@Param("list") List<LawsProcessNodeOrigin> list);
public interface LawsProcessNodeOriginMapper extends BaseMapper<ProcessNodeOrigin> {
int insertList(@Param("list") List<ProcessNodeOrigin> list);
}
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.jero.modules.activiti.mapper.LawsProcessNodeLinkMapper">
<resultMap id="BaseResultMap" type="com.jero.modules.activiti.entity.LawsProcessNodeLink">
<resultMap id="BaseResultMap" type="com.jero.modules.activiti.entity.ProcessNodeLink">
<!--@mbg.generated-->
<!--@Table laws_process_node_link-->
<!--@Table process_node_link-->
<id column="id" jdbcType="VARCHAR" property="id" />
<result column="process_node_id" jdbcType="VARCHAR" property="processNodeId" />
<result column="type" jdbcType="INTEGER" property="type" />
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.jero.modules.activiti.mapper.LawsProcessNodeMapper">
<resultMap id="BaseResultMap" type="com.jero.modules.activiti.entity.LawsProcessNode">
<resultMap id="BaseResultMap" type="com.jero.modules.activiti.entity.ProcessNode">
<!--@mbg.generated-->
<!--@Table laws_process_node-->
<!--@Table process_node-->
<id column="id" jdbcType="VARCHAR" property="id" />
<result column="process_definition_id" jdbcType="VARCHAR" property="processDefinitionId" />
<result column="node_name" jdbcType="VARCHAR" property="nodeName" />
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.jero.modules.activiti.mapper.LawsProcessNodeOriginMapper">
<resultMap id="BaseResultMap" type="com.jero.modules.activiti.entity.LawsProcessNodeOrigin">
<resultMap id="BaseResultMap" type="com.jero.modules.activiti.entity.ProcessNodeOrigin">
<!--@mbg.generated-->
<!--@Table laws_process_node_origin-->
<!--@Table process_node_origin-->
<id column="id" jdbcType="VARCHAR" property="id" />
<result column="process_definition_id" jdbcType="VARCHAR" property="processDefinitionId" />
<result column="node_name" jdbcType="VARCHAR" property="nodeName" />
@@ -29,7 +29,7 @@
<!--auto generated by MybatisCodeHelper on 2023-09-25-->
<insert id="insertList">
INSERT INTO laws_process_node_origin(
INSERT INTO process_node_origin(
id,
process_definition_id,
node_name,
@@ -1,17 +1,15 @@
package com.jero.modules.activiti.service;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.modules.activiti.mapper.LawsProcessNodeLinkMapper;
import com.jero.modules.activiti.entity.LawsProcessNodeLink;
import com.jero.modules.activiti.entity.ProcessNodeLink;
/**
*
*@author liJiaRao
*@date 2023-09-26 15:12
*/
@Service
public class LawsProcessNodeLinkService extends ServiceImpl<LawsProcessNodeLinkMapper, LawsProcessNodeLink> {
public class LawsProcessNodeLinkService extends ServiceImpl<LawsProcessNodeLinkMapper, ProcessNodeLink> {
}
@@ -1,11 +1,9 @@
package com.jero.modules.activiti.service;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.lang.UUID;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.jero.common.constant.enums.YesOrNoEnum;
import com.jero.common.exception.JeroBootException;
import com.jero.modules.activiti.entity.ActGeBytearray;
import com.jero.modules.activiti.mapper.ActGeBytearrayMapper;
import com.jero.modules.activiti.vo.AddTaskVO;
import org.activiti.bpmn.BpmnAutoLayout;
@@ -13,14 +11,7 @@ import org.activiti.bpmn.converter.BpmnXMLConverter;
import org.activiti.bpmn.model.*;
import org.activiti.bpmn.model.Process;
import org.activiti.engine.*;
import org.activiti.engine.impl.cfg.ProcessEngineConfigurationImpl;
import org.activiti.engine.impl.persistence.deploy.DeploymentManager;
import org.activiti.validation.ProcessValidator;
import org.activiti.validation.ProcessValidatorFactory;
import org.activiti.validation.ValidationError;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
@@ -28,7 +19,6 @@ import javax.xml.stream.XMLInputFactory;
import javax.xml.stream.XMLStreamException;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
@@ -36,14 +26,14 @@ import java.util.stream.Collectors;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.modules.activiti.mapper.LawsProcessNodeOriginMapper;
import com.jero.modules.activiti.entity.LawsProcessNodeOrigin;
import com.jero.modules.activiti.entity.ProcessNodeOrigin;
/**
*
*@author liJiaRao
*@date 2023-09-26 15:12
*/
@Service
public class LawsProcessNodeOriginService extends ServiceImpl<LawsProcessNodeOriginMapper, LawsProcessNodeOrigin> {
public class LawsProcessNodeOriginService extends ServiceImpl<LawsProcessNodeOriginMapper, ProcessNodeOrigin> {
@Resource
private RepositoryService repositoryService;
@Resource
@@ -57,16 +47,16 @@ public class LawsProcessNodeOriginService extends ServiceImpl<LawsProcessNodeOri
final BpmnModel bpmnModel = repositoryService.getBpmnModel(processDefinitionId);
Process process = bpmnModel.getMainProcess();
Collection<FlowElement> flowElements = process.getFlowElements();
List<LawsProcessNodeOrigin> processNodeOriginList = new ArrayList<>();
List<ProcessNodeOrigin> processNodeOriginList = new ArrayList<>();
int sort = 1;
List<String> gatewayIdList = new ArrayList<>();
processNodeOriginList = handlerLawsProcessNodeOrigin(flowElements,sort,gatewayIdList,processDefinitionId);
List<String> approvalNodeIdList = processNodeOriginList.stream()
.filter(item -> gatewayIdList.contains(item.getXmlTargetRef()))
.map(LawsProcessNodeOrigin::getXmlSourceRef)
.map(ProcessNodeOrigin::getXmlSourceRef)
.collect(Collectors.toList());
for (LawsProcessNodeOrigin processNodeOrigin : processNodeOriginList) {
for (ProcessNodeOrigin processNodeOrigin : processNodeOriginList) {
String xmlNodeId = processNodeOrigin.getXmlNodeId();
if (approvalNodeIdList.contains(xmlNodeId) ){
processNodeOrigin.setIsApprovalNode(YesOrNoEnum.YES.getInteger());
@@ -81,33 +71,33 @@ public class LawsProcessNodeOriginService extends ServiceImpl<LawsProcessNodeOri
String xmlNodeId = addTaskVO.getXmlNodeId();
String nodeName = addTaskVO.getNodeName();
//查找当前节点
LambdaQueryWrapper<LawsProcessNodeOrigin> processNodeOriginLambdaQueryWrapper = new LambdaQueryWrapper<>();
processNodeOriginLambdaQueryWrapper.eq(LawsProcessNodeOrigin::getXmlNodeId, xmlNodeId)
.eq(LawsProcessNodeOrigin::getProcessDefinitionId, processDefinitionId);
LambdaQueryWrapper<ProcessNodeOrigin> processNodeOriginLambdaQueryWrapper = new LambdaQueryWrapper<>();
processNodeOriginLambdaQueryWrapper.eq(ProcessNodeOrigin::getXmlNodeId, xmlNodeId)
.eq(ProcessNodeOrigin::getProcessDefinitionId, processDefinitionId);
LawsProcessNodeOrigin processNodeOrigin = processNodeOriginMapper.selectOne(processNodeOriginLambdaQueryWrapper);
ProcessNodeOrigin processNodeOrigin = processNodeOriginMapper.selectOne(processNodeOriginLambdaQueryWrapper);
if (processNodeOrigin == null || !YesOrNoEnum.YES.getInteger().equals(processNodeOrigin.getIsApprovalNode())) {
throw new JeroBootException("只能在审批节点后新增");
}
processNodeOriginLambdaQueryWrapper.clear();
//查找节点的流出线
processNodeOriginLambdaQueryWrapper.eq(LawsProcessNodeOrigin::getXmlSourceRef, xmlNodeId)
.eq(LawsProcessNodeOrigin::getProcessDefinitionId, processDefinitionId);
LawsProcessNodeOrigin flowOrigin1 = processNodeOriginMapper.selectOne(processNodeOriginLambdaQueryWrapper);
processNodeOriginLambdaQueryWrapper.eq(ProcessNodeOrigin::getXmlSourceRef, xmlNodeId)
.eq(ProcessNodeOrigin::getProcessDefinitionId, processDefinitionId);
ProcessNodeOrigin flowOrigin1 = processNodeOriginMapper.selectOne(processNodeOriginLambdaQueryWrapper);
processNodeOriginLambdaQueryWrapper.clear();
//查找流出线指向的网关
processNodeOriginLambdaQueryWrapper.eq(LawsProcessNodeOrigin::getXmlNodeId, flowOrigin1.getXmlTargetRef())
.eq(LawsProcessNodeOrigin::getProcessDefinitionId, processDefinitionId);
LawsProcessNodeOrigin gatewayOrigin = processNodeOriginMapper.selectOne(processNodeOriginLambdaQueryWrapper);
processNodeOriginLambdaQueryWrapper.eq(ProcessNodeOrigin::getXmlNodeId, flowOrigin1.getXmlTargetRef())
.eq(ProcessNodeOrigin::getProcessDefinitionId, processDefinitionId);
ProcessNodeOrigin gatewayOrigin = processNodeOriginMapper.selectOne(processNodeOriginLambdaQueryWrapper);
processNodeOriginLambdaQueryWrapper.clear();
//查找网关指向的线
processNodeOriginLambdaQueryWrapper.eq(LawsProcessNodeOrigin::getXmlSourceRef, gatewayOrigin.getXmlNodeId())
.eq(LawsProcessNodeOrigin::getNodeName, "通过")
.eq(LawsProcessNodeOrigin::getProcessDefinitionId, processDefinitionId);
processNodeOriginLambdaQueryWrapper.eq(ProcessNodeOrigin::getXmlSourceRef, gatewayOrigin.getXmlNodeId())
.eq(ProcessNodeOrigin::getNodeName, "通过")
.eq(ProcessNodeOrigin::getProcessDefinitionId, processDefinitionId);
LawsProcessNodeOrigin flowOrigin2 = processNodeOriginMapper.selectOne(processNodeOriginLambdaQueryWrapper);
ProcessNodeOrigin flowOrigin2 = processNodeOriginMapper.selectOne(processNodeOriginLambdaQueryWrapper);
BpmnModel bpmnModelOrigin = repositoryService.getBpmnModel(processDefinitionId);
BpmnXMLConverter converter = new BpmnXMLConverter();
@@ -144,18 +134,6 @@ public class LawsProcessNodeOriginService extends ServiceImpl<LawsProcessNodeOri
} catch (XMLStreamException e) {
e.printStackTrace();
}
////清除缓存
//ProcessEngineConfigurationImpl configuration = (ProcessEngineConfigurationImpl) processEngine.getProcessEngineConfiguration();
//DeploymentManager deploymentManager = configuration.getDeploymentManager();
//deploymentManager.getProcessDefinitionCache().remove(processDefinitionId);
//
//List<ActGeBytearray> actGeBytearrayList = actGeBytearrayMapper.getActGeBytearrayList(processDefinitionId);
//actGeBytearrayList = actGeBytearrayList.stream().filter(item -> item.getName().endsWith(".bpmn")).peek(item -> {
// item.setBytes(bytes);
//}).collect(Collectors.toList());
//if (ObjectUtils.isNotEmpty(actGeBytearrayList)) {
// actGeBytearrayMapper.updateById(actGeBytearrayList.get(0));
//}
return null;
}
protected static UserTask createUserTask(String name, String assignee) {
@@ -163,7 +141,7 @@ public class LawsProcessNodeOriginService extends ServiceImpl<LawsProcessNodeOri
UserTask userTask = new UserTask();
userTask.setName(name);
userTask.setId(id);
userTask.setAssignee(assignee!=null?assignee:"${"+id+"}");
userTask.setAssignee(assignee!=null?assignee:"${"+id.replace("-","")+"}");
return userTask;
}
protected static SequenceFlow createSequenceFlow(String from, String to) {
@@ -203,14 +181,14 @@ public class LawsProcessNodeOriginService extends ServiceImpl<LawsProcessNodeOri
return gateway;
}
private List<LawsProcessNodeOrigin> handlerLawsProcessNodeOrigin(
private List<ProcessNodeOrigin> handlerLawsProcessNodeOrigin(
Collection<FlowElement> flowElements,
int sort,
List<String> gatewayIdList,
String processDefinitionId) {
List<LawsProcessNodeOrigin> processNodeOriginList = new ArrayList<>();
List<ProcessNodeOrigin> processNodeOriginList = new ArrayList<>();
for (FlowElement flowElement : flowElements) {
LawsProcessNodeOrigin processNodeOrigin = new LawsProcessNodeOrigin();
ProcessNodeOrigin processNodeOrigin = new ProcessNodeOrigin();
String nodeName = processNodeOrigin.getNodeName();
String nodeType = processNodeOrigin.getNodeType();
@@ -238,7 +216,7 @@ public class LawsProcessNodeOriginService extends ServiceImpl<LawsProcessNodeOri
} else if (flowElement instanceof SubProcess) {
SubProcess subProcess = (SubProcess) flowElement;
Collection<FlowElement> flowElements1 = subProcess.getFlowElements();
List<LawsProcessNodeOrigin> processNodeOrigins = handlerLawsProcessNodeOrigin(flowElements1, sort, gatewayIdList, processDefinitionId);
List<ProcessNodeOrigin> processNodeOrigins = handlerLawsProcessNodeOrigin(flowElements1, sort, gatewayIdList, processDefinitionId);
processNodeOriginList.addAll(processNodeOrigins);
nodeType = "subProcess";
nodeName = subProcess.getName();
@@ -1,17 +1,15 @@
package com.jero.modules.activiti.service;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.modules.activiti.mapper.LawsProcessNodeMapper;
import com.jero.modules.activiti.entity.LawsProcessNode;
import com.jero.modules.activiti.entity.ProcessNode;
/**
*
*@author liJiaRao
*@date 2023-09-26 15:12
*/
@Service
public class LawsProcessNodeService extends ServiceImpl<LawsProcessNodeMapper, LawsProcessNode> {
public class LawsProcessNodeService extends ServiceImpl<LawsProcessNodeMapper, ProcessNode> {
}
@@ -1,40 +1,20 @@
package com.jero.modules.activiti.service.impl;
import java.util.Date;
import cn.hutool.core.lang.UUID;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.jero.common.constant.enums.YesOrNoEnum;
import com.jero.common.exception.JeroBootException;
import com.jero.modules.activiti.config.WorkflowConstants;
import com.jero.modules.activiti.entity.ActGeBytearray;
import com.jero.modules.activiti.entity.LawsProcessNodeOrigin;
import com.jero.modules.activiti.mapper.ActGeBytearrayMapper;
import com.jero.modules.activiti.mapper.LawsProcessNodeOriginMapper;
import com.jero.modules.activiti.service.ProcessService;
import com.jero.modules.activiti.service.impl.image.ICustomProcessDiagramGenerator;
import com.jero.modules.activiti.vo.AddTaskVO;
import lombok.extern.slf4j.Slf4j;
import org.activiti.bpmn.BpmnAutoLayout;
import org.activiti.bpmn.converter.BpmnXMLConverter;
import org.activiti.bpmn.model.Process;
import org.activiti.bpmn.model.*;
import org.activiti.engine.*;
import org.activiti.engine.history.HistoricActivityInstance;
import org.activiti.engine.history.HistoricProcessInstance;
import org.activiti.engine.impl.RepositoryServiceImpl;
import org.activiti.engine.impl.cfg.ProcessEngineConfigurationImpl;
import org.activiti.engine.impl.persistence.deploy.DeploymentManager;
import org.activiti.engine.impl.persistence.entity.ProcessDefinitionEntity;
import org.activiti.engine.repository.ProcessDefinition;
import org.activiti.engine.repository.ProcessDefinitionQuery;
import org.activiti.engine.runtime.Execution;
import org.activiti.engine.runtime.ProcessInstance;
import org.activiti.engine.task.Task;
import org.activiti.image.impl.DefaultProcessDiagramGenerator;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -43,7 +23,6 @@ import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.awt.*;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.*;