Jelajahi Sumber

😁修复更新用户时角色判断

zuohuaijun 2 tahun lalu
induk
melakukan
2e1391f8b0
1 mengubah file dengan 3 tambahan dan 3 penghapusan
  1. 3 3
      Admin.NET/Admin.NET.Core/Service/User/SysUserService.cs

+ 3 - 3
Admin.NET/Admin.NET.Core/Service/User/SysUserService.cs

@@ -122,10 +122,10 @@ public class SysUserService : IDynamicApiController, ITransient
         // 删除用户机构缓存
         SqlSugarFilter.DeleteUserOrgCache(input.Id, _sysUserRep.Context.CurrentConnectionConfig.ConfigId.ToString());
 
-        // 若账号的角色和组织架构发生变化,则强制账号下线以刷新权限
+        // 若账号的角色和组织架构发生变化,则强制下线账号进行权限更新
         var user = await _sysUserRep.AsQueryable().ClearFilter().FirstAsync(u => u.Id == input.Id);
-        var roleIds = await GetOwnRoleList(input.Id); // 获取权限集合
-        if (input.OrgId != user.OrgId || input.RoleIdList != roleIds)
+        var roleIds = await GetOwnRoleList(input.Id);
+        if (input.OrgId != user.OrgId || !input.RoleIdList.OrderBy(u => u).SequenceEqual(roleIds.OrderBy(u => u)))
             await _sysOnlineUserService.ForceOffline(input.Id);
     }