Ejemplo n.º 1
0
        private bool CheckGetAllParameters(StudyGroupResourceParameters studyGroupResourceParameters)
        {
            if (studyGroupResourceParameters == null)
            {
                throw new ArgumentNullException(nameof(studyGroupResourceParameters));
            }

            if (string.IsNullOrWhiteSpace(studyGroupResourceParameters.Module))
            {
                return(false);
            }

            return(true);
        }
        public async Task <ActionResult <IEnumerable <StudyGroupDto> > > GetStudyGroups(
            [FromQuery] StudyGroupResourceParameters studyGroupResourceParameters)
        {
            try
            {
                var studyGroups = await _studyGroupRepository.GetAll(studyGroupResourceParameters);

                if (studyGroups == null)
                {
                    return(NotFound());
                }

                return(Ok(_mapper.Map <IEnumerable <StudyGroupDto> >(studyGroups)));
            }
            catch (Exception)
            {
                return(NotFound());
            }
        }
Ejemplo n.º 3
0
        public async Task <List <StudyGroup> > GetAll(StudyGroupResourceParameters studyGroupResourceParameters)
        {
            if (!CheckGetAllParameters(studyGroupResourceParameters))
            {
                return(await GetAll());
            }

            var collection = Context.StudyGroups as IQueryable <StudyGroup>;


            if (!int.TryParse(studyGroupResourceParameters.Module.Trim(), out var moduleId))
            {
                throw new KeyNotFoundException(nameof(studyGroupResourceParameters));
            }

            collection = collection
                         .Where(s => s.ModuleId == moduleId);

            return(await collection
                   .Include(s => s.User)
                   .Include(s => s.Module)
                   .Include(s => s.Members)
                   .ToListAsync());
        }