diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessDefinitionServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessDefinitionServiceImpl.java index ee32c9f09..b103b3056 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessDefinitionServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActProcessDefinitionServiceImpl.java @@ -6,8 +6,6 @@ import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.io.IoUtil; import cn.hutool.core.util.ObjectUtil; -import com.fasterxml.jackson.databind.ObjectMapper; -import com.fasterxml.jackson.databind.node.ObjectNode; import lombok.RequiredArgsConstructor; import lombok.SneakyThrows; import org.apache.commons.io.IOUtils; @@ -22,7 +20,6 @@ import org.dromara.workflow.domain.bo.ProcessDefinitionBo; import org.dromara.workflow.domain.vo.ProcessDefinitionVo; import org.dromara.workflow.service.IActProcessDefinitionService; import org.dromara.workflow.service.IWfCategoryService; -import org.flowable.editor.constants.ModelDataJsonConstants; import org.flowable.engine.HistoryService; import org.flowable.engine.ProcessMigrationService; import org.flowable.engine.RepositoryService; @@ -257,11 +254,6 @@ public class ActProcessDefinitionServiceImpl implements IActProcessDefinitionSer modelData.setKey(pd.getKey()); modelData.setName(pd.getName()); modelData.setTenantId(pd.getTenantId()); - ObjectNode modelObjectNode = new ObjectMapper().createObjectNode(); - modelObjectNode.put(ModelDataJsonConstants.MODEL_NAME, pd.getName()); - modelObjectNode.put(ModelDataJsonConstants.MODEL_REVISION, modelData.getVersion()); - modelObjectNode.put(ModelDataJsonConstants.MODEL_DESCRIPTION, pd.getDescription()); - modelData.setMetaInfo(modelObjectNode.toString()); repositoryService.saveModel(modelData); repositoryService.addModelEditorSource(modelData.getId(), IoUtil.readBytes(inputStream)); } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java index 307676024..59348e5ae 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/ActTaskServiceImpl.java @@ -26,6 +26,7 @@ import org.dromara.workflow.flowable.strategy.FlowProcessEventHandler; import org.dromara.workflow.flowable.strategy.FlowTaskEventHandler; import org.dromara.workflow.service.IActTaskService; import org.dromara.workflow.utils.WorkflowUtils; +import org.flowable.common.engine.api.FlowableObjectNotFoundException; import org.flowable.common.engine.impl.identity.Authentication; import org.flowable.engine.*; import org.flowable.engine.history.HistoricProcessInstance; @@ -100,7 +101,12 @@ public class ActTaskServiceImpl implements IActTaskService { variables.put(FLOWABLE_SKIP_EXPRESSION_ENABLED, true); // 流程发起人 variables.put(INITIATOR, (String.valueOf(LoginHelper.getUserId()))); - ProcessInstance pi = runtimeService.startProcessInstanceByKeyAndTenantId(startProcessBo.getProcessKey(), startProcessBo.getBusinessKey(), variables, TenantHelper.getTenantId()); + ProcessInstance pi; + try { + pi = runtimeService.startProcessInstanceByKeyAndTenantId(startProcessBo.getProcessKey(), startProcessBo.getBusinessKey(), variables, TenantHelper.getTenantId()); + } catch (FlowableObjectNotFoundException e) { + throw new ServiceException("找不到当前【" + startProcessBo.getProcessKey() + "】流程定义!"); + } // 将流程定义名称 作为 流程实例名称 runtimeService.setProcessInstanceName(pi.getProcessInstanceId(), pi.getProcessDefinitionName()); // 申请人执行流程 diff --git a/script/bpmn/请假流程(排他网关)-leave2.zip b/script/bpmn/请假流程(排他网关)-leave2.zip index 7555193a5..9e151e22d 100644 Binary files a/script/bpmn/请假流程(排他网关)-leave2.zip and b/script/bpmn/请假流程(排他网关)-leave2.zip differ diff --git a/script/bpmn/请假流程(普通流程)-leave1.zip b/script/bpmn/请假流程(普通流程)-leave1.zip index d85f86675..2edee6a6e 100644 Binary files a/script/bpmn/请假流程(普通流程)-leave1.zip and b/script/bpmn/请假流程(普通流程)-leave1.zip differ