コード例 #1
0
        public Models.Workout.Workout GetById(int Id)
        {
            Workout dbWorkout = _context.Workouts
                                .Include(x => x.WorkoutType)
                                .Include(x => x.Trainer)
                                .ThenInclude(x => x.AppUser)
                                .Where(x => x.Id == Id)
                                .FirstOrDefault();

            if (dbWorkout == null)
            {
                throw new ResourceNotFoundException($"Workout with id {Id} not found");
            }

            return(WorkoutMapper.FromDb(dbWorkout));
        }
コード例 #2
0
        public List <Models.Workout.Workout> GetAll(Models.Requests.Workout.WorkoutSearchParams searchParams, UserInfo userInfo)
        {
            IQueryable <Workout> query = _context.Workouts
                                         .Include(x => x.WorkoutType)
                                         .Include(x => x.Trainer)
                                         .ThenInclude(x => x.AppUser)
                                         .AsQueryable();

            if (userInfo.Role == "TRAINER")
            {
                searchParams.TrainerId = userInfo.Id;
            }

            if (!string.IsNullOrEmpty(searchParams.Difficulty))
            {
                query = query.Where(x => x.Difficulty.Equals(searchParams.Difficulty));
            }

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

            if (searchParams.TrainerId != null)
            {
                query = query.Where(x => x.Trainer.AppUser.Id.Equals(searchParams.TrainerId));
            }

            if (!string.IsNullOrEmpty(searchParams.WorkoutType))
            {
                query = query.Where(x => x.WorkoutType.Name == searchParams.WorkoutType);
            }

            return(query.Select(x => WorkoutMapper.FromDb(x))
                   .ToList());
        }
コード例 #3
0
 public void Initialize()
 {
     _model  = new Workout();
     _mapper = new WorkoutMapper();
     _mock   = new Mock <Workout>(MockBehavior.Strict);
 }