权限调整

master
douhandong 6 months ago
parent 9c2a88af3f
commit 71b32d2d23

@ -47,6 +47,8 @@ public class AuthService : IAuthService, IDynamicApiController, ITransient
private readonly ILogger<AuthService> _logger; private readonly ILogger<AuthService> _logger;
private readonly SqlSugarRepository<PingTaiUser> _pingtaiUser; // 平台用户
public AuthService(SqlSugarRepository<SysUser> sysUserRep, SqlSugarRepository<SysLogVis> sysLogVisRep, SqlSugarRepository<SysTenant> sysTenantRep, public AuthService(SqlSugarRepository<SysUser> sysUserRep, SqlSugarRepository<SysLogVis> sysLogVisRep, SqlSugarRepository<SysTenant> sysTenantRep,
IHttpContextAccessor httpContextAccessor, ISysCacheService cache, IHttpContextAccessor httpContextAccessor, ISysCacheService cache,
ISysEmpService sysEmpService, ISysRoleService sysRoleService, ISysMenuService sysMenuService, ISysEmpService sysEmpService, ISysRoleService sysRoleService, ISysMenuService sysMenuService,
@ -513,10 +515,17 @@ public class AuthService : IAuthService, IDynamicApiController, ITransient
GetAuthorizationKeyInput data = JsonConvert.DeserializeObject<GetAuthorizationKeyInput>(_cache.Get(input.Key)); GetAuthorizationKeyInput data = JsonConvert.DeserializeObject<GetAuthorizationKeyInput>(_cache.Get(input.Key));
var datainfo = _sysUserRep.AsQueryable().Filter(null, true).First(u => u.DjyUserId == data.UserId); var datainfo = _sysUserRep.AsQueryable().Filter(null, true).First(u => u.DjyUserId == data.UserId);
//获取缓存的权限,将权限缓存 //获取缓存的权限,将权限缓存
await _cache.SetAsync(datainfo.UserCode, data.Authority); //如果类型为公司,将公司下所有用户关联出
if (data.AuthorityType == 2)
{
data.Authority = _pingtaiUser.Where(t => data.Authority.Contains(t.CompId)).Select(t => t.GID).ToList();
}
await _cache.SetAsync(datainfo.UserCode + "Authorization", data.Authority);
//获取对应租户 //获取对应租户
var tenant = _sysTenantRep.Single(datainfo.TenantId); var tenant = _sysTenantRep.Single(datainfo.TenantId);
//颁发token //颁发token

@ -1,4 +1,5 @@
using Furion.DependencyInjection; using Furion.DependencyInjection;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using Ubiety.Dns.Core; using Ubiety.Dns.Core;
@ -40,8 +41,14 @@ public class GetAuthorizationKeyInput
/// <summary> /// <summary>
/// 权限范围 /// 权限范围
/// </summary> /// </summary>
public string Authority { get; set; } public List<string> Authority { get; set; }
/// <summary>
/// 权限类型(1用户,2公司)
/// </summary>
public int AuthorityType { get; set; }
} }
/// <summary> /// <summary>

Loading…
Cancel
Save