From 64f790186cb0b2d1d4f456ab146b6b9bde7e4b44 Mon Sep 17 00:00:00 2001
From: aix <vip_xiaobin810@163.com>
Date: Fri, 12 Jul 2024 16:41:30 +0800
Subject: [PATCH] 支持多部门
---
skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/service/IDeptService.java | 2 +-
skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/mapper/DeptMapper.java | 2 +-
skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/controller/DeptController.java | 2 +-
skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/service/impl/DeptServiceImpl.java | 11 +++++++++--
skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/mapper/DeptMapper.xml | 5 ++++-
5 files changed, 16 insertions(+), 6 deletions(-)
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/controller/DeptController.java b/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/controller/DeptController.java
index 8855f8a..b35637f 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/controller/DeptController.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/controller/DeptController.java
@@ -137,7 +137,7 @@
@GetMapping("/lazy-tree")
@ApiOperationSupport(order = 5)
@ApiOperation(value = "懒加载树形结构", notes = "树形结构")
- public R<List<DeptVO>> lazyTree(String tenantId, Long parentId, BladeUser bladeUser) {
+ public R<List<DeptVO>> lazyTree(String tenantId, String parentId, BladeUser bladeUser) {
List<DeptVO> tree = deptService.lazyTree(Func.toStrWithEmpty(tenantId, bladeUser.getTenantId()), parentId);
return R.data(tree);
}
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/mapper/DeptMapper.java b/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/mapper/DeptMapper.java
index d46b76c..edd2a4d 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/mapper/DeptMapper.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/mapper/DeptMapper.java
@@ -61,7 +61,7 @@
* @param parentId
* @return
*/
- List<DeptVO> lazyTree(String tenantId, Long parentId);
+ List<DeptVO> lazyTree(String tenantId, List<Long> parentId);
/**
* 获取部门名
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/mapper/DeptMapper.xml b/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/mapper/DeptMapper.xml
index 055cfe6..182a709 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/mapper/DeptMapper.xml
+++ b/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/mapper/DeptMapper.xml
@@ -110,7 +110,10 @@
FROM
blade_dept dept
WHERE
- dept.parent_id = #{param2} AND dept.is_deleted = 0
+ <foreach item="id" collection="param2" open="(" separator="or" close=")">
+ dept.parent_id = #{id}
+ </foreach>
+ AND dept.is_deleted = 0
<if test="param1!=null and param1!=''">
and dept.tenant_id = #{param1}
</if>
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/service/IDeptService.java b/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/service/IDeptService.java
index 5e8cab5..6df1251 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/service/IDeptService.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/service/IDeptService.java
@@ -58,7 +58,7 @@
* @param parentId
* @return
*/
- List<DeptVO> lazyTree(String tenantId, Long parentId);
+ List<DeptVO> lazyTree(String tenantId, String parentIds);
/**
* 获取部门ID
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/service/impl/DeptServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/service/impl/DeptServiceImpl.java
index 5382e70..b10407e 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/service/impl/DeptServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-system/src/main/java/cn/gistack/system/service/impl/DeptServiceImpl.java
@@ -103,11 +103,18 @@
}
@Override
- public List<DeptVO> lazyTree(String tenantId, Long parentId) {
+ public List<DeptVO> lazyTree(String tenantId, String parentIds) {
if (AuthUtil.isAdministrator()) {
tenantId = StringPool.EMPTY;
}
- return ForestNodeMerger.merge(baseMapper.lazyTree(tenantId, parentId));
+
+ String [] parentIdStr = parentIds.split(",");
+ List<Long> parentIdList = new ArrayList<>();
+ for (String str:parentIdStr) {
+ parentIdList.add(Long.parseLong(str));
+ }
+
+ return ForestNodeMerger.merge(baseMapper.lazyTree(tenantId, parentIdList));
}
@Override
--
Gitblit v1.9.3