Example #1
0
        public List <WorkoutSchedule> GetAll(WorkoutScheduleSearchParams searchParams)
        {
            var query = _context.WorkoutSchedules
                        .Include(x => x.Workout)
                        .AsQueryable();

            if (searchParams.DayOfWeek != null)
            {
                query = query.Where(x => x.DayOfTheWeek == searchParams.DayOfWeek);
            }

            if (!string.IsNullOrEmpty(searchParams.WorkoutId))
            {
                int id = int.Parse(searchParams.WorkoutId);
                query = query.Where(x => x.WorkoutId == id);
            }

            if (searchParams.TimeFrom != null)
            {
                query = query.Where(x => x.TimeOfTheDay >= searchParams.TimeFrom);
            }

            if (searchParams.TimeTo != null)
            {
                query = query.Where(x => x.TimeOfTheDay <= searchParams.TimeTo);
            }

            return(query
                   .OrderBy(x => x.WorkoutId)
                   .OrderBy(x => x.TimeOfTheDay)
                   .Select(x => WorkoutScheduleMapper.fromDb(x))
                   .ToList());
        }
Example #2
0
        public WorkoutSchedule GetById(int Id)
        {
            Database.WorkoutSchedule workoutSchedule = _context.WorkoutSchedules
                                                       .Include(x => x.Workout)
                                                       .Where(x => x.Id == Id)
                                                       .FirstOrDefault();

            if (workoutSchedule == null)
            {
                throw new ResourceNotFoundException($"WorkoutSchedule with id: {Id} not found");
            }

            return(WorkoutScheduleMapper.fromDb(workoutSchedule));
        }