From 5a89bbe0fb703076ac8d316f3e2f644ff3aa9f1f Mon Sep 17 00:00:00 2001 From: 龚焕茏 <2842157468@qq.com> Date: 星期三, 10 七月 2024 09:42:38 +0800 Subject: [PATCH] fix:新增用户-部门下拉递归查询 --- src/main/resources/mapper/UserMapper.xml | 11 ++++++++++- 1 files changed, 10 insertions(+), 1 deletions(-) diff --git a/src/main/resources/mapper/UserMapper.xml b/src/main/resources/mapper/UserMapper.xml index 4d49779..f8c619d 100644 --- a/src/main/resources/mapper/UserMapper.xml +++ b/src/main/resources/mapper/UserMapper.xml @@ -543,7 +543,16 @@ <select id="getDeptAdmins" resultType="com.mindskip.xzs.domain.Department" parameterType="java.lang.Integer"> <if test="id != null"> - select a.id, a.name, a.parent_id from t_department a inner join t_user_department b on a.id = b.department_id where a.deleted = 0 and b.dept_admin = 1 and b.user_id = #{id} order by a.id + WITH RECURSIVE temp_table AS ( + select a.id, a.name, a.parent_id from t_department a inner join t_user_department b on a.id = b.department_id where a.deleted = 0 and b.dept_admin = 1 and b.user_id = #{id} + UNION ALL + SELECT + so.id, so.name, so.parent_id FROM t_department so INNER JOIN temp_table tb ON so.parent_id = tb.id + ) + SELECT + id, name, parent_id + FROM + temp_table </if> <if test="id == null"> select a.id, a.name, a.parent_id from t_department a where a.deleted = 0 order by a.id -- Gitblit v1.8.0