public async Task <IActionResult> RemoveItemFromBasket([FromBody] RemoveItemFromBasketContract contract)
        {
            OfflineTolerantItemId itemId;

            try
            {
                itemId = offlineTolerantItemIdConverter.ToDomain(contract.ItemId);
            }
            catch (ArgumentException)
            {
                return(BadRequest("No item id was specified."));
            }

            var command = new RemoveItemFromBasketCommand(new ShoppingListId(contract.ShoppingListId), itemId);

            try
            {
                await commandDispatcher.DispatchAsync(command, default);
            }
            catch (DomainException e)
            {
                return(BadRequest(e.Reason));
            }

            return(Ok());
        }
Пример #2
0
 public async Task RemoveItemFromBasket(RemoveItemFromBasketContract contract)
 {
     await apiClient.RemoveItemFromBasket(contract);
 }