using DataServer.api; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Http; using System.Net.Http.Headers; using System.Security.Cryptography.X509Certificates; using System.Text; using System.Web.Http; namespace DongYingAPI.Controllers.api { /// /// 用能监测3-设备监测 /// public class GetEquipmentMonitoringController : ApiController { DataServer.BLL.electricity_data bll = new DataServer.BLL.electricity_data(); DataServer.BLL.device_info bll_info = new DataServer.BLL.device_info(); public HttpResponseMessage Get(string type = "") { var res = new get_equipment_monitoring(); try { if (!string.IsNullOrEmpty(type)) { var time = DateTime.Now.ToString("yyyyMM"); if (type == "配电室1") { var data = new List(); var count = 0; var now=DateTime.Now; var sdate = now.ToString("yyyy-MM-dd 00:00:00"); var edate = now.AddDays(1).ToString("yyyy-MM-dd 00:00:00"); var list = bll_info.GetModelList("").Where(x => x.FloorName == "科技馆一楼").ToList(); foreach (var item in list) { var alist = bll.GetModelListDate("", time).Where(x => x.EntireTime >= Convert.ToDateTime(sdate) && x.EntireTime < Convert.ToDateTime(edate)).ToList(); var model=new equipment_monitoringData(); count++; model.SerialNumber = count; model.DeviceName=item.DeviceName; foreach (var aitem in alist) { model.EH = aitem.EH; } if (model.EH > 0) { model.DeviceState = "正常"; } else { model.DeviceState = "异常"; } data.Add(model); } res.code = 200; res.msg = "成功"; res.data = data; } else if (type == "配电室2") { var data = new List(); var count = 0; var now = DateTime.Now; var sdate = now.ToString("yyyy-MM-dd 00:00:00"); var edate = now.AddDays(1).ToString("yyyy-MM-dd 00:00:00"); var list = bll_info.GetModelList("").Where(x => x.FloorName == "科技馆负一层地源热泵").ToList(); foreach (var item in list) { var alist = bll.GetModelListDate("", time).Where(x => x.EntireTime >= Convert.ToDateTime(sdate) && x.EntireTime < Convert.ToDateTime(edate)).ToList(); var model = new equipment_monitoringData(); count++; model.SerialNumber = count; model.DeviceName = item.DeviceName; foreach (var aitem in alist) { model.EH = aitem.EH; } if (model.EH > 0) { model.DeviceState = "正常"; } else { model.DeviceState = "异常"; } data.Add(model); } res.code = 200; res.msg = "成功"; res.data = data; } else if (type == "配电室3") { var data = new List(); var count = 0; var now = DateTime.Now; var sdate = now.ToString("yyyy-MM-dd 00:00:00"); var edate = now.AddDays(1).ToString("yyyy-MM-dd 00:00:00"); var list = bll_info.GetModelList("").Where(x => x.FloorName == "图书馆一楼").ToList(); foreach (var item in list) { var alist = bll.GetModelListDate("", time).Where(x => x.EntireTime >= Convert.ToDateTime(sdate) && x.EntireTime < Convert.ToDateTime(edate)).ToList(); var model = new equipment_monitoringData(); count++; model.SerialNumber = count; model.DeviceName = item.DeviceName; foreach (var aitem in alist) { model.EH = aitem.EH; } if (model.EH > 0) { model.DeviceState = "正常"; } else { model.DeviceState = "异常"; } data.Add(model); } res.code = 200; res.msg = "成功"; res.data = data; } } else { res.code = 201; res.msg = "参数为空"; } } catch (Exception ex) { res.code = 500; res.msg = "失败," + ex.Message; } HttpResponseMessage result = new HttpResponseMessage { Content = new StringContent(JsonConvert.SerializeObject(res), Encoding.GetEncoding("UTF-8"), "application/json") }; return result; } } }