diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMenuMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMenuMapper.java index 99de1dec..23391557 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMenuMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMenuMapper.java @@ -26,6 +26,14 @@ public interface SysRoleMenuMapper */ public int deleteRoleMenuByRoleId(Long roleId); + /** + * 批量删除角色菜单关联信息 + * + * @param ids 需要删除的数据ID + * @return 结果 + */ + public int deleteRoleMenu(Long[] ids); + /** * 批量新增角色菜单信息 * diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java index 8bfc5a41..cecc6a2c 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java @@ -290,8 +290,13 @@ public class SysRoleServiceImpl implements ISysRoleService * @return 结果 */ @Override + @Transactional public int deleteRoleById(Long roleId) { + // 删除角色与菜单关联 + roleMenuMapper.deleteRoleMenuByRoleId(roleId); + // 删除角色与部门关联 + roleDeptMapper.deleteRoleDeptByRoleId(roleId); return roleMapper.deleteRoleById(roleId); } @@ -302,6 +307,7 @@ public class SysRoleServiceImpl implements ISysRoleService * @return 结果 */ @Override + @Transactional public int deleteRoleByIds(Long[] roleIds) { for (Long roleId : roleIds) @@ -313,6 +319,10 @@ public class SysRoleServiceImpl implements ISysRoleService throw new CustomException(String.format("%1$s已分配,不能删除", role.getRoleName())); } } + // 删除角色与菜单关联 + roleMenuMapper.deleteRoleMenu(roleIds); + // 删除角色与部门关联 + roleDeptMapper.deleteRoleDept(roleIds); return roleMapper.deleteRoleByIds(roleIds); } } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java index 9c77dd8d..065ae481 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java @@ -363,6 +363,7 @@ public class SysUserServiceImpl implements ISysUserService * @return 结果 */ @Override + @Transactional public int deleteUserById(Long userId) { // 删除用户与角色关联 @@ -379,12 +380,17 @@ public class SysUserServiceImpl implements ISysUserService * @return 结果 */ @Override + @Transactional public int deleteUserByIds(Long[] userIds) { for (Long userId : userIds) { checkUserAllowed(new SysUser(userId)); } + // 删除用户与角色关联 + userRoleMapper.deleteUserRole(userIds); + // 删除用户与岗位关联 + userPostMapper.deleteUserPost(userIds); return userMapper.deleteUserByIds(userIds); } diff --git a/ruoyi-system/src/main/resources/mapper/system/SysRoleMenuMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysRoleMenuMapper.xml index b81c34db..e75bb174 100644 --- a/ruoyi-system/src/main/resources/mapper/system/SysRoleMenuMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/SysRoleMenuMapper.xml @@ -17,6 +17,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" delete from sys_role_menu where role_id=#{roleId} + + delete from sys_role_menu where role_id in + + #{roleId} + + + insert into sys_role_menu(role_id, menu_id) values diff --git a/ruoyi-ui/src/assets/styles/ruoyi.scss b/ruoyi-ui/src/assets/styles/ruoyi.scss index 96c95c1e..67c2900f 100644 --- a/ruoyi-ui/src/assets/styles/ruoyi.scss +++ b/ruoyi-ui/src/assets/styles/ruoyi.scss @@ -238,7 +238,7 @@ position: relative; float: right; } -/* XY 代码生成预览左右滑动 */ -.el-tabs__content{ - overflow-x: scroll; +/* el-tabs提供滚动机制 */ +.el-tabs__content { + overflow-x: scroll; } \ No newline at end of file