Exemplo n.º 1
0
        public static DB getDB(int timeOut)
        {
            //if (!System.IO.File.Exists("config.ini"))
            //{
            //    FDatabase m = new FDatabase();
            //    m.ShowDialog();
            //}

            var db = new DB();
            db.Database.Connection.ConnectionString = getIniConn("config.ini", timeOut);
            db.Configuration.EnsureTransactionsForFunctionsAndCommands = true;
            return db;
        }
Exemplo n.º 2
0
        //添加
        private void ReadExcelProductsAndInsert(string path,string name)
        {
            IWorkbook wb = WorkbookFactory.Create(path);

            int count = 0;

            //循环 sheet

            ISheet ist = wb.GetSheetAt(0);

            Guid traderID = Guid.Empty;
            string traderName = "";

            using (var db = new DB())
            {
                string shortname = stringZip(name);
                var query = (from a in db.CainzTrader
                             where a.TraderName.Contains(shortname)
                             select a).FirstOrDefault();
                if (query != null)
                {
                    traderID = query.TraderID;
                    traderName = query.TraderName;
                }
                else
                {
                    FTrader m = new FTrader(name);
                    if (m.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        traderID = FTrader.TRADER.TraderID;
                        traderName = FTrader.TRADER.TraderName;
                    }
                }

            }
            if (traderID == Guid.Empty) return;

            int rowofPage = ist.LastRowNum + 1;

            int titleRowNo = -1;
            int cdNo = -1;
            int caizhiNo = -1;
            int caizhiEXNo = -1;
            int chicunNo = -1;
            int danjiaNo = -1;
            int gongchangNo = -1;
            int wuliaoNo = -1;
            int yanseNo = -1;
            string gudinggcm = "";

            //查找各个位置
            foreach (IRow row in ist)
            {

                int cellCount = row.Cells.Count;
                for (int cNo = 0; cNo < cellCount; cNo++)
                {
                    ICell icell = row.GetCell(cNo, MissingCellPolicy.CREATE_NULL_AS_BLANK);
                    if (icell.CellType == CellType.String)
                    {
                        string title = icell.StringCellValue.Trim().Replace("(元/个)", "").Replace("mm", "").Replace(" ", "").Trim();
                        switch (title)
                        {
                            case "商品条形码/CD":
                                {
                                    cdNo = icell.ColumnIndex;
                                } break;
                            case "材质":
                                {
                                    caizhiNo = icell.ColumnIndex;
                                } break;
                            case "材质说明":
                                {
                                    caizhiEXNo = icell.ColumnIndex;
                                } break;
                            case "颜色":
                                {
                                    yanseNo = icell.ColumnIndex;
                                } break;
                            case "单价":
                                {
                                    danjiaNo = icell.ColumnIndex;
                                } break;
                            case "尺寸":
                            case "尺寸()":
                                {
                                    chicunNo = icell.ColumnIndex;
                                } break;
                            case "厂商名":
                            case "订购工厂":
                            case "厂商名称":
                                {
                                    gongchangNo = icell.ColumnIndex;
                                } break;
                            case "物料编号":
                            case "物料名称":
                                {
                                    wuliaoNo = icell.ColumnIndex;
                                } break;
                        }
                    }
                }

                if (cdNo != -1)
                {
                    titleRowNo = row.RowNum;

                    if (gongchangNo == -1)
                    {
                        gudinggcm = findgcm(ist.SheetName, gGongChangDic);
                    }

                    break;
                }

            }

            Hashtable productHT = new Hashtable();
            using (var db = PublicDB.getDB())
            {

            for (int j = titleRowNo + 1; j < rowofPage; j++)
            {
                count++;
                IRow irow = ist.GetRow(j);

                if (irow == null) continue;

                string cdString = getCellString(cdNo, irow);
                if (cdString == "") continue;
                string caizhiString = getCellString(caizhiNo, irow);
                string chicunString = getCellString(chicunNo, irow);
                string danjiaString = getCellString(danjiaNo, irow);
                string yanseString = getCellString(yanseNo, irow);
                string caizhiEXString = getCellString(caizhiEXNo, irow);
                string gongchangString = getCellString(gongchangNo, irow);
                string wuliaoString = getCellString(wuliaoNo, irow);

                string com = cdString + caizhiString + chicunString + yanseString + caizhiEXString + wuliaoString;
                double danjiaDouble = getCellDouble(danjiaNo, irow);

                if (com.Length < 6) continue;
                if (false == productHT.ContainsKey(com))
                {

                        CainzProduct p = new CainzProduct();
                        p.ProductID = Guid.NewGuid();
                        p.ProductBarcode = cdString;
                        p.ProductColor = yanseString;
                        p.ProductMaterial = caizhiString;
                        p.ProductSize = chicunString;
                        p.ProductPrice = (System.Decimal)danjiaDouble;
                        p.TraderID = traderID;
                        p.TraderName = traderName;
                        p.CainzTraderTraderID = traderID;
                        p.Deleted = 0;
                        p.CreateTime = DateTime.Now;
                        p.ModifyTime = DateTime.Now;
                        p.Modified = 0;
                        if (traderID != Guid.Empty)
                        {
                            db.CainzProduct.Add(p);
                        }
                        productHT.Add(com, null);
                    }

                }

            db.SaveChanges();

            }
        }
Exemplo n.º 3
0
        private entity.CainzTrader GetTraaterByFactoryName(string factoryName)
        {
            factoryName = factoryName.Replace('C', ' ').Trim();
            CainzTrader trader = new CainzTrader();

            string traderName = FindTraderByFactory(factoryName, gGongChangDic);
            using (var db = new DB())
            {
                if (traderName != "")
                {

                    trader = db.CainzTrader.SingleOrDefault(item => item.TraderName == traderName);

                }
                else
                {
                    trader = null;
                    using (StreamWriter w = new StreamWriter("log3.txt", true))
                    {
                        w.WriteLine(factoryName + "," + stringZip(factoryName));
                    }
                }
            }

            return trader;
        }
Exemplo n.º 4
0
 public static bool TestDB(string connString)
 {
     bool r = false;
     using (var db = new DB())
     {
         db.Database.Connection.ConnectionString = connString;
         try
         {
             db.Database.Connection.Open();
             r = (db.Database.Connection.State == ConnectionState.Open);
         }
         catch (Exception ee)
         {
             System.Windows.Forms.MessageBox.Show(ee.Message);
             r = false;
         }
     }
     return r;
 }