/// <summary> /// 获取模块元素列表 /// </summary> /// <param name="roleID">角色ID</param> /// <param name="moduleID">模块ID</param> /// <returns>角色模块元素列表</returns> public CheckReturn LoadModuleElements(int roleID, int moduleID) { if (!CurrentRepository.IsExists(u => u.ID == roleID)) { return(new CheckReturn { Message = "角色不存在", Flag = false }); } var modules = ModuleElementRepository.LoadModuleElement(moduleID) .Select(r => new { ID = r.ID, Name = r.Name }).ToDictionary(key => key.ID, value => value.Name); int[] ids = RoleModuleElementRepository.LoadEntities(r => r.RoleID == roleID && r.ModuleID == moduleID) .Select(r => r.ModuleElementID) .ToArray(); return(new CheckReturn { Flag = true, Message = "获取成功", dics = modules, IDs = ids }); }
/// <summary> /// 设置用户模块 /// </summary> /// <param name="roleID">用户ID</param> /// <param name="moduleElementIDs">选中模块Id集合</param> /// <returns>结果描述</returns> public ReturnDescription SetRoleModuleElements(int roleID, int[] moduleElementIDs, int moduleID) { if (!CurrentRepository.IsExists(u => u.ID == roleID)) { return(new ReturnDescription { Flag = false, Message = "角色不存在" }); } RoleModuleElementRepository.RemoveAll(roleID, moduleID); foreach (int elementID in moduleElementIDs) { RoleModuleElementRepository.AddEntity(new RoleModuleElement { RoleID = roleID, ModuleID = moduleID, ModuleElementID = elementID }); } if (CurrentContext.SaveChanges() > 0) { return(new ReturnDescription { Flag = true, Message = "设置成功" }); } else { return(new ReturnDescription { Flag = false, Message = "设置失败" }); } }