public JoinProjectCommand( IPrincipal user, int projectId, JoinProjectRequest joinProjectRequest) { ProjectId = projectId; AtlasHash = joinProjectRequest.AtlasHash; User = user; }
public async Task <IActionResult> JoinProject(int projectId, [FromBody] JoinProjectRequest joinProjectRequest) { var joinProjectCommand = new JoinProjectCommand(User, projectId, joinProjectRequest); var joinProjectResult = await _mediator.Send(joinProjectCommand); return(joinProjectResult.IsSuccess ? joinProjectResult.Value.NeedsPreparation ? AcceptedAtRoute(nameof(BackgroundTaskController.GetBackgroundTask), new { backgroundTaskId = joinProjectResult.Value.TaskId }) : Ok(joinProjectResult.Value.TaskId) : joinProjectResult.IsSuccess ? Ok(joinProjectResult.Value) : BadRequest(joinProjectResult.Error)); }