using DataServer.api; using Newtonsoft.Json; using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Http; using System.Text; using System.Web.Http; namespace JinanCementFactoryAPI.Controllers.api { /// /// 吨水电耗 /// public class GetEnergyAnalyseController : ApiController { DataServer.BLL.water_meter bll = new DataServer.BLL.water_meter(); // GET api/ public HttpResponseMessage Get() { var res = new get_daily_consumption(); try { #region 添加 var blist = bll.GetModelList(""); Random rand1 = new Random(); var now = DateTime.Now; var start_time = now.ToString("yyyy-MM-dd") + " 00:00:00"; var end_time = now.AddDays(1).ToString("yyyy-MM-dd") + " 00:00:00"; var alarm_model = bll.GetModelList("CreateTime>='" + start_time + "' and CreateTime<'" + end_time + "'").FirstOrDefault(); if (alarm_model == null) { foreach (var item in blist) { var amodel = new DataServer.Model.water_meter(); amodel = item; amodel.WaterMeterId = Guid.NewGuid().ToString(); double randomValue = 0.4 + (0.8 - 0.4) * rand1.NextDouble(); double roundedValue = Math.Round(randomValue, 3); // 保留三位小数 amodel.OutletPressure = Convert.ToDecimal(roundedValue); int randomValue1 = 280 + rand1.Next(41); // 生成280到320之间的随机数 amodel.TonWater = randomValue1; amodel.CreateTime = DateTime.Now; bll.Add(amodel); } } #endregion var list = bll.GetModelList(""); var alist = new List(); decimal? num = 0; for (int i = 0; i < 6; i++) { var model = new daily_consumptionData(); model.time = DateTime.Now.AddDays(-i).ToString("MM-dd"); var now1 = DateTime.Now.AddDays(-i); var start_time1 = now1.ToString("yyyy-MM-dd") + " 00:00:00"; var end_time1 = now1.AddDays(1).ToString("yyyy-MM-dd") + " 00:00:00"; var modellist = bll.GetModelList("CreateTime>='" + start_time1 + "' and CreateTime<'" + end_time1 + "'"); foreach (var item in modellist) { num += item.TonWater; } model.value = num; alist.Add(model); num = 0; } res.code = 200; res.msg = "成功"; res.data = alist; } 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; } } }