public async Task <bool?> UpdateRepetition(int userId, int workoutId, CompletedRepetitionVM viewModel) { var existing = await _completedRepetitionRepository.Get(viewModel.Id, workoutId, userId); if (viewModel is null) { return(null); } if (viewModel.PlannedRepetitionId.HasValue && viewModel.PlannedRepetitionId != existing.PlannedRepetitionId) { throw new RestException(System.Net.HttpStatusCode.BadRequest, "Cannot change planned repetition in this request."); } existing.UpdateFromVM(viewModel); return((await _completedRepetitionRepository.Update(existing)) > 0); }
public void UpdateFromWorkoutVM(CompletedRepetitionVM viewModel, ActivityType activityType) { base.UpdateFromWorkoutVM(viewModel, activityType); PlannedRepetitionId = viewModel.PlannedRepetitionId; }
public CompletedRepetition(CompletedRepetitionVM viewModel, ActivityType activityType, int userId, int id, int workoutId) : base(viewModel, activityType, userId, id) { PlannedRepetitionId = viewModel.PlannedRepetitionId; CompletedWorkoutId = workoutId; }
public async Task <IActionResult> Update([FromRoute] int userId, [FromRoute] int workoutId, [FromBody] CompletedRepetitionVM viewModel) { var result = await _completedRepetitionService.UpdateRepetition(userId, workoutId, viewModel); if (result.HasValue) { return(Ok(result)); } return(NotFound()); }