Ejemplo n.º 1
0
        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());
        }
Ejemplo n.º 2
0
        public static async Task <IEnumerable <Product> > GetProductsAsync()
        {
            var restService = new Tech4GamingApi();

            var products = await restService.GetProductsAsync();

            return(products);
        }
Ejemplo n.º 3
0
        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);
        }
Ejemplo n.º 4
0
        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);
        }
Ejemplo n.º 5
0
        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);
        }
Ejemplo n.º 6
0
        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);
        }
Ejemplo n.º 7
0
        public static async Task <Product> DeleteProductAsync(string productId)
        {
            var restService = new Tech4GamingApi();

            return(await restService.DeleteProductByIdAsync(productId));
        }
Ejemplo n.º 8
0
        public static async Task <Product> PostProductAsync(ProductPost product, ByteArrayPart bytes)
        {
            var restService = new Tech4GamingApi();

            return(await restService.PostProductAsync(product, bytes));
        }