using IStation;
|
using IStation.ChEr.Application;
|
using IStation.ChEr.DAL;
|
using IStation.ChEr.Model;
|
using IStation.Service;
|
using System;
|
using Yw;
|
using static IStation.Service.SSAPredictHelper;
|
|
namespace IStation.Application
|
{
|
/// <summary>
|
/// Debug
|
/// </summary>
|
[Route("Debug")]
|
[ApiDescriptionSettings("Debug", Name = "Debug(调试)", Order = 9900)]
|
public class DebugController : IDynamicApiController
|
{
|
private IStation.ChEr.BLL.WaterPredictRecord bll = new IStation.ChEr.BLL.WaterPredictRecord();
|
|
/// <summary>
|
///Debug log
|
/// </summary>
|
[Route("LogInfo")]
|
[HttpGet]
|
public string LogInfo()
|
{
|
IStation.LogHelper.Info("info from debug api");
|
|
/* List<WaterPredictRecord> waterPredictRecord = new List<WaterPredictRecord>();
|
ConnectHelper connectHelper = new ConnectHelper();
|
var list = ConnectHelper.ReadPumpAllDayAccOutWater(new DateTime(2023, 1, 1), new DateTime(2023, 11, 14));
|
foreach (var item in list)
|
{
|
foreach (var item2 in item.pumpOutWater)
|
{
|
int dayHour = int.Parse(string.Format("{0:00}{1:00}{2:00}", item2.DateTime.Month, item2.DateTime.Day, item2.DateTime.Hour));
|
|
waterPredictRecord.Add(new WaterPredictRecord { DayHour = dayHour, RealValue = item2.Total });
|
}
|
}
|
bll.Inserts(waterPredictRecord);*/
|
//var alllist = bll.GetEnd2Days(300);
|
var historylist = new List<WaterPredictRecord>();
|
var historydata = ConnectHelper.GetByPumpOneDayWaterData(DateTime.Today.AddDays(-15), DateTime.Today);
|
foreach (var item in historydata)
|
{
|
if (item.DateTime.Minute == 0)
|
{
|
int historyhour = int.Parse(string.Format("{0:00}{1:00}{2:00}", item.DateTime.Month, item.DateTime.Day, item.DateTime.Hour));
|
historylist.Add(new WaterPredictRecord() { DayHour = historyhour, RealValue = item.Total });
|
}
|
}
|
|
bll.Inserts(historylist);
|
// int a = 0;
|
/* for (DateTime i = DateTime.Today.AddDays(-12); i < DateTime.Today; i = i.AddDays(1))
|
{
|
for (int k = 0; k < 24; k++)
|
{
|
var ssso = int.Parse(string.Format("{0:00}{1:00}{2:00}", i.Month, i.Day, k));
|
alllist[a].DayHour = ssso;
|
a++;
|
}
|
}
|
bll.Updates(alllist);*/
|
SSAData.insert2daysPredictData(); //插入两天预测数据
|
var todayData = ConnectHelper.GetByPumpOneDayWaterData(DateTime.Today, DateTime.Today.AddDays(1)).Where(x => x.DateTime.Hour <= DateTime.Now.Hour).ToList();
|
var starthour = int.Parse(string.Format("{0:00}{1:00}{2:00}", DateTime.Now.Month, DateTime.Now.Day, 0));
|
var endhour = int.Parse(string.Format("{0:00}{1:00}{2:00}", todayData.Last().DateTime.Month, todayData.Last().DateTime.Day, todayData.Last().DateTime.Hour));
|
var alllist2 = bll.GetEnd2Days(300);
|
var currentdata = alllist2.Where(x => x.DayHour >= starthour && x.DayHour <= endhour).OrderBy(x => x.DayHour).ToList();
|
//找出所有数据中和取实时数据匹配的数据并赋值
|
for (int i = 0; i < currentdata.Count; i++)
|
{
|
currentdata[i].RealValue = todayData[i].Total;
|
}
|
bll.UpdatesRealValue(currentdata);
|
return "ok";
|
}
|
|
/// <summary>
|
/// 最近3条记录
|
/// </summary>
|
[Route("GetLastRecord3")]
|
[HttpGet]
|
public List<IStation.ChEr.Model.WaterPredictRecord> GetLastRecord3()
|
{
|
IStation.ChEr.BLL.WaterPredictRecord bll = new ChEr.BLL.WaterPredictRecord();
|
|
return bll.GetLast(3);
|
}
|
|
/// <summary>
|
/// 保存到数据库
|
/// </summary>
|
[Route("InsertRecord")]
|
[HttpGet]
|
public string InsertRecord()
|
{
|
IStation.ChEr.BLL.WaterPredictRecord bll = new ChEr.BLL.WaterPredictRecord();
|
int dayHour = int.Parse(string.Format("{0:00}{1:00}{2:00}", DateTime.Now.Month, DateTime.Now.Day, DateTime.Now.Hour));
|
bll.Insert(new ChEr.Model.WaterPredictRecord() { DayHour = dayHour, RealValue = -1, LastPredictTime = DateTime.Now, PredictTime = DateTime.Now, LastPredictValue = 104, PredictValueList = "101,103,105,107" });
|
return "ok";
|
}
|
}
|
}
|