Пример #1
0
        private async Task GetProducts(User user, List <SQLTable> Tables)
        {
            List <Task> DataFetchTasks = new List <Task>();
            List <Task> TaskCreators   = new List <Task>();

            TaskCreators.Add(Task.Run(() => {
                for (int i = 0; i < Tables.Count; i++)
                {
                    var Table = Tables[i];
                    DataFetchTasks.Add(Task.Run(async() =>
                    {
                        string statement       = $"SELECT * FROM {Table.TABLE_NAME}";
                        List <Product> results = await data.SendQueryAsync <List <Product> >(statement, user);

                        // Deze code was bedoelt als waarschuwing dat iets over de datum is
                        for (int j = 0; j < results.Count; j++)
                        {
                            //    Console.WriteLine(results.Count);
                            results[j].naam = Table.TABLE_NAME.Replace('_', ' ');
                            Products.Add(results[j]);

                            //    /*string CurrentDate = DateTime.Now.ToString("yyyy-MM-dd")*/
                            //    string CurrentDate = "2021-3-08";
                            //    //Console.WriteLine(CurrentDate == results[j].Uiterste_Datum);
                            //    if (CurrentDate == results[j].Uiterste_Datum)
                            //    {
                            //        OnDateIndexes.Add(Products.Count - 1);
                            //        //dataGridView1.Row(j).DefaultCellStyle.BackColor = Color.Yellow;
                            //    }
                        }
                    }));
                }
            }));
            TaskCreators.Add(Task.Run(() => {
                for (int i = 0; i < Tables.Count; i++)
                {
                    var Table = Tables[i];
                    DataFetchTasks.Add(Task.Run(async() =>
                    {
                        string statement         = $"SELECT * FROM {Table.TABLE_NAME}";
                        List <ExtraInfo> results = await data.SendQueryAsync <List <ExtraInfo> >(statement, user);

                        for (int j = 0; j < results.Count; j++)
                        {
                            ProductExtraInfo.Add(results[j]);
                        }
                    }));
                }
            }));

            await Task.WhenAll(TaskCreators);

            await Task.WhenAll(DataFetchTasks);

            OnProductsFetched();
        }
Пример #2
0
        public void Update(ProductVM pvm, int id)
        {
            Product product = new Product();

            product.ProductID       = pvm.ProductID;
            product.ProductName     = pvm.ProductName;
            product.Description     = pvm.Description;
            product.Feature         = pvm.Feature;
            product.ReturnPolicy    = pvm.ReturnPolicy;
            product.WarrentyPolicy  = pvm.WarrentyPolicy;
            product.BarCode         = pvm.BarCode;
            product.QRCode          = pvm.QRCode;
            product.ManufactureDate = pvm.ManufactureDate;
            product.DisplayOrder    = pvm.DisplayOrder;
            product.InsertdDate     = DateTime.Now;
            product.UpdatedDate     = DateTime.Now;
            product.UserId          = pvm.UserId;
            product.IsActive        = pvm.IsActive;
            product.IsVisiable      = pvm.IsVisiable;
            db.Entry(product).State = EntityState.Modified;
            db.SaveChanges();
            int    lastProductId = product.ProductID;
            string lastUserId    = product.UserId;

            //ProductExtraInfo Entity
            ProductExtraInfo pxi = new ProductExtraInfo();

            pxi.PInfoID                = pvm.PInfoID;
            pxi.RAM                    = pvm.RAM;
            pxi.ROM                    = pvm.ROM;
            pxi.StoreCapacity          = pvm.StoreCapacity;
            pxi.NumberOFSIM            = pvm.NumberOFSIM;
            pxi.ProcessorType          = pvm.ProcessorType;
            pxi.OperatingSystem        = pvm.OperatingSystem;
            pxi.FCamera                = pvm.FCamera;
            pxi.BCamera                = pvm.BCamera;
            pxi.Display                = pvm.Display;
            pxi.CPUSpeed               = pvm.CPUSpeed;
            pxi.GraphicCard            = pvm.GraphicCard;
            pxi.TvResulation           = pvm.TvResulation;
            pxi.Battery                = pvm.Battery;
            pxi.PowerBankCapacity      = pvm.PowerBankCapacity;
            pxi.HeadPhonFeature        = pvm.HeadPhonFeature;
            pxi.PortableSpeakerFeature = pvm.PortableSpeakerFeature;
            pxi.AirCapacity            = pvm.AirCapacity;
            pxi.PenConnectorType       = pvm.PenConnectorType;
            pxi.PrintSpeed             = pvm.PrintSpeed;
            pxi.Other                  = pvm.Other;

            //Insert ForeignKey Value
            pxi.ProductID       = lastProductId;
            db.Entry(pxi).State = EntityState.Modified;;
            db.SaveChanges();

            ///ProducColor Entity
            //pProductColor pc = new pProductColor();
            //pc.ColorID = pvm.ColorID;
            //pc.ProductID = lastProductId;
            //db.pProductColor.Add(pc);
            //db.SaveChanges();

            //Product stock Entity
            pStock ps = new pStock();

            ps.StockID         = pvm.StockID;
            ps.tQuantity       = pvm.tQuantity;
            ps.mlQuantity      = pvm.mlQuantity;
            ps.InsertdDate     = DateTime.Now;
            ps.UpdatedDate     = DateTime.Now;
            ps.ProductID       = lastProductId;
            ps.UserId          = lastUserId;
            db.Entry(ps).State = EntityState.Modified;
            db.SaveChanges();

            ///Product Unit price Entity
            pUnitPrice pup = new pUnitPrice();

            pup.ID              = pvm.ID;
            pup.MarketPrice     = pvm.MarketPrice;
            pup.SellingPrice    = pvm.SellingPrice;
            pup.InsertdDate     = pvm.InsertdDate;
            pup.UpdatedDate     = pvm.UpdatedDate;
            pup.UserId          = lastUserId;
            pup.ProductID       = lastProductId;
            db.Entry(pup).State = EntityState.Modified;
            db.SaveChanges();
        }