public async Task <bool> ExitWorkoutAsync(Guid id, ApplicationUser user) { var item = await _context.Items .Where(x => x.Id == id) .SingleOrDefaultAsync(); if (item == null) { return(false); } var model = new WorkoutUser { TreniruoteId = item.Id, UserId = user.Id }; _context.workoutUsers.Remove(model); item.Registracijos--; if (item.Registracijos <= 0) { item.Registracijos = 0; } var saveResult = await _context.SaveChangesAsync(); return(saveResult == 1); }
public async Task <bool> JoinWorkoutAsync(Guid id, ApplicationUser user) { var item = await _context.Items .Where(x => x.Id == id) .SingleOrDefaultAsync(); if (item == null) { return(false); } var model = new WorkoutUser { TreniruoteId = item.Id, UserId = user.Id }; if (item.Registracijos != item.LaisvosVietos) { _context.workoutUsers.Add(model); item.Registracijos++; } var saveResult = await _context.SaveChangesAsync(); return(saveResult == 1); }
public IHttpActionResult NewWorkout([FromBody] JObject jsonResult) { dynamic jObjReturn = new JObject(); try { DetailsViewModel model = jsonResult.ToObject <DetailsViewModel>(); CoachItEntities _db = new CoachItEntities(); WorkoutUser workoutUser = new WorkoutUser() { UserId = model.UserId, Workout = model.WorkoutTitle, Timestamp = DateTime.Now }; _db.WorkoutUsers.Add(workoutUser); _db.SaveChanges(); foreach (Exercise exer in model.Exercises) { WorkoutExercisesLInk wel = new WorkoutExercisesLInk { ExerciseId = exer.ExerciseId, Duration = exer.Duration, Weight = exer.Weight, Repititions = exer.Repititions, Sets = exer.Sets, WorkoutUsersId = workoutUser.Id }; _db.WorkoutExercisesLInks.Add(wel); _db.SaveChanges(); } _db.Dispose(); jObjReturn.status = "OK"; jObjReturn.result = "New workout created succesfuly!"; } catch (Exception exception) { jObjReturn.status = "FAILED"; jObjReturn.result = $"Could not create workout Exercise.\n{exception.Message}"; } return(Ok(jObjReturn)); }