From 26c7bd3e7060ffcb6456ea2098850ec5a4fee77c Mon Sep 17 00:00:00 2001
From: tangxu <tangxu76880903>
Date: 星期二, 19 三月 2024 13:13:08 +0800
Subject: [PATCH] 提交

---
 WebApi/Controllers/TotalWaterOutController.cs |   38 +++++++++++++++++++++++++-------------
 1 files changed, 25 insertions(+), 13 deletions(-)

diff --git a/WebApi/Controllers/TotalWaterOutController.cs b/WebApi/Controllers/TotalWaterOutController.cs
index 0ef83ec..73db81c 100644
--- a/WebApi/Controllers/TotalWaterOutController.cs
+++ b/WebApi/Controllers/TotalWaterOutController.cs
@@ -5,6 +5,7 @@
 using System.Linq;
 using System.Net;
 using System.Net.Http;
+using System.Threading.Tasks;
 using System.Web;
 using System.Web.Http;
 using System.Web.UI.WebControls;
@@ -24,26 +25,37 @@
         /// <returns></returns>
         [Route("GetByDay")]
         [HttpGet]
-        public IStation.Dto.ApiResult GetByDay(string day)
+        public async Task<IStation.Dto.ApiResult> GetByDay(string day)
         {
             if (day == null)
             {
                 return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day null" };
             }
-            DateTime d;
-            if (!DateTime.TryParse(day, out d))
+            DateTime dayD;
+            if (!DateTime.TryParse(day, out dayD))
             {
                 return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day 鏍煎紡涓嶆纭�" };
             }
-            var sum = TotalWaterOutHelper.Read(d);
+            if (dayD > DateTime.Today)
+            {
+                return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "涓嶈兘鏌ヨ浠婃棩鐨勬暟鎹�" };
+            }
+
+            double sum = -1;
+            if (dayD < DateTime.Today)
+            {
+                sum = TotalWaterOutHelper.Read(dayD);
+            }
             if (sum < 0)
             {
-                sum = ZyConnectHelper.GetTotalWaterByDay_Out(DateTime.Parse(day)).Result;//.GetAwaiter().GetResult();
-
-                TotalWaterOutHelper.Save(d, sum);
+                sum = await  ZyConnectHelper.GetTotalWaterByDay_Out(DateTime.Parse(day));//.Result;//.GetAwaiter().GetResult();
+                if (dayD < DateTime.Today)
+                {
+                    TotalWaterOutHelper.Save(dayD, sum);
+                }
             }
              
-            return new IStation.Dto.ApiResult<double>(sum);
+            return new IStation.Dto.ApiResult<double>(sum / 10000);
         }
 
 
@@ -54,13 +66,13 @@
         /// <returns></returns>
         [Route("GetLastDay3")]
         [HttpGet]
-        public IStation.Dto.ApiResult GetLastDay3()
+        public async Task<IStation.Dto.ApiResult> GetLastDay3()
         {
             DateTime yest1 = DateTime.Today.AddDays(-1);
             var sum1 = TotalWaterOutHelper.Read(yest1);
             if (sum1 < 0)
             {
-                sum1 = ZyConnectHelper.GetTotalWaterByDay_Out(yest1).Result;//.GetAwaiter().GetResult();
+                sum1 = await ZyConnectHelper.GetTotalWaterByDay_Out(yest1);//.Result;//.GetAwaiter().GetResult();
 
                 TotalWaterOutHelper.Save(yest1, sum1);
             }
@@ -69,7 +81,7 @@
             var sum2 = TotalWaterOutHelper.Read(yest2);
             if (sum2 < 0)
             {
-                sum2 = ZyConnectHelper.GetTotalWaterByDay_Out(yest2).Result;//.GetAwaiter().GetResult();
+                sum2 = await ZyConnectHelper.GetTotalWaterByDay_Out(yest2);//.Result;//.GetAwaiter().GetResult();
 
                 TotalWaterOutHelper.Save(yest2, sum2);
             }
@@ -78,12 +90,12 @@
             var sum3 = TotalWaterOutHelper.Read(yest3);
             if (sum3 < 0)
             {
-                sum3 = ZyConnectHelper.GetTotalWaterByDay_Out(yest3).Result;//.GetAwaiter().GetResult();
+                sum3 = await ZyConnectHelper.GetTotalWaterByDay_Out(yest3);//.Result;//.GetAwaiter().GetResult();
 
                 TotalWaterOutHelper.Save(yest3, sum3);
             }
 
-            return new IStation.Dto.ApiResult<List<double>>(new List<double> { sum1, sum2, sum3 });
+            return new IStation.Dto.ApiResult<List<double>>(new List<double> { sum1 / 10000, sum2 / 10000, sum3 / 10000 });
         }
 
 

--
Gitblit v1.9.3