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

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

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

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

            return(Ok());
        }
Exemple #2
0
 public async Task ChangeItemQuantityOnShoppingList(ChangeItemQuantityOnShoppingListContract contract)
 {
     await apiClient.ChangeItemQuantityOnShoppingList(contract);
 }