Esempio n. 1
0
        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);
            }
        }
Esempio n. 2
0
        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());
        }
Esempio n. 3
0
        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"));
        }
Esempio n. 4
0
        //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)
                });
            }
        }
Esempio n. 5
0
        //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)
                });
            }
        }
Esempio n. 6
0
        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);
                    }
                }
            }
        }
Esempio n. 7
0
        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());
        }