public async Task <IActionResult> CreateItem([FromBody] CreateItemContract createItemContract) { var model = itemCreationConverter.ToDomain(createItemContract); var command = new CreateItemCommand(model); await commandDispatcher.DispatchAsync(command, default); return(Ok()); }
public async Task <ActionResult <ItemDTO> > PostAsync([FromBody] CreateItemContract createItemContract) { var item = new Item { Name = createItemContract.Name, Description = createItemContract.Description, Price = createItemContract.Price, CreatedDate = DateTimeOffset.UtcNow }; await _itemsRepository.CreateAsync(item); await _publishEndpoint.Publish(new CatalogItemCreatedContract(item.Id, item.Name, item.Description)); return(CreatedAtAction(nameof(GetByIdAsync), new { id = item.Id }, item)); }
public async Task CreateItem(CreateItemContract createItemContract) { await apiClient.CreateItem(createItemContract); }