|
@@ -22,6 +22,7 @@ public class DataPermissionManager : IDataPermissionManager, IScopeDependency
|
|
public DataPermissionScheme GetQueryFilter<TEntity>(ISessionContext sessionContext) where TEntity : class, IEntity<string>, IDataPermission, new()
|
|
public DataPermissionScheme GetQueryFilter<TEntity>(ISessionContext sessionContext) where TEntity : class, IEntity<string>, IDataPermission, new()
|
|
{
|
|
{
|
|
EAuthorityType? queryFilter = GetCurrentQueryFilter(sessionContext.Roles, typeof(TEntity).Name);
|
|
EAuthorityType? queryFilter = GetCurrentQueryFilter(sessionContext.Roles, typeof(TEntity).Name);
|
|
|
|
+
|
|
if (queryFilter == null)
|
|
if (queryFilter == null)
|
|
{
|
|
{
|
|
|
|
|
|
@@ -54,28 +55,28 @@ public class DataPermissionManager : IDataPermissionManager, IScopeDependency
|
|
public (string orgId,string departmentCode, string creatorId, string? areaId) GetDataPermissionOptions()
|
|
public (string orgId,string departmentCode, string creatorId, string? areaId) GetDataPermissionOptions()
|
|
{
|
|
{
|
|
using var scope = _serviceScopeFactory.CreateScope();
|
|
using var scope = _serviceScopeFactory.CreateScope();
|
|
- var userRepository = scope.ServiceProvider.GetService<IUserRepository>();
|
|
|
|
- var user = userRepository!.GetAsync(_sessionContext.RequiredUserId).Result;
|
|
|
|
|
|
+ var userRepository = scope.ServiceProvider.GetRequiredService<IUserRepository>();
|
|
|
|
+ var user = userRepository.GetAsync(_sessionContext.RequiredUserId).GetAwaiter().GetResult();
|
|
if (!string.IsNullOrEmpty(user!.OrgId))
|
|
if (!string.IsNullOrEmpty(user!.OrgId))
|
|
{
|
|
{
|
|
- var orgRepository = scope.ServiceProvider.GetService<ISystemOrganizeRepository>();
|
|
|
|
- var org = orgRepository!.GetAsync(user!.OrgId).Result;
|
|
|
|
|
|
+ var orgRepository = scope.ServiceProvider.GetRequiredService<ISystemOrganizeRepository>();
|
|
|
|
+ var org = orgRepository!.GetAsync(user!.OrgId).GetAwaiter().GetResult();
|
|
|
|
|
|
return (org!.Id, org.OrgCode, _sessionContext.RequiredUserId, org.OrgCode);
|
|
return (org!.Id, org.OrgCode, _sessionContext.RequiredUserId, org.OrgCode);
|
|
}
|
|
}
|
|
return ("", "", _sessionContext.RequiredUserId, "");
|
|
return ("", "", _sessionContext.RequiredUserId, "");
|
|
}
|
|
}
|
|
|
|
|
|
- private EAuthorityType? GetCurrentQueryFilter(string[] roles, string entityName)
|
|
|
|
|
|
+ private EAuthorityType GetCurrentQueryFilter(string[] roles, string entityName)
|
|
{
|
|
{
|
|
using var scope = _serviceScopeFactory.CreateScope();
|
|
using var scope = _serviceScopeFactory.CreateScope();
|
|
- var systemDataTableRepository = scope.ServiceProvider.GetService<ISystemDataTableRepository>();
|
|
|
|
- var systemDataAuthorityRepository = scope.ServiceProvider.GetService<ISystemDataAuthorityRepository>();
|
|
|
|
|
|
+ var systemDataTableRepository = scope.ServiceProvider.GetRequiredService<ISystemDataTableRepository>();
|
|
|
|
+ var systemDataAuthorityRepository = scope.ServiceProvider.GetRequiredService<ISystemDataAuthorityRepository>();
|
|
|
|
|
|
////查询对应表配置
|
|
////查询对应表配置
|
|
- var tableModel = systemDataTableRepository!.GetAsync(x => x.EntityName == entityName).Result;
|
|
|
|
|
|
+ var tableModel = systemDataTableRepository.GetAsync(x => x.EntityName == entityName).GetAwaiter().GetResult();
|
|
////查询表对应最高数据权限
|
|
////查询表对应最高数据权限
|
|
- var auth = systemDataAuthorityRepository!.GetMyTopDataAuth(roles, tableModel!.Id);
|
|
|
|
|
|
+ var auth = systemDataAuthorityRepository.GetMyTopDataAuth(roles, tableModel!.Id);
|
|
return auth;
|
|
return auth;
|
|
}
|
|
}
|
|
}
|
|
}
|