Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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
                })
            }));
        }
Esempio n. 3
0
 public IActionResult Get(
     [FromQuery] UsersSearch search,
     [FromServices] IGetUsersQuery query)
 {
     return(Ok(new
     {
         Actor = _actor,
         Executor = _executor.ExecuteQuery(query, search)
     }));
 }
Esempio n. 4
0
        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));
        }
Esempio n. 6
0
        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));
            }
        }
Esempio n. 7
0
        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();