예제 #1
0
        private async Task UpdateCart()
        {
            await ShowLoading();

            try
            {
                CartUpdateRequestModel request = new CartUpdateRequestModel
                {
                    checkoutId = Settings.CheckoutId
                };
                request.lineItems = new List <UpdateLineItem>();
                foreach (var item in CartList)
                {
                    request.lineItems.Add(new UpdateLineItem
                    {
                        id        = item.id,
                        quantity  = item.quantity,
                        variantId = item.variant.id
                    });
                }

                string query  = @"mutation checkoutLineItemsUpdate($checkoutId: ID!, $lineItems: [CheckoutLineItemUpdateInput!]!) {
                  checkoutLineItemsUpdate(checkoutId: $checkoutId, lineItems: $lineItems) {
                    checkout {
                      id
                    }
                    checkoutUserErrors {
                      code
                      field
                      message
                    }
                  }
                }";
                var    result = await _apiService.UpdateCart(query, request);

                if (result != null)
                {
                    await InitilizeData();
                }
                else
                {
                    await HideLoading();
                }
            }
            catch (Exception ex)
            {
                await HideLoading();
            }
            await HideLoading();
        }
예제 #2
0
        public async Task <CartUpdateResponseModel> UpdateCart(string query, CartUpdateRequestModel request)
        {
            var res = await PostAsynGraphql <CartUpdateRequestModel, CartUpdateResponseModel>(query, request);

            return(res);
        }