示例#1
0
        public async Task <IEnumerable <Exercise> > GetExercises([FromQuery] ExerciseParams exerciseParams)
        {
            var exercises = await _exerciseService.FindExercises(exerciseParams);

            Response.AddPaginationHeader(exercises.TotalItems, exercises.ItemsPerPage, exercises.PageNumber,
                                         exercises.TotalPages);
            return(exercises);
        }
示例#2
0
        public async Task <PagedList <Exercise> > GetExercisesAsync(ExerciseParams exerciseParams)
        {
            var query = _context.Exercises.OrderBy(x => x.Name).AsNoTracking();

            query = !string.IsNullOrWhiteSpace(exerciseParams.Name) ? query.Where(x => x.Name.Contains(exerciseParams.Name)) : query;

            return(await PagedList <Exercise> .CreateAsync(query, exerciseParams.PageNumber, exerciseParams.ItemsPerPage));
        }
示例#3
0
        public async Task <IActionResult> GetAllExercisesAsync([FromQuery] ExerciseParams exerciseParams)
        {
            var exercises = await _unitOfWork.Exercises.GetAllExercisesAsync(exerciseParams);

            if (exercises == null)
            {
                return(NoContent());
            }

            var exercisesToReturn = _mapper.Map <IEnumerable <ExerciseForReturnDTO> >(exercises);

            return(Ok(exercisesToReturn));
        }
示例#4
0
        public async Task <IEnumerable <Exercise> > GetExercises([FromQuery] ExerciseParams exerciseParams)
        {
            string key = $"exercises-{exerciseParams.PageNumber}-{exerciseParams.ItemsPerPage}-{exerciseParams.Name}";

            if (!_memoryCache.TryGetValue(key, out PagedList <Exercise> exercises))
            {
                exercises = await _exerciseService.FindExercisesAsync(exerciseParams);

                _memoryCache.Set(key, exercises, TimeSpan.FromMinutes(2));
            }

            Response.AddPaginationHeader(exercises.TotalItems, exercises.ItemsPerPage, exercises.PageNumber,
                                         exercises.TotalPages);
            return(exercises);
        }
示例#5
0
    public void SetExerciseParams(GameObject gameObject)
    {
        ExerciseParams exerciseParams = gameObject.GetComponent <ExerciseParams>();

        exerciseDesc.GetComponent <Text>().text = exerciseParams.exerciseDesc;

        Vector3 offset = new Vector3();

        foreach (string s in exerciseParams.requirements)
        {
            CreateRequirementsText(offset, s);
            SetRequirementsTextColor(s);

            offset.y += -20;
        }
    }
示例#6
0
        public async Task <PagedList <ExerciseModel> > GetAllExercisesAsync(ExerciseParams exerciseParams)
        {
            var exercises = _dataContext.ExerciseModel.OrderByDescending(e => e.Name);

            if (!string.IsNullOrEmpty(exerciseParams.OrderBy))
            {
                switch (exerciseParams.OrderBy)
                {
                case "id":
                    exercises = exercises.OrderBy(e => e.ExerciseId);
                    break;

                default:
                    exercises = exercises.OrderByDescending(e => e.Name);
                    break;
                }
            }

            return(await PagedList <ExerciseModel> .CreateListAsync(exercises, exerciseParams.PageSize, exerciseParams.PageNumber));
        }
示例#7
0
 public async Task <PagedList <Exercise> > FindExercisesAsync(ExerciseParams exerciseParams)
 {
     return(await _exerciseRepo.GetExercisesAsync(exerciseParams));
 }
示例#8
0
        public Task <PagedList <Exercise> > GetExercisesAsync(ExerciseParams exerciseParams)
        {
            var query = _context.Exercises.AsNoTracking();

            return(PagedList <Exercise> .CreateAsync(query, exerciseParams.PageNumber, exerciseParams.ItemsPerPage));
        }