using OpenAuth.Domain; using OpenAuth.Domain.Interface; using System; using System.Collections.Generic; using System.Linq; using Infrastructure; using OpenAuth.App.ViewModel; namespace OpenAuth.App { public class RevelanceManagerApp { private readonly IRelevanceRepository _relevanceRepository; public RevelanceManagerApp(IRelevanceRepository relevanceRepository) { _relevanceRepository = relevanceRepository; } /// /// 添加关联 /// 比如给用户分配资源,那么firstId就是用户ID,secIds就是资源ID列表 /// /// 关联的类型,如"UserResource" public void Assign(string type, Guid firstId, Guid[] secIds) { _relevanceRepository.AddRelevance(type, secIds.ToLookup(u => firstId)); } /// /// 取消关联 /// /// 关联的类型,如"UserResource" /// The first identifier. /// The sec ids. public void UnAssign(string type, Guid firstId, Guid[] secIds) { _relevanceRepository.DeleteBy(type, secIds.ToLookup(u =>firstId)); } } }