From d89e0182ad825d0926f4bc98e87d3b966056aac7 Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: 星期五, 12 七月 2024 22:00:28 +0800
Subject: [PATCH] 优化:流媒体

---
 ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml |   40 ++++++++++++++++++++++++++++++++++++++++
 1 files changed, 40 insertions(+), 0 deletions(-)

diff --git a/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml
index 5049c2e..94aa515 100644
--- a/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml
@@ -158,4 +158,44 @@
 		update sys_dept set del_flag = '2' where dept_id = #{deptId}
 	</delete>
 
+	<select id="getChildrenDeptIdList" resultType="java.lang.Long">
+		select distinct sd.dept_id from sys_dept sd
+		where sd.parent_id in
+		<foreach collection="deptIdList" item="deptId" separator="," open="(" close=")">
+			#{deptId}
+		</foreach>
+	</select>
+
+	<select id="selectDeptIdBySub" resultType="java.lang.Long" parameterType="java.lang.Long">
+		with recursive rsd as (
+			select sd.dept_id from sys_dept sd where sd.dept_id = #{deptId}
+			union
+			select csd.dept_id from sys_dept csd inner join rsd on rsd.dept_id = csd.parent_id
+		)
+		select dept_id from rsd
+	</select>
+
+	<select id="selectRoleDeptIdByUsersId" resultType="java.lang.Long" parameterType="java.lang.String">
+		select srd.dept_id from sys_user su
+		inner join sys_user_role sur on su.user_id = sur.user_id
+		inner join sys_role_dept srd on sur.role_id = srd.role_id
+		where su.user_id = #{usersId} order by srd.dept_id
+	</select>
+
+	<select id="getParentsDeptListByDeptId" resultMap="SysDeptResult" parameterType="java.lang.Long">
+		with recursive rsd as (
+			select * from sys_dept sd where sd.dept_id = #{deptId}
+			union
+			select psd.* from sys_dept psd inner join rsd on rsd.parent_id = psd.dept_id
+		)
+		select * from rsd
+	</select>
+
+	<select id="selectNextChildrenDeptByIdAndInList" resultMap="SysDeptResult">
+		select * from sys_dept where parent_id=#{deptId} and del_flag='0'
+		and dept_id in
+		<foreach collection="deptIdList" item="deptId" separator="," index="index" open="(" close=")">
+			#{deptId}
+		</foreach>
+	</select>
 </mapper> 
\ No newline at end of file

--
Gitblit v1.9.3