} //备注 public TY_Model() { SJZCFLBM = new SJ_SX_Model(); SJZCFLMC = new SJ_SX_Model(); ZCBM = new SJ_SX_Model(); ZCMC = new SJ_SX_Model(); YWMC = new SJ_SX_Model(); SL = new SJ_SX_Model(); JLDW = new SJ_SX_Model(); ZMJZ = new SJ_SX_Model(); JZLX = new SJ_SX_Model(); BiZ = new SJ_SX_Model(); GB = new SJ_SX_Model(); QDRQ = new SJ_SX_Model(); KSKYRQ = new SJ_SX_Model(); YT = new SJ_SX_Model(); SYZK = new SJ_SX_Model(); SYFX = new SJ_SX_Model(); QDFS = new SJ_SX_Model(); KJPZH = new SJ_SX_Model(); SYBM = new SJ_SX_Model(); SYR = new SJ_SX_Model(); BZ = new SJ_SX_Model(); }
public SJ_ZC_Model(BsonDocument res, string type, int number) { Random ra = new Random(); ZC_SX = new List <SJ_SX_Model>(); M_Db_Operate YSX_db = new M_Db_Operate(); var ysx_coll = YSX_db.database.GetCollection <YSX_Model>("Meta_attribute"); int j = 0; ZCBM = number.ToString(); while (true) { try { SJ_SX_Model sx = new SJ_SX_Model(); sx.mp = res["ZC_SX"][j]["ID"].ToString(); if (sx.mp == "0002") { sx.V = type; ZC_SX.Add(sx); j++; continue; } if (sx.mp == "0003") { sx.V = number.ToString(); ZC_SX.Add(sx); j++; continue; } if (sx.mp == "0004") { sx.V = type + ra.Next(15).ToString(); ZC_SX.Add(sx); j++; continue; } if (res["ZC_SX"][j]["Name"].ToString() == "文物标识") { sx.V = ra.Next(2).ToString(); if (sx.V == "1") { var ww_ysx = YSX_db.Inquire_Data(ysx_coll, new List <string>() { "Dimension_dic.应用特性维度" }, new List <string> { "文物信息" }); foreach (var ww in ww_ysx) { SJ_SX_Model ww_s = new SJ_SX_Model(); if (ww.Data_Type == "整型") { ww_s.V = ra.Next(1, 100).ToString(); } else if (ww.Data_Type == "时间型") { ww_s.V = Convert.ToDateTime("2007-1-1").AddDays(ra.Next(1000)).ToString(); } else { ww_s.V = ww.Name + ra.Next(1, 100).ToString(); } ww_s.mp = ww.ID; ZC_SX.Add(ww_s); } } } else if (res["ZC_SX"][j]["Name"].ToString() == "是否包含物联网传感") { sx.V = ra.Next(2).ToString(); if (sx.V == "1") { var wlw_ysx = YSX_db.Inquire_Data(ysx_coll, new List <string>() { "Dimension_dic.应用特性维度" }, new List <string> { "物联网信息" }); foreach (var wlw in wlw_ysx) { SJ_SX_Model wlw_s = new SJ_SX_Model(); if (wlw.Data_Type == "整型") { wlw_s.V = ra.Next(1, 100).ToString(); } else if (wlw.Data_Type == "时间型") { wlw_s.V = Convert.ToDateTime("2007-1-1").AddDays(ra.Next(1000)).ToString(); } else { wlw_s.V = wlw.Name + ra.Next(1, 100).ToString(); } wlw_s.mp = wlw.ID; ZC_SX.Add(wlw_s); } } } else if (res["ZC_SX"][j]["Name"].ToString() == "陈列品标识") { sx.V = ra.Next(2).ToString(); if (sx.V == "1") { var bb_ysx = YSX_db.Inquire_Data(ysx_coll, new List <string>() { "Dimension_dic.应用特性维度" }, new List <string> { "标本信息" }); foreach (var bb in bb_ysx) { SJ_SX_Model bb_s = new SJ_SX_Model(); if (bb.Data_Type == "整型") { bb_s.V = ra.Next(1, 100).ToString(); } else if (bb.Data_Type == "时间型") { bb_s.V = Convert.ToDateTime("2007-1-1").AddDays(ra.Next(1000)).ToString(); } else { bb_s.V = bb.Name + ra.Next(1, 100).ToString(); } bb_s.mp = bb.ID; ZC_SX.Add(bb_s); } } } else { if (res["ZC_SX"][j]["Data_Type"].ToString() == "整型") { sx.V = ra.Next(1, 100).ToString(); } else if (res["ZC_SX"][j]["Data_Type"].ToString() == "时间型") { sx.V = Convert.ToDateTime("2007-1-1").AddDays(ra.Next(1000)).ToString(); } else { sx.V = res["ZC_SX"][j]["Name"].ToString() + ra.Next(1, 100).ToString(); } } ZC_SX.Add(sx); j++; } catch { break; } } }
//资产修改完成动作result[0].SJZCFLBM public IActionResult Updata_zc_OK(IFormCollection f) { try { string id; if (f["zc_id"] == "-- 资产编码 --") { id = f["int_zc_"]; } else { id = f["zc_id"]; } List <SJ_SX_Model> new_ZC_SX = new List <SJ_SX_Model>(); M_Db_Operate m_Db_Operate = new M_Db_Operate(); var coll = m_Db_Operate.database.GetCollection <SJ_ZC_Model>("ZC_data"); var result = m_Db_Operate.Get_Aggregate( "ZC_data", new List <string>() { "ZCBM" }, new List <string>() { id }, new List <string>() { "Meta_attribute" }, new List <string>() { "ZC_SX.mp" }, new List <string>() { "ID" }, new List <string>() { "ZC_SXN" } )[0]; M_Db_Operate m_Db = new M_Db_Operate(); var collection = m_Db.database.GetCollection <YSX_Model>("Meta_attribute"); int j = 0; int[] flag = { 1, 1, 1 }; List <SJ_SX_Model> del_sx = new List <SJ_SX_Model>(); while (true) { try { SJ_SX_Model sx = new SJ_SX_Model(); sx.V = f[result["ZC_SXN"][j]["ID"].ToString()]; int u = 0; while (true) { try { if (result["ZC_SX"][u]["mp"].ToString() == result["ZC_SXN"][j]["ID"].ToString()) { sx.mp = result["ZC_SX"][u]["mp"].ToString(); break; } u++; } catch { break; } } //sx.mp = result["ZC_SX"][j]["mp"].ToString(); new_ZC_SX.Add(sx); if (result["ZC_SXN"][j]["Name"].ToString() == "文物标识") { if (sx.V == "1") { var ww_resu = m_Db.Inquire_Data(collection, new List <string>() { "Dimension_dic.应用特性维度" }, new List <string>() { "文物信息" }); foreach (var ysx in ww_resu) { SJ_SX_Model ww_sx = new SJ_SX_Model(); ww_sx.V = f[ysx.ID]; ww_sx.mp = ysx.ID; new_ZC_SX.Add(ww_sx); } } if (sx.V == "0") { var ww_resu = m_Db.Inquire_Data(collection, new List <string>() { "Dimension_dic.应用特性维度" }, new List <string>() { "文物信息" }); foreach (var ysx in ww_resu) { SJ_SX_Model ww_sx = new SJ_SX_Model(); ww_sx.V = f[ysx.ID]; ww_sx.mp = ysx.ID; del_sx.Add(ww_sx); } } } else if (result["ZC_SXN"][j]["Name"].ToString() == "是否包含物联网传感") { if (sx.V == "1") { var wlw_resu = m_Db.Inquire_Data(collection, new List <string>() { "Dimension_dic.应用特性维度" }, new List <string>() { "物联网信息" }); foreach (var ysx in wlw_resu) { SJ_SX_Model wlw_sx = new SJ_SX_Model(); wlw_sx.V = f[ysx.ID]; wlw_sx.mp = ysx.ID; new_ZC_SX.Add(wlw_sx); } } if (sx.V == "0") { var wlw_resu = m_Db.Inquire_Data(collection, new List <string>() { "Dimension_dic.应用特性维度" }, new List <string>() { "物联网信息" }); foreach (var ysx in wlw_resu) { SJ_SX_Model wlw_sx = new SJ_SX_Model(); wlw_sx.V = f[ysx.ID]; wlw_sx.mp = ysx.ID; del_sx.Add(wlw_sx); } } } else if (result["ZC_SXN"][j]["Name"].ToString() == "陈列品标识") { if (sx.V == "1") { var bb_resu = m_Db.Inquire_Data(collection, new List <string>() { "Dimension_dic.应用特性维度" }, new List <string>() { "标本信息" }); foreach (var ysx in bb_resu) { SJ_SX_Model bb_sx = new SJ_SX_Model(); bb_sx.V = f[ysx.ID]; bb_sx.mp = ysx.ID; new_ZC_SX.Add(bb_sx); } } if (sx.V == "0") { var bb_resu = m_Db.Inquire_Data(collection, new List <string>() { "Dimension_dic.应用特性维度" }, new List <string>() { "标本信息" }); foreach (var ysx in bb_resu) { SJ_SX_Model bb_sx = new SJ_SX_Model(); bb_sx.V = f[ysx.ID]; bb_sx.mp = ysx.ID; del_sx.Add(bb_sx); } } } j++; } catch { foreach (var del in del_sx) { new_ZC_SX.Remove(del); for (int i = 0; i < new_ZC_SX.Count; i++) { if (new_ZC_SX[i].mp == del.mp) { new_ZC_SX.RemoveAt(i); break; } } } break; } } m_Db_Operate.Up_Data(coll, "ZCBM", f["0003"], "ZC_SX", new_ZC_SX); return(View("../Home/add_OK")); } catch (InvalidCastException e) { ViewData["e"] = e.ToString(); return(View("../Home/add_ERROR")); }; }
[HttpGet]//根据资产ID获取一个资产的全部信息 public List <Dictionary <string, SJ_SX_Model> > Get_ZC_XX(string ID) { try { List <Dictionary <string, SJ_SX_Model> > resu = new List <Dictionary <string, SJ_SX_Model> >(); Dictionary <string, SJ_SX_Model> TY_SX = new Dictionary <string, SJ_SX_Model>(); Dictionary <string, SJ_SX_Model> ZY_SX = new Dictionary <string, SJ_SX_Model>(); Dictionary <string, SJ_SX_Model> KZ_SX = new Dictionary <string, SJ_SX_Model>(); Dictionary <string, SJ_SX_Model> GZ_WW = new Dictionary <string, SJ_SX_Model>(); Dictionary <string, SJ_SX_Model> GZ_WLW = new Dictionary <string, SJ_SX_Model>(); Dictionary <string, SJ_SX_Model> GZ_BB = new Dictionary <string, SJ_SX_Model>(); M_Db_Operate m_Db_Operate = new M_Db_Operate(); var collection = m_Db_Operate.database.GetCollection <SJ_ZC_Model>("ZC_data"); var result = m_Db_Operate.Get_Aggregate( "ZC_data", new List <string>() { "ZCBM" }, new List <string>() { ID }, new List <string>() { "Meta_attribute" }, new List <string>() { "ZC_SX.mp" }, new List <string>() { "ID" }, new List <string>() { "ZC_SXN" } )[0]; int j = 0; while (true) { try { SJ_SX_Model sJ_SX_ = new SJ_SX_Model(); sJ_SX_.mp = result["ZC_SXN"][j]["ID"].ToString(); int u = 0; while (true) { try { if (result["ZC_SX"][u]["mp"].ToString() == result["ZC_SXN"][j]["ID"].ToString()) { sJ_SX_.V = result["ZC_SX"][u]["V"].ToString(); break; } u++; } catch { break; } } if (result["ZC_SXN"][j]["Dimension_dic"]["资产类别维度"].ToString().Contains("通用集")) { TY_SX.Add(result["ZC_SXN"][j]["Name"].ToString(), sJ_SX_); } else if (result["ZC_SXN"][j]["Dimension_dic"]["资产类别维度"].ToString().Contains("专用集")) { ZY_SX.Add(result["ZC_SXN"][j]["Name"].ToString(), sJ_SX_); } else if (result["ZC_SXN"][j]["Dimension_dic"]["资产类别维度"].ToString().Contains("扩展集")) { if (result["ZC_SXN"][j]["Dimension_dic"]["应用特性维度"] == "文物信息") { GZ_WW.Add(result["ZC_SXN"][j]["Name"].ToString(), sJ_SX_); } else if (result["ZC_SXN"][j]["Dimension_dic"]["应用特性维度"] == "物联网信息") { GZ_WLW.Add(result["ZC_SXN"][j]["Name"].ToString(), sJ_SX_); } else if (result["ZC_SXN"][j]["Dimension_dic"]["应用特性维度"] == "标本信息") { GZ_BB.Add(result["ZC_SXN"][j]["Name"].ToString(), sJ_SX_); } else { KZ_SX.Add(result["ZC_SXN"][j]["Name"].ToString(), sJ_SX_); } } j++; } catch { break; } } resu.Add(ZY_SX); resu.Add(KZ_SX); resu.Add(TY_SX); resu.Add(GZ_WW); resu.Add(GZ_WLW); resu.Add(GZ_BB); return(resu); } catch { return(null); } }
//按照管理者维度查找 //public IActionResult query_zc_3(IFormCollection f) //{ // string guanlizhe = f["glz"]; // try // { // M_Db_Operate m_Db_Operate = new M_Db_Operate(); // var collection1 = m_Db_Operate.database.GetCollection<Dimension_Information_Model>("Dimension_Information"); // List<string> key1 = new List<string>(); // key1.Add("TYPE"); // List<string> value1 = new List<string>(); // value1.Add("管理者维度"); // var Result1 = m_Db_Operate.Inquire_Data(collection1, key1, value1); // List<string> name = new List<string>(); // for (var i = 0; i < Result1.Count; i++) // { // name.Add(Result1[i].NAME); // } // ViewData["glz_list"] = name; // //在这里查询数据库并整合数据 // var collection = m_Db_Operate.database.GetCollection<YSX_Model>("Meta_attribute"); // List<string> key = new List<string>(); // key.Add("Dimension_dic.管理者维度"); // List<string> value = new List<string>(); // value.Add(guanlizhe); // var Result = m_Db_Operate.Inquire_Data(collection, key, value); // List<string> results = new List<string>(); // for (var i = 0; i < Result.Count; i++) // { // results.Add(Result[i].Name); // } // List<string> value2 = new List<string>(); // value2.Add("默认管理者"); // Result = m_Db_Operate.Inquire_Data(collection, key, value2); // for (var i = 0; i < Result.Count; i++) // { // results.Add(Result[i].Name); // } // var collection2 = m_Db_Operate.database.GetCollection<SJ_ZC_Model>("ZC_data"); // FilterDefinitionBuilder<SJ_ZC_Model> builderFilter = Builders<SJ_ZC_Model>.Filter; // var result = collection2.FindSync<SJ_ZC_Model>(builderFilter.Empty).ToList(); // List<List<string>> ZC_datas = new List<List<string>>(); // for (var i = 0; i < result.Count; i++) // { // List<string> ZC_data = new List<string>(); // ZC_data.Add(sx_name[0] + ":" +result[i].SJZCFLBM.V.ToString()); // ZC_data.Add(sx_name[1] + ":" +result[i].SJZCFLMC.V.ToString()); // ZC_data.Add(sx_name[2] + ":" +result[i].ZCBM.V.ToString()); // ZC_data.Add(sx_name[3] + ":" +result[i].ZCMC.V.ToString()); // ZC_data.Add(sx_name[4] + ":" +result[i].YWMC.V.ToString()); // ZC_data.Add(sx_name[5] + ":" +result[i].SL.V.ToString()); // ZC_data.Add(sx_name[6] + ":" +result[i].JLDW.V.ToString()); // ZC_data.Add(sx_name[7] + ":" +result[i].ZMJZ.V.ToString()); // ZC_data.Add(sx_name[8] + ":" +result[i].JZLX.V.ToString()); // ZC_data.Add(sx_name[9] + ":" +result[i].BiZ.V.ToString()); // ZC_data.Add(sx_name[10] + ":" +result[i].GB.V.ToString()); // ZC_data.Add(sx_name[11] + ":" +result[i].QDRQ.V.ToString()); // ZC_data.Add(sx_name[12] + ":" +result[i].KSKYRQ.V.ToString()); // ZC_data.Add(sx_name[13] + ":" +result[i].YT.V.ToString()); // ZC_data.Add(sx_name[14] + ":" +result[i].SYZK.V.ToString()); // ZC_data.Add(sx_name[15] + ":" +result[i].SYFX.V.ToString()); // ZC_data.Add(sx_name[16] + ":" +result[i].QDFS.V.ToString()); // ZC_data.Add(sx_name[17] + ":" +result[i].KJPZH.V.ToString()); // ZC_data.Add(sx_name[18] + ":" +result[i].SYBM.V.ToString()); // ZC_data.Add(sx_name[19] + ":" +result[i].SYR.V.ToString()); // ZC_data.Add(sx_name[20] + ":" +result[i].BZ.V.ToString()); // string kz_sx = ""; // M_Db_Operate m_Db_ = new M_Db_Operate(); // var coll = m_Db_.database.GetCollection<YSX_Model>("Meta_attribute"); // List<string> key2 = new List<string>(); // key2.Add("ID"); // for (var j = 0; j < result[i].ZY_SX.Count; j++) // { // List<string> value3 = new List<string>(); // value3.Add(result[i].ZY_SX[j].mp.ToString()); // var su = m_Db_.Inquire_Data(coll, key2, value3); // kz_sx += su[0].Name.ToString() + " : " + result[i].ZY_SX[j].V.ToString() + " "; // } // for (var j = 0; j < result[i].KJ_SX.Count; j++) // { // List<string> value3 = new List<string>(); // value3.Add(result[i].KJ_SX[j].mp.ToString()); // var su = m_Db_.Inquire_Data(coll, key2, value3); // kz_sx += su[0].Name.ToString() + " : " + result[i].KJ_SX[j].V.ToString() + " "; // } // ZC_data.Add(kz_sx); // ZC_datas.Add(ZC_data); // } // ViewData["ZC_datas"] = ZC_datas; // ViewData["sx_name"] = sx_name; // } // catch (InvalidCastException e) // { // ViewData["e"] = e.ToString(); // return View("query_ERROR"); // } // ViewData["glz"] = guanlizhe; // ViewData["zc_name"] = null; // ViewData["ysx_name"] = null; // ViewData["ysx_value"] = null; // return View("query_zc"); //} //添加资产完成动作 public IActionResult addZC_OK(IFormCollection f) { string Kindda, One_Class; Kindda = f["Kindda"]; One_Class = f["One_Class"]; //Two_Class = f["Two_Class"]; SJ_ZC_Model SJ_ZC = new SJ_ZC_Model(); for (int i = 1; i < ty_names.Count; i++) { SJ_SX_Model sJ_SX_ = new SJ_SX_Model(); sJ_SX_.V = f[ty_names[i - 1]]; if (i > 9) { sJ_SX_.mp = "00" + i.ToString(); } else { sJ_SX_.mp = "000" + i.ToString(); } SJ_ZC.ZC_SX.Add(sJ_SX_); } SJ_ZC.ZCBM = f["资产编码"]; Class_template old = new Class_template(); if (One_Class == "不选择--") { old = new Class_template(Kindda); } else { old = new Class_template(One_Class); } List <string> key = new List <string>(); key.Add("ID"); M_Db_Operate m_Db_Operate = new M_Db_Operate(); var collection = m_Db_Operate.database.GetCollection <YSX_Model>("Meta_attribute"); for (var i = 1; i < old.ZC_SX.Count; i++) { SJ_SX_Model sj_sx = new SJ_SX_Model(); List <string> value = new List <string>(); value.Add(old.ZC_SX[i].ToString()); var resu = m_Db_Operate.Inquire_Data(collection, key, value); sj_sx.V = f[resu[0].Name]; sj_sx.mp = resu[0].ID.ToString(); SJ_ZC.ZC_SX.Add(sj_sx); if (resu[0].Name == "文物标识") { var re_ww = m_Db_Operate.Inquire_Data(collection, new List <string> { "Dimension_dic.应用特性维度" }, new List <string> { "文物信息" }); for (int j = 0; j < re_ww.Count; j++) { sj_sx = new SJ_SX_Model(); sj_sx.V = f[re_ww[j].Name]; sj_sx.mp = re_ww[j].ID.ToString(); SJ_ZC.ZC_SX.Add(sj_sx); } } else if (resu[0].Name == "是否包含物联网传感") { var re_ww = m_Db_Operate.Inquire_Data(collection, new List <string> { "Dimension_dic.应用特性维度" }, new List <string> { "物联网信息" }); for (int j = 0; j < re_ww.Count; j++) { sj_sx = new SJ_SX_Model(); sj_sx.V = f[re_ww[j].Name]; sj_sx.mp = re_ww[j].ID.ToString(); SJ_ZC.ZC_SX.Add(sj_sx); } } else if (resu[0].Name == "陈列品标识") { var re_ww = m_Db_Operate.Inquire_Data(collection, new List <string> { "Dimension_dic.应用特性维度" }, new List <string> { "标本信息" }); for (int j = 0; j < re_ww.Count; j++) { sj_sx = new SJ_SX_Model(); sj_sx.V = f[re_ww[j].Name]; sj_sx.mp = re_ww[j].ID.ToString(); SJ_ZC.ZC_SX.Add(sj_sx); } } } try { M_Db_Operate m_Db = new M_Db_Operate(); var coll = m_Db.database.GetCollection <SJ_ZC_Model>("ZC_data"); coll.InsertOne(SJ_ZC); return(View("../Home/add_OK")); } catch (InvalidCastException e) { ViewData["e"] = e.ToString(); return(View("../Home/add_ERROR")); }; }