public JsonResult GeneralGridHistorySummary(GeneralHistorySummaryModel model, PageInfo pageInfo) { string items = "["; string[] columns = model.Fields.Split(','); if (!string.IsNullOrWhiteSpace(model.DeviceID)) { string sdate = model.StartDate; string edate = model.EndDate; string returnFields = " time"; #region { for (int i = 0; i < columns.Length; i++) { returnFields += "," + model.Method + "(field_" + columns[i].Trim().ToLower().ToString() + "_value) as field_" + columns[i].Trim().ToLower().ToString() + "_value"; } } #endregion InfluxDBHistoryResult realResult = mWebInfluxDbManager.DbQuery_HistoryStatics(model.ServerID, model.CommunicateID, model.DeviceID, Convert.ToDateTime(sdate), Convert.ToDateTime(edate), pageInfo.limit, pageInfo.page, " DESC ", model.Period, returnFields); 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)); } }
/// <summary> /// 通用历史数据查询模块 /// </summary> /// <returns></returns> public ActionResult GeneralHistorySummary() { GeneralHistorySummaryModel model = new GeneralHistorySummaryModel(); return(View(model)); }