fix 修复 菜单与部门 未做角色状态判断

This commit is contained in:
疯狂的狮子Li
2025-08-27 17:54:05 +08:00
parent 237e78e80c
commit 1feb2a3861
2 changed files with 15 additions and 5 deletions

View File

@@ -30,7 +30,9 @@ public interface SysDeptMapper extends BaseMapperPlus<SysDept, SysDeptVo> {
*/ */
default String buildDeptByRoleSql(Long roleId) { default String buildDeptByRoleSql(Long roleId) {
return """ return """
select dept_id from sys_role_dept where role_id = %d select srd.dept_id from sys_role_dept srd
left join sys_role sr on sr.role_id = srd.role_id
where srd.role_id = %d and sr.status = 0
""".formatted(roleId); """.formatted(roleId);
} }
@@ -47,7 +49,9 @@ public interface SysDeptMapper extends BaseMapperPlus<SysDept, SysDeptVo> {
default String buildParentDeptByRoleSql(Long roleId) { default String buildParentDeptByRoleSql(Long roleId) {
return """ return """
select parent_id from sys_dept where dept_id in ( select parent_id from sys_dept where dept_id in (
select dept_id from sys_role_dept where role_id = %d select srd.dept_id from sys_role_dept srd
left join sys_role sr on sr.role_id = srd.role_id
where srd.role_id = %d and sr.status = 0
) )
""".formatted(roleId); """.formatted(roleId);
} }

View File

@@ -32,7 +32,9 @@ public interface SysMenuMapper extends BaseMapperPlus<SysMenu, SysMenuVo> {
default String buildMenuByUserSql(Long userId) { default String buildMenuByUserSql(Long userId) {
return """ return """
select menu_id from sys_role_menu where role_id in ( select menu_id from sys_role_menu where role_id in (
select role_id from sys_user_role where user_id = %d select sur.role_id from sys_user_role sur
left join sys_role sr on sr.role_id = sur.role_id
where sur.user_id = %d and sr.status = 0
) )
""".formatted(userId); """.formatted(userId);
} }
@@ -50,7 +52,9 @@ public interface SysMenuMapper extends BaseMapperPlus<SysMenu, SysMenuVo> {
*/ */
default String buildMenuByRoleSql(Long roleId) { default String buildMenuByRoleSql(Long roleId) {
return """ return """
select menu_id from sys_role_menu where role_id = %d select srm.menu_id from sys_role_menu srm
left join sys_role sr on sr.role_id = srm.role_id
where srm.role_id = %d and sr.status = 0
""".formatted(roleId); """.formatted(roleId);
} }
@@ -68,7 +72,9 @@ public interface SysMenuMapper extends BaseMapperPlus<SysMenu, SysMenuVo> {
default String buildParentMenuByRoleSql(Long roleId) { default String buildParentMenuByRoleSql(Long roleId) {
return """ return """
select parent_id from sys_menu where menu_id in ( select parent_id from sys_menu where menu_id in (
select menu_id from sys_role_menu where role_id = %d select srm.menu_id from sys_role_menu srm
left join sys_role sr on sr.role_id = srm.role_id
where srm.role_id = %d and sr.status = 0
) )
""".formatted(roleId); """.formatted(roleId);
} }