public PagedResponse <UsersDto> Execute(UsersSearch search) { var query = _context.Users.AsQueryable(); if (!string.IsNullOrEmpty(search.FirstName) || !string.IsNullOrWhiteSpace(search.FirstName)) { query = query.Where(x => x.FirstName.ToLower().Contains(search.FirstName.ToLower())); } if (!string.IsNullOrEmpty(search.LastName) || !string.IsNullOrWhiteSpace(search.LastName)) { query = query.Where(x => x.LastName.ToLower().Contains(search.LastName.ToLower())); } query = query.Where(x => x.IsActive == true); var skipCount = search.PerPage * (search.Page - 1); var response = new PagedResponse <UsersDto> { CurrentPage = search.Page, ItemsPerPage = search.PerPage, TotalCount = query.Count(), Items = query.Skip(skipCount).Take(search.PerPage).Select(x => new UsersDto { Id = x.Id, FirstName = x.FirstName, LastName = x.LastName, Email = x.Email }).ToList() }; return(response); }
public ActionResult GetList(UsersSearch search) { if (!Services.Authorizer.Authorize(Permissions.ManageUsers, T("无权限查看用户列表"))) { return(new HttpUnauthorizedResult()); } var users = Services.ContentManager.Query <UserPart, UserPartRecord>(); if (!string.IsNullOrWhiteSpace(search.UserNameOrEmali)) { users = users.Where(u => u.UserName.Contains(search.UserNameOrEmali) || u.Email.Contains(search.UserNameOrEmali)); } search.total = users.Count(); int page = search.page ?? 1; int rows = search.rows ?? 10; string order = string.IsNullOrWhiteSpace(search.order) ? "desc" : search.order; var list = order == "desc" ? users.OrderByDescending(d => d.Id).Slice((page - 1) * rows, rows).ToList() : users.OrderBy(d => d.Id).Slice((page - 1) * rows, rows).ToList(); return(Json(new { search.total, rows = list.Select(d => new { d.UserName, d.Email, d.CreatedUtc, d.LastLoginUtc, d.RegistrationStatus, d.Id }) })); }
public IActionResult Get( [FromQuery] UsersSearch search, [FromServices] IGetUsersQuery query) { return(Ok(new { Actor = _actor, Executor = _executor.ExecuteQuery(query, search) })); }
public IActionResult SearchUsers(string name) { List <User> users = new List <User>(); if (!string.IsNullOrEmpty(name)) { users = _context.Users.Where(p => p.Email.Contains(name)).ToList(); } UsersSearch viewModel = new UsersSearch { Users = users.ToList(), Name = name }; return(View(viewModel)); }
public async Task <IEnumerable <TUserDto> > Search(UsersSearch searchModel) { var usersQuery = dbContext.Users.AsQueryable(); if (searchModel.RoleId != null) { var rolesSubQuery = dbContext.UserRoles .Where(x => x.RoleId == searchModel.RoleId) .Select(x => x.UserId); usersQuery = usersQuery.Where(x => rolesSubQuery.Contains(x.Id)); } var users = await usersQuery.ToListAsync(); return(mapper.Map <IEnumerable <TUserDto> >(users)); }
public void GetSelectUsersFromDatabase(int index) { UsersSearch.Clear(); var tempUsers = index == 7 ? _userBeheerRepository.GetAllUsers() : _userBeheerRepository.GetAllUsersWithFunction((Role)index); foreach (var tempUser in tempUsers) { var ids = _userBeheerRepository.GetTramIdByDriverId(tempUser.Id); int?tramId = null; if (ids.Count > 0) { tramId = ids[0]; } UsersSearch.Add(new BeheerUser(tempUser.Id, tempUser.Name, tempUser.Username, tempUser.Email, tempUser.Password, tempUser.Role, tempUser.ManagerUsername, tramId)); } }
public UsersSearch GetUsersWithRoles(string searchTerm, int pageNo, int pageSize) { using (var context = new AssessmentToolContext()) { var search = new UsersSearch(); if (string.IsNullOrEmpty(searchTerm)) { search.Users = context.Users .Include(u => u.Roles) .OrderByDescending(x => x.RegisteredOn) .Skip((pageNo - 1) * pageSize) .Take(pageSize) .Select(x => new UserWithRoleEntity() { User = x, Roles = x.Roles.Select(r => context.Roles.Where(role => role.Id == r.RoleId).FirstOrDefault()) .ToList() }).ToList(); search.TotalCount = context.Users.Count(); } else { search.Users = context.Users .Where(u => u.UserName.ToLower().Contains(searchTerm.ToLower())) .Include(u => u.Roles) .OrderByDescending(x => x.RegisteredOn) .Skip((pageNo - 1) * pageSize) .Take(pageSize) .Select(x => new UserWithRoleEntity() { User = x, Roles = x.Roles.Select(r => context.Roles.Where(role => role.Id == r.RoleId).FirstOrDefault()) .ToList() }).ToList(); search.TotalCount = context.Users .Where(u => u.UserName.ToLower().Contains(searchTerm.ToLower())).Count(); } return(search); } }
private void SearchTextBox_TextChanged(object sender, TextChangedEventArgs e) { if (_userTypingTimer != null) { _userTypingTimer.Dispose(); _userTypingTimer = null; } if (!string.IsNullOrEmpty(SearchTextBox.Text)) { _workQ = SearchTextBox.Text; _userTypingTimer = new Timer(state => { Dispatcher.BeginInvoke(() => { // Start search after 1 second of silence. var op = new UsersSearch(_workQ, results => { Dispatcher.BeginInvoke(() => { try { _results.Clear(); _photosToLoad.Clear(); foreach (var result in results) { try { var model = new FriendViewModel(result.Uid, result.FullName, string.Empty, result.FirstName, result.LastName, result.IsOnline, -1, result.PhotoBig, App.Current.EntityService.DefaultAvatar); _results.Add(model); // Try to load image from cache. string filename = CommonHelper.DoDigest(result.PhotoBig); BitmapImage image = _imageCache.GetItem(filename); if (image != null) { model.Photo = image; } else // ...if it doesn't exists - load from web. { _photosToLoad.Add(model, new AvatarLoadItem(_photosToLoad.Count, result.PhotoBig, filename)); } } catch (Exception ex) { Debug.WriteLine("UsersSearch model creating failed: " + ex.Message); // If some fields is empty =). } } if (results.Count > 0) { SearchDescription.Visibility = System.Windows.Visibility.Collapsed; } else { SearchDescription.Visibility = System.Windows.Visibility.Visible; } _LoadPhotos(); } catch (Exception ex) { Debug.WriteLine("UsersSearch failed: " + ex.Message); // If some inter-process error } }); }); op.Execute(); }); }, null, 1000, -1); } else { SearchDescription.Visibility = System.Windows.Visibility.Visible; } }
public virtual async Task <IdentityUtilsResult <TUserDto> > Search([FromBody] UsersSearch search) => IdentityUtilsResult <TUserDto> .SuccessResult(await userManager.Search(search));
public Task <IdentityUtilsResult <TUserDto> > Search(UsersSearch search) => RestClient.Post <IdentityUtilsResult <TUserDto> >($"{BasePath}/search", search).ParseRestResultTask();