namespace Yw.Application
|
{
|
/// <summary>
|
/// Role
|
/// </summary>
|
[Route("Auth/Role/Std")]
|
[ApiDescriptionSettings("Auth", Name = "角色(Std)", Order = 5990)]
|
public class Role_StdController : IDynamicApiController
|
{
|
|
/// <summary>
|
/// 通过 CorpID 获取
|
/// </summary>
|
[Route("GetByCorpID@V1.0")]
|
[HttpGet]
|
public List<RoleStdDto> GetByCorpID([FromQuery][Required] CorpIDInput input)
|
{
|
var corpId = input.CorpID;
|
|
var keyContent = "Auth_Role_Std_GetByCorpID";
|
var cacheKey = MemoryCacheKeyHelper.GetKey(MemoryCacheKey.WebApiLevel, MemoryCacheKey.Module, keyContent);
|
|
var vm_list = MemoryCacheHelper.GetSet(cacheKey, () =>
|
{
|
var allList = new Service.Role().GetByCorpID(corpId);
|
Service.Role.PublishCache(cacheKey);
|
allList = allList?.Where(x => x.UseStatus == Model.eUseStatus.Enable).ToList();
|
var vmList = allList?.Select(x => new RoleStdDto(x)).ToList();
|
return vmList;
|
}, Yw.Service.ConfigHelper.CacheLevel3);
|
return vm_list;
|
|
}
|
|
/// <summary>
|
/// 通过 UserID 获取
|
/// </summary>
|
[Route("GetByUserID@V1.0")]
|
[HttpGet]
|
public List<RoleStdDto> GetByUserID([FromQuery][Required] UserIDInput input)
|
{
|
var userId = input.UserID;
|
|
var keyContent = "Auth_Role_Std_GetByUserID";
|
var cacheKey = MemoryCacheKeyHelper.GetKey(MemoryCacheKey.WebApiLevel, MemoryCacheKey.Module, keyContent);
|
|
var vm_list = MemoryCacheHelper.GetSet(cacheKey, () =>
|
{
|
var allList = new Service.Role().GetByUserID(userId);
|
Service.Role.PublishCache(cacheKey);
|
allList = allList?.Where(x => x.UseStatus == Model.eUseStatus.Enable).ToList();
|
var vmList = allList?.Select(x => new RoleStdDto(x)).ToList();
|
return vmList;
|
}, Yw.Service.ConfigHelper.CacheLevel4);
|
return vm_list;
|
|
}
|
|
/// <summary>
|
/// 通过 ProjectID 获取
|
/// </summary>
|
[Route("GetByProjectID@V1.0")]
|
[HttpGet]
|
public List<RoleStdDto> GetByProjectID([FromQuery][Required] ProjectIDInput input)
|
{
|
var projectId = input.ProjectID;
|
|
var keyContent = "Auth_Role_Std_GetByProjectID";
|
var cacheKey = MemoryCacheKeyHelper.GetKey(MemoryCacheKey.WebApiLevel, MemoryCacheKey.Module, keyContent);
|
|
var vm_list = MemoryCacheHelper.GetSet(cacheKey, () =>
|
{
|
var allList = new Service.Role().GetByProjectID(projectId);
|
Service.Role.PublishCache(cacheKey);
|
allList = allList?.Where(x => x.UseStatus == Model.eUseStatus.Enable).ToList();
|
var vmList = allList?.Select(x => new RoleStdDto(x)).ToList();
|
return vmList;
|
}, Yw.Service.ConfigHelper.CacheLevel4);
|
return vm_list;
|
|
}
|
|
}
|
}
|