mirror of
https://gitee.com/dotnetchina/OpenAuth.Net.git
synced 2026-07-28 06:07:59 +08:00
Compare commits
4 Commits
ac49f0e80f
...
aac40f9e67
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
aac40f9e67 | ||
|
|
ad18885596 | ||
|
|
6302ad4bca | ||
|
|
f30fe5e11d |
@@ -11,6 +11,7 @@ using OpenAuth.Repository.Domain;
|
||||
using SqlSugar;
|
||||
using Autofac;
|
||||
using Infrastructure.Extensions.AutofacManager;
|
||||
using MySql.Data.MySqlClient.Memcached;
|
||||
|
||||
namespace OpenAuth.App
|
||||
{
|
||||
@@ -69,7 +70,15 @@ namespace OpenAuth.App
|
||||
if (loginUser.User.Account == Define.SYSTEM_USERNAME) return SugarClient.Queryable<T>(); //超级管理员特权
|
||||
|
||||
var moduleName = typeof(T).Name;
|
||||
var rule = SugarClient.Queryable<DataPrivilegeRule>().First(u => u.SourceCode == moduleName);
|
||||
|
||||
//数据权限永远只用默认连接字符串,避免租户隔离
|
||||
ISqlSugarClient defualtClient = SugarClient;
|
||||
var currentConfigId = SugarClient.CurrentConnectionConfig.ConfigId;
|
||||
if(currentConfigId != null && currentConfigId.ToString() !=""){
|
||||
defualtClient = SugarClient.AsTenant().GetConnection("");
|
||||
}
|
||||
var rule = defualtClient.Queryable<DataPrivilegeRule>().First(u => u.SourceCode == moduleName);
|
||||
|
||||
if (rule == null) return SugarClient.Queryable<T>(); //没有设置数据规则,那么视为该资源允许被任何主体查看
|
||||
if (rule.PrivilegeRules.Contains(Define.DATAPRIVILEGE_LOGINUSER) ||
|
||||
rule.PrivilegeRules.Contains(Define.DATAPRIVILEGE_LOGINROLE)||
|
||||
|
||||
@@ -55,7 +55,7 @@ namespace OpenAuth.App
|
||||
|
||||
var propertyStr = string.Join(',', columnFields.Select(u =>u.ColumnName));
|
||||
result.ColumnFields = columnFields;
|
||||
result.Data = objs.OrderBy(u => u.DtCode)
|
||||
result.Data = objs.OrderBy(u => u.SortNo).OrderBy(u => u.DtCode)
|
||||
.Skip((request.page - 1) * request.limit)
|
||||
.Take(request.limit).Select($"{propertyStr}").ToList();
|
||||
result.Count = await objs.CountAsync();
|
||||
|
||||
@@ -189,8 +189,8 @@ namespace OpenAuth.WebApi.Controllers
|
||||
{
|
||||
return new PagedDynamicDataResp
|
||||
{
|
||||
Message = "未找到指定的节点",
|
||||
Code = 500,
|
||||
Data = new List<OrgView>(),
|
||||
Count = 0
|
||||
};
|
||||
}
|
||||
cascadeId = org.CascadeId;
|
||||
|
||||
Reference in New Issue
Block a user