using System; using System.Collections.Generic; using System.Linq; using Infrastructure; using OpenAuth.App.Base; using OpenAuth.App.BaseApp.Base; using OpenAuth.App.Response; using OpenAuth.Repository; using OpenAuth.Repository.Domain; using SqlSugar; namespace OpenAuth.App { /// /// 领域服务 /// 超级管理员权限 /// 超级管理员使用-1,可以根据需要修改 /// public class SystemAuthStrategy : SqlSugarBaseApp, IAuthStrategy { protected SysUser _user; public List Modules { get { return Repository.ChangeRepository>().AsQueryable() .Includes(a => a.Elements) .Select(a => new ModuleView { Elements = a.Elements }, true) .ToList(); } } public List Roles { get { return Repository.ChangeRepository>().GetList(); } } public List ModuleElements { get { return Repository.ChangeRepository>().GetList(); } } public List Resources { get { return Repository.ChangeRepository>().GetList(); } } public List Orgs { get { return Repository.ChangeRepository>().GetList(); } } public List Positions { get { return Repository.ChangeRepository>().GetList(); } } public SysUser User { get { return _user; } set //禁止外部设置 { throw new Exception("超级管理员,禁止设置用户"); } } public SystemAuthStrategy(ISugarUnitOfWork unitWork, ISimpleClient repository) : base(unitWork, repository, null) { _user = new SysUser { Account = Define.SYSTEM_USERNAME, Name = "超级管理员", Id = -1 }; } } }