mirror of
https://gitee.com/dotnetchina/OpenAuth.Net.git
synced 2025-09-19 01:58:01 +08:00
fix #I3RHPD 完成在api中对接口权限进行鉴权
This commit is contained in:
17
OpenAuth.App/Relevance/Request/AssignRoleResources.cs
Normal file
17
OpenAuth.App/Relevance/Request/AssignRoleResources.cs
Normal file
@@ -0,0 +1,17 @@
|
||||
namespace OpenAuth.App.Request
|
||||
{
|
||||
/// <summary>
|
||||
/// 角色分配资源
|
||||
/// </summary>
|
||||
public class AssignRoleResources
|
||||
{
|
||||
/// <summary>
|
||||
/// 角色id
|
||||
/// </summary>
|
||||
public string RoleId { get; set; }
|
||||
/// <summary>
|
||||
/// 资源id列表
|
||||
/// </summary>
|
||||
public string[] ResourceIds { get; set; }
|
||||
}
|
||||
}
|
@@ -234,5 +234,28 @@ namespace OpenAuth.App
|
||||
UnitWork.Save();
|
||||
});
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 为角色分配资源,需要统一提交,会删除以前该角色的所有资源
|
||||
/// </summary>
|
||||
/// <param name="request"></param>
|
||||
public void AssignRoleResources(AssignRoleResources request)
|
||||
{
|
||||
UnitWork.ExecuteWithTransaction(() =>
|
||||
{
|
||||
//删除以前的所有资源
|
||||
UnitWork.Delete<Relevance>(u => u.FirstId == request.RoleId && u.Key == Define.ROLERESOURCE);
|
||||
//批量分配角色资源
|
||||
UnitWork.BatchAdd((from firstId in request.ResourceIds
|
||||
select new Relevance
|
||||
{
|
||||
Key = Define.ROLERESOURCE,
|
||||
FirstId = request.RoleId,
|
||||
SecondId = firstId,
|
||||
OperateTime = DateTime.Now
|
||||
}).ToArray());
|
||||
UnitWork.Save();
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user