private async Task <Training> CreateTraining(DataContext context, User user) { var training = Training.Create( "Training 1", new DateTime(2020, 7, 20), user ); var exercise = await GetExercise(context); var trainingExercise = TrainingExercise.Create(exercise, user); var unit = await GetUnit(context); var trainingExerciseSet1 = TrainingExerciseSet.Create( 10, 80, unit, user ); var trainingExerciseSet2 = TrainingExerciseSet.Create( 10, 85, unit, user ); trainingExercise.Sets.Add(trainingExerciseSet1); trainingExercise.Sets.Add(trainingExerciseSet2); training.Exercises.Add(trainingExercise); return(training); }
public async Task <bool> Add(TrainingForAddDto trainingForAddDto, int userId) { var user = await _repoUser.GetUser(userId); var trainingToCreate = Training.Create(trainingForAddDto.Name.Trim(), trainingForAddDto.Date, user); foreach (var trainingExerciseDto in trainingForAddDto.Exercises) { var exercise = await _repoExercise.GetByName(trainingExerciseDto.Exercise.Name, user.Id); if (exercise == null) { _repoExercise.Add(Exercise.Create(trainingExerciseDto.Exercise.Name, user)); await _repoExercise.SaveAll(); exercise = await _repoExercise.GetByName(trainingExerciseDto.Exercise.Name, user.Id); } var exerciseToCreate = TrainingExercise.Create(exercise, user); foreach (var set in trainingExerciseDto.Sets) { var unit = await _repoUnit.GetByCode(set.Unit); var setToCreate = TrainingExerciseSet.Create(set.Reps, set.Weight, unit, user); exerciseToCreate.Sets.Add(setToCreate); } trainingToCreate.Exercises.Add(exerciseToCreate); } _repoTraining.Add(trainingToCreate); return(await _repoTraining.SaveAll()); }
/// <summary> /// Update data in database /// </summary> /// <param name="trainingExerciseSet">data</param> /// <returns>updated data</returns> public TrainingExerciseSet Update(TrainingExerciseSet trainingExerciseSet) { if (trainingExerciseSet == null || string.IsNullOrWhiteSpace(trainingExerciseSet.UserId) || trainingExerciseSet.Year == 0 || trainingExerciseSet.WeekOfYear == 0 || trainingExerciseSet.DayOfWeek < 0 || trainingExerciseSet.DayOfWeek > 6 || trainingExerciseSet.TrainingDayId == 0 || trainingExerciseSet.TrainingExerciseId == 0 || trainingExerciseSet.Id == 0) { return(null); } var row = _dbContext.TrainingExerciseSet.Where(t => t.UserId == trainingExerciseSet.UserId && t.Year == trainingExerciseSet.Year && t.WeekOfYear == trainingExerciseSet.WeekOfYear && t.DayOfWeek == trainingExerciseSet.DayOfWeek && t.TrainingDayId == trainingExerciseSet.TrainingDayId && t.TrainingExerciseId == trainingExerciseSet.TrainingExerciseId && t.Id == trainingExerciseSet.Id).FirstOrDefault(); if (row == null) { // No data in database return(Create(trainingExerciseSet)); } else { //Modify Data in database TrainingExerciseSetTransformer.ToRow(trainingExerciseSet, row); _dbContext.SaveChanges(); return(TrainingExerciseSetTransformer.ToBean(row)); } }
private void TransformMetricUnitToUserUnit(TUnitType userUnit, TrainingExerciseSet trainingExerciseSet) { if (trainingExerciseSet != null) { trainingExerciseSet.Weight = Utils.TransformWeightToUnitSytem(TUnitType.Metric, userUnit, trainingExerciseSet.Weight); } }
/// <summary> /// Create data in database /// </summary> /// <param name="trainingExerciseSet">Data</param> /// <returns>insert data</returns> public TrainingExerciseSet Create(TrainingExerciseSet trainingExerciseSet) { if (trainingExerciseSet == null || string.IsNullOrWhiteSpace(trainingExerciseSet.UserId) || trainingExerciseSet.Year == 0 || trainingExerciseSet.WeekOfYear == 0 || trainingExerciseSet.DayOfWeek < 0 || trainingExerciseSet.DayOfWeek > 6 || trainingExerciseSet.TrainingDayId == 0 || trainingExerciseSet.TrainingExerciseId == 0 || trainingExerciseSet.Id == 0) { return(null); } var row = new TrainingExerciseSetRow(); TrainingExerciseSetTransformer.ToRow(trainingExerciseSet, row); _dbContext.Insert(row); return(TrainingExerciseSetTransformer.ToBean(row)); }
public static void ToRow(TrainingExerciseSet bean, TrainingExerciseSetRow row) { if (bean == null) { return; } row.UserId = bean.UserId; row.Year = bean.Year; row.WeekOfYear = bean.WeekOfYear; row.DayOfWeek = bean.DayOfWeek; row.TrainingDayId = bean.TrainingDayId; row.TrainingExerciseId = bean.TrainingExerciseId; row.Id = bean.Id; row.NumberOfSets = bean.NumberOfSets; row.NumberOfReps = bean.NumberOfReps; row.Weight = bean.Weight; row.Unit = (int)bean.Unit; row.ModificationDate = bean.ModificationDate; }
public static void ToRow(TrainingExerciseSet bean, TrainingExerciseSetRow row) { if (bean == null) { return; } row.UserId = bean.UserId; row.Year = bean.Year; row.WeekOfYear = bean.WeekOfYear; row.DayOfWeek = bean.DayOfWeek; row.TrainingDayId = bean.TrainingDayId; row.TrainingExerciseId = bean.TrainingExerciseId; row.Id = bean.Id; row.NumberOfSets = bean.NumberOfSets; row.NumberOfReps = bean.NumberOfReps; row.Weight = bean.Weight; row.ModificationDate = DbUtils.DbDateToUtc(bean.ModificationDate); row.ExecutionTime = bean.ExecutionTime; }
internal static TrainingExerciseSet ToBean(TrainingExerciseSetRow row) { if (row == null) { return(null); } var bean = new TrainingExerciseSet(); bean.UserId = row.UserId; bean.Year = row.Year; bean.WeekOfYear = row.WeekOfYear; bean.DayOfWeek = row.DayOfWeek; bean.TrainingDayId = row.TrainingDayId; bean.TrainingExerciseId = row.TrainingExerciseId; bean.Id = row.Id; bean.NumberOfSets = row.NumberOfSets; bean.NumberOfReps = row.NumberOfReps; bean.Weight = row.Weight; bean.Unit = Utils.IntToEnum <TUnitType>(row.Unit); bean.ModificationDate = row.ModificationDate; return(bean); }
public static void ToRow(TrainingExerciseSet bean, TrainingExerciseSetRow row) { if (bean == null) { return; } row.UserId = bean.UserId; row.Year = bean.Year; row.WeekOfYear = bean.WeekOfYear; row.DayOfWeek = bean.DayOfWeek; row.TrainingDayId = bean.TrainingDayId; row.TrainingExerciseId = bean.TrainingExerciseId; row.Id = bean.Id; row.NumberOfSets = bean.NumberOfSets; row.NumberOfReps = bean.NumberOfReps; row.Weight = bean.Weight; row.ModificationDate = DbUtils.DateToUtc(Utils.DateTimeWithoutMs); // Set modificationDate if (bean.ObjectVersionNumber > 0) // Retrocompatibility { row.ExecutionTime = bean.ExecutionTime; } }
internal static TrainingExerciseSet ToBean(TrainingExerciseSetRow row) { if (row == null) { return(null); } var bean = new TrainingExerciseSet(); bean.UserId = row.UserId; bean.Year = row.Year; bean.WeekOfYear = row.WeekOfYear; bean.DayOfWeek = row.DayOfWeek; bean.TrainingDayId = row.TrainingDayId; bean.TrainingExerciseId = row.TrainingExerciseId; bean.Id = row.Id; bean.NumberOfSets = row.NumberOfSets; bean.NumberOfReps = row.NumberOfReps; bean.Weight = row.Weight; bean.ModificationDate = DbUtils.DbDateToUtc(row.ModificationDate); bean.ExecutionTime = row.ExecutionTime.HasValue ? row.ExecutionTime.Value : 0; return(bean); }
public TrainingExerciseSet UpdateTrainingExerciseSet(TrainingExerciseSet trainingExerciseSet) { return(_trainingExerciseSetModule.Update(trainingExerciseSet)); }