diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java index 58cb063be..4e556c9cb 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/service/WorkflowService.java @@ -65,4 +65,12 @@ public interface WorkflowService { * @param variables 流程变量 */ void setVariablesLocal(String taskId, Map variables); + + /** + * 按照业务id查询流程实例id + * + * @param businessKey 业务id + * @return 结果 + */ + String getInstanceIdByBusinessKey(String businessKey); } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/TestLeaveVo.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/TestLeaveVo.java index 47886d721..b1c9b9e41 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/TestLeaveVo.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/domain/vo/TestLeaveVo.java @@ -67,4 +67,10 @@ public class TestLeaveVo implements Serializable { @ExcelProperty(value = "状态") private String status; + /** + * 流程实例id + */ + @ExcelProperty(value = "流程实例id") + private String processInstanceId; + } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java index 6431b3f80..9d14bc812 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/TestLeaveServiceImpl.java @@ -46,7 +46,9 @@ public class TestLeaveServiceImpl implements ITestLeaveService { */ @Override public TestLeaveVo queryById(Long id) { - return baseMapper.selectVoById(id); + TestLeaveVo testLeaveVo = baseMapper.selectVoById(id); + testLeaveVo.setProcessInstanceId(workflowService.getInstanceIdByBusinessKey(String.valueOf(id))); + return testLeaveVo; } /** diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java index 2c60b6616..11f6ef106 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java @@ -1,7 +1,10 @@ package org.dromara.workflow.service.impl; +import cn.hutool.core.util.StrUtil; import lombok.RequiredArgsConstructor; import org.dromara.common.core.service.WorkflowService; +import org.dromara.workflow.domain.ActHiProcinst; +import org.dromara.workflow.service.IActHiProcinstService; import org.dromara.workflow.service.IActProcessInstanceService; import org.dromara.workflow.utils.WorkflowUtils; import org.flowable.engine.RuntimeService; @@ -21,7 +24,7 @@ public class WorkflowServiceImpl implements WorkflowService { private final IActProcessInstanceService iActProcessInstanceService; private final RuntimeService runtimeService; - + private final IActHiProcinstService iActHiProcinstService; /** * 运行中的实例 删除程实例,删除历史记录,删除业务与流程关联信息 * @@ -98,4 +101,19 @@ public class WorkflowServiceImpl implements WorkflowService { public void setVariablesLocal(String taskId, Map variables) { runtimeService.setVariablesLocal(taskId, variables); } + + /** + * 按照业务id查询流程实例id + * + * @param businessKey 业务id + * @return 结果 + */ + @Override + public String getInstanceIdByBusinessKey(String businessKey) { + ActHiProcinst actHiProcinst = iActHiProcinstService.selectByBusinessKey(businessKey); + if (actHiProcinst == null) { + return StrUtil.EMPTY; + } + return actHiProcinst.getId(); + } } diff --git a/script/bpmn/模型.zip b/script/bpmn/模型.zip index f232cda1c..6f30952ab 100644 Binary files a/script/bpmn/模型.zip and b/script/bpmn/模型.zip differ