Esempio n. 1
0
        public void InsertForm()
        {
            Guid ProductColorID = new Guid(Request.QueryString["ID"].ToString());

            using (MashadCarpetEntities db = new MashadCarpetEntities())
            {
                ProductColorSizes p = new ProductColorSizes();

                p.ProductColorSizeID = Guid.NewGuid();
                p.IsDelete           = false;
                p.fk_SizeID          = int.Parse(ddlSizes.SelectedValue);
                p.ProductPrice       = Convert.ToDecimal(txtPrice.Text);
                p.Stock             = int.Parse(txtStock.Text);
                p.fk_ProductColorID = ProductColorID;
                p.IsAvailable       = true;

                db.ProductColorSizes.Add(p);
                db.SaveChanges();
            }
        }
        public void UpdateWithExcell(string FileName)
        {
            ExcelPackage package = new ExcelPackage(FileUpload1.FileContent);

            DataTable datasource = package.ToDataTable();

            // List<string> newproList = new List<string>();

            foreach (DataRow dr in datasource.Rows)
            {
                using (MashadCarpetEntities db = new MashadCarpetEntities())
                {
                    string ProductName = dr["FldNaghshe"].ToString();
                    string colortoret  = dr["FldZamine"].ToString();
                    string sizetoret   = ReturnOrginalSize(dr["FldSiz"].ToString());
                    string tarakom     = (dr["FldTarakom"].ToString());
                    string rang        = (dr["FldTedadRang"].ToString());
                    string shane       = (dr["FldShane"].ToString());
                    int    fldNaghshei = 0;

                    String[] elements = Regex.Split(dr["FldNaghshe"].ToString(), @"\D+");
                    foreach (var element in elements)
                    {
                        if (!string.IsNullOrEmpty(element))
                        {
                            fldNaghshei = int.Parse(element);
                        }
                    }
                    if (returnOrginalshane(shane) != null)
                    {
                        shane = returnOrginalshane(shane);
                    }

                    string systemname = shane + "-" + rang + "-" + tarakom;

                    var n = (from a in db.ProductGroup
                             where a.ProductGroupName == systemname && a.IsDelete == false /*&& a.IsAlienCulture==true*/
                             select a).FirstOrDefault();

                    if (n == null)
                    {
                        systemname = shane + "-" + rang + "-" + tarakom;
                    }


                    var o = (from a in db.Products
                             where a.ProductName == ProductName && a.IsDelete == false && a.fk_ProductGroupID == n.ProductGroupID && a.IsAlienCulture == true
                             select a).FirstOrDefault();



                    if (o == null)
                    {
                        //Insert into All 3 Tables

                        ////////////////////////////////
                        Products et = new Products();
                        et.ProductID          = Guid.NewGuid();
                        et.fk_ProductGroupID  = n.ProductGroupID;
                        et.IsDelete           = false;
                        et.ProductTitle       = dr["FldNaghshe"].ToString();
                        et.ProductName        = dr["FldNaghshe"].ToString();
                        et.ProductUniqeCode   = fldNaghshei;
                        et.DesignNo           = fldNaghshei;
                        et.Frame              = Convert.ToInt32(dr["FldTedadRang"].ToString());
                        et.Reeds              = shane;
                        et.Shots              = tarakom;
                        et.IsActive           = true;
                        et.IsAlienCulture     = true;
                        et.EN_ProductTitle    = ProductName;
                        et.Rus_ProductTitle   = ProductName;
                        et.China_ProductTitle = ProductName;
                        db.Products.Add(et);

                        ProductColors pcEnter = new ProductColors();
                        pcEnter.ProductColorID = Guid.NewGuid();
                        pcEnter.fk_ProductID   = et.ProductID;
                        pcEnter.IsDelete       = false;
                        pcEnter.fk_ColorID     = returnColorID(colortoret);
                        db.ProductColors.Add(pcEnter);

                        ProductColorSizes pcsEnter = new ProductColorSizes();
                        pcsEnter.ProductColorSizeID = Guid.NewGuid();
                        pcsEnter.fk_ProductColorID  = pcEnter.ProductColorID;
                        pcsEnter.ProductPrice       = Convert.ToDecimal(dr["FldGheymat"].ToString());
                        pcsEnter.Stock       = Convert.ToInt32(dr["FldMojoodi"].ToString());
                        pcsEnter.fk_SizeID   = returnSizeID(sizetoret);
                        pcsEnter.IsDelete    = false;
                        pcsEnter.IsAvailable = true;

                        pcsEnter.FileName = FileName;
                        db.ProductColorSizes.Add(pcsEnter);

                        db.SaveChanges();
                    }
                    else
                    {
                        string productName = dr["FldNaghshe"].ToString();

                        var ProductID = o.ProductID;

                        o.IsActive = true;

                        //  string colortoret = dr["FldZamine"].ToString();
                        //string sizetoret = returnOrginalSize(dr["FldSiz"].ToString());

                        int colorid = returnColorID(colortoret);
                        int sizeid  = returnSizeID(sizetoret);

                        var ProductColorID = (from a in db.ProductColors
                                              where a.fk_ColorID == colorid && a.fk_ProductID == ProductID &&
                                              a.IsDelete == false
                                              select new { a.ProductColorID }).FirstOrDefault();
                        //////////////////////////////////////
                        if (ProductColorID == null)
                        {
                            ProductColors pcEnter = new ProductColors();
                            pcEnter.ProductColorID = Guid.NewGuid();
                            pcEnter.fk_ProductID   = ProductID;
                            pcEnter.IsDelete       = false;
                            pcEnter.fk_ColorID     = returnColorID(colortoret);
                            db.ProductColors.Add(pcEnter);


                            ProductColorSizes pcsEnter = new ProductColorSizes();
                            pcsEnter.ProductColorSizeID = Guid.NewGuid();
                            pcsEnter.fk_ProductColorID  = pcEnter.ProductColorID;
                            pcsEnter.ProductPrice       = Convert.ToDecimal(dr["FldGheymat"].ToString());
                            pcsEnter.Stock       = Convert.ToInt32(dr["FldMojoodi"].ToString());
                            pcsEnter.fk_SizeID   = returnSizeID(sizetoret);
                            pcsEnter.IsDelete    = false;
                            pcsEnter.FileName    = FileName;
                            pcsEnter.IsAvailable = true;

                            db.ProductColorSizes.Add(pcsEnter);

                            db.SaveChanges();
                        }
                        else
                        {
                            var pcs = (from a in db.ProductColorSizes
                                       where a.fk_ProductColorID == ProductColorID.ProductColorID &&
                                       a.fk_SizeID == sizeid && a.IsDelete == false
                                       select a).FirstOrDefault();

                            if (pcs == null)
                            {
                                ProductColorSizes pcsEnter = new ProductColorSizes();
                                pcsEnter.ProductColorSizeID = Guid.NewGuid();
                                pcsEnter.fk_ProductColorID  = ProductColorID.ProductColorID;
                                pcsEnter.ProductPrice       = Convert.ToDecimal(dr["FldGheymat"].ToString());
                                pcsEnter.Stock       = Convert.ToInt32(dr["FldMojoodi"].ToString());
                                pcsEnter.fk_SizeID   = returnSizeID(sizetoret);
                                pcsEnter.IsDelete    = false;
                                pcsEnter.FileName    = FileName;
                                pcsEnter.IsAvailable = true;

                                db.ProductColorSizes.Add(pcsEnter);
                                db.SaveChanges();
                            }
                            else
                            {
                                pcs.Stock        = Convert.ToInt32(dr["FldMojoodi"].ToString());
                                pcs.ProductPrice = Convert.ToDecimal(dr["FldGheymat"].ToString());
                                pcs.FileName     = FileName;
                                pcs.IsAvailable  = true;

                                db.SaveChanges();
                            }
                        }
                    }
                }
            }
        }