From 456620b6383611bc5982d670fca8dead60571208 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子Li <15040126243@163.com>
Date: 星期四, 06 六月 2024 11:13:46 +0800
Subject: [PATCH] !549 ♥️发布 5.2.0-BETA2 公测版本 Merge pull request !549 from 疯狂的狮子Li/dev

---
 ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java |  119 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 119 insertions(+), 0 deletions(-)

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
new file mode 100644
index 0000000..11f6ef1
--- /dev/null
+++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowServiceImpl.java
@@ -0,0 +1,119 @@
+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;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 閫氱敤 宸ヤ綔娴佹湇鍔″疄鐜�
+ *
+ * @author may
+ */
+@RequiredArgsConstructor
+@Service
+public class WorkflowServiceImpl implements WorkflowService {
+
+    private final IActProcessInstanceService iActProcessInstanceService;
+    private final RuntimeService runtimeService;
+    private final IActHiProcinstService iActHiProcinstService;
+    /**
+     * 杩愯涓殑瀹炰緥 鍒犻櫎绋嬪疄渚嬶紝鍒犻櫎鍘嗗彶璁板綍锛屽垹闄や笟鍔′笌娴佺▼鍏宠仈淇℃伅
+     *
+     * @param businessKeys 涓氬姟id
+     * @return 缁撴灉
+     */
+    @Override
+    public boolean deleteRunAndHisInstance(List<String> businessKeys) {
+        return iActProcessInstanceService.deleteRunAndHisInstance(businessKeys);
+    }
+
+    /**
+     * 鑾峰彇褰撳墠娴佺▼鐘舵��
+     *
+     * @param taskId 浠诲姟id
+     */
+    @Override
+    public String getBusinessStatusByTaskId(String taskId) {
+        return WorkflowUtils.getBusinessStatusByTaskId(taskId);
+    }
+
+    /**
+     * 鑾峰彇褰撳墠娴佺▼鐘舵��
+     *
+     * @param businessKey 涓氬姟id
+     */
+    @Override
+    public String getBusinessStatus(String businessKey) {
+        return WorkflowUtils.getBusinessStatus(businessKey);
+    }
+
+    /**
+     * 璁剧疆娴佺▼鍙橀噺(鍏ㄥ眬鍙橀噺)
+     *
+     * @param taskId       浠诲姟id
+     * @param variableName 鍙橀噺鍚嶇О
+     * @param value        鍙橀噺鍊�
+     */
+    @Override
+    public void setVariable(String taskId, String variableName, Object value) {
+        runtimeService.setVariable(taskId, variableName, value);
+    }
+
+    /**
+     * 璁剧疆娴佺▼鍙橀噺(鍏ㄥ眬鍙橀噺)
+     *
+     * @param taskId    浠诲姟id
+     * @param variables 娴佺▼鍙橀噺
+     */
+    @Override
+    public void setVariables(String taskId, Map<String, Object> variables) {
+        runtimeService.setVariables(taskId, variables);
+    }
+
+    /**
+     * 璁剧疆娴佺▼鍙橀噺(鏈湴鍙橀噺,闈炲叏灞�鍙橀噺)
+     *
+     * @param taskId       浠诲姟id
+     * @param variableName 鍙橀噺鍚嶇О
+     * @param value        鍙橀噺鍊�
+     */
+    @Override
+    public void setVariableLocal(String taskId, String variableName, Object value) {
+        runtimeService.setVariableLocal(taskId, variableName, value);
+    }
+
+    /**
+     * 璁剧疆娴佺▼鍙橀噺(鏈湴鍙橀噺,闈炲叏灞�鍙橀噺)
+     *
+     * @param taskId    浠诲姟id
+     * @param variables 娴佺▼鍙橀噺
+     */
+    @Override
+    public void setVariablesLocal(String taskId, Map<String, Object> 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();
+    }
+}

--
Gitblit v1.9.3