修复角色的权限分配后,未实时生效问题
This commit is contained in:
		
							parent
							
								
									743fce7829
								
							
						
					
					
						commit
						21d07c1d71
					
				| 
						 | 
					@ -17,11 +17,17 @@ import com.ruoyi.common.constant.UserConstants;
 | 
				
			||||||
import com.ruoyi.common.core.controller.BaseController;
 | 
					import com.ruoyi.common.core.controller.BaseController;
 | 
				
			||||||
import com.ruoyi.common.core.domain.AjaxResult;
 | 
					import com.ruoyi.common.core.domain.AjaxResult;
 | 
				
			||||||
import com.ruoyi.common.core.domain.entity.SysRole;
 | 
					import com.ruoyi.common.core.domain.entity.SysRole;
 | 
				
			||||||
 | 
					import com.ruoyi.common.core.domain.model.LoginUser;
 | 
				
			||||||
import com.ruoyi.common.core.page.TableDataInfo;
 | 
					import com.ruoyi.common.core.page.TableDataInfo;
 | 
				
			||||||
import com.ruoyi.common.enums.BusinessType;
 | 
					import com.ruoyi.common.enums.BusinessType;
 | 
				
			||||||
import com.ruoyi.common.utils.SecurityUtils;
 | 
					import com.ruoyi.common.utils.SecurityUtils;
 | 
				
			||||||
 | 
					import com.ruoyi.common.utils.ServletUtils;
 | 
				
			||||||
 | 
					import com.ruoyi.common.utils.StringUtils;
 | 
				
			||||||
import com.ruoyi.common.utils.poi.ExcelUtil;
 | 
					import com.ruoyi.common.utils.poi.ExcelUtil;
 | 
				
			||||||
 | 
					import com.ruoyi.framework.web.service.SysPermissionService;
 | 
				
			||||||
 | 
					import com.ruoyi.framework.web.service.TokenService;
 | 
				
			||||||
import com.ruoyi.system.service.ISysRoleService;
 | 
					import com.ruoyi.system.service.ISysRoleService;
 | 
				
			||||||
 | 
					import com.ruoyi.system.service.ISysUserService;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * 角色信息
 | 
					 * 角色信息
 | 
				
			||||||
| 
						 | 
					@ -35,6 +41,15 @@ public class SysRoleController extends BaseController
 | 
				
			||||||
    @Autowired
 | 
					    @Autowired
 | 
				
			||||||
    private ISysRoleService roleService;
 | 
					    private ISysRoleService roleService;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Autowired
 | 
				
			||||||
 | 
					    private TokenService tokenService;
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    @Autowired
 | 
				
			||||||
 | 
					    private SysPermissionService permissionService;
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    @Autowired
 | 
				
			||||||
 | 
					    private ISysUserService userService;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @PreAuthorize("@ss.hasPermi('system:role:list')")
 | 
					    @PreAuthorize("@ss.hasPermi('system:role:list')")
 | 
				
			||||||
    @GetMapping("/list")
 | 
					    @GetMapping("/list")
 | 
				
			||||||
    public TableDataInfo list(SysRole role)
 | 
					    public TableDataInfo list(SysRole role)
 | 
				
			||||||
| 
						 | 
					@ -103,7 +118,20 @@ public class SysRoleController extends BaseController
 | 
				
			||||||
            return AjaxResult.error("修改角色'" + role.getRoleName() + "'失败,角色权限已存在");
 | 
					            return AjaxResult.error("修改角色'" + role.getRoleName() + "'失败,角色权限已存在");
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        role.setUpdateBy(SecurityUtils.getUsername());
 | 
					        role.setUpdateBy(SecurityUtils.getUsername());
 | 
				
			||||||
        return toAjax(roleService.updateRole(role));
 | 
					        
 | 
				
			||||||
 | 
					        if (roleService.updateRole(role) > 0)
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            // 更新缓存用户权限
 | 
				
			||||||
 | 
					            LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
 | 
				
			||||||
 | 
					            if (StringUtils.isNotNull(loginUser.getUser()) && !loginUser.getUser().isAdmin())
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                loginUser.setPermissions(permissionService.getMenuPermission(loginUser.getUser()));
 | 
				
			||||||
 | 
					                loginUser.setUser(userService.selectUserByUserName(loginUser.getUser().getUserName()));
 | 
				
			||||||
 | 
					                tokenService.setLoginUser(loginUser);
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            return AjaxResult.success();
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        return AjaxResult.error("修改角色'" + role.getRoleName() + "'失败,请联系管理员");
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue