private async Task AddWorkout() { if (_workout.Workout_Name is null) { await Application.Current.MainPage.DisplayAlert("Error", "Please Enter the Workout Name", "OK"); return; } else { _workoutRepository = new WorkoutRepository(); _workoutDaysRepository = new WorkoutDaysRepository(); _exerciseRepository = new ExerciseRepository(); _workoutWeeksrepository = new WorkoutWeeksRepository(); Workouts oLastWorkout = await _workoutRepository.AddWorkout(_workout); foreach (var item in _weeksList) { var weekId = await _workoutWeeksrepository.AddWorkoutWeek(new WorkoutWeeks { Week = item.Week, Workout_Id = oLastWorkout.Workout_id }); foreach (var item2 in item.Days) { var dayId = await _workoutDaysRepository.AddWorkoutDay(new WorkoutDays { Day = item2.Day.ToString(), Workout_Week_Id = weekId.Id, Workout_Id = oLastWorkout.Workout_id }); foreach (var item3 in item2.exercisesOnDays) { await _exerciseRepository.AddExercise(new Exercises { Day_Id = dayId.Id, Exercise_Name = item3.ExerciseId, Sets = item3.Reps, Reps = item3.Reps, Workout_Id = oLastWorkout.Workout_id }); } } } await _navigation.PopAsync(); } }
private async Task FetchWorkoutDetails() { _workoutRepository = new WorkoutRepository(); _workoutWeeksrepository = new WorkoutWeeksRepository(); _workoutDaysRepository = new WorkoutDaysRepository(); _exerciseRepository = new ExerciseRepository(); _workout = await _workoutRepository.GetWorkout(_workout.Workout_id); List <WorkoutWeeks> weeks = await _workoutWeeksrepository.GetAllWorkoutWeeks(_workout.Workout_id); foreach (var week in weeks) { WeeksList addWeek = new WeeksList { Week = week.Week }; addWeek.Days = new ObservableRangeCollection <DaysInWeek>(); var daysInWeek = await _workoutDaysRepository.GetAllWorkoutDays(week.Id); foreach (var day in daysInWeek) { DaysInWeek dayToAdd = new DaysInWeek { Day = Convert.ToInt32(day.Day) }; dayToAdd.exercisesOnDays = new ObservableRangeCollection <ExercisesOnDay>(); var exercisesInDay = await _exerciseRepository.GetExercises(day.Id); foreach (var exercise in exercisesInDay) { dayToAdd.exercisesOnDays.Add(new ExercisesOnDay { ExerciseId = exercise.Exercise_Name, Reps = exercise.Reps, Sets = exercise.Sets }); } addWeek.Days.Add(dayToAdd); } _weeksList.Add(addWeek); } }