コード例 #1
0
        public async Task <Guid> CopyWorkout(CopyWorkoutModel model, string userId)
        {
            DateTimeOffset startDateTime;

            if (!string.IsNullOrWhiteSpace(model.TimeZoneName))
            {
                startDateTime =
                    GetZonedTime(
                        model.CurrentDateTime.Value,
                        model.TimeZoneName).ToDateTimeOffset();
            }
            else
            {
                startDateTime = model.CurrentDateTime.Value;
            }

            var workoutId = Guid.NewGuid();
            await _mediator.Send(
                new CopyWorkoutRequest(
                    workoutId,
                    model.WorkoutId.Value,
                    userId,
                    startDateTime));

            return(workoutId);
        }
コード例 #2
0
        public async Task <IActionResult> CopyWorkout(Guid workoutId, [FromBody] CopyWorkoutModel model)
        {
            var userId = _userManager.GetUserId(User);

            model.WorkoutId = workoutId;
            var newWorkoutId = await _workoutsOrchestrator.CopyWorkout(model, userId);

            return(Ok(new { workoutId = newWorkoutId }));
        }
コード例 #3
0
ファイル: WorkoutController.cs プロジェクト: JoachimL/fiit-ai
        public async Task <IActionResult> CopyWorkout(CopyWorkoutModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var userId       = _userManager.GetUserId(User);
            var newWorkoutId = await _workoutsOrchestrator.CopyWorkout(model, userId);

            return(RedirectToAction("Detail", new { id = newWorkoutId }));
        }