private void getF(string str, int Type) { JArray jar = JArray.Parse(str); int count = jar.Count; for (int i = 0; i < count; i++) { string jstr = jar[i].ToString(); JObject jss = new JObject(); jss = JObject.Parse(jstr); KJLobject kJLobject = new KJLobject(); kJLobject.modelTypeId = int.Parse(jss["modelTypeId"].ToString()); kJLobject.OrderType = Type; if (jss.Property("modelName") != null) { kJLobject.modelName = jss["modelName"].ToString(); } if (jss.Property("customCode") != null) { kJLobject.customCode = jss["customCode"].ToString(); } if (jss.Property("modelNumber") != null) { kJLobject.modelNumber = jss["modelNumber"].ToString(); } if (jss.Property("obsBrandGoodId") != null) { kJLobject.obsBrandGoodId = jss["obsBrandGoodId"].ToString(); } if (jss.Property("obsModelAccountId") != null) { kJLobject.obsModelAccountId = jss["obsModelAccountId"].ToString(); } if (jss.Property("modelAvailable") != null) { kJLobject.modelAvailable = jss["modelAvailable"].ToString(); } if (jss.Property("needQuotation") != null) { kJLobject.needQuotation = bool.Parse(jss["needQuotation"].ToString()); } if (jss.Property("displayInCostList") != null) { kJLobject.displayInCostList = bool.Parse(jss["displayInCostList"].ToString()); } if (jss.Property("textureName") != null) { kJLobject.textureName = jss["textureName"].ToString(); } if (jss.Property("textureBrandGoodCode") != null) { kJLobject.textureBrandGoodCode = jss["textureBrandGoodCode"].ToString(); } if (jss.Property("textureAvailable") != null) { kJLobject.textureAvailable = bool.Parse(jss["textureAvailable"].ToString()); } if (jss.Property("obsTextureAccountId") != null) { kJLobject.obsTextureAccountId = jss["obsTextureAccountId"].ToString(); } if (jss.Property("id") != null) { kJLobject.id = jss["id"].ToString(); } if (jss.Property("parentId") != null) { kJLobject.parentid = jss["parentId"].ToString(); } List <parameter> lstParm = new List <parameter>(); double W = 0; double H = 0; double D = 0; if (jss.Property("parameters") != null) { string parmstrs = jss["parameters"].ToString(); JArray parmJar = JArray.Parse(parmstrs); foreach (JObject js in parmJar) { parameter pr = new parameter(); if (js.Property("simpleName") != null) { try { pr.parmName = js["simpleName"].ToString(); pr.parmValue = js["value"].ToString(); } catch { } } if (pr.parmName == "") { pr.parmName = js["name"].ToString(); pr.parmValue = js["value"].ToString(); } if (pr.parmName != "") { lstParm.Add(pr); } if (pr.parmName == "H") { H = double.Parse(pr.parmValue); } else if (pr.parmName == "W") { W = double.Parse(pr.parmValue); } else if (pr.parmName == "D") { D = double.Parse(pr.parmValue); } } } if (jss.Property("ignoreParameters") != null) { string ignoreparmstrs = jss["ignoreParameters"].ToString(); JArray ignoreparmJar = JArray.Parse(ignoreparmstrs); foreach (JObject js in ignoreparmJar) { parameter pr = new parameter(); if (js.Property("simpleName") != null) { pr.parmName = js["simpleName"].ToString(); pr.parmValue = js["value"].ToString(); } if (pr.parmName == "") { pr.parmName = js["name"].ToString(); pr.parmValue = js["value"].ToString(); } if (pr.parmName != "") { lstParm.Add(pr); } if (pr.parmName == "H") { H = double.Parse(pr.parmValue); } else if (pr.parmName == "W") { W = double.Parse(pr.parmValue); } else if (pr.parmName == "D") { D = double.Parse(pr.parmValue); } } } kJLobject.parameters = lstParm; kJLobject.parameters.Add(new parameter("color", kJLobject.textureBrandGoodCode + "H|")); kJLobject.absP = getabsP(jss["absPosition"].ToString()); kJLobject.absR = getabsR(jss["absRotation"].ToString()); CaulModel caul = new CaulModel(); caul = caul.getCaulModel(kJLobject.absP, kJLobject.absR, D, W, H); kJLobject.caulModel = caul; if (kJLobject.customCode == "F") { boxseq += 1; kJLobject.boxPostion = kJLobject.absP; kJLobject.HoleGroup = boxseq.ToString(); } else { kJLobject.boxPostion = kJLobject.absP; kJLobject.HoleGroup = boxseq.ToString(); } if (kJLobject.modelNumber != null && kJLobject.modelNumber != "0") { kobj.Add(kJLobject); } if (jss.Property("subModels") != null) { string jschid = jss["subModels"].ToString(); getFurnitureObj(jschid, Type, kJLobject.absP); } else { continue; } } }
//配置对象 private List <KJLobject> getUserkbj(List <KJLobject> kJ) { addMsg(DateTime.Now.ToString() + ":开始获取数据库配置信息"); string sql = "select * from boardinfo"; List <KJLobject> Klist = new List <KJLobject>(); DataTable dt = new DataTable(); dt = OleHeper.Query(sql).Tables[0]; foreach (KJLobject k in kJ) { bool flag = false; //门板 if (IsDoor(k) == true) { List <KJLobject> lsObj = new List <KJLobject>(); List <KJLobject> LSXH = new List <KJLobject>(); lsObj = kJ.Where(l => l.parentid == k.parentid).ToList(); lsObj = lsObj.Where(l => l.modelTypeId == 2).ToList(); LSXH.AddRange(lsObj); lsObj = kJ.Where(l => l.id == k.parentid).ToList(); lsObj = lsObj.Where(l => l.modelTypeId == 2).ToList(); LSXH.AddRange(lsObj); lsObj = kJ.Where(l => l.parentid == k.id).ToList(); lsObj = lsObj.Where(l => l.modelTypeId == 2).ToList(); LSXH.AddRange(lsObj); for (int i = 0; i < LSXH.Count; i++) { parameter parameter = new parameter(); parameter.parmName = "LSXH"; parameter.parmValue = LSXH[i].modelNumber; k.parameters.Add(parameter); } } foreach (DataRow dr in dt.Rows) { try { if (k.modelNumber == dr["Code"].ToString()) { k.LevelSeq = int.Parse(dr["LevelSeq"].ToString()); k.newCode = k.modelNumber; string holeFx = dr["HoleFx"].ToString(); k.holeFx = holeFx == "" ? 0 : k.holeFx = double.Parse(holeFx); Klist.Add(k); flag = true; } } catch (Exception e) { ErrMsg(DateTime.Now.ToString() + ":获取配置信息失败!" + "错误信息为:" + e.ToString()); } } if (flag == false) { k.newCode = k.modelNumber; k.LevelSeq = 100; Klist.Add(k); if (k.modelTypeId != 2) { ErrMsg(k.modelNumber + ":在数据库找不到配置信息!"); } } } addMsg(DateTime.Now.ToString() + ":获取数据库配置信息完成!"); return(Klist); }