コード例 #1
0
        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);
        }
コード例 #2
0
 public void UpdateFromWorkoutVM(CompletedRepetitionVM viewModel, ActivityType activityType)
 {
     base.UpdateFromWorkoutVM(viewModel, activityType);
     PlannedRepetitionId = viewModel.PlannedRepetitionId;
 }
コード例 #3
0
 public CompletedRepetition(CompletedRepetitionVM viewModel, ActivityType activityType, int userId, int id, int workoutId) : base(viewModel, activityType, userId, id)
 {
     PlannedRepetitionId = viewModel.PlannedRepetitionId;
     CompletedWorkoutId  = workoutId;
 }
コード例 #4
0
        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());
        }