public async Task <UserResponseModel> PutUser( int userId, [FromForm] UserRequestModel model, CancellationToken cancellationToken ) { cancellationToken.ThrowIfCancellationRequested(); var command = new UpdateUserCommand( userId, model.Login, model.Password, model.PersonId ); await _mediator.Send(command, cancellationToken); var query = new FindUserByIdQuery(userId); var user = await _mediator.Send(query, cancellationToken); var response = _mapper.Map <UserResponseModel>(user); return(response); }
public async Task <UserDetailsResponseModel> Get(CancellationToken cancellationToken) { cancellationToken.ThrowIfCancellationRequested(); var userId = User.SubjectId(); // TODO: add custom query that should not return null - Single() var query = new FindUserByIdQuery(userId); var user = await _mediator.Send(query, cancellationToken); var response = _mapper.Map <UserDetailsResponseModel>(user); return(response); }
public async Task <UserResponseModel> PostUser( [FromForm] UserRequestModel model, CancellationToken cancellationToken ) { cancellationToken.ThrowIfCancellationRequested(); var command = _mapper.Map <CreateUserCommand>(model); var userId = await _mediator.Send(command, cancellationToken); var query = new FindUserByIdQuery(userId); var user = await _mediator.Send(query, cancellationToken); var response = _mapper.Map <UserResponseModel>(user); return(response); }
public async Task <UserDetailsResponseModel> GetUser( int userId, CancellationToken cancellationToken ) { cancellationToken.ThrowIfCancellationRequested(); var query = new FindUserByIdQuery(userId); var user = await _mediator.Send(query, cancellationToken); if (user == null) { throw new NotFoundException(nameof(user), userId); } var response = _mapper.Map <UserDetailsResponseModel>(user); return(response); }