public JsonResult ApiGetDeviceParasGridColumn(string id) { if (id == null || id == "") { return(Json(null, JsonRequestBehavior.AllowGet)); } IODeviceModel model = IO_DeviceServer.GetByWhere("where IO_DEVICE_ID='" + id + "'").First(); if (model == null) { return(Json(null, JsonRequestBehavior.AllowGet)); } List <GridColumn> columns = new List <GridColumn>(); if (model != null) { IEnumerable <IOParaModel> Items = IO_ParaServer.GetByWhere("where IO_DEVICE_ID='" + model.IO_DEVICE_ID + "'"); string IOPARANAMES = ""; string IOPARATITLES = ""; foreach (var item in Items) { string label = item.IO_LABEL == "" ? item.IO_NAME : item.IO_LABEL; IOPARANAMES += (IOPARANAMES == "" ? item.IO_NAME : "," + item.IO_NAME); IOPARATITLES += (IOPARATITLES == "" ? label : "," + label); } string[] fields = IOPARANAMES.Split(','); string[] titles = IOPARATITLES.Split(','); if (fields.Length == titles.Length) { for (int i = 0; i < fields.Length; i++) { GridColumn _option = new GridColumn { field = fields[i], title = titles[i], width = "120" }; columns.Add(_option); } } } columns.Insert(0, new GridColumn() { field = "DateStampTime", title = "采集时间", width = "120" }); return(Json(columns, JsonRequestBehavior.AllowGet)); }
public JsonResult ApiGetDevice(string list = "0") { List <SelectOption> _select = new List <SelectOption>(); if (list == null || list == "" || list == "0") { return(Json(null, JsonRequestBehavior.AllowGet)); } IEnumerable <IODeviceModel> Items = IO_DeviceServer.GetByWhere(" where IO_DEVICE_ID in('" + list.Replace(",", "','") + "')"); if (Items != null && Items.Count() > 0) { foreach (var item in Items) { IEnumerable <IOParaModel> ParaItems = IO_ParaServer.GetByWhere("where IO_DEVICE_ID='" + item.IO_DEVICE_ID + "'"); string IOPARANAMES = ""; string IOPARATITLES = ""; foreach (var para in ParaItems) { string label = para.IO_LABEL == "" ? para.IO_NAME : para.IO_LABEL; IOPARANAMES += (IOPARANAMES == "" ? para.IO_NAME : "," + para.IO_NAME); IOPARATITLES += (IOPARATITLES == "" ? label : "," + label); } SelectOption _option = new SelectOption { id = item.IO_DEVICE_ID.ToString(), name = item.IO_DEVICE_LABLE, value = item.IO_DEVICE_ID.ToString(), value1 = item.IO_DEVICE_ID.ToString(), value2 = item.IO_COMM_ID, value3 = item.IO_SERVER_ID, value4 = IOPARANAMES, value5 = IOPARATITLES, }; _select.Add(_option); } } return(Json(_select, JsonRequestBehavior.AllowGet)); }
public JsonResult ApiScadaHistory(GeneralHistoryModel model, PageInfo pageInfo) { string items = "["; IEnumerable <IOParaModel> paras = IO_ParaServer.GetByWhere(" where IO_DEVICE_ID='" + model.DeviceID.ToString() + "'"); string namestr = ""; foreach (var para in paras) { namestr += (namestr == "" ? para.IO_NAME : "," + para.IO_NAME); } string[] columns = namestr.Split(','); if (!string.IsNullOrWhiteSpace(model.DeviceID)) { string sdate = model.StartDate; string edate = model.EndDate; InfluxDBHistoryResult realResult = mWebInfluxDbManager.DbQuery_History(model.ServerID, model.CommunicateID, model.DeviceID, Convert.ToDateTime(sdate), Convert.ToDateTime(edate), pageInfo.limit, pageInfo.page, " DESC "); foreach (var s in realResult.Seres) { List <int> indexs = new List <int>(); for (int i = 0; i < s.Values.Count; i++) { string jsonrow = ""; int index = s.Columns.IndexOf("time"); object time = s.Values[i][index]; jsonrow += "{"; jsonrow += "\"DateStampTime\":\"" + (time != null ? time.ToString() : "") + "\""; foreach (string str in columns) { try { index = -1; index = s.Columns.IndexOf("field_" + str.Trim().ToLower().ToString() + "_value"); if (index >= 0) { object v = s.Values[i][index]; jsonrow += ",\"" + str + "\":\"" + (v != null ? v.ToString() : "") + "\""; } } catch { continue; } } jsonrow += "},"; items += jsonrow; } } items += "]"; var result = Pager.Paging2(items, realResult.RecordCount); //读取以下的实时数据,从influxDB中读取 return(Json(result, "application/text", JsonRequestBehavior.AllowGet)); } else { var result = Pager.Paging2("", 0); return(Json(result, "application/text", JsonRequestBehavior.AllowGet)); } }