Пример #1
0
        /// <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();
        }
Пример #2
0
        /// <summary>
        /// Добавляет привязку пользователя к событию СДО
        /// </summary>
        /// <param name="appUserLmsEvent"></param>
        /// <returns></returns>
        public async Task <AppUserLmsEvent> AddAppUserLmsEventAsync(AppUserLmsEvent appUserLmsEvent)
        {
            _context.AppUserLmsEvents.Add(appUserLmsEvent);
            await _context.SaveChangesAsync();

            return(appUserLmsEvent);
        }
Пример #3
0
 /// <summary>
 /// Удаляет участника мероприятия
 /// </summary>
 /// <param name="appUserLmsEvent"></param>
 /// <returns></returns>
 public async Task RemoveAppUserLmsEventAsync(AppUserLmsEvent appUserLmsEvent)
 {
     await _appUserLmsEventsRepository.RemoveAppUserLmsEventAsync(appUserLmsEvent);
 }
Пример #4
0
        /// <summary>
        /// Возвращает привязку пользователя к событию по переданному УИД
        /// </summary>
        /// <param name="appUserLmsEventId"></param>
        /// <returns></returns>
        public async Task <AppUserLmsEvent> GetAppUserLmsEventAsync(int appUserLmsEventId)
        {
            AppUserLmsEvent appUserLmsEvent = await _appUserLmsEventsRepository.GetAppUserLmsEventAsync(appUserLmsEventId);

            return(appUserLmsEvent);
        }
Пример #5
0
        /// <summary>
        /// Добавляет привязку пользователя к событию и возвращает её из БД
        /// </summary>
        /// <param name="appUserLmsEvent"></param>
        /// <returns></returns>
        public async Task <AppUserLmsEvent> AddAppUserLmsEvent(AppUserLmsEvent appUserLmsEvent)
        {
            var entry = await _appUserLmsEventsRepository.AddAppUserLmsEventAsync(appUserLmsEvent);

            return(entry);
        }
Пример #6
0
 /// <summary>
 /// Удаляет участника мероприятия
 /// </summary>
 /// <param name="appUserLmsEvent"></param>
 /// <returns></returns>
 public async Task RemoveAppUserLmsEventAsync(AppUserLmsEvent appUserLmsEvent)
 {
     _context.AppUserLmsEvents.Remove(appUserLmsEvent);
     await _context.SaveChangesAsync();
 }