src/main/resources/mapper/system/SysDeptMapper.xml
@@ -156,4 +156,23 @@ update sys_dept set del_flag = '2' where dept_id = #{deptId} </delete> <select id="maxLevelDeptId"> WITH RECURSIVE DepartmentHierarchy AS ( SELECT dept_id, parent_id FROM sys_dept WHERE dept_id = #{deptId} UNION ALL -- 递归情况:加入当前部门的父级部门 SELECT d.dept_id, d.parent_id FROM sys_dept d INNER JOIN DepartmentHierarchy dh ON d.dept_id = dh.parent_id ) -- 查询最顶级的父级部门ID SELECT dept_id as top_level_department_id FROM DepartmentHierarchy WHERE parent_id = 100; </select> </mapper>