Пример #1
0
        public ActionResult Index(SearchUsersViewModel model)
        {
            var users = _userService.SearchUser(model);

            model.Items = new StaticPagedList <ViewUserViewModel>(users.Items
                                                                  , model.PageIndex + 1, model.PageSize, users.TotalCount);
            return(View(model));
        }
Пример #2
0
        public async Task <IActionResult> roleManage(SearchUsersViewModel model)
        {
            model.IsUserId = true;
            //var model = await _userManager.GetUserAsync();
            var pagedUsersList = await _userManager.GetPagedUsersListAsync(
                pageNumber : 0,
                model : model);



            return(PartialView(pagedUsersList));
        }
Пример #3
0
        public async Task <IActionResult> SearchUsers(SearchUsersViewModel model)
        {
            var pagedUsersList = await _userManager.GetPagedUsersListAsync(
                pageNumber : 0,
                model : model);

            pagedUsersList.Paging.CurrentPage   = 1;
            pagedUsersList.Paging.ItemsPerPage  = model.MaxNumberOfRows;
            pagedUsersList.Paging.ShowFirstLast = true;

            model.PagedUsersList = pagedUsersList;
            return(PartialView("_SearchUsers", model));
        }
        public async Task <ApiResult <SearchUsersViewModel> > SearchUsers(SearchUsersViewModel model)
        {
            var pagedUsersList = await _userManager.GetPagedUsersListAsync(
                model,
                0);

            pagedUsersList.Paging.CurrentPage   = 1;
            pagedUsersList.Paging.ItemsPerPage  = model.MaxNumberOfRows;
            pagedUsersList.Paging.ShowFirstLast = true;

            model.PagedUsersList = pagedUsersList;

            return(model);
        }
Пример #5
0
        public ActionResult SearchUsers([FromBody] SearchUsersViewModel model)
        {
            if (ModelState.IsValid)
            {
                if (model.SearchType == "FIO")
                {
                    return(Ok(Json(_userBll.SearchByFio(model.Fragment))));
                }
                else
                {
                    return(Ok(Json(_userBll.SearchByEmail(model.Fragment))));
                }
            }

            return(BadRequest());
        }
Пример #6
0
 public IActionResult SearchUser(string email)
 {
     if (email == null)
     {
         var foundUserEmail = new SearchUsersViewModel
         {
             Users = this.searchService.GetAllUsers <SearchUserViewModel>(),
         };
         return(this.View(foundUserEmail));
     }
     else
     {
         var foundUserEmail = new SearchUsersViewModel
         {
             Users = this.searchService.SearchUserEmail <SearchUserViewModel>(email),
         };
         return(this.View(foundUserEmail));
     }
 }
Пример #7
0
        public async Task SearchUsers_WithNoFilteration_GetAllUsers()
        {
            var user = new UserViewModel()
            {
                ConfirmPassword = "******",
                Email           = "*****@*****.**",
                FullName        = "searchUser",
                Phone           = "0123456",
                Password        = "******",
                Roles           = _roleManager.Roles.Take(2).Select(c => c.Id).ToList()
            };

            var entityResult = await _userService.AddUser(user);

            Assert.IsTrue(entityResult.Succeeded);

            SearchUsersViewModel searchUsersViewModel = new SearchUsersViewModel();
            var result = _userService.SearchUser(searchUsersViewModel);

            Assert.Greater(result.TotalCount, 0);
            Assert.GreaterOrEqual(result.Items.Count, 0);
        }
Пример #8
0
        public async Task <PagedUsersListViewModel> GetPagedUsersListAsync(SearchUsersViewModel model, int pageNumber)
        {
            var skipRecords = pageNumber * model.MaxNumberOfRows;
            var query       = _users.Include(x => x.Roles).AsNoTracking();

            if (!model.ShowAllUsers)
            {
                query = query.Where(x => x.IsActive == model.UserIsActive);
            }

            if (!string.IsNullOrWhiteSpace(model.TextToFind))
            {
                model.TextToFind = model.TextToFind.ApplyCorrectYeKe();

                if (model.IsPartOfEmail)
                {
                    query = query.Where(x => x.Email.Contains(model.TextToFind));
                }

                if (model.IsUserId)
                {
                    int userId;
                    if (int.TryParse(model.TextToFind, out userId))
                    {
                        query = query.Where(x => x.Id == userId);
                    }
                }

                if (model.IsPartOfName)
                {
                    query = query.Where(x => x.FirstName.Contains(model.TextToFind));
                }

                if (model.IsPartOfLastName)
                {
                    query = query.Where(x => x.LastName.Contains(model.TextToFind));
                }

                if (model.IsPartOfUserName)
                {
                    query = query.Where(x => x.UserName.Contains(model.TextToFind));
                }

                if (model.IsPartOfLocation)
                {
                    query = query.Where(x => x.Location.Contains(model.TextToFind));
                }
            }

            if (model.HasEmailConfirmed)
            {
                query = query.Where(x => x.EmailConfirmed);
            }

            if (model.UserIsLockedOut)
            {
                query = query.Where(x => x.LockoutEnd != null);
            }

            if (model.HasTwoFactorEnabled)
            {
                query = query.Where(x => x.TwoFactorEnabled);
            }

            query = query.OrderBy(x => x.Id);
            return(new PagedUsersListViewModel
            {
                Paging =
                {
                    TotalItems = await query.CountAsync().ConfigureAwait(false)
                },
                Users = await query.Skip(skipRecords).Take(model.MaxNumberOfRows).ToListAsync().ConfigureAwait(false),
                Roles = await _roles.ToListAsync().ConfigureAwait(false)
            });
        }
Пример #9
0
 public SearchUsersView()
 {
     InitializeComponent();
     DataContextChanged += (s, e) => { ViewModel = DataContext as SearchUsersViewModel; };
 }