public async Task OnGetAsync(int?id) { UserData = new UserIndexData(); var users = _context.accUser .Include(i => i.UserZones) .ThenInclude(i => i.zone) //.ThenInclude(i => i.Terminals) .AsNoTracking(); if (!string.IsNullOrEmpty(SearchString)) { users = users.Where(s => s.FirstName.Contains(SearchString) || s.LastName.Contains(SearchString) || s.Uid.Contains(SearchString)); } UserData.Users = await users .OrderBy(i => i.LastName) .ToListAsync(); if (id != null) { UserID = id.Value; accUser user = UserData.Users .Where(i => i.idUser == id.Value).Single(); UserData.Zones = user.UserZones.Select(s => s.zone); } }
public async Task <IActionResult> OnGetAsync(int?id) { if (id == null) { return(NotFound()); } user = await _context.accUser.FirstOrDefaultAsync(m => m.idUser == id); if (user == null) { return(NotFound()); } return(Page()); }
public async Task <IActionResult> OnPostAsync(int?id) { if (id == null) { return(NotFound()); } user = await _context.accUser.FindAsync(id); if (User != null) { _context.accUser.Remove(user); await _context.SaveChangesAsync(); } return(RedirectToPage("./Index")); }
//LISTADO HORARIOS public void PopulateAssignedScheduleData(Data.CronosegAccessContext context, accUser user) { var allSchedules = context.accSchedule; var userSchedules = new HashSet <int>( user.UserSchedules.Select(c => c.idSchedule)); AssignedScheduleDataList = new List <AssignedScheduleData>(); foreach (var schedule in allSchedules) { AssignedScheduleDataList.Add(new AssignedScheduleData { idSchedule = schedule.IdSchedule, Name = schedule.Name, Assigned = userSchedules.Contains(schedule.IdSchedule) }); } }
//LISTADO ZONAS public void PopulateAssignedZoneData(Data.CronosegAccessContext context, accUser user) { var allZones = context.accZone; var userZones = new HashSet <int>( user.UserZones.Select(c => c.idZone)); AssignedZoneDataList = new List <AssignedZoneData>(); foreach (var zone in allZones) { AssignedZoneDataList.Add(new AssignedZoneData { idZone = zone.IdZone, Name = zone.Name, Assigned = userZones.Contains(zone.IdZone) }); } }
public void UpdateUserSchedules(Data.CronosegAccessContext context, string[] selectedZones, accUser UserToUpdate) { if (selectedZones == null) { UserToUpdate.UserZones = new List <accUserZone>(); return; } var selectedZonesHS = new HashSet <string>(selectedZones); var userZones = new HashSet <int> (UserToUpdate.UserZones.Select(c => c.zone.IdZone)); foreach (var zone in context.accZone) { if (selectedZonesHS.Contains(zone.IdZone.ToString())) { if (!userZones.Contains(zone.IdZone)) { UserToUpdate.UserZones.Add( new accUserZone { idUser = UserToUpdate.idUser, idZone = zone.IdZone }); } } else { if (userZones.Contains(zone.IdZone)) { accUserZone zoneToRemove = UserToUpdate .UserZones .SingleOrDefault(i => i.idZone == zone.IdZone); context.Remove(zoneToRemove); } } } }
public async Task <IActionResult> OnGetAsync(int?id) { if (id == null) { return(NotFound()); } user = await _context.accUser .Include(i => i.UserZones).ThenInclude(i => i.zone) .AsNoTracking() .FirstOrDefaultAsync(m => m.idUser == id); // User = await _context.User.FirstOrDefaultAsync(m => m.idUser == id); if (User == null) { return(NotFound()); } PopulateAssignedZoneData(_context, user); return(Page()); }