private async Task GetProductsAsync() { ShoppingCartProductList = new ObservableCollection <Product>(); var restService = new Tech4GamingApi(); List <string> toRemove = new List <string>(); foreach (var productId in _app.ShoppingCartProducts) { Product result = await GetProductByIdAsync(restService, productId); Console.WriteLine(result); if (result == null) { Console.WriteLine("Cannot find this product"); toRemove.Add(productId); continue; } this.ShoppingCartProductList.Add(result); } _app.RemoveDeprecatedProductsFromShoppingList(toRemove); UpdateShoppingListItemSource(); LocalDataManager.Save(_app.GetLocalDataToSave()); }
public static async Task <IEnumerable <Product> > GetProductsAsync() { var restService = new Tech4GamingApi(); var products = await restService.GetProductsAsync(); return(products); }
private async Task <Product> GetProductByIdAsync(Tech4GamingApi restService, string productId) { Product result = null; try { result = await restService.GetProductByIdAsync(productId); } catch (Exception ex) { Console.WriteLine("An error occurred\n" + ex.Message); return(null); } return(result); }
public static async Task <List <Product> > FilterProductsByPartialNameAsync(ObservableCollection <ProductCategory> categoryList, string partialName) { var restService = new Tech4GamingApi(); List <Product> products = new List <Product>(); // Get products foreach (var category in categoryList) { Product[] tmpProducts; if (category.IsSelected) { tmpProducts = await restService.GetProductsByPartialNameAsync(category.Name, partialName); products.AddRange(tmpProducts); } } return(products); }
public static async Task <List <Product> > FilterProductsByCategoryLocationAsync(ObservableCollection <ProductCategory> categoryList, string currencyStr) { var restService = new Tech4GamingApi(); List <Product> products = new List <Product>(); // Get products foreach (var category in categoryList) { Product[] tmpProducts; if (category.IsSelected) { tmpProducts = await restService.GetProductsByCategoryLocationLimitAsync(category.Name, "0", category.Skip.ToString(), currencyStr); category.Skip = tmpProducts.Length; products.AddRange(tmpProducts); } } return(products); }
public static async Task <List <Product> > GetProductsByCategoryAsync(ObservableCollection <ProductCategory> categoryList) { var restService = new Tech4GamingApi(); List <Product> products = new List <Product>(); // Get products foreach (var category in categoryList) { Product[] tmpProducts; if (category.IsSelected) { tmpProducts = await restService.GetProductsByCategoryLimitAsync(category.Name, category.Skip.ToString(), "10"); category.Skip += tmpProducts.Length; if (tmpProducts != null) { products.AddRange(tmpProducts); } } } return(products); }
public static async Task <Product> DeleteProductAsync(string productId) { var restService = new Tech4GamingApi(); return(await restService.DeleteProductByIdAsync(productId)); }
public static async Task <Product> PostProductAsync(ProductPost product, ByteArrayPart bytes) { var restService = new Tech4GamingApi(); return(await restService.PostProductAsync(product, bytes)); }