Exemple #1
0
        public async Task <IActionResult> Post(int workoutId, WorkoutExerciseModel exerciseModel)
        {
            try
            {
                var userId = User.GetUserId();

                var workout = await workoutRepository.GetWorkoutByIdAsync(userId, workoutId);

                if (workout == null)
                {
                    return(NotFound("No workout was found"));
                }

                var exercise = mapper.Map <WorkoutExercise>(exerciseModel);

                await workoutRepository.AddExerciseAsync(workoutId, exercise);

                if (await workoutRepository.CommitAsync())
                {
                    exerciseModel = mapper.Map <WorkoutExerciseModel>(exercise);
                    return(Ok(exerciseModel));
                }

                return(BadRequest("Unable to add exercise to workout"));
            }
            catch (Exception)
            {
                throw;
                // return StatusCode(StatusCodes.Status500InternalServerError, "Internal Server Error");
            }
        }