public async Task <IActionResult> CreateCityAsync([FromBody] CreateCityRequest request) { var createCityCommand = _mapper.Map <CreateCityRequest, CreateCityCommand>(request); await _communicationBus.SendCommandAsync(createCityCommand); var getCityOutputQuery = await _getCityQueryHandler.HandleAsync(new GetCityInputQuery(createCityCommand.CityId)); var cityResponse = _mapper.Map <CityOutputQuery, CityResponse>(getCityOutputQuery); return(CreatedAtRoute("GetCity", new { id = cityResponse.Id }, cityResponse)); }
public async Task <IActionResult> CreateStateAsync([FromBody] CreateStateRequest request) { var createStateCommand = _mapper.Map <CreateStateRequest, CreateStateCommand>(request); await _communicationBus.SendCommandAsync(createStateCommand); var getStateOutputQuery = await _getStateQueryHandler.HandleAsync(new GetStateInputQuery(createStateCommand.StateId)); var stateResponse = _mapper.Map <StateOutputQuery, StateResponse>(getStateOutputQuery); return(CreatedAtRoute("GetState", new { id = stateResponse.Id }, stateResponse)); }
public async Task <IActionResult> CreateAccountAsync([FromBody] CreateAccountRequest request) { var createAccountCommand = _mapper.Map <CreateAccountRequest, CreateAccountCommand>(request); await _communicationBus.SendCommandAsync(createAccountCommand); Response.Headers.Add(HeaderNameConstants.XCorrelationId, createAccountCommand.CorrelationId.ToString()); return(AcceptedAtRoute("GetAccount", new { id = createAccountCommand.AccountId })); }
public async Task <IActionResult> CreateFlatForRentAnnouncementAsync([FromBody] CreateFlatForRentAnnouncementRequest request) { var createFlatForRentAnnouncementCommand = _mapper.Map <CreateFlatForRentAnnouncementRequest, CreateFlatForRentAnnouncementCommand>(request); await _communicationBus.SendCommandAsync(createFlatForRentAnnouncementCommand); var getFlatForRentAnnouncementOutputQuery = await _getFlatForRentAnnouncementQueryHandler.HandleAsync( new GetFlatForRentAnnouncementInputQuery(createFlatForRentAnnouncementCommand .FlatForRentAnnouncementId)); var getFlatForRentAnnouncementResponse = _mapper.Map <FlatForRentAnnouncementOutputQuery, FlatForRentAnnouncementResponse>(getFlatForRentAnnouncementOutputQuery); return(CreatedAtRoute("GetFlatForRentAnnouncement", new { id = getFlatForRentAnnouncementResponse.Id }, getFlatForRentAnnouncementResponse)); }
public async Task <IActionResult> CreateUserAsync([FromBody] CreateUserRequest request) { var createUserCommand = _mapper.Map <CreateUserRequest, CreateUserCommand>(request); await _communicationBus.SendCommandAsync(createUserCommand); var getUserOutputQuery = await _getUserQueryHandler.HandleAsync(new GetUserInputQuery(request.Id)); var userResponse = _mapper.Map <UserOutputQuery, UserResponse>(getUserOutputQuery); return(CreatedAtRoute("GetUser", new { id = userResponse.Id }, userResponse)); }