Ejemplo n.º 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");
            }
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> Post(WorkoutModel workoutModel)
        {
            try
            {
                var userId = User.GetUserId();

                if (!ModelState.IsValid)
                {
                    return(BadRequest());
                }

                var workout = mapper.Map <Workout>(workoutModel);
                workout.ApplicationUserId = userId;

                await workoutRepository.AddWorkoutAsync(workout);

                if (await workoutRepository.CommitAsync())
                {
                    workoutModel = mapper.Map <WorkoutModel>(workout);
                    return(Ok(workoutModel));
                }

                return(BadRequest());
            }
            catch (Exception)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, "Internal Server Error"));
            }
        }