// GET public async Task <IActionResult> Index(int page = 1) { string userId = _userManager.GetUserId(User); int pageSize = 5; List <User> users = _db.Users.Where(u => u.Id != userId && u.Position == EmployeePosition.Registrant).Skip((page - 1) * pageSize).Take(pageSize).ToList(); for (int i = 0; i < users.Count; i++) { users[i].PostalAddress = await _db.PostalAddresses.FirstOrDefaultAsync(p => p.UserId == users[i].Id); users[i].LegalAddress = await _db.LegalAddresses.FirstOrDefaultAsync(u => u.UserId == users[i].Id); } SuperAdminIndexPageInfo pageInfo = new SuperAdminIndexPageInfo { PageNumber = page, PageSize = pageSize, TotalItems = _db.Users.Count() - 1 }; SuperAdminIndexViewModel ivm = new SuperAdminIndexViewModel { PageInfo = pageInfo, Users = users }; User admin = await _db.Users.FirstOrDefaultAsync(u => u.Id == userId && u.IdOfTheSelectedRestaurateur != null); ViewBag.SuperAdmin = admin == null ? "null" : admin.IdOfTheSelectedRestaurateur; return(View(ivm)); }
// GET public async Task <IActionResult> Index(int page = 1) { string userId = _userManager.GetUserId(User); if (User.IsInRole(Convert.ToString(Roles.SuperAdmin))) { User admin = await _userManager.FindByIdAsync(userId); userId = admin.IdOfTheSelectedRestaurateur; } User user = await _db.Users.FirstOrDefaultAsync(u => u.Id == userId); int pageSize = 5; List <User> users = _db.Users.Where(u => u.RestaurantId == user.RestaurantId && u.Position == EmployeePosition.AdministratorRestaurant || u.Position == EmployeePosition.ContentManager).Skip((page - 1) * pageSize).Take(pageSize).ToList(); SuperAdminIndexPageInfo pageInfo = new SuperAdminIndexPageInfo { PageNumber = page, PageSize = pageSize, TotalItems = _db.Users.Count(u => u.RestaurantId == user.RestaurantId && u.Position == EmployeePosition.AdministratorRestaurant || u.Position == EmployeePosition.ContentManager) }; EmployeeIndexViewModel ivm = new EmployeeIndexViewModel { PageInfo = pageInfo, Users = users }; return(View(ivm)); }