public GetsResult<IdWithName> Get(PageParams param)
 {
     var result = GetDefault<GetsResult<IdWithName>>();
     var query = DbEntities.UserFunctionalities.OrderByDescending(x => x.Id).AsQueryable();
     if (!string.IsNullOrWhiteSpace(param.Name))
         query = query.Where(x => x.Name.Contains(param.Name));
     result.Total = query.Count();
     result.Data = query.Skip((param.Current - 1) * param.Size).Take(param.Size).Select(x => new IdWithName()
     {
         Id = x.Id,
         Name = x.Name
     }).ToList();
     return result;
 }
Пример #2
0
        public GetsResult<UserDetails> Gets(PageParams param)
        {
            var result = GetDefault<GetsResult<UserDetails>>();
            var query = DbEntities.Users.OrderByDescending(x => x.Id).AsQueryable();
            if (!string.IsNullOrWhiteSpace(param.Name))
            {
                switch (param.Type)
                {
                    case 0:
                        query = query.Where(x => x.Name.Contains(param.Name) || x.Email.Contains(param.Name));
                        break;
                    case 1:
                        query = query.Where(x => x.Name.Contains(param.Name));
                        break;
                    case 2:
                        query = query.Where(x => x.Email.Contains(param.Name));
                        break;
                }

            }
            result.Total = query.Count();
            result.Data = query.Skip((param.Current - 1) * param.Size).Take(param.Size).Select(x => new UserDetails()
            {
                CreateTime = x.CreateTime,
                Email = x.Email,
                Id = x.Id,
                State = x.State,
                Name = x.Name,
                RealName = x.RealName,
                Password = "******",
                Roles = x.UserToUserRoles.Take(4).Select(z => new IdWithName()
                {
                    Id = z.UserRole.ID,
                    Name = z.UserRole.RoleName
                }).ToList(),
                TotalRole = x.UserToUserRoles.Count()
            }).ToList();
            return result;
        }