From 1a4f7ab7af8966e9efca0d8dac4341491f82752d Mon Sep 17 00:00:00 2001
From: tangxu <tangxu76880903>
Date: 星期日, 07 四月 2024 15:40:19 +0800
Subject: [PATCH] 异步改成同步

---
 WebApi/Controllers/PumpRunController.cs |  224 ++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 201 insertions(+), 23 deletions(-)

diff --git a/WebApi/Controllers/PumpRunController.cs b/WebApi/Controllers/PumpRunController.cs
index d99e157..79b2d2c 100644
--- a/WebApi/Controllers/PumpRunController.cs
+++ b/WebApi/Controllers/PumpRunController.cs
@@ -1,4 +1,6 @@
 锘縰sing IStation.Dto;
+using IStation.Model;
+using IStation.ZyModel;
 using System;
 using System.Collections.Generic;
 using System.Security.Policy;
@@ -12,45 +14,98 @@
     [RoutePrefix("PumpRun")]
     public class PumpRunController : ApiController
     {
-
-
-         /// <summary>
-        ///  鑾峰彇鏌愪竴澶╁弬鏁�
+        /// <summary>
+        ///  鑾峰彇娉靛疄闄呰繍琛屽弬鏁�(涓�澶�)
         /// </summary>
         /// <param name="day"></param>
         /// <returns></returns>
         [Route("GetByOneDay")]
         [HttpGet]
-        public async Task<IStation.Dto.ApiResult> GetByOneDay(string  startday)
+        public   IStation.Dto.ApiResult  GetByOneDay(string startday)
         {
+            List<RealScadaData> PumpState = new List<RealScadaData>();
+            List<RealScadaData> TotalWater = new List<RealScadaData>();
+            List<RealScadaData> PumpTotalElecty = new List<RealScadaData>();
+
+            Model.RunParasData runParasData = new Model.RunParasData();
+            if (startday == null)
+            {
+                return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day null" };
+            }
             DateTime d;
             if (!DateTime.TryParse(startday, out d))
             {
                 return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day 鏍煎紡涓嶆纭�" };
             }
-            Dto.PumpRunParasDays pumpRunParasDay = new Dto.PumpRunParasDays();
-            var PumpState = await ZyConnectHelper.GetPumpOpenStatusBySingleDay(d);
-            //    var totalWater = await ZyConnectHelper.GetTotalWaterByDayRange_In(startday, startday);
+            // PumpState =  await ZyConnectHelper.GetPumpOpenStatusBySingleDay(d);  //鑾峰彇娉电殑寮�鏈烘儏鍐�             
+            //  totalWater = await ZyConnectHelper.GetTotalWaterByDayRange_In(d, d);
             //   pumpRunParasDay.TotalWater = totalWater;
-         //   var PumpTotalElecty = await ZyConnectHelper.GetPumpTotalElectricity(startday, startday);
-        //    pumpRunParasDay.Totalelectricity = PumpTotalElecty;
-            pumpRunParasDay.PumpRunTotalTime1 = PumpState[0];
-            pumpRunParasDay.PumpRunTotalTime2 = PumpState[0];
-            pumpRunParasDay.PumpRunTotalTime3 = PumpState[0];
-            pumpRunParasDay.PumpRunTotalTime4 = PumpState[0];
-            pumpRunParasDay.PumpRunTotalTime5 = PumpState[0];
+            //   PumpTotalElecty = await ZyConnectHelper.GetPumpTotalElectricity(d, d);    //鑾峰彇鏌愭鏃堕棿鐨勭敤鐢甸噺
 
-            return new IStation.Dto.ApiResult<Dto.PumpRunParasDays>(pumpRunParasDay) { Code = ApiResultCode.Success, Message = "Success" };
+            var debug =   Common.PumpRunParasHelper.ReadPumpRunParas(d.AddDays(-15));
+            if (debug != null)
+            {
+                debug.Electric = Math.Round(debug.Electric, 2);
+                debug.Money = Math.Round(debug.Money, 2);
+                debug.FlowIn = Math.Round(debug.FlowIn, 2);
+                if (debug.Pump1.Count != 0)
+                {
+                    foreach (var item in debug.Pump1)
+                    {
+                        item.Electric = Math.Round(item.Electric, 2);
+                        item.Money = Math.Round(item.Money, 2);
+                        item.FlowIn = Math.Round(item.FlowIn, 2);
+                    }
+                }
+                if (debug.Pump2.Count != 0)
+                {
+                    foreach (var item in debug.Pump2)
+                    {
+                        item.Electric = Math.Round(item.Electric, 2);
+                        item.Money = Math.Round(item.Money, 2);
+                        item.FlowIn = Math.Round(item.FlowIn, 2);
+                    }
+                }
+                if (debug.Pump3.Count != 0)
+                {
+                    foreach (var item in debug.Pump3)
+                    {
+                        item.Electric = Math.Round(item.Electric, 2);
+                        item.Money = Math.Round(item.Money, 2);
+                        item.FlowIn = Math.Round(item.FlowIn, 2);
+                    }
+                }
+                if (debug.Pump4.Count != 0)
+                {
+                    foreach (var item in debug.Pump4)
+                    {
+                        item.Electric = Math.Round(item.Electric, 2);
+                        item.Money = Math.Round(item.Money, 2);
+                        item.FlowIn = Math.Round(item.FlowIn, 2);
+                    }
+                }
+                if (debug.Pump5.Count != 0)
+                {
+                    foreach (var item in debug.Pump5)
+                    {
+                        item.Electric = Math.Round(item.Electric, 2);
+                        item.Money = Math.Round(item.Money, 2);
+                        item.FlowIn = Math.Round(item.FlowIn, 2);
+                    }
+                }
+            }
+            else { return null; }
+            return new IStation.Dto.ApiResult<Model.RunParasData>(debug) { Code = ApiResultCode.Success, Message = "Success" };
         }
 
         /// <summary>
-        /// 
+        /// 鑾峰彇娉靛巻鍙茶繍琛屽弬鏁�
         /// </summary>
         /// <param name="day"></param>
         /// <returns></returns>
         [Route("GetByHistoryOneDay")]
         [HttpGet]
-        public async Task<IStation.Dto.ApiResult> GetByHistoryOneDay(string day)
+        public  IStation.Dto.ApiResult  GetByHistoryOneDay(string day)
         {
             if (day == null)
             {
@@ -62,10 +117,9 @@
                 return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day 鏍煎紡涓嶆纭�" };
             }
 
-            var history = Common.PumpRunParasHelper.GetPumpRunParas(d);
+            var history =    Common.PumpRunParasHelper.ReadPumpRunParas(d);
             if (history == null)
-            {
-            }
+                return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "Data null" };
             history.Electric = Math.Round(history.Electric, 2);
             history.Money = Math.Round(history.Money, 2);
             history.FlowIn = Math.Round(history.FlowIn, 2);
@@ -73,7 +127,7 @@
             {
                 foreach (var item in history.Pump1)
                 {
-                    item.Electric = Math.Round( item.Electric,2);
+                    item.Electric = Math.Round(item.Electric, 2);
                     item.Money = Math.Round(item.Money, 2);
                     item.FlowIn = Math.Round(item.FlowIn, 2);
                 }
@@ -114,14 +168,138 @@
                     item.FlowIn = Math.Round(item.FlowIn, 2);
                 }
             }
-            return new IStation.Dto.ApiResult<Common.PumpRunParasHelper.RunParasData>(history) { Code = ApiResultCode.Success, Message = "Success" };
+            return new IStation.Dto.ApiResult<Model.RunParasData>(history) { Code = ApiResultCode.Success, Message = "Success" };
         }
 
 
 
+        /// <summary>
+        /// 涓�澶╁唴鐨勬�诲彇姘撮噺鍜岀敤鐢甸噺
+        /// </summary>
+        /// <param name="day"></param>
+        /// <returns></returns>
+        [Route("GetOneDayData")]
+        [HttpGet]
+        public  IStation.Dto.ApiResult  GetOneDayPumpWaterData(string day)
+        {
+            if (day == null)
+            {
+                return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day null" };
+            }
+            DateTime d;
+            if (!DateTime.TryParse(day, out d))
+            {
+                return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day 鏍煎紡涓嶆纭�" };
+            }
+            var WaterParas = Common.PumpRunParasHelper.ReadPumpWaterParas(d);
+
+            return new IStation.Dto.ApiResult<List<Model.PumpWater>>(WaterParas) { Code = ApiResultCode.Success, Message = "Success" };
+        }
 
 
 
+        /// <summary>
+        /// 鑾峰彇鏃堕棿娈靛唴鐨勫崟绠¢亾渚涙按鏁版嵁
+        /// </summary>
+        /// <param name="startday"></param>
+        /// <param name="endday"></param>
+        /// <param name="sign"></param>
+        /// <returns></returns>
+        [Route("GetPumpOutDayWater")]
+        [HttpGet]
+        public IStation.Dto.ApiResult  GetPumpOutWater(string startday,string endday,int sign)
+        {
+            if (startday == null||endday==null)
+            {
+                return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day null" };
+            }
+            DateTime Start;
+            if (!DateTime.TryParse(startday, out Start))
+            {
+                return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day 鏍煎紡涓嶆纭�" };
+            }
+            DateTime End;
+            if (!DateTime.TryParse(endday, out End))
+            {
+                return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day 鏍煎紡涓嶆纭�" };
+            }
+            var WaterParas = Common.PumpRunParasHelper.ReadPumpOutWater(Start,End, sign);
 
+            return new IStation.Dto.ApiResult<List<Model.OutList>>(WaterParas) { Code = ApiResultCode.Success, Message = "Success" };
+        }
+
+
+
+        /// <summary>
+        /// 鑾峰彇鎵�鏈夌殑鏈堝悎璁℃暟鎹�(鍗曠閬�)
+        /// </summary>
+        /// <returns></returns>
+        [Route("GetPumpOutMonthWater")]
+        [HttpGet]
+        public  IStation.Dto.ApiResult  GetPumpOutMonthWater()
+        {
+            var WaterParas = Common.PumpRunParasHelper.ReadPumpMonthOutWater();
+             return new IStation.Dto.ApiResult<List<Model.PumpOutWater>>(WaterParas) { Code = ApiResultCode.Success, Message = "Success" };
+        }
+
+
+
+        /// <summary>
+        /// 鑾峰彇澶╃殑鍚堝苟渚涙按鐬椂鏁版嵁(鎬荤)
+        /// </summary>
+        /// <param name="startday"></param> 寮�濮嬫棩鏈�
+        /// <param name="endday"></param> 缁撴潫鏃ユ湡
+        /// <returns></returns>
+        [Route("GetPumpTotalDayOutWater")]
+        [HttpGet]
+        public  IStation.Dto.ApiResult  GetPumpTotalDayOutWater(string startday, string endday)
+        {
+            if (startday == null || endday == null)
+            {
+                return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day null" };
+            }
+            DateTime Start;
+            if (!DateTime.TryParse(startday, out Start))
+            {
+                return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day 鏍煎紡涓嶆纭�" };
+            }
+            DateTime End;
+            if (!DateTime.TryParse(endday, out End))
+            {
+                return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day 鏍煎紡涓嶆纭�" };
+            }
+            var WaterParas = Common.PumpRunParasHelper.ReadPumpAllDayOutWater(Start,End);
+            return new IStation.Dto.ApiResult<List<Model.OutTotalOneDayList>>(WaterParas) { Code = ApiResultCode.Success, Message = "Success" };
+        }
+
+
+
+        /// <summary>
+        /// 鑾峰彇澶╃殑鍚堝苟渚涙按绱鏁版嵁(鎬荤)
+        /// </summary>
+        /// <param name="startday"></param> 寮�濮嬫棩鏈�
+        /// <param name="endday"></param> 缁撴潫鏃ユ湡
+        /// <returns></returns>
+        [Route("GetPumpTotalDayAccOutWater")]
+        [HttpGet]
+        public IStation.Dto.ApiResult  GetPumpTotalDayAccOutWater(string startday, string endday)
+        {
+            if (startday == null || endday == null)
+            {
+                return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day null" };
+            }
+            DateTime Start;
+            if (!DateTime.TryParse(startday, out Start))
+            {
+                return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day 鏍煎紡涓嶆纭�" };
+            }
+            DateTime End;
+            if (!DateTime.TryParse(endday, out End))
+            {
+                return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day 鏍煎紡涓嶆纭�" };
+            }
+            var WaterParas = Common.PumpRunParasHelper.ReadPumpAllDayOutAccWater(Start, End);
+            return new IStation.Dto.ApiResult<List<Model.OutTotalOneDayList>>(WaterParas) { Code = ApiResultCode.Success, Message = "Success" };
+        }
     }
 }

--
Gitblit v1.9.3