From 0a7fd633d9176ba769a93efa2f3a50adabc49a12 Mon Sep 17 00:00:00 2001
From: sxu <602087911@qq.com>
Date: Fri, 1 Nov 2024 15:29:13 +0800
Subject: [PATCH] =?UTF-8?q?=E7=BB=84=E7=BB=87=E4=BA=BA=E5=91=98=E6=A0=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../system/controller/SysUserController.java | 6 +--
.../resources/mapper/system/SysDeptMapper.xml | 41 +++++++++++--------
2 files changed, 28 insertions(+), 19 deletions(-)
diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/controller/SysUserController.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/controller/SysUserController.java
index bc58460..a945bd4 100644
--- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/controller/SysUserController.java
+++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/controller/SysUserController.java
@@ -467,10 +467,10 @@ public class SysUserController extends BaseController {
* 根据角色列表获取部门人员树列表
*/
@RequiresPermissionsOrInnerAuth(innerAuth = @InnerAuth, requiresPermissions = @RequiresPermissions("system:user:list"))
- @GetMapping("/deptUserTree/roleIds/{roleIds}")
- public AjaxResult deptUserTreeInRoleIds(@PathVariable("roleIds") Long[] roleIds) {
+ @PostMapping("/deptUserTreeInRoleIds")
+ public AjaxResult deptUserTreeInRoleIds(@RequestBody SysUser sysUser) {
try {
- return success(deptService.selectDeptUserTree(roleIds));
+ return success(deptService.selectDeptUserTree(sysUser.getRoleIds()));
} catch (Exception e) {
logger.error(e.toString(), e);
}
diff --git a/bonus-modules/bonus-system/src/main/resources/mapper/system/SysDeptMapper.xml b/bonus-modules/bonus-system/src/main/resources/mapper/system/SysDeptMapper.xml
index 4efdf40..4c43786 100644
--- a/bonus-modules/bonus-system/src/main/resources/mapper/system/SysDeptMapper.xml
+++ b/bonus-modules/bonus-system/src/main/resources/mapper/system/SysDeptMapper.xml
@@ -51,27 +51,36 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
SELECT
d.dept_id AS deptId,
d.parent_id AS parentId,
- d.dept_name AS deptName
- FROM sys_dept d
- WHERE d.del_flag = '0'
- AND d.STATUS = '0'
+ d.dept_name AS deptName,
+ LENGTH( d.ancestors ) - LENGTH(
+ REPLACE ( d.ancestors, ',', '' )) AS LEVEL
+ FROM
+ sys_dept d
+ WHERE
+ d.del_flag = '0'
+ AND d.STATUS = '0'
UNION
SELECT
su.user_id AS deptId,
- su.dept_id AS parentId,
- su.nick_name AS deptName
- FROM sys_user su
- LEFT JOIN sys_user_role sr ON su.user_id = sr.user_id
- LEFT JOIN sys_dept sd ON su.dept_id = sd.dept_id
- WHERE su.del_flag = '0'
-
- and sr.role_id in
-
- #{item}
-
-
+ sd.dept_id AS parentId,
+ su.nick_name AS deptName,
+ 99 AS LEVEL
+ FROM
+ sys_user su
+ LEFT JOIN sys_user_role sr ON su.user_id = sr.user_id
+ LEFT JOIN sys_dept sd ON su.dept_id = sd.dept_id
+ AND sd.del_flag = '0'
+ AND sd.STATUS = '0'
+ WHERE
+ su.del_flag = '0'
+
+ and sr.role_id in
+
+ #{item}
+
+