From 18a1a6faf82b1ad00d27f6fc7f5734c34aea32df Mon Sep 17 00:00:00 2001
From: tangxu <tangxu76880903>
Date: 星期五, 07 六月 2024 15:30:23 +0800
Subject: [PATCH] Merge branch 'master' of http://47.103.154.90:83/r/IStation/shys/ChEqCalc.V1.3

---
 WaterPredict/IStation.ChEr.Application.WaterPredict/01-info/DebugController.cs |  128 ++++++++++++++++++++++++++++++++++++++----
 1 files changed, 114 insertions(+), 14 deletions(-)

diff --git a/WaterPredict/IStation.ChEr.Application.WaterPredict/01-info/DebugController.cs b/WaterPredict/IStation.ChEr.Application.WaterPredict/01-info/DebugController.cs
index 0e037c0..7175637 100644
--- a/WaterPredict/IStation.ChEr.Application.WaterPredict/01-info/DebugController.cs
+++ b/WaterPredict/IStation.ChEr.Application.WaterPredict/01-info/DebugController.cs
@@ -1,6 +1,5 @@
-锘縰sing IStation;
-using IStation.ChEr.DAL; 
-using System; 
+锘縰sing IStation.ChEr.Application;
+using IStation.ChEr.Model;
 
 namespace IStation.Application
 {
@@ -11,15 +10,116 @@
     [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( )
+        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);*/
+            List<SSAData> sSADatas = new List<SSAData>();
+            /* var path = "C:\\Users\\ZKC\\Desktop\\宸ow.csv";
+             int totalLines = File.ReadLines(path, Encoding.GetEncoding("gb2312")).Count();//鎬昏鏁�
+             System.IO.FileStream fs = new System.IO.FileStream(path, System.IO.FileMode.Open);
+             System.IO.StreamReader sr = new System.IO.StreamReader(fs, Encoding.GetEncoding("gb2312"));
+             string tempText;
+             //   int line = 0;
+             double total = 0;
+             for (int i = 0; i < totalLines; i++)
+             {
+                 tempText = sr.ReadLine();
+                 string[] arr = tempText.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
+                 if (Convert.ToDateTime(arr[0]).Minute == 0)
+                 {
+                     sSADatas.Add(new SSAData { DateTime = Convert.ToDateTime(arr[0]), Total = Convert.ToDouble(arr[1]) });
+                 }
+             }
+             var nee = new List<WaterPredictRecord>();
+             double lastValue = 1;
+             foreach (var item in sSADatas)
+             {
+                 if (item.DateTime.Minute == 0)
+                 {
+                     if (lastValue != 1)
+                     {
+                         int historyhour = int.Parse(string.Format("{0:00}{1:00}{2:00}", item.DateTime.Month, item.DateTime.Day, item.DateTime.Hour));
+                         nee.Add(new WaterPredictRecord() { DayHour = historyhour, RealTotalValue = item.Total, RealDifferenceValue = item.Total - lastValue });
+                         lastValue = item.Total;
+                     }
+                     else
+                     {
+                         int historyhour = int.Parse(string.Format("{0:00}{1:00}{2:00}", item.DateTime.Month, item.DateTime.Day, item.DateTime.Hour));
+                         nee.Add(new WaterPredictRecord() { DayHour = historyhour, RealTotalValue = item.Total, RealDifferenceValue = 0 });
+                         lastValue = item.Total;
+                     }
+                 }
+             }
+             bll.Inserts(nee);*/
+            double lastValue = 1;
+            var historylist = new List<WaterPredictRecord>();
+            var historydata = ConnectHelper.GetByPumpOneDayWaterData(DateTime.Today.AddDays(-15), DateTime.Today, "1h");
+            foreach (var item in historydata)
+            {
+                if (lastValue != 1)
+                {
+                    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, RealTotalValue = item.Total, RealDifferenceValue = item.Total - lastValue });
+                    lastValue = item.Total;
+                }
+                else
+                {
+                    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, RealTotalValue = item.Total, RealDifferenceValue = 0 });
+                    lastValue = 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), "1h").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].RealTotalValue = todayData[i].Total;
+                if (i >= 1)
+                {
+                    currentdata[i].RealDifferenceValue = todayData[i].Total - todayData[i - 1].Total;
+                }
+                else
+                {
+                    //   currentdata[i].RealDifferenceValue = todayData[i].Total-bll.GetEnd2Days(24).Last().RealValue;
+                }
+            }
+            bll.UpdatesRealValue(currentdata);
             return "ok";
         }
 
@@ -28,24 +128,24 @@
         /// </summary>
         [Route("GetLastRecord3")]
         [HttpGet]
-        public List<IStation.ChEr.Model.WaterPredict> GetLastRecord3()
+        public List<IStation.ChEr.Model.WaterPredictRecord> GetLastRecord3()
         {
-            IStation.ChEr.BLL.WaterPredict bll = new ChEr.BLL.WaterPredict();
+            IStation.ChEr.BLL.WaterPredictRecord bll = new ChEr.BLL.WaterPredictRecord();
 
             return bll.GetLast(3);
         }
+
         /// <summary>
         /// 淇濆瓨鍒版暟鎹簱
         /// </summary>
-        [Route("SaveDB")]
+        [Route("InsertRecord")]
         [HttpGet]
-        public string  SaveDB()
+        public string InsertRecord()
         {
-            //var db = new MainDbContext();
-            //db.InitTables();
-            //var bll = new IStation.BLL.PredictData();
-            //bll.GetAll();
-            return null;
+            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, RealTotalValue = -1, LastPredictTime = DateTime.Now, PredictTime = DateTime.Now, LastPredictValue = 104, PredictValueList = "101,103,105,107" });
+            return "ok";
         }
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3