public IHttpActionResult AddEquipmentEnergyChartInfo(EquipmentEnergyModel model) { UserApi api = new UserApi(); var userApi = api.GetUserInfoByToken(); model.DashBoardType = "4"; model.DatabaseType = "0";// 0:使用连接数据库;1:本地数据查找 model.CreateUserID = userApi.Data.UserId; model.OrgID = userApi.Data.OrgID.ToString(); DashBoardEnergyConfigModel EnergyConfig = new DashBoardEnergyConfigModel() { DatabaseType = model.DatabaseType, StartTime = model.StartTime.ToString(), EndTime = model.EndTime.ToString(), StatisticalInterval = model.StatisticalInterval, IntervalUnit = model.IntervalUnit, Type = model.Type }; List <HomeDeviceInfo> HomeDeviceInfoList = new List <HomeDeviceInfo>(); if (model.Property != null) { for (int i = 0; i < model.Property.Count; i++) { HomeDeviceInfo HomeDeviceInfo = new HomeDeviceInfo(); HomeDeviceInfo.DeviceID = model.Property[i].data[0]; HomeDeviceInfo.DeviceItemID = model.Property[i].data[1]; HomeDeviceInfoList.Add(HomeDeviceInfo); } } EnergyConfig.HomeDeviceInfoList = HomeDeviceInfoList; model.ChartConfig = JsonConvert.SerializeObject(EnergyConfig); EquipmentReportBLL device = new EquipmentReportBLL(); var add = device.AddChart(model); return(InspurJson <RetEquipmentEnergyList>(add)); }
/// <summary> /// 获取设备能源数据信息 /// </summary> /// <returns>成功返回图表列表,失败返回Null.</returns> public ReturnItem <RetEquipmentEnergyList> GetEquipmentEnergyChartList(EquipmentEnergyModel parameter) { ReturnItem <RetEquipmentEnergyList> r = new ReturnItem <RetEquipmentEnergyList>(); using (UserEntities user = new UserEntities()) { try { var dashboardtype = Convert.ToInt32(parameter.DashBoardType); var OrgID = Convert.ToInt32(parameter.OrgID); var getchartlist = user.U_HomeConfiguration.Where(s => s.DashBoardType == dashboardtype && s.OrgID == OrgID).FirstOrDefault(); if (getchartlist == null) { r.Data = null; r.Code = -1; r.Msg = "未找到设备能源配置信息"; return(r); } if (getchartlist != null) { r.Msg = "设备能源配置信息获取成功"; r.Code = 0; RetEquipmentEnergyList info = new RetEquipmentEnergyList(); info.ID = getchartlist.ID; info.DashBoardType = getchartlist.DashBoardType.ToString(); // ChartConfig赋值 info.ChartConfig = getchartlist.ChartConfig; DashBoardEnergyConfigModel ChartConfig = new DashBoardEnergyConfigModel(); if (getchartlist.ChartConfig != "" && getchartlist.ChartConfig != null) { ChartConfig = JsonConvert.DeserializeObject <DashBoardEnergyConfigModel>(getchartlist.ChartConfig); } info.DatabaseType = ChartConfig.DatabaseType; if (ChartConfig.StartTime != "") { info.StartTime = Convert.ToDateTime(ChartConfig.StartTime); } if (ChartConfig.EndTime != "") { info.EndTime = Convert.ToDateTime(ChartConfig.EndTime); } info.StatisticalInterval = ChartConfig.StatisticalInterval; info.IntervalUnit = ChartConfig.IntervalUnit; info.Type = ChartConfig.Type; List <BaseModel> Property = new List <BaseModel>(); foreach (var item in ChartConfig.HomeDeviceInfoList) { BaseModel model = new BaseModel(); List <string> data = new List <string>(); data.Add(item.DeviceID); data.Add(item.DeviceItemID); model.data = data; Property.Add(model); } info.Property = Property; info.CreateTime = getchartlist.CreateTime; info.CreateUserID = getchartlist.CreateUserID.ToString(); info.OrgID = getchartlist.OrgID.ToString(); r.Data = info; } } catch (Exception e) { r.Msg = "内部错误请重试"; log.ErrorFormat("内部错误:{0},{1}", e.Message, e.StackTrace); r.Code = -1; } } return(r); }