/// <summary> /// 使用者本身的權限 /// </summary> public UserActDomain GetSelfAct(int userId) { UserInfo data = _dc.UserInfo.FirstOrDefault(x => x.UserId == userId); Checker.Has(data, "帳號不存在!"); IList <string> roleAct = _dc.UserInfo .Where(x => x.UserId == userId) .SelectMany(x => x.UserRole.Select(y => y.RoleInfo.AllowActList)) .AsEnumerable() .SelectMany(x => OrionUtils.ToIdsList <string>(x)) .Distinct() .ToList(); IList <string> allowActList = OrionUtils.ToIdsList <string>(data.AllowActList); IList <string> denyActList = OrionUtils.ToIdsList <string>(data.DenyActList); var domain = new UserActDomain { UserId = data.UserId, CreateBy = data.ModifyBy, CreateDate = data.CreateDate, ModifyBy = data.ModifyBy, ModifyDate = data.ModifyDate, RoleActList = roleAct, AllowActList = allowActList, DenyActList = denyActList, }; return(domain); }
private RoleDomain toDomain(RoleInfo data) { return(new RoleDomain { RoleId = data.RoleId, RoleName = data.RoleName, AllowActList = OrionUtils.ToIdsList <string>(data.AllowActList), RemarkText = data.RemarkText, Status = data.Status.ToEnum <UseStatus>(), UserIds = data.UserRole.Select(x => x.UserId).ToList(), CreateBy = data.CreateBy, CreateDate = data.CreateDate, ModifyBy = data.ModifyBy, ModifyDate = data.ModifyDate, }); }
public void ToIdsList_IntTest(string value, int length) { var list = OrionUtils.ToIdsList <int>(value); Assert.Equal(list.Count, length); }