/// <summary> /// Добавляет пользователей, являющихся абитуриентами - участниками группы, /// сформированной приёмной комиссией для прохождения вступительных испытаний, /// к соответствующему мероприятию СДО /// </summary> /// <param name="lmsEventId"></param> /// <param name="entranceTestGroupId"></param> /// <returns></returns> public async Task AddAppUserLmsEventsByAbiturientsEntranceTestGroupAsync(int lmsEventId, int entranceTestGroupId) { var appUsers = _context.Users .Include(u => u.Abiturient) .Where(u => u.Abiturient.EntranceTestGroupId == entranceTestGroupId); var newItems = new List <AppUserLmsEvent>(); foreach (var appUser in appUsers) { if (!_context.AppUserLmsEvents.Any(ue => ue.AppUserId == appUser.Id && ue.LmsEventId == lmsEventId && ue.AppUserLmsEventUserRoleId == (int)AppUserLmsEventUserRolesEnum.Participant)) { var newItem = new AppUserLmsEvent { AppUserId = appUser.Id, LmsEventId = lmsEventId, AppUserLmsEventUserRoleId = (int)AppUserLmsEventUserRolesEnum.Participant }; newItems.Add(newItem); } } _context.AppUserLmsEvents.AddRange(newItems); await _context.SaveChangesAsync(); }
/// <summary> /// Добавляет привязку пользователя к событию СДО /// </summary> /// <param name="appUserLmsEvent"></param> /// <returns></returns> public async Task <AppUserLmsEvent> AddAppUserLmsEventAsync(AppUserLmsEvent appUserLmsEvent) { _context.AppUserLmsEvents.Add(appUserLmsEvent); await _context.SaveChangesAsync(); return(appUserLmsEvent); }
/// <summary> /// Удаляет участника мероприятия /// </summary> /// <param name="appUserLmsEvent"></param> /// <returns></returns> public async Task RemoveAppUserLmsEventAsync(AppUserLmsEvent appUserLmsEvent) { await _appUserLmsEventsRepository.RemoveAppUserLmsEventAsync(appUserLmsEvent); }
/// <summary> /// Возвращает привязку пользователя к событию по переданному УИД /// </summary> /// <param name="appUserLmsEventId"></param> /// <returns></returns> public async Task <AppUserLmsEvent> GetAppUserLmsEventAsync(int appUserLmsEventId) { AppUserLmsEvent appUserLmsEvent = await _appUserLmsEventsRepository.GetAppUserLmsEventAsync(appUserLmsEventId); return(appUserLmsEvent); }
/// <summary> /// Добавляет привязку пользователя к событию и возвращает её из БД /// </summary> /// <param name="appUserLmsEvent"></param> /// <returns></returns> public async Task <AppUserLmsEvent> AddAppUserLmsEvent(AppUserLmsEvent appUserLmsEvent) { var entry = await _appUserLmsEventsRepository.AddAppUserLmsEventAsync(appUserLmsEvent); return(entry); }
/// <summary> /// Удаляет участника мероприятия /// </summary> /// <param name="appUserLmsEvent"></param> /// <returns></returns> public async Task RemoveAppUserLmsEventAsync(AppUserLmsEvent appUserLmsEvent) { _context.AppUserLmsEvents.Remove(appUserLmsEvent); await _context.SaveChangesAsync(); }