示例#1
0
        public ActionResult Import(string fileName = "")
        {
            //upload file
            HttpPostedFileBase file = Request.Files[0];

            fileName = file.FileName.DoiTenFile();
            file.SaveAs(Server.MapPath("~/Uploads/Database/" + fileName));
            // Opening the Excel template...
            FileStream fs = new FileStream(Server.MapPath("~/Uploads/Database/" + fileName), FileMode.Open, FileAccess.Read);
            // Getting the complete workbook...
            ISheet sheet = null;

            if (fileName.Contains(".xlsx"))
            {
                XSSFWorkbook templateWorkbook = new XSSFWorkbook(Server.MapPath("~/Uploads/Database/" + fileName));
                sheet = templateWorkbook.GetSheet("例");
            }
            else if (fileName.Contains(".xls"))
            {
                HSSFWorkbook templateWorkbook = new HSSFWorkbook(fs, true);
                sheet = templateWorkbook.GetSheet("例");
            }
            WebsiteHelpers websiteHelper = new WebsiteHelpers();
            //string namejp = "";
            string             jancode = "";
            double             orgprice;
            List <ProductItem> lst = new List <ProductItem>();

            for (int row = 8; row <= sheet.LastRowNum; row++)
            {   // Ignoring first row as headers.
                //namejp = sheet.GetRow(row).GetCell(1).StringCellValue;
                //if (namejp != "" && namejp != null && namejp.Trim().Length > 0)
                try
                {
                    jancode = (string)sheet.GetRow(row).GetCell(12).NumericCellValue.ToString();
                }
                catch (Exception)
                {
                    jancode = (string)sheet.GetRow(row).GetCell(12).StringCellValue.ToString();
                }
                if (jancode != "" && jancode != null && jancode.Trim().Length > 3)
                {
                    ProductItem p = new ProductItem();
                    p.JanCode            = jancode;
                    p.Link               = sheet.GetRow(row).GetCell(1).StringCellValue;
                    p.HSCode             = sheet.GetRow(row).GetCell(2).StringCellValue;
                    p.NameJP             = sheet.GetRow(row).GetCell(3).StringCellValue;
                    p.NameEN             = sheet.GetRow(row).GetCell(4).StringCellValue;
                    p.DescriptionOfGoods = sheet.GetRow(row).GetCell(5).StringCellValue;
                    p.Material           = sheet.GetRow(row).GetCell(6).StringCellValue;
                    p.MadeIn             = sheet.GetRow(row).GetCell(14).StringCellValue;
                    try
                    {
                        orgprice = sheet.GetRow(row).GetCell(7).NumericCellValue;
                    }
                    catch (Exception)
                    {
                        orgprice = Convert.ToDouble(sheet.GetRow(row).GetCell(7).StringCellValue.ToString().Replace(@"\d", ""));
                    }

                    p.Price = orgprice;

                    //p.NameJP = namejp;
                    //p.NameEN = sheet.GetRow(row).GetCell(2).StringCellValue;
                    //p.CategoryName = sheet.GetRow(row).GetCell(3).StringCellValue;
                    //p.Link = sheet.GetRow(row).GetCell(4).StringCellValue;
                    //p.Price = sheet.GetRow(row).GetCell(5).NumericCellValue;
                    //try
                    //{
                    //    string ImageUrl = websiteHelper.GetImage(p.Link);
                    //    p.ImageUrl = ImageUrl;
                    //    p.ImageBase64 = ImageUtils.Images(ImageUrl);
                    //}
                    //catch { }
                    //p.ShippingMark = sheet.GetRow(row).GetCell(6).StringCellValue;
                    //try
                    //{
                    //    p.JanCode = sheet.GetRow(row).GetCell(7).NumericCellValue + "";
                    //}
                    //catch
                    //{
                    //    p.JanCode = sheet.GetRow(row).GetCell(7) == null ? "" : sheet.GetRow(row).GetCell(7).StringCellValue;
                    //}
                    //p.Quantity = (int)sheet.GetRow(row).GetCell(8).NumericCellValue;
                    //p.MadeIn = sheet.GetRow(row).GetCell(9).StringCellValue;
                    //try
                    //{
                    //    p.Note1 = sheet.GetRow(row).GetCell(10).NumericCellValue + "";
                    //}
                    //catch
                    //{
                    //    p.Note1 = sheet.GetRow(row).GetCell(10).StringCellValue;
                    //}
                    //try
                    //{
                    //    p.Note2 = sheet.GetRow(row).GetCell(11).NumericCellValue + "";
                    //}
                    //catch
                    //{
                    //    p.Note2 = sheet.GetRow(row).GetCell(11).StringCellValue;
                    //}
                    //p.Amount = sheet.GetRow(row).GetCell(12).NumericCellValue;
                    if (lst.Where(n => n.JanCode == p.JanCode).Count() == 0)
                    {
                        lst.Add(p);
                    }
                    else
                    {
                        if (p.Price > 0)
                        {
                            lst.Single(n => n.JanCode == p.JanCode).Price = p.Price > lst.Single(n => n.JanCode == p.JanCode).Price ? (lst.Single(n => n.JanCode == p.JanCode).Price > 0? lst.Single(n => n.JanCode == p.JanCode).Price:p.Price) : p.Price;
                        }
                    }
                }
            }
            foreach (var item in lst)
            {
                try
                {
                    var itemOld = db.WareHouseItems.Single(n => n.JanCode == item.JanCode);
                    if (item.Price > 0)
                    {
                        itemOld.PriceTax = item.Price > itemOld.PriceTax ? (itemOld.PriceTax > 0? itemOld.PriceTax:item.Price) : item.Price;
                    }
                    if (itemOld.MadeIn == "" || itemOld.MadeIn == null)
                    {
                        itemOld.MadeIn = getMadeIn(item.MadeIn).Id + "";
                    }
                }
                catch
                {
                    WareHouseItem warehouse = new WareHouseItem()
                    {
                        Id                 = Guid.NewGuid(),
                        JanCode            = item.JanCode,
                        LinkWeb            = item.Link,
                        HSCode             = item.HSCode,
                        NameJP             = item.NameJP,
                        NameEN             = item.NameEN,
                        DescriptionOfGoods = item.DescriptionOfGoods,
                        Material           = item.Material,
                        PriceTax           = item.Price,
                        ProductCode        = item.JanCode,
                        MadeIn             = getMadeIn(item.MadeIn).Id + "",
                        CreatedAt          = DateTime.Now,
                        CreatedBy          = user.Staff.UserName,
                        UpdatedAt          = DateTime.Now,
                        UpdatedBy          = user.Staff.UserName,
                        ProductTypeId      = 1,
                        IsDeny             = false

                                             //Amount = item.Amount,
                                             //CategoryId = getCategory(item.CategoryName).Id,
                                             //CategoryName = item.CategoryName,
                                             //CreatedAt = DateTime.Now,
                                             //CreatedBy = user.Staff.UserName,
                                             //Id = Guid.NewGuid(),
                                             //Image = item.ImageUrl,
                                             //JanCode = item.JanCode,
                                             //LinkWeb = item.Link,
                                             //ImageBase64 = item.ImageBase64,
                                             //Component = "",
                                             //ComponentImage = "",
                                             //MadeIn = getMadeIn(item.MadeIn).Id + "",
                                             //Material = item.Note1,
                                             //NameEN = item.NameEN,
                                             //NameJP = item.NameJP,
                                             //Notes = item.Note1,
                                             //PriceTax = item.Price,
                                             //ProductCode = item.JanCode,
                                             //Quantity = item.Quantity,
                                             //UpdatedAt = DateTime.Now,
                                             //UpdatedBy = user.Staff.UserName,
                                             //ProductTypeId = 1,
                                             //IsDeny = false
                    };
                    db.WareHouseItems.Add(warehouse);
                }
            }

            db.SaveChanges();
            Session["Database"] = "Bar";
            return(View(lst));
            //return Redirect("/Database");
        }
        public ActionResult StorageJP(Guid id, string fileName = "")
        {
            var StorageJP = db.StorageJPs.Find(id);
            //upload file
            HttpPostedFileBase file = Request.Files[0];

            fileName = file.FileName.DoiTenFile();
            file.SaveAs(Server.MapPath("~/Uploads/StorageJP/" + fileName));
            //read file

            // Opening the Excel template...
            FileStream fs = new FileStream(Server.MapPath("~/Uploads/StorageJP/" + fileName), FileMode.Open, FileAccess.Read);
            // Getting the complete workbook...
            ISheet sheet = null;

            if (fileName.Contains(".xlsx"))
            {
                XSSFWorkbook templateWorkbook = new XSSFWorkbook(Server.MapPath("~/Uploads/StorageJP/" + fileName));
                sheet = templateWorkbook.GetSheet("例");
            }
            else if (fileName.Contains(".xls"))
            {
                HSSFWorkbook templateWorkbook = new HSSFWorkbook(fs, true);
                sheet = templateWorkbook.GetSheet("例");
            }
            //read excel
            WebsiteHelpers        websiteHelper     = new WebsiteHelpers();
            List <StorageItemJP>  lstStorageItemJP  = new List <StorageItemJP>();
            List <TrackingDetail> lstTrackingDetail = new List <TrackingDetail>();
            Guid IdTracking = Guid.NewGuid();

            #region read excel

            //check column

            string urlReport = ConfigurationManager.AppSettings["url_report_storejp"];
            for (int row = 4; row <= sheet.LastRowNum; row++)
            {
                double price = 0;
                try
                {
                    price = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "GIA")).NumericCellValue;
                }
                catch (Exception ex) {  }
                string subcode = "";
                try
                {
                    subcode = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "SO KIEN")).StringCellValue;
                    try
                    {
                        subcode = int.Parse(subcode).ToString("00");
                    }
                    catch (Exception ex) { }
                }
                catch (Exception ex) { subcode = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "SO KIEN")).NumericCellValue.ToString("00"); }
                if (price == 0 && subcode != "")
                {
                    IdTracking = Guid.NewGuid();
                    TrackingDetail detail = new TrackingDetail()
                    {
                        CreatedAt       = DateTime.Now,
                        CreatedBy       = user.Staff.UserName,
                        Id              = IdTracking,
                        StoregeJPId     = StorageJP.Id,
                        Weigh           = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "KG")).NumericCellValue,
                        UpdatedAt       = DateTime.Now,
                        UpdatedBy       = user.Staff.UserName,
                        StatusId        = StorageJP.StatusId,
                        TrackingSubCode = subcode
                    };
                    lstTrackingDetail.Add(detail);
                }
                else if (price != 0)
                {
                    string namejp = "";
                    string linkweb = ""; string ImageUrl = "";
                    string ImageBase64 = null;
                    try
                    {
                        namejp  = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "TEN HANG_JP")).CellFormula;
                        namejp  = namejp.Replace("HYPERLINK(", "").Replace(")", "").Replace("\"", "");
                        linkweb = namejp.Split(',')[0];
                        namejp  = namejp.Split(',')[1];
                    }
                    catch (Exception ex)
                    {
                        namejp  = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "TEN HANG_JP")).StringCellValue;
                        linkweb = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "WEBLINK")).StringCellValue;
                    }
                    if (linkweb.ToLower().Contains(urlReport.ToLower()))
                    {
                        string idItem = linkweb.Split('/')[linkweb.Split('/').Length - 1];
                        try
                        {
                            var item = db.StorageItemJPs.Find(Guid.Parse(idItem));
                            ImageBase64 = item.ImageBase64;
                            linkweb     = item.LinkWeb;
                            ImageUrl    = item.ImageLinkWeb;
                        }
                        catch (Exception ex) { }
                    }
                    else
                    {
                        try
                        {
                            ImageUrl    = websiteHelper.GetImage(linkweb);
                            ImageBase64 = ImageUtils.Images(ImageUrl);
                        }
                        catch (Exception ex) { }
                    }
                    string component = "", material = "", JanCode = "";
                    try
                    {
                        component = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "THANH PHAN")).StringCellValue;
                    }
                    catch (Exception ex) { }
                    try
                    {
                        material = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "CHAT LIEU")).StringCellValue;
                    }
                    catch (Exception ex) { }
                    try
                    {
                        JanCode = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Jancode,mavach")).StringCellValue;
                    }
                    catch (Exception ex) { JanCode = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Jancode,mavach")).NumericCellValue + ""; }
                    StorageItemJP storejpItem = new StorageItemJP()
                    {
                        Amount           = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "THANH TIEN")).NumericCellValue,
                        CategoryId       = getCategory(sheet.GetRow(row).GetCell(getIndexColumn(sheet, "LOAI HANG")).StringCellValue).Id,
                        CategoryName     = getCategory(sheet.GetRow(row).GetCell(getIndexColumn(sheet, "LOAI HANG")).StringCellValue).Name,
                        Component        = component,
                        Id               = Guid.NewGuid(),
                        CreatedAt        = DateTime.Now,
                        CreatedBy        = user.Staff.UserName,
                        ImageBase64      = ImageBase64,
                        ImageLinkWeb     = ImageUrl,
                        JanCode          = JanCode,
                        Material         = material,
                        LinkWeb          = linkweb,
                        MadeIn           = getMadeIn(sheet.GetRow(row).GetCell(getIndexColumn(sheet, "XUAT XU")).StringCellValue).Id + "",
                        NameEN           = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "TEN HANG_EN")).StringCellValue,
                        NameJP           = namejp,
                        PriceTax         = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "GIA")).NumericCellValue,
                        ProductCode      = "",
                        Quantity         = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "SO LUONG")).NumericCellValue,
                        UpdatedAt        = DateTime.Now,
                        StoregeJPId      = StorageJP.Id,
                        UpdatedBy        = user.Staff.UserName,
                        TrackingDetailId = IdTracking
                    };
                    lstStorageItemJP.Add(storejpItem);
                }
            }
            #endregion

            //delete all data form db
            var details = StorageJP.TrackingDetails.ToList();
            foreach (var item in details)
            {
                var stores = item.StorageItemJPs.ToList();
                foreach (var st in stores)
                {
                    db.StorageItemJPs.Remove(st);
                }
                db.TrackingDetails.Remove(item);
            }
            //Insert database
            foreach (var item in lstTrackingDetail)
            {
                db.TrackingDetails.Add(item);
                foreach (var store in lstStorageItemJP.Where(n => n.TrackingDetailId == item.Id))
                {
                    db.StorageItemJPs.Add(store); db.SaveChanges();
                }
            }
            db.SaveChanges();
            return(View());
        }
        public ActionResult StorageJPFull(string fileName = "")
        {
            //upload file
            HttpPostedFileBase file = Request.Files[0];

            fileName = file.FileName.DoiTenFile();
            file.SaveAs(Server.MapPath("~/Uploads/StorageJP/" + fileName));
            // Opening the Excel template...
            FileStream fs = new FileStream(Server.MapPath("~/Uploads/StorageJP/" + fileName), FileMode.Open, FileAccess.Read);
            // Getting the complete workbook...
            ISheet sheet = null;

            if (fileName.Contains(".xlsx"))
            {
                XSSFWorkbook templateWorkbook = new XSSFWorkbook(Server.MapPath("~/Uploads/StorageJP/" + fileName));
                sheet = templateWorkbook.GetSheet("例");
            }
            else if (fileName.Contains(".xls"))
            {
                HSSFWorkbook templateWorkbook = new HSSFWorkbook(fs, true);
                sheet = templateWorkbook.GetSheet("例");
            }
            //read excel
            WebsiteHelpers        websiteHelper     = new WebsiteHelpers();
            List <StorageJP>      lstStorageJP      = new List <StorageJP>();
            List <StorageItemJP>  lstStorageItemJP  = new List <StorageItemJP>();
            List <TrackingDetail> lstTrackingDetail = new List <TrackingDetail>();
            Guid IdTracking = Guid.NewGuid();

            #region read excel

            //check column
            string nameJP       = "";
            string trackingCode = "";
            string urlReport    = ConfigurationManager.AppSettings["url_report_storejp"];
            Guid   storeId      = Guid.NewGuid();
            for (int row = 3; row <= sheet.LastRowNum; row++)
            {
                nameJP       = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Tên Hàng Jp(*)")).StringCellValue;
                trackingCode = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Mã Tracking(*)")).StringCellValue;
                if (nameJP == "" && trackingCode == "")
                {
                    break;
                }
                if (trackingCode != "" && trackingCode != null)
                {
                    IdTracking = Guid.NewGuid();
                    string size = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Size")).StringCellValue;
                    size = size.Replace("cm", "").Trim();
                    double sizeInput = double.Parse(size) / 3;
                    sizeInput = sizeInput - Math.Round(sizeInput / 3);
                    double   dai    = double.Parse(size) - 2 * sizeInput;
                    DateTime revice = new DateTime();
                    try
                    {
                        revice = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Ngày nhận")).DateCellValue;
                    }
                    catch {
                        try
                        {
                            revice = DateTime.ParseExact(sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Ngày nhận")).StringCellValue, "yyyy-MM-dd", null);
                        }
                        catch { }
                    }
                    if (lstStorageJP.Where(n => n.TrackingCode == trackingCode.Trim()).Count() == 0)
                    {
                        storeId = Guid.NewGuid();
                        StorageJP store = new Models.StorageJP()
                        {
                            Id              = storeId,
                            AgencyId        = user.Agency.Id,
                            CreatedAt       = DateTime.Now,
                            CreatedBy       = user.Staff.UserName,
                            DeliveryAddress = "",
                            StatusId        = 6,
                            TrackingCode    = trackingCode.Trim(),
                            ReceivedDate    = revice,
                            Size            = "size-input",
                            SizeInput       = dai + " " + sizeInput + " " + sizeInput,
                            Notes           = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Ghi chú")).StringCellValue,
                            ReceivedHour    = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Giờ nhận")).StringCellValue,
                            Weigh           = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Số Kg")).NumericCellValue
                        };
                        lstStorageJP.Add(store);
                    }
                    TrackingDetail detail = new TrackingDetail()
                    {
                        CreatedAt       = DateTime.Now,
                        CreatedBy       = user.Staff.UserName,
                        Id              = IdTracking,
                        StoregeJPId     = storeId,
                        UpdatedAt       = DateTime.Now,
                        UpdatedBy       = user.Staff.UserName,
                        TrackingSubCode = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Mã Tách Kiện(*)")).StringCellValue
                    };
                    lstTrackingDetail.Add(detail);
                }
                else
                {
                    double price = 0;
                    try
                    {
                        price = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Giá(*)")).NumericCellValue;
                    }
                    catch { }
                    string        namejp      = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Tên Hàng Jp(*)")).StringCellValue;
                    string        nameen      = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Tên Hàng En")).StringCellValue;
                    string        linkweb     = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Weblink")).StringCellValue;
                    string        Image       = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Hình ảnh")).StringCellValue;
                    string        base64Image = "";
                    StorageItemJP storejpItem = new StorageItemJP()
                    {
                        Amount           = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Thành tiền")).NumericCellValue,
                        CategoryId       = getCategory(sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Loại Hàng")).StringCellValue).Id,
                        CategoryName     = getCategory(sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Loại Hàng")).StringCellValue).Name,
                        Component        = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Thành Phần")).StringCellValue,
                        Id               = Guid.NewGuid(),
                        CreatedAt        = DateTime.Now,
                        CreatedBy        = user.Staff.UserName,
                        ImageBase64      = base64Image,
                        Image            = Image,
                        ImageLinkWeb     = Image,
                        JanCode          = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Jan Code")).StringCellValue,
                        Material         = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Chất liệu")).StringCellValue,
                        LinkWeb          = linkweb,
                        MadeIn           = getMadeIn(sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Xuất xứ(*)")).StringCellValue).Id + "",
                        NameEN           = nameen,
                        NameJP           = namejp,
                        PriceTax         = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Giá(*)")).NumericCellValue,
                        ProductCode      = "",
                        Quantity         = sheet.GetRow(row).GetCell(getIndexColumn(sheet, "Số Lượng(*)")).NumericCellValue,
                        UpdatedAt        = DateTime.Now,
                        StoregeJPId      = storeId,
                        UpdatedBy        = user.Staff.UserName,
                        TrackingDetailId = IdTracking
                    };
                    lstStorageItemJP.Add(storejpItem);
                }
            }
            #endregion

            //delete all data form db
            var stores = db.StorageJPs.Where(n => n.AgencyId == user.Agency.Id);
            foreach (var items in stores)
            {
                if (PageUtils.Status(items.Id).Value == "1")
                {
                    var details = items.TrackingDetails.ToList();
                    foreach (var item in details)
                    {
                        var storeItems = item.StorageItemJPs.ToList();
                        foreach (var st in storeItems)
                        {
                            db.StorageItemJPs.Remove(st);
                        }
                        db.TrackingDetails.Remove(item);
                    }
                    db.StorageJPs.Remove(items);
                }
            }
            db.SaveChanges();
            //Insert database
            foreach (var items in lstStorageJP)
            {
                db.StorageJPs.Add(items);
                var details = lstTrackingDetail.Where(n => n.StoregeJPId == items.Id);
                foreach (var item in details)
                {
                    db.TrackingDetails.Add(item);
                    var itemstores = lstStorageItemJP.Where(n => n.TrackingDetailId == item.Id);
                    foreach (var store in itemstores)
                    {
                        db.StorageItemJPs.Add(store);
                    }
                }
            }
            db.SaveChanges();
            return(View());
        }
示例#4
0
        static void Main1(string[] args)
        {
            string[] fileArray = Directory.GetFiles(@"C:\FILES\");
            foreach (var itemFile in fileArray)
            {
                try
                {
                    // Opening the Excel template...
                    FileStream fs = new FileStream(itemFile, FileMode.Open, FileAccess.Read);
                    // Getting the complete workbook...
                    ISheet sheet     = null;
                    string flighCode = "";
                    if (itemFile.Contains(".xlsx"))
                    {
                        XSSFWorkbook templateWorkbook = new XSSFWorkbook(itemFile);
                        sheet     = templateWorkbook.GetSheet("INVOICE");
                        flighCode = templateWorkbook.GetSheet("INFO").GetRow(4).Cells[8].StringCellValue.Trim();
                    }
                    else if (itemFile.Contains(".xls"))
                    {
                        HSSFWorkbook templateWorkbook = new HSSFWorkbook(fs, true);
                        sheet     = templateWorkbook.GetSheet("INVOICE");
                        flighCode = templateWorkbook.GetSheet("INFO").GetRow(4).Cells[8].StringCellValue.Trim();
                    }
                    WebsiteHelpers     websiteHelper = new WebsiteHelpers();
                    string             namejp        = "";
                    List <ProductItem> lst           = new List <ProductItem>();
                    for (int row = 11; row <= sheet.LastRowNum; row++)
                    { // Ignoring first row as headers.
                        namejp = sheet.GetRow(row).GetCell(1).StringCellValue;
                        if (namejp != "" && namejp != null && namejp.Trim().Length > 0)
                        {
                            ProductItem p = new ProductItem();
                            p.NameJP       = namejp;
                            p.NameEN       = sheet.GetRow(row).GetCell(2).StringCellValue;
                            p.CategoryName = sheet.GetRow(row).GetCell(3).StringCellValue;
                            p.Link         = sheet.GetRow(row).GetCell(4).StringCellValue;
                            p.Price        = sheet.GetRow(row).GetCell(5).NumericCellValue;
                            try
                            {
                                string ImageUrl = websiteHelper.GetImage(p.Link);
                                p.ImageUrl    = ImageUrl;
                                p.ImageBase64 = ImageUtils.Images(ImageUrl);
                            }
                            catch { }
                            p.ShippingMark = sheet.GetRow(row).GetCell(6).StringCellValue;
                            try
                            {
                                p.JanCode = sheet.GetRow(row).GetCell(7).NumericCellValue + "";
                            }
                            catch
                            {
                                p.JanCode = sheet.GetRow(row).GetCell(7) == null ? "" : sheet.GetRow(row).GetCell(7).StringCellValue;
                            }
                            p.Quantity = (int)sheet.GetRow(row).GetCell(8).NumericCellValue;
                            p.MadeIn   = sheet.GetRow(row).GetCell(9).StringCellValue;
                            try
                            {
                                p.Note1 = sheet.GetRow(row).GetCell(10).NumericCellValue + "";
                            }
                            catch
                            {
                                p.Note1 = sheet.GetRow(row).GetCell(10).StringCellValue;
                            }
                            try
                            {
                                p.Note2 = sheet.GetRow(row).GetCell(11).NumericCellValue + "";
                            }
                            catch
                            {
                                p.Note2 = sheet.GetRow(row).GetCell(11).StringCellValue;
                            }
                            p.Amount = sheet.GetRow(row).GetCell(12).NumericCellValue;
                            lst.Add(p);
                        }
                    }
                    foreach (var item in lst)
                    {
                        WareHouseItem warehouse = new WareHouseItem()
                        {
                            Amount         = item.Amount,
                            CategoryId     = getCategory(item.CategoryName).Id,
                            CategoryName   = item.CategoryName,
                            CreatedAt      = DateTime.Now,
                            CreatedBy      = "blf",
                            Id             = Guid.NewGuid(),
                            Image          = item.ImageUrl,
                            JanCode        = item.JanCode,
                            LinkWeb        = item.Link,
                            ImageBase64    = item.ImageBase64,
                            Component      = "",
                            ComponentImage = "",
                            MadeIn         = getMadeIn(item.MadeIn).Id + "",
                            Material       = item.Note1,
                            NameEN         = item.NameEN,
                            NameJP         = item.NameJP,
                            Notes          = item.Note1,
                            PriceTax       = item.Price,
                            ProductCode    = item.JanCode,
                            Quantity       = item.Quantity,
                            UpdatedAt      = DateTime.Now,
                            UpdatedBy      = "blf",
                            ProductTypeId  = 1,
                            IsDeny         = false,
                            FlightCode     = flighCode
                        };
                        db.WareHouseItems.Add(warehouse);
                    }

                    db.SaveChanges();
                }
                catch { }
            }
            Console.WriteLine("finished");
            Console.ReadLine();
        }