Esempio n. 1
0
        public UserSearchResults Search(UserSearchSettings searchsettings)
        {
            UserSearchResults results = new UserSearchResults();

            using (var context = new IdeaPoolEntities())
            {
                var query = context.Users.AsQueryable();
                if (!string.IsNullOrEmpty(searchsettings.SearchTerm))
                {
                    query = query.Where(user => user.FirstName.Contains(searchsettings.SearchTerm) ||
                                        user.LastName.Contains(searchsettings.SearchTerm));
                }
                results.TotalCount = query.Count();

                results.Results = query
                                  .OrderBy(user => user.FirstName)
                                  .Skip((searchsettings.CurrentPage - 1) * searchsettings.PageLength)
                                  .Take(searchsettings.PageLength)
                                  .Select(user => new UserBase
                {
                    Id                  = user.Id,
                    FirstName           = user.FirstName,
                    LastName            = user.LastName,
                    Company             = user.Company,
                    JoinedDate          = user.CreateDate,
                    TotalIdeasSubmitted = user.Ideas.Count
                })
                                  .ToList();
            }
            return(results);
        }
Esempio n. 2
0
        public JsonResult Search(UserSearchSettings searchSetting)
        {
            UserSearchResults users   = ProcessFactory.GetUserProcess().Search(searchSetting);
            SearchResults     results = new SearchResults(users.TotalCount, searchSetting.PageLength)
            {
                Rows = users.Results.Select(user => new
                {
                    user.Id,
                    user.FullName,
                    JoinedDate = user.JoinedDate.ToShortDateString(),
                    user.Company,
                    user.TotalIdeasSubmitted
                }).ToList <object>(),
                CurrentPage = searchSetting.CurrentPage
            };

            return(Json(results));
        }
Esempio n. 3
0
        public IPagedList <UserEntity> SearchUsers(UserSearchSettings userSearchSettings)
        {
            using (IUnitOfWork uow = _UnitFactory.GetUnit(this))
            {
                uow.BeginTransaction();
                List <UserEntity> entity;
                if (string.IsNullOrEmpty(userSearchSettings.Username))
                {
                    entity = uow.Query <UserEntity>().OrderBy(x => x.Username).ToList();
                }
                else
                {
                    entity = uow.Query <UserEntity>().Where(x => x.Username.Contains(userSearchSettings.Username)).OrderBy(x => x.Username).ToList();
                }

                return(new
                       StaticPagedList <UserEntity>(entity, userSearchSettings.PageNumber, userSearchSettings.PageSize, 1000));
            }
        }
Esempio n. 4
0
 public UserSearchResults Search(UserSearchSettings searchsettings)
 {
     return(userData.Search(searchsettings));
 }