From 234d8989d7b65aee665b5932fcf182009753592b Mon Sep 17 00:00:00 2001
From: 疯狂的狮子Li <15040126243@163.com>
Date: 星期三, 06 三月 2024 19:07:23 +0800
Subject: [PATCH] update 优化 支持工作流关闭租户

---
 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowUserServiceImpl.java |   13 +++++++++++--
 1 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowUserServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowUserServiceImpl.java
index e30e553..dd91eaf 100644
--- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowUserServiceImpl.java
+++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowUserServiceImpl.java
@@ -29,6 +29,7 @@
 import org.flowable.engine.impl.bpmn.behavior.ParallelMultiInstanceBehavior;
 import org.flowable.engine.impl.bpmn.behavior.SequentialMultiInstanceBehavior;
 import org.flowable.task.api.Task;
+import org.flowable.task.api.TaskQuery;
 import org.springframework.stereotype.Service;
 
 import java.util.ArrayList;
@@ -92,8 +93,16 @@
     @Override
     @SuppressWarnings("unchecked")
     public List<TaskVo> getWorkflowDeleteMultiInstanceList(String taskId) {
-        Task task = taskService.createTaskQuery().taskTenantId(TenantHelper.getTenantId()).taskId(taskId).singleResult();
-        List<Task> taskList = taskService.createTaskQuery().taskTenantId(TenantHelper.getTenantId()).processInstanceId(task.getProcessInstanceId()).list();
+        TaskQuery query = taskService.createTaskQuery();
+        if (TenantHelper.isEnable()) {
+            query.taskTenantId(TenantHelper.getTenantId());
+        }
+        Task task = query.taskId(taskId).singleResult();
+        TaskQuery query1 = taskService.createTaskQuery();
+        if (TenantHelper.isEnable()) {
+            query1.taskTenantId(TenantHelper.getTenantId());
+        }
+        List<Task> taskList = query1.processInstanceId(task.getProcessInstanceId()).list();
         MultiInstanceVo multiInstance = WorkflowUtils.isMultiInstance(task.getProcessDefinitionId(), task.getTaskDefinitionKey());
         List<TaskVo> taskListVo = new ArrayList<>();
         if (multiInstance == null) {

--
Gitblit v1.9.3