From f1208474f771a1c233d7425c8ed13fbaa0d521ac Mon Sep 17 00:00:00 2001
From: baoshiwei <baoshiwei@shlanbao.cn>
Date: 星期三, 12 三月 2025 09:35:13 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/5.X' into 5.X

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

diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwCategoryService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwCategoryService.java
new file mode 100644
index 0000000..91f173d
--- /dev/null
+++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwCategoryService.java
@@ -0,0 +1,102 @@
+package org.dromara.workflow.service;
+
+import cn.hutool.core.lang.tree.Tree;
+import org.dromara.workflow.domain.bo.FlowCategoryBo;
+import org.dromara.workflow.domain.vo.FlowCategoryVo;
+
+import java.util.List;
+
+/**
+ * 娴佺▼鍒嗙被Service鎺ュ彛
+ *
+ * @author may
+ */
+public interface IFlwCategoryService {
+
+    /**
+     * 鏌ヨ娴佺▼鍒嗙被
+     *
+     * @param categoryId 涓婚敭
+     * @return 娴佺▼鍒嗙被
+     */
+    FlowCategoryVo queryById(Long categoryId);
+
+    /**
+     * 鏍规嵁娴佺▼鍒嗙被ID鏌ヨ娴佺▼鍒嗙被鍚嶇О
+     *
+     * @param categoryId 娴佺▼鍒嗙被ID
+     * @return 娴佺▼鍒嗙被鍚嶇О
+     */
+    String selectCategoryNameById(Long categoryId);
+
+    /**
+     * 鏌ヨ绗﹀悎鏉′欢鐨勬祦绋嬪垎绫诲垪琛�
+     *
+     * @param bo 鏌ヨ鏉′欢
+     * @return 娴佺▼鍒嗙被鍒楄〃
+     */
+    List<FlowCategoryVo> queryList(FlowCategoryBo bo);
+
+    /**
+     * 鏌ヨ娴佺▼鍒嗙被鏍戠粨鏋勪俊鎭�
+     *
+     * @param category 娴佺▼鍒嗙被淇℃伅
+     * @return 娴佺▼鍒嗙被鏍戜俊鎭泦鍚�
+     */
+    List<Tree<String>> selectCategoryTreeList(FlowCategoryBo category);
+
+    /**
+     * 鏍¢獙娴佺▼鍒嗙被鏄惁鏈夋暟鎹潈闄�
+     *
+     * @param categoryId 娴佺▼鍒嗙被ID
+     */
+    void checkCategoryDataScope(Long categoryId);
+
+    /**
+     * 鏍¢獙娴佺▼鍒嗙被鍚嶇О鏄惁鍞竴
+     *
+     * @param category 娴佺▼鍒嗙被淇℃伅
+     * @return 缁撴灉
+     */
+    boolean checkCategoryNameUnique(FlowCategoryBo category);
+
+    /**
+     * 鏌ヨ娴佺▼鍒嗙被鏄惁瀛樺湪娴佺▼瀹氫箟
+     *
+     * @param categoryId 娴佺▼鍒嗙被ID
+     * @return 缁撴灉 true 瀛樺湪 false 涓嶅瓨鍦�
+     */
+    boolean checkCategoryExistDefinition(Long categoryId);
+
+    /**
+     * 鏄惁瀛樺湪娴佺▼鍒嗙被瀛愯妭鐐�
+     *
+     * @param categoryId 娴佺▼鍒嗙被ID
+     * @return 缁撴灉
+     */
+    boolean hasChildByCategoryId(Long categoryId);
+
+    /**
+     * 鏂板娴佺▼鍒嗙被
+     *
+     * @param bo 娴佺▼鍒嗙被
+     * @return 鏄惁鏂板鎴愬姛
+     */
+    int insertByBo(FlowCategoryBo bo);
+
+    /**
+     * 淇敼娴佺▼鍒嗙被
+     *
+     * @param bo 娴佺▼鍒嗙被
+     * @return 鏄惁淇敼鎴愬姛
+     */
+    int updateByBo(FlowCategoryBo bo);
+
+    /**
+     * 鍒犻櫎娴佺▼鍒嗙被淇℃伅
+     *
+     * @param categoryId 涓婚敭
+     * @return 鏄惁鍒犻櫎鎴愬姛
+     */
+    int deleteWithValidById(Long categoryId);
+}

--
Gitblit v1.9.3