Exemple #1
0
        public void Test1()
        {
            IWebDriver chromeDriver = new ChromeDriver();

            chromeDriver.Manage().Timeouts().PageLoad = TimeSpan.FromMinutes(2);

            MainPage     mainPage     = new MainPage(chromeDriver);
            string       nextPageURL  = mainPage.SearchProduct("marshall major");
            SearchPage   searchPage   = new SearchPage(chromeDriver);
            ProductsList productsList = new ProductsList(chromeDriver);

            Thread.Sleep(100);

            Assert.That(nextPageURL, Is.EqualTo(chromeDriver.Url));
            OLXProduct product = new OLXProduct(chromeDriver, 10);

            product.DisplayProductInfo();
            searchPage.DisplayAll();

            /*for (int i = 4; i < 7; i ++)
             * {
             *  product = new OLXProduct(chromeDriver, i);
             *
             * }*/
            chromeDriver.Close();
        }
Exemple #2
0
        private void RemoveCheckedProduct_Click(object sender, EventArgs e)
        {
            List <ProductRawData> removeList = new List <ProductRawData>();

            for (int i = 0; i < ProductsList.Items.Count; i++)
            {
                if (ProductsList.GetItemChecked(i))
                {
                    ProductRawData tempData = new ProductRawData();
                    tempData.RefactorString(ProductsList.Items[i].ToString());
                    removeList.Add(tempData);
                }
            }

            for (int i = 0; i < removeList.Count; i++)
            {
                bool DONE = controller.RemoveProduct(removeList[i].ID);
                if (DONE)
                {
                    MessageBox.Show(removeList[i].ToString() + " Removed");
                }
                else
                {
                    MessageBox.Show(removeList[i].ToString() + " Remove Failed");
                }
            }

            RefreshProductsList_Click(sender, e);
        }
        //[OutputCache(Duration = 3600, VaryByParam = "code,v")]
        public ActionResult GetPrice(int?code, string v)
        {
            Tax_Rate t = new Tax_Rate {
                id = 1, rate = 10, type = 2
            };
            //var product = ProductsList.FirstOrDefault(x => x.Id == code);

            var allPosItems = _posItemService.GetAllInclude("StockItem").ToList();

            var availableItemsId = allPosItems.Where(x => x.Remaining > 0 && x.DistributionPointId == DistributionPointId).Select(x => x.ItemId).ToList();

            var product = ProductsList.FirstOrDefault(x => x.Id == code && availableItemsId.Contains((int)x.Id));

            if (product == null)
            {
                product = new POSService.Entities.StockItem();
                product.TotalQuantity = 0;
            }
            else
            {
                var posItem = allPosItems.FirstOrDefault(x => x.ItemId == code.Value);
                product.TotalQuantity = posItem.Remaining;
            }



            return(Json(new
            {
                price = decimal.Zero,
                name = product.StockItemName,
                code = product.Id.ToString(),
                tax_rate = t,
                available = product.TotalQuantity
            }, JsonRequestBehavior.AllowGet));
        }
        public void UpdateProductsData(SkuList skuList, ProductsList productsList)
        {
            _skuUpdater.SkuCancellationTokenSource.Token.ThrowIfCancellationRequested();
            _skuUpdater.SkuProgress(SkuProgressStep.UpdateProductsData);

            foreach (var skuItem in skuList.List)
            {
                Func <ProductItem, bool> findProductPredicate =
                    product => product.Sku == skuItem.Sku && (skuItem.Price.HasValue || skuItem.Quantity.HasValue);
                var anyProduct = productsList.List.Any(findProductPredicate);
                if (!anyProduct)
                {
                    skuItem.Unused = true;
                    continue;
                }

                foreach (var product in productsList.List.Where(findProductPredicate))
                {
                    if (skuItem.Price.HasValue)
                    {
                        product.Price = skuItem.Price.Value;
                    }
                    if (skuItem.Quantity.HasValue)
                    {
                        product.Quantity = skuItem.Quantity.Value;
                    }
                    product.Updated = true;
                }
            }
        }
Exemple #5
0
        public void TestJoinExceptions()
        {
            var products = new ProductsList().GetProducts();

            List <ProductsList.Ingredient> newIngredients = null;

            Func <ProductsList.Product, int>    outerFunc = (product) => product.ID;
            Func <ProductsList.Ingredient, int> innerFunc = (ingredient) => ingredient.IngredientID;
            Func <ProductsList.Product, ProductsList.Ingredient, KeyValuePair <string, string> > selector = (product, ingredient) =>
            {
                {
                    return(new KeyValuePair <string, string>(product.Name, ingredient.Name));
                }
            };

            var result = LinqFunctions.Join(products, newIngredients,
                                            product => outerFunc(product), newIngredient => innerFunc(newIngredient),
                                            (product, newIngredient) =>
                                            selector(product, newIngredient));

            var numerator = result.GetEnumerator();

            var exception = Assert.Throws <ArgumentNullException>(() => numerator.MoveNext());

            Assert.Equal("source", exception.ParamName);
        }
        public void UpdateProductsFile(ProductsList productsList)
        {
            if (!productsList.List.Any(z => z.Updated))
            {
                return;
            }

            _skuUpdater.SkuCancellationTokenSource.Token.ThrowIfCancellationRequested();
            _skuUpdater.SkuProgress(SkuProgressStep.UpdateProductsFile);

            XSSFWorkbook workbook;

            using (var fileStream = new FileStream(_skuUpdater.ProductsFilePath, FileMode.Open, FileAccess.Read))
                workbook = new XSSFWorkbook(fileStream);
            var worksheet = workbook.GetSheetAt(0);

            const int priceColumnIndex    = 16;
            const int quantityColumnIndex = 11;

            foreach (var product in productsList.List.Where(z => z.Updated))
            {
                var row = worksheet.GetRow(product.Index);
                row.GetCell(priceColumnIndex).SetCellValue(product.Price);
                row.GetCell(quantityColumnIndex).SetCellValue(product.Quantity);
            }

            using (var fileStream = new FileStream(_skuUpdater.ProductsFilePath, FileMode.Create, FileAccess.Write))
                workbook.Write(fileStream);

            workbook.Close();
        }
 /// <summary>
 /// Click the product specified by number in a list
 /// </summary>
 /// <param name="number"></param>
 public void ClickProduct(int number)
 {
     ProductsList.ElementAt(number - 1).Click();
     ScenarioContext.Current["ProductName"]     = ProductName.Text;
     ScenarioContext.Current["ProductPrice"]    = ProductPrice.GetAttribute("content").TrimStart('£').ToString();
     ScenarioContext.Current["ProductQuantity"] = ProductPrice.GetAttribute("content").ToString();
 }
        public ActionResult GetProductCount(int?product_id)
        {
            var allPosItems = _posItemService.GetAllInclude("StockItem").ToList();

            var availableItemsId = allPosItems.Where(x => x.Remaining > 0 && x.DistributionPointId == DistributionPointId).Select(x => x.ItemId).ToList();

            var product = ProductsList.FirstOrDefault(x => x.Id == product_id && availableItemsId.Contains((int)x.Id));

            if (product == null)
            {
                product = new POSService.Entities.StockItem();
                product.TotalQuantity = 0;
            }
            else
            {
                var posItem = allPosItems.FirstOrDefault(x => x.ItemId == product_id.Value);
                product = new POSService.Entities.StockItem();
                product.TotalQuantity = posItem.Remaining;
            }

            return(Json(new
            {
                Remainder = product.TotalQuantity
            }, JsonRequestBehavior.AllowGet));
        }
        private void ProductsList_ColumnClick(object sender, ColumnClickEventArgs e)
        {
            if (e.Column != sortColumn)
            {
                // Set the sort column to the new column.
                sortColumn = e.Column;
                // Set the sort order to ascending by default.
                SalesLogView.Sorting = SortOrder.Ascending;
            }
            else
            {
                // Determine what the last sort order was and change it.
                if (ProductsList.Sorting == SortOrder.Ascending)
                {
                    ProductsList.Sorting = SortOrder.Descending;
                }
                else
                {
                    ProductsList.Sorting = SortOrder.Ascending;
                }
            }

            // Call the sort method to manually sort.
            ProductsList.Sort();
            // Set the ListViewItemSorter property to a new ListViewItemComparer
            // object.
            this.ProductsList.ListViewItemSorter = new ListViewItemComparer(e.Column,
                                                                            ProductsList.Sorting);
        }
        protected void btnExecute_Click(object sender, EventArgs e)
        {
            //Define a workbook to store null value initially
            Workbook workbook = null;

            string path = MapPath(".");
            path = path.Substring(0, path.LastIndexOf("\\"));

            ProductsList productsList = new ProductsList(path);

            //Create a workbook based on a class's custom method
            workbook = productsList.CreateProductsList();

            if (ddlFileVersion.SelectedItem.Value == "XLS")
            {
                ////Save file and send to client browser using selected format
                workbook.Save(HttpContext.Current.Response, "ProductList.xls", ContentDisposition.Attachment, new XlsSaveOptions(SaveFormat.Excel97To2003));
            }
            else
            {
                workbook.Save(HttpContext.Current.Response, "ProductList.xlsx", ContentDisposition.Attachment, new OoxmlSaveOptions(SaveFormat.Xlsx));
            }

            //end response to avoid unneeded html
            HttpContext.Current.Response.End();
        }
        public async void GetAllProduct(object start)
        {
            if (hasMore)
            {
                IsFetching = true;
                if (Position.HasValue)
                {
                    List <Product> temp = ProductsList.ToList();
                    if (Categories != null && Categories.Count > 0)
                    {
                        List <Product> list = await App.DbHelper.GetAllProducts(CategoryIds?[Position.Value], ProductsList.Count);

                        if (list.Count == 0)
                        {
                            hasMore = false;
                        }
                        temp.AddRange(list);
                        temp     = temp.Distinct().ToList();
                        tempList = temp;
                        SearchProduct(false);
                    }
                }
                IsFetching = false;
            }
        }
        public async Task Init()
        {
            if (ProductTypesList.Count == 0)
            {
                var productTypesList = await _productTypesService.Get <List <ProductTypes> >(null);

                ProductTypesList.Add(new ProductTypes("All"));
                foreach (var item in productTypesList)
                {
                    ProductTypesList.Add(item);
                }
            }

            if (SelectedProductTypes != null)
            {
                ProductsSearchRequest searchRequest = new ProductsSearchRequest();
                if (SelectedProductTypes.Name == "All")
                {
                    searchRequest = null;
                }
                else
                {
                    searchRequest.ProductTypeId = SelectedProductTypes.Id;
                }
                var list = await _service.Get <IEnumerable <Products> >(searchRequest);

                ProductsList.Clear();
                foreach (var item in list)
                {
                    ProductsList.Add(item);
                }
            }
        }
        public IHttpActionResult PostProducts(ProductsList productsList)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            Products productes = new Products();

            //productes. = productsList.Poid;
            productes.MProductId   = productsList.MProductId;
            productes.Introduction = productsList.Introduction;
            productes.Details      = productsList.Details;
            productes.VideoLink    = productsList.VideoLink;
            db.Productses.Add(productes);
            db.SaveChanges();
            var          images = productsList.UploadImagesName.Split(',');
            UploadImages ui     = new UploadImages();

            for (int i = 0; i < images.Length; i++)
            {
                if (images[i] == "" || images[i] == null)
                {
                }
                else
                {
                    ui.ProductId = productes.Id;
                    ui.ImageName = images[i];
                    db.UploadImageses.Add(ui);
                    db.SaveChanges();
                }
            }
            return(Ok(productes));
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            //顾客购买统计
            var _db = new WingtipToys.Models.ProductContext();
            List <OrderDetail> orderList = _db.OrderDetails.ToList();

            PurchaseList.DataSource = orderList;
            PurchaseList.DataBind();

            //销售统计
            AdminOperation admin = new AdminOperation();
            List <Product> list  = admin.GetAllProduct();

            ProductsList.DataSource = list;
            ProductsList.DataBind();
            int    sumNum   = 0;
            double sumMoeny = 0;

            foreach (Product p in list)
            {
                sumNum   += p.Sold;
                sumMoeny += (double)p.Sold * (double)p.UnitPrice;
            }
            SumNumber.Text = "书籍销售总数:" + sumNum.ToString();
            SumMoney.Text  = "书籍销售总金额:" + sumMoeny.ToString();
        }
Exemple #15
0
        protected void UpdateViewComputer(Object sender, EventArgs e)
        {
            MySqlConnection con = new MySqlConnection("Data Source=localhost;Initial Catalog=sys; User Id=root;password=symbor97;");
            MySqlCommand    cmd = new MySqlCommand("Select * from computers", con);

            con.Open();

            MySqlDataAdapter adp = new MySqlDataAdapter(cmd);
            DataTable        tab = new DataTable();

            adp.Fill(tab);

            Computer comp     = new Computer();
            String   htmlText = "";

            foreach (DataRow row in tab.Rows)
            {
                comp.AddAllComponents(row, tab.Columns.Count);
                htmlText += comp.BuildHtmlComputerItem(row["ConfigurationName"].ToString());
            }

            ComputerComponentContent.Visible = false;
            computerDisplayList.Visible      = true;
            ContactsPage.Visible             = false;
            FeedbackForm.Visible             = false;

            computerConfigList.InnerHtml = htmlText;
            con.Close();

            ProductsList.DataSource = null;
            ProductsList.DataBind();
        }
Exemple #16
0
        public void TestToDictionaryWhenDuplicateKeysException()
        {
            var productList = new ProductsList().GetProducts();

            var prodToAdd = new ProductsList.Product
            {
                ID          = 6,
                Name        = "Deodorant",
                Price       = 6,
                Ingredients = new List <ProductsList.Ingredient> {
                    new ProductsList.Ingredient {
                        Name = "Fresh"
                    }, new ProductsList.Ingredient {
                        Name = "Parfum4"
                    }
                }
            };

            productList.Add(prodToAdd);

            Func <ProductsList.Product, int>    myKeyFunc     = (x) => x.ID;
            Func <ProductsList.Product, string> myElementFunc = (x) => x.Name;

            var dictionary = Assert.Throws <ArgumentException>(() => LinqFunctions.ToDictionary(productList, p => myKeyFunc(p), z => myElementFunc(z)));

            Assert.Equal("An item with the same key has already been added. Key: 6", dictionary.Message);
        }
    protected void Page_Load(object sender, EventArgs e)
    {
        ProductsList.DataSource = ProductsFactory.GetProductsList();
        ProductsList.DataBind();

        string id = Request.QueryString["id"];

        if (Request.QueryString["id"] == null)
        {
            Response.Redirect("Index.aspx");
        }
        else
        {
            Product p = ProductsFactory.GetProductById(id);
            productId.InnerText   = p.Id;
            productName.InnerText = p.Name;
            Nowprice.InnerText    = p.Price.ToString();
            Oldprice.InnerText    = p.OldPrice.ToString();
            Introd1.Src           = p.ImgPath;
            Introd2.Src           = p.ImgPath2;
            Detail.InnerText      = p.Detail;
            Tag.InnerText         = p.Tag;
            Class.InnerText       = p.Class;
        }
    }
Exemple #18
0
 public static bool LoadProducts()
 {
     try
     {
         ProductsList.Clear();
         using (var sr = new StreamReader(FilePath))
         {
             var deSerializer = new XmlSerializer(typeof(ObservableCollection<Product>));
             var tmpCollection =
                 (ObservableCollection<Product>) deSerializer.Deserialize(sr);
             foreach (var item in tmpCollection)
             {
                 ProductsList.Add(item);
             }
             return true;
         }
     }
     catch (Exception ex)
     {
         if (ex is FileNotFoundException)
         {
             var sw = new StreamWriter(FilePath);
         }
         MessageBox.Show(ex.Message);
         return false;
     }
 }
Exemple #19
0
    [SerializeField] GameObject _backToWallet;      // объект-ссылка для измения элемента Progress Bar

    void Start()
    {
        onShop1Cliked = false;
        onShop2Cliked = false;
        onShop3Cliked = false;

        resultProductsPrefabs = new List <GameObject>();
        curruntPrefabIndex    = 0;

        // Назначение обработчиков нажатия кнопок магазинов
        Shop1Button.onClick.AddListener(Shop1Clicked);
        Shop2Button.onClick.AddListener(Shop2Clicked);
        Shop3Button.onClick.AddListener(Shop3Clicked);
        CheeseCategoryButton.onClick.AddListener(CheeseCategoryClicked);
        FruitCategoryButton.onClick.AddListener(FuitCategoryClicked);
        MilkCategoryButton.onClick.AddListener(MilkCategoryClicked);
        MeatCategoryButton.onClick.AddListener(MeatCategoryClicked);

        TextAsset asset = Resources.Load("DB") as TextAsset;            // загрузка JSON файла

        if (asset != null)
        {
            productsList = JsonUtility.FromJson <ProductsList>(asset.text);             // считывание полей JSON файла
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        ProductResponse ProductResponseObj = null;

        try
        {
            if (Request.QueryString["k"] != null)
            {
                ProductResponseObj = new ProductsList().FetchProducts(HttpUtility.UrlDecode(Request.QueryString["k"].ToString()));
                Logger.Instance().Log(Info.Instance(), new LogInfo("Product Searched : " + HttpUtility.UrlDecode(Request.QueryString["k"].ToString())));
            }
            else
            {
                ProductResponseObj = new ProductsList().FetchProducts();
            }
        }
        catch (Exception ex)
        {
            ProductResponseObj = new ProductResponse
            {
                HasProducts    = false,
                responseString = "Unable to view products this time, please try again later"
            };
            Logger.Instance().Log(Warn.Instance(), ex);
        }
        finally
        {
            Response.Write(new JavaScriptSerializer().Serialize(ProductResponseObj));
        }
    }
        public async void GetAllProduct(object start)
        {
            if (hasMore)
            {
                IsFetching = true;
                if (Position.HasValue)
                {
                    List <Product> temp = ProductsList.ToList();
                    if (Categories != null && Categories.Count > 0)
                    {
                        string         imgPath = Xamarin.Forms.DependencyService.Get <IImageHelper>().GetCompressImagePath();
                        List <Product> list    = await App.DbHelper.GetAllProducts(Categories?[Position.Value], ProductsList.Count);

                        if (list.Count == 0)
                        {
                            hasMore = false;
                        }
                        list.ForEach((Product p) =>
                        {
                            if (p.ImgName.Split('/').Count() == 1)
                            {
                                p.ImgName = imgPath + "/" + p.ImgName;
                            }
                        });
                        temp.AddRange(list);
                        temp         = temp.Distinct().ToList();
                        ProductsList = new ObservableCollection <Product>(temp);
                        tempList     = ProductsList;
                        SearchProduct();
                    }
                }
                IsFetching = false;
            }
        }
Exemple #22
0
        public List <Product> GetAllProducts()
        {
            var query = ProductsList.Find(new BsonDocument()).ToListAsync();

            return(query.Result);
            // var query = (from a in ProductsList.AsQueryable<Product>().Select() select a).Join(from b in CategoriesList.AsQueryable<Category>() select b);
        }
Exemple #23
0
        public IHttpActionResult GetProductList()
        {
            var userid = User.Identity.GetUserId();

            ProductsLists = new List <ProductsList>();
            var productses = Db.MainProducts.ToList();

            if (productses.FirstOrDefault() == null)
            {
                return(NotFound());
            }
            foreach (var item in productses)
            {
                ProductsList = new ProductsList();
                int user     = Convert.ToInt32(userid);
                var follower = Db.FollowProducts.FirstOrDefault(x => x.MProductId == item.Id && x.Euid == user);
                if (follower != null)
                {
                    ProductsList.Flag = true;
                }
                else
                {
                    ProductsList.Flag = false;
                }
                ProductsList.Id          = item.Id;
                ProductsList.CompanyName = item.ProductOwner.CompanyName;
                ProductsList.ProductName = item.ProductName;
                ProductsLists.Add(ProductsList);
            }
            return(Ok(ProductsLists));
        }
Exemple #24
0
    private void ListProducts()
    {
        var products = this.productService.GetProducts();

        ProductsList.DataSource = products;
        ProductsList.DataBind();
    }
Exemple #25
0
        public async Task <ProductsList> GetTopXProducts(int from = 0, int size = 6)
        {
            var productsList = new ProductsList();

            try
            {
                var searchResponse = _elaticClient.Search <ProductElastic>(s => s
                                                                           .Index(PRODUCT_INDEX)
                                                                           .From(from)
                                                                           .Size(size)
                                                                           .Query(q => q.MatchAll()
                                                                                  )
                                                                           );
                var searchResponseWithIds = searchResponse.Hits.Select(h =>
                {
                    h.Source.Id = h.Id;
                    return(h.Source);
                }).ToList();
                productsList.Products = searchResponse.Documents.ToList();
                return(productsList);
            }
            catch (Exception ex)
            {
            }
            return(productsList);
        }
        public async Task <IActionResult> Edit(int id, [Bind("ProductId,ProductName,ProductLocation,UploadedDate,ProductOwnerId")] ProductsList productsList)
        {
            if (id != productsList.ProductId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(productsList);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!ProductsListExists(productsList.ProductId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(productsList));
        }
 public void BeforeAllMethods()
 {
     products = ProductsData.GetProductData();
     driver   = new ChromeDriver();
     driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(10);
     driver.Manage().Window.Maximize();
     // driver.Navigate().GoToUrl("http://atqc-shop.epizy.com/");
 }
 private void ProductInventoryUpdated(object sender, ProductInventoryUpdatedEventArgs e)
 {
     if (e != null)
     {
         var product = ProductsList.FirstOrDefault(x => x.ProductId == e.ProductId);
         product.Quantity = e.Quantity;
     }
 }
Exemple #29
0
 protected void AddComputerConfiguration_Click(object sender, EventArgs e)
 {
     modalDialogComputer.Visible = true;
     ProductsList.DataSource     = null;
     ProductsList.DataBind();
     CalculateTotalComputerWindow();
     ComputerDropDown_SelectedIndexChanged(ComputerDropDown, null);
 }
Exemple #30
0
 public static Product Operation(ProductsList p)
 {
     return(p switch
     {
         ProductsList.P1 => new ProductA("Banana"),
         ProductsList.P2 => new ProductB(10),
         _ => null,
     });
Exemple #31
0
 private void Main_Load(object sender, EventArgs e)
 {
     Task.Run(() =>
     {
         ProductsList.Items.AddRange(dbContext.Products.ToArray());
         ProductsList.Invoke((Action) delegate { UpdateLists(); });
     });
 }