public Workout GetWorkoutById(int WorkoutId) { using (var connection = new SqlConnection(ConnectionString)) { using (var command = new SqlCommand("GetWorkoutById", connection)) { command.CommandType = CommandType.StoredProcedure; Workout workout = new Workout(); SqlParameter parameter; parameter = new SqlParameter { ParameterName = "@WorkoutId", SqlDbType = SqlDbType.Int, Direction = ParameterDirection.Input, SqlValue = WorkoutId }; command.Parameters.Add(parameter); command.Connection.Open(); using (var dataReader = command.ExecuteReader()) { if (dataReader.HasRows) { ExerciseService exerciseManager = new ExerciseService(); while (dataReader.Read()) { workout.WorkoutId = dataReader.GetInt32("WorkoutId"); workout.ClientId = dataReader.GetInt32("ClientId"); workout.WorkoutName = dataReader.GetString("WorkoutName"); workout.DateStarted = dataReader.GetDateTime("DateStarted"); workout.DateCompleted = dataReader.IsDBNull("DateCompleted") ? null : (DateTime?)dataReader.GetDateTime("DateCompleted"); workout.Notes = dataReader.IsDBNull("Notes") ? null : dataReader.GetString("Notes"); workout.WorkoutExercises = exerciseManager.GetWorkoutExercisesByWorkoutId(dataReader.GetInt32("WorkoutId")); } } } return(workout); } } }
public int StartWorkout(WorkoutPlan WorkoutPlan) { int workoutId = AddWorkout(WorkoutPlan); ExerciseService exerciseManager = new ExerciseService(); foreach (ExercisePlan exercisePlan in WorkoutPlan.ExercisePlans) { int workoutExerciseId = exerciseManager.AddWorkoutExercise(workoutId, exercisePlan); foreach (SetPlan setPlan in exercisePlan.SetPlans) { exerciseManager.AddExerciseSet(workoutExerciseId, setPlan); } if (exercisePlan.SupersetExercise != null) { int supersetWorkoutExerciseId = exerciseManager.AddWorkoutExercise(workoutId, exercisePlan.SupersetExercise, workoutExerciseId); foreach (SetPlan setPlan in exercisePlan.SupersetExercise.SetPlans) { exerciseManager.AddExerciseSet(supersetWorkoutExerciseId, setPlan); } } } return(workoutId); }