From 67feb9947ec3ce5cf9391e443e11baea76ccff82 Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: Thu, 27 May 2021 21:13:48 +0800
Subject: [PATCH] 优化参数&字典缓存操作

---
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java |   16 ++++++++++++++++
 1 files changed, 16 insertions(+), 0 deletions(-)

diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java
index d320536..9594b99 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java
@@ -81,6 +81,7 @@
      * 
      * @return 角色列表
      */
+    @Override
     public List<SysRole> selectRoleAll()
     {
         return SpringUtils.getAopProxy(this).selectRoleList(new SysRole());
@@ -92,6 +93,7 @@
      * @param userId 用户ID
      * @return 选中角色ID列表
      */
+    @Override
     public List<Integer> selectRoleListByUserId(Long userId)
     {
         return roleMapper.selectRoleListByUserId(userId);
@@ -103,6 +105,7 @@
      * @param roleId 角色ID
      * @return 角色对象信息
      */
+    @Override
     public SysRole selectRoleById(Long roleId)
     {
         return roleMapper.selectRoleById(roleId);
@@ -149,6 +152,7 @@
      * 
      * @param role 角色信息
      */
+    @Override
     public void checkRoleAllowed(SysRole role)
     {
         if (StringUtils.isNotNull(role.getRoleId()) && role.isAdmin())
@@ -207,6 +211,7 @@
      * @param role 角色信息
      * @return 结果
      */
+    @Override
     public int updateRoleStatus(SysRole role)
     {
         return roleMapper.updateRole(role);
@@ -285,8 +290,13 @@
      * @return 结果
      */
     @Override
+    @Transactional
     public int deleteRoleById(Long roleId)
     {
+        // 删除角色与菜单关联
+        roleMenuMapper.deleteRoleMenuByRoleId(roleId);
+        // 删除角色与部门关联
+        roleDeptMapper.deleteRoleDeptByRoleId(roleId);
         return roleMapper.deleteRoleById(roleId);
     }
 
@@ -296,6 +306,8 @@
      * @param roleIds 需要删除的角色ID
      * @return 结果
      */
+    @Override
+    @Transactional
     public int deleteRoleByIds(Long[] roleIds)
     {
         for (Long roleId : roleIds)
@@ -307,6 +319,10 @@
                 throw new CustomException(String.format("%1$s已分配,不能删除", role.getRoleName()));
             }
         }
+        // 删除角色与菜单关联
+        roleMenuMapper.deleteRoleMenu(roleIds);
+        // 删除角色与部门关联
+        roleDeptMapper.deleteRoleDept(roleIds);
         return roleMapper.deleteRoleByIds(roleIds);
     }
 }

--
Gitblit v1.9.3