示例#1
0
        public async Task <IActionResult> Index(string sortOrder, string searchString, int SelectedRankId = 0, int page = 1)
        {
            searchString = searchString.ToLowerRemoveSymbols();
            IEnumerable <User> users = await _userService.Users.GetUsersWithRankAsync(searchString, SelectedRankId, page, PageSize);

            int totalItems = 0;

            if (string.IsNullOrEmpty(searchString) && SelectedRankId == 0)
            {
                totalItems = _userService.Users.Count();
            }
            else
            {
                Expression <Func <User, bool> > predicate = (x => (string.IsNullOrEmpty(searchString) || (x.LDAPName.ToLower().Contains(searchString) || x.IdNumber.ToLower().Contains(searchString) || x.Email.ToLower().Contains(searchString))) && (SelectedRankId == 0 || x.RankId == SelectedRankId));
                totalItems = _userService.Users.CountByExpression(predicate);
            }
            SelectList         ranks = _userService.Ranks.GetRankSelectList();
            UserIndexViewModel vm    = new UserIndexViewModel(
                users,
                ranks,
                SelectedRankId,
                sortOrder,
                searchString,
                totalItems,
                page,
                PageSize);

            ViewData["ActiveMenu"] = "Admin";
            ViewData["ActiveLink"] = "UserIndex";
            ViewData["Title"]      = "User Index";
            return(View(vm));
        }
示例#2
0
        public IActionResult Index(UserFilter filter = null)
        {
            try
            {
                var users = _userRepo.getQueryable();

                if (!string.IsNullOrWhiteSpace(filter.name))
                {
                    users = users.Where(a => a.full_name.Contains(filter.name));
                }

                ViewBag.pagerInfo = _paginatedMetaService.GetMetaData(users.Count(), filter.page, filter.number_of_rows);


                users = users.Skip(filter.number_of_rows * (filter.page - 1)).Take(filter.number_of_rows);

                var userDetails = users.ToList();

                UserIndexViewModel userIndexVM = getUserIndexVMFromUserList(userDetails);

                return(View(userIndexVM));
            }
            catch (Exception ex)
            {
                AlertHelper.setMessage(this, ex.Message, messageType.error);
                return(Redirect("/home"));
            }
        }
        //User Profile DB's -- NOT IDentity Tables
        private void PrepareSearchScreen(UserIndexViewModel model)
        {
            var userId = User.Identity.GetUserId();
            var users  = GetAll().Where(x => x.Id == userId).ToList();

            model.GetAllUsersForSearchScreen = users;
        }
示例#4
0
        public async Task <IActionResult> Index()
        {
            var allUsersFromDb = await _userManager
                                 .GetUsersInRoleAsync("user");

            if (allUsersFromDb == null)
            {
                this._logger.LogWarning($"Collection of users in role USER - NOT FOUND");
                return(this.NotFound());
            }

            var model = new AllUsersIndexViewModel();

            foreach (var singleUser in allUsersFromDb)
            {
                var modelUser = new UserIndexViewModel
                {
                    Id          = singleUser.Id,
                    FullName    = this.FullNameCreator(singleUser.FirstName, singleUser.LastName),
                    PhoneNumber = singleUser.PhoneNumber,
                    IsDeleted   = singleUser.IsDeleted
                };
                model.AllUsersCollection.Add(modelUser);
            }

            return(this.View(model));
        }
        public PartialViewResult Sidebar()
        {
            var model = new UserIndexViewModel();

            PrepareSearchScreen(model);
            return(PartialView("_Sidebar", model));
        }
示例#6
0
        public ICollection <UserIndexViewModel> GetAllApplicationForUser(String emailID)
        {
            List <UserIndexViewModel> userAppLogs = new List <UserIndexViewModel>();

            using (ErrorLoggerDBContext context = new ErrorLoggerDBContext())
            {
                try
                {
                    var user = context.Users.Where(x => x.loginDetails.emailID.Equals(emailID)).First();

                    foreach (Application app in user.Applications)
                    {
                        if (app.applicationStatus.Equals("Active"))
                        {
                            UserIndexViewModel application = new UserIndexViewModel
                            {
                                applicationName   = app.applicationName,
                                applicationStatus = app.applicationStatus,
                                applicationID     = app.ApplicationId
                            };
                            userAppLogs.Add(application);
                        }
                    }
                }
                catch
                {
                    Log.Error("Function: GetAllApplicationForUser" + string.Format(" CustomizeDeveloperMessage: Not able to get all the applications for {0} ", emailID));
                    throw new Exception(string.Format("CustomizeDeveloperMessage: Not able to get all the applications for {0} ", emailID));
                }
            }
            return(userAppLogs);
        }
示例#7
0
        public IActionResult Index(int?page, string StaffName = "")
        {
            var linqVar = _userRepository.EntityItems
                          .Where(p => p.StaffName.Contains(StaffName))
                          .Select((p => new ApplicationUserViewModel
            {
                Id = p.Id,
                StaffNo = p.StaffNo,
                Email = p.Email,
                UserName = p.UserName,
                StaffId = p.StaffId,
                StaffName = p.StaffName
            }));

            var pageNumber       = page ?? 1;
            var onePageOflinqVar = linqVar.OrderBy(x => x.StaffNo).ToPagedList(pageNumber, 10);
            var model            = new UserIndexViewModel
            {
                StatusMessage             = StatusMessage,
                StaffName                 = StaffName,
                ApplicationUserViewModels = onePageOflinqVar,
            };

            return(View(model));
        }
示例#8
0
        public ActionResult Index()
        {
            UserIndexViewModel vM = new UserIndexViewModel();
            var isAdmin           = _userRoleService.IsSuperAdmin(User.Identity.Name);

            if (isAdmin)
            {
                vM.UserApps = _userAppService.GetAllUserAppsDistinct();
            }
            else
            {
                var appIds = _userAppService.GetAppIdsWhereAppRoleAdmin(User.Identity.Name);
                var userAppModelsWithOutAppCount = _userAppService.GetUserAppsForAppIds(appIds);

                var userAppModels = new List <UserAppModel>();
                foreach (var item in userAppModelsWithOutAppCount)
                {
                    item.AppCount = _userAppService.CountUserApps(item.BlazerId);
                    userAppModels.Add(item);
                }
                vM.UserApps = userAppModels;
            }

            return(View(vM));
        }
示例#9
0
        public async Task <ActionResult> UserIndex(ManageMessageId?message)
        {
            ViewBag.StatusMessage =
                message == ManageMessageId.ChangePasswordSuccess ? "Your password has been changed."
              : message == ManageMessageId.SetPasswordSuccess ? "Your password has been set."
              : message == ManageMessageId.SetTwoFactorSuccess ? "Your two-factor authentication provider has been set."
              : message == ManageMessageId.Error ? "An error has occurred."
              : message == ManageMessageId.AddPhoneSuccess ? "Your phone number was added."
              : message == ManageMessageId.RemovePhoneSuccess ? "Your phone number was removed."
              : "";
            var user = await UserManager.FindByIdAsync(User.Identity.GetUserId());

            var model = new UserIndexViewModel
            {
                HasPassword       = HasPassword(),
                PhoneNumber       = await UserManager.GetPhoneNumberAsync(user.Id),
                TwoFactor         = await UserManager.GetTwoFactorEnabledAsync(user.Id),
                Logins            = await UserManager.GetLoginsAsync(user.Id),
                BrowserRemembered = await AuthenticationManager.TwoFactorBrowserRememberedAsync(user.Id),
                Mobile            = await UserManager.GetPhoneNumberAsync(user.Id),
                AddressLine1      = user.AddressLine1, AddressLine2 = user.AddressLine2, AddressLine3 = user.AddressLine3,
                FirstName         = user.FirstName, LastName = user.LastName, Country = user.Country, Email = user.Email, ImagePath = user.ImagePath
            };

            return(View(model));
        }
        public async Task <ViewResult> IndexAsync()
        {
            List <User> users = _userManager.Users.ToList <User>();
            List <Role> roles = _roleManager.Roles.ToList <Role>();

            List <UserIndexViewModel> model = new List <UserIndexViewModel>();

            foreach (User user in users)
            {
                List <Role> userRoles = new List <Role>();

                foreach (Role role in roles)
                {
                    Boolean result = await _userManager.IsInRoleAsync(user, role.Name);

                    if (result)
                    {
                        userRoles.Add(role);
                    }
                }

                UserIndexViewModel userIndex = new UserIndexViewModel()
                {
                    User      = user,
                    UserRoles = userRoles
                };

                model.Add(userIndex);
            }
            return(View(model));
        }
        public IActionResult Unverified()
        {
            UserIndexViewModel viewModel = new UserIndexViewModel();

            viewModel.Users = _userRepository.Find(x => !x.Verified);
            return(View(viewModel));
        }
示例#12
0
        public IActionResult Index(int id = 1)
        {
            var users = this.usersService
                        .GetAllPromotableUsers <UserViewModel>(UsersPerPage, (id - 1) * UsersPerPage);

            var viewModel = new UserIndexViewModel {
                Users = users
            };

            var count = this.usersService.GetCountOfPromotableUsers();

            var pagination = new PaginationViewModel();

            pagination.PagesCount = (int)Math.Ceiling((double)count / UsersPerPage);
            if (pagination.PagesCount == 0)
            {
                pagination.PagesCount = 1;
            }

            pagination.CurrentPage = id;

            viewModel.Pagination = pagination;

            return(this.View(viewModel));
        }
        public async Task <IActionResult> ViewAll(UserIndexViewModel model)
        {
            model.Pager ??= model.Pager ?? new PagerViewModel();
            model.Pager.Page         = model.Pager.Page <= 0 ? 1 : model.Pager.Page;
            model.Pager.ItemsPerPage = model.Pager.ItemsPerPage <= 0 ? 10 : model.Pager.ItemsPerPage;

            model.Filter ??= model.Filter ?? new FilterUserViewModel();

            bool emptyUsername  = string.IsNullOrWhiteSpace(model.Filter.Username);
            bool emptyFirstName = string.IsNullOrWhiteSpace(model.Filter.FirstName);
            bool emptySurname   = string.IsNullOrWhiteSpace(model.Filter.LastName);
            bool emptyEmail     = string.IsNullOrWhiteSpace(model.Filter.Email);

            List <User> query = await this.userService.GetAllUsersAsync(u =>
                                                                        (emptyUsername || u.UserName.Contains(model.Filter.Username)) &&
                                                                        (emptyFirstName || u.FirstName.Contains(model.Filter.FirstName)) &&
                                                                        (emptySurname || u.LastName.Contains(model.Filter.LastName)) &&
                                                                        (emptyEmail || u.Email.Contains(model.Filter.Email)));

            model.Pager.PagesCount = (int)Math.Ceiling(query.Count() / (double)model.Pager.ItemsPerPage);

            query = query.OrderBy(u => u.Id).Skip((model.Pager.Page - 1) * model.Pager.ItemsPerPage).Take(model.Pager.ItemsPerPage).ToList();

            model.Items = query.Select(u => new DetailsUserViewModel
            {
                Id        = u.Id,
                Username  = u.UserName,
                FirstName = u.FirstName,
                LastName  = u.LastName,
                Email     = u.Email
            }).ToList();

            return(View(model));
        }
        // GET: User
        public ActionResult Index()
        {
            Session["PageName"] = "Login";
            UserIndexViewModel user = new UserIndexViewModel();

            return(View(user));
        }
示例#15
0
        public ActionResult CreateOrUpdate(long?id)
        {
            User user;

            if (id.HasValue)
            {
                var response = new UserService().GetUserInfo(new GetObjectByIDRequest()
                {
                    ID = id.Value
                });
                if (!response.IsSuccess)
                {
                    throw new Exception("获取用户出错");
                }

                user            = response.Result;
                ViewBag.Message = "编辑用户";
            }
            else
            {
                user = new User()
                {
                    State = true, Sex = '男'
                };
                ViewBag.Message = "新增用户";
            }

            UserIndexViewModel vm = new UserIndexViewModel()
            {
                User = user, OriginalPassword = user.Password
            };

            return(View(vm));
        }
示例#16
0
        // GET: User
        public ActionResult Index()
        {
            var viewModel = new UserIndexViewModel();

            viewModel.UserPostCount = new Dictionary <User, UserDetails>();

            foreach (User user in db.Users.ToList())
            {
                UserDetails tmp = new UserDetails();

                tmp.PostsCount  = db.Posts.ToList().FindAll(x => x.UserID == user.Id).Count();
                tmp.TopicsCount = db.Topics.ToList().FindAll(x => x.UserID == user.Id).Count();

                tmp.Roles = new List <IdentityRole>();

                foreach (IdentityUserRole role in user.Roles)
                {
                    tmp.Roles.Add(db.Roles.ToList().Find(x => x.Id == role.RoleId));
                }

                viewModel.UserPostCount.Add(user, tmp);
            }

            return(View(viewModel));
        }
示例#17
0
        public IActionResult Index(string sortBy = "UserName", bool descending = false, int page = 1)
        {
            // Display a list of users according to the value of sortBy in either ascending
            // or descending order based on the value of the descending variable.
            int perPage = 20;
            int skip    = (page - 1) * perPage;
            List <ApplicationUser> users = _userServices.GetAllPublicUsers(User);
            int lastPage = users.Count / perPage;

            if (users.Count % perPage > 0)
            {
                lastPage++;
            }
            users = users.Skip(skip).Take(perPage).ToList();

            if (!descending)
            {
                users = users.OrderBy(u => u.GetType().GetProperty(sortBy).GetValue(u)).ToList();
            }
            else
            {
                users = users.OrderByDescending(u => u.GetType().GetProperty(sortBy).GetValue(u)).ToList();
            }

            UserIndexViewModel userIndexViewModel = new UserIndexViewModel {
                Users = users, CurrentPage = page, LastPage = lastPage
            };

            return(View(userIndexViewModel));
        }
示例#18
0
        public async Task <IActionResult> Index()
        {
            var users = await this.userService.FilterUsersAsync();

            var model = new UserIndexViewModel(users);

            return(View(model));
        }
示例#19
0
        public ActionResult Index()
        {
            var viewModel = new UserIndexViewModel();

            viewModel.CurrentUser = new User();
            viewModel.Users       = DbContext.Users.ToList();
            return(View(viewModel));
        }
        public IActionResult Index()
        {
            var viewModel = new UserIndexViewModel();

            viewModel.Users = IndexGetAllUsers();

            return(View(viewModel));
        }
示例#21
0
        public ActionResult Index()
        {
            var model = new UserIndexViewModel();

            model.User         = CurrentUser;
            model.UserProducts = ur.GetProductsByUser(CurrentUser.Id).Where(p => p.TotalCount > 0);
            return(View(model));
        }
示例#22
0
        public async Task <IActionResult> Index()
        {
            UserIndexViewModel userIndexVM = new UserIndexViewModel();

            userIndexVM.ApplicationUsers = await _context.Users.Where(x => x.DeletedAt == null).ToListAsync();

            return(View(userIndexVM));
        }
示例#23
0
        public ActionResult Index()
        {
            string userId = User.Identity.GetUserId();
            // show messages of those I follow
            UserIndexViewModel userIndexModel = new UserIndexViewModel(userId);

            return(View(userIndexModel));
        }
        // GET: Dashboard
        public ActionResult Overview()
        {
            ViewBag.GoogleApiKey = ConfigurationManager.AppSettings["GoogleAPIKey"];
            ApplicationDbContext db = new ApplicationDbContext();
            var model = new UserIndexViewModel();

            if (User.IsInRole("Admin"))
            {
                PrepareSearchScreenForAdmin(model);
                ViewBag.Title = "Super User";
                ViewBag.Role  = "Administrator";

                return(View(model));
            }
            else if (User.IsInRole("Employee"))
            {
                //Employee Mapping List - Show All Contractors and SubContractors where

                PrepareSearchScreen(model);
                ViewBag.Title = "Employee";
                return(View(model));
            }
            else if (User.IsInRole("SubContractors"))
            {
                PrepareSearchScreen(model);
                ViewBag.Title = "Sub Contractor";
                return(View(model));
            }
            else if (User.IsInRole("Contractor"))
            {
                PrepareSearchScreen(model);
                ViewBag.Title = "Contractor";
                return(View(model));
            }
            else if (User.IsInRole("Vendor"))
            {
                PrepareSearchScreen(model);
                ViewBag.Title = "Vendor";
                return(View(model));
            }
            else if (User.IsInRole("SiteOwner"))
            {
                PrepareSearchScreen(model);
                ViewBag.Title = "Site Owner";
                return(View(model));
            }
            else
            {
                //When a new user register to the site, and you want update the controls for that user do that here.
                ViewBag.Title         = "No Role Assigned!";
                ViewBag.InstructRole  = "How you will use this site? (select one)";
                ViewBag.InstructMiles = "How many miles between your home location and the furthest site you manage?";
                PrepareSearchScreen(model);
                TempData["message"] = string.Format("Welcome, " + "Please select which best describes your role?");
                return(View("../Dashboard/Overview", model));
            }
        }
示例#25
0
        public ActionResult Index()
        {
            var vm = new UserIndexViewModel
            {
                Users = Query.For <GetAllUsersQueryResult>().Empty().Users
            };

            return(View(vm));
        }
示例#26
0
        // GET: Admin/User
        public ActionResult Index()
        {
            var vm = new UserIndexViewModel();

            vm.Users = UserService.GetAdminUsers();
            vm.Roles = UserService.GetRoles();

            return(View(vm));
        }
        public async Task <IActionResult> Index()
        {
            var viewModel = new UserIndexViewModel
            {
                Users = await _userViewService.GetUsersAsync()
            };

            return(View(viewModel));
        }
示例#28
0
        public IActionResult Index()
        {
            // Get all of our users and pass through to the view.
            List <ApplicationUser> users = _userManager.Users.ToList();

            UserIndexViewModel vm = new UserIndexViewModel(users);

            return(View(vm));
        }
示例#29
0
        /// <summary>
        /// Used when errors have arisen with views that return to the View Users index
        /// </summary>
        /// <param name="errors">Errors that occured on a view</param>
        /// <returns>View model populated with errors.</returns>
        private UserIndexViewModel BuildIndexErrorViewModel(IList <string> errors)
        {
            var vm = new UserIndexViewModel(_userManager.Users.ToList())
            {
                Errors = errors
            };

            return(vm);
        }
示例#30
0
        public ActionResult Insert()
        {
            var model = new UserIndexViewModel
            {
                User = new User()
            };

            return(View(model));
        }
示例#31
0
        public ActionResult Index(string search="")
        {

            UserIndexViewModel sivm = new UserIndexViewModel
            {
                Users = usersRepository.All.ToList(),
                CompetencyHeaders = competencyHeadersRepository.AllIncluding(a => a.Competencies).ToList()
            };

            return View(sivm);
        }
示例#32
0
 public UserListViewModel Index(UserIndexViewModel userIndexViewModel)
 {
     return GetUsers();
 }
示例#33
0
    // GET: Users/Details/5
    public async Task<ActionResult> Details(string id)
    {
      if (id == null)
      {
        return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
      }
      ApplicationUser applicationUser = await UserManager.FindByIdAsync(id);
      var reports = await (
              from report in db.Reports.Include(p => p.Personality).Include(p => p.User)
              where report.UserId == id && !report.Trashed
              select report
          ).ToListAsync();

      if (applicationUser == null)
      {
        return HttpNotFound();
      }

      UserIndexViewModel model = new UserIndexViewModel()
      {
        Reports = (
              from report in reports
              where report.UserId == id && !report.Trashed
              let dt = report.CreateDate
              group report by report.CreateDate.Date into g
              orderby g.Key descending
              select new ReportsByDay
              {
                Date = g.Key,
                Reports = g.OrderByDescending(p => p.CreateDate).ToList()
              }
          ).ToList(),
        TotalReports = reports.Count(),
        User = applicationUser
      };

      return View(model);
    }