From 1b4e8bb37f33dc03e0119b1d2fcaefbc291d6fad Mon Sep 17 00:00:00 2001
From: client_Hale <339726288@qq.com>
Date: 星期一, 05 十一月 2018 15:42:51 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts

---
 System/Welfare/OperationBase.cs |  119 +++++++++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 86 insertions(+), 33 deletions(-)

diff --git a/System/Welfare/OperationBase.cs b/System/Welfare/OperationBase.cs
index 33b32f1..e78ac00 100644
--- a/System/Welfare/OperationBase.cs
+++ b/System/Welfare/OperationBase.cs
@@ -79,22 +79,36 @@
             switch (resetType)
             {
                 case 0:
-                    return true;
-                case 1:
-                    var indexOfDays = IndexOfDays(time);
-                    if (indexOfDays == 0)
-                    {
-                        return time.Hour >= DayResetHour;
-                    }
-                    if (indexOfDays == totalDays)
-                    {
-                        return time.Hour < DayResetHour;
-                    }
-                    if (indexOfDays < totalDays)
                     {
                         return true;
                     }
+                case 1:
+                    {
+                        var indexOfDays = IndexOfDays(time);
+                        if (indexOfDays == 0)
+                        {
+                            return time.Hour >= DayResetHour;
+                        }
+                        if (indexOfDays == totalDays)
+                        {
+                            return time.Hour < DayResetHour;
+                        }
+                        if (indexOfDays < totalDays)
+                        {
+                            return true;
+                        }
+                    }
                     break;
+                case 2:
+                    {
+                        var indexOfDays = IndexOfDays(time);
+                        if (indexOfDays == 0)
+                        {
+                            return time.Hour >= DayResetHour;
+                        }
+                        return true;
+                    }
+
             }
             return false;
         }
@@ -134,6 +148,7 @@
                     case 0:
                         return index;
                     case 1:
+                    case 2:
                         return time.Hour < DayResetHour ? Mathf.Max(0, index - 1) : index;
                     default:
                         return index;
@@ -189,6 +204,7 @@
             switch (resetType)
             {
                 case 0:
+                case 2:
                     return (int)(endDate.AddSeconds(24 * 60 * 60) - time).TotalSeconds;
                 case 1:
                     var endTime = new DateTime(endDate.year, endDate.month, endDate.day, DayResetHour, 0, 0);
@@ -218,13 +234,15 @@
             if (allDay)
             {
                 var startHour = 0;
-                if (resetType == 0)
+                switch (resetType)
                 {
-                    startHour = 0;
-                }
-                else if (resetType == 1)
-                {
-                    startHour = DayResetHour;
+                    case 0:
+                        startHour = 0;
+                        break;
+                    case 1:
+                    case 2:
+                        startHour = DayResetHour;
+                        break;
                 }
                 var startTime = new DateTime(startDate.year, startDate.month, startDate.day, startHour, 0, 0);
                 seconds = Mathf.CeilToInt((float)(startTime - time).TotalSeconds);
@@ -260,22 +278,57 @@
                 {
                     return GetSurplusTime(time);
                 }
-                if (resetType == 0)
+                switch (resetType)
                 {
-                    DateTime endOperationTime = new DateTime(TimeUtility.Year, TimeUtility.Month,
-                          TimeUtility.Day, 0, 0, 0);
-                    endOperationTime = endOperationTime.AddDays(1);
-                    seconds = (int)(endOperationTime - TimeUtility.ServerNow).TotalSeconds;
-                }
-                else if (resetType == 1)
-                {
-                    DateTime endOperationTime = new DateTime(TimeUtility.Year, TimeUtility.Month,
-                          TimeUtility.Day, DayResetHour, 0, 0);
-                    if (time.Hour >= DayResetHour)
-                    {
-                        endOperationTime = endOperationTime.AddDays(1);
-                    }
-                    seconds = (int)(endOperationTime - TimeUtility.ServerNow).TotalSeconds;
+                    case 0:
+                        {
+                            DateTime endOperationTime = new DateTime(TimeUtility.Year, TimeUtility.Month,
+                                 TimeUtility.Day, 0, 0, 0);
+                            endOperationTime = endOperationTime.AddDays(1);
+                            seconds = (int)(endOperationTime - TimeUtility.ServerNow).TotalSeconds;
+                        }
+                        break;
+                    case 1:
+                        {
+                            DateTime endOperationTime = new DateTime(TimeUtility.Year, TimeUtility.Month,
+                                 TimeUtility.Day, DayResetHour, 0, 0);
+                            if (time.Hour >= DayResetHour)
+                            {
+                                endOperationTime = endOperationTime.AddDays(1);
+                            }
+                            seconds = (int)(endOperationTime - TimeUtility.ServerNow).TotalSeconds;
+                        }
+                        break;
+                    case 2:
+                        {
+                            var indexOfDays = IndexOfDays(time);
+                            DateTime endOperationTime = DateTime.Now;
+                            if (indexOfDays == totalDays)
+                            {
+                                if (time.Hour >= DayResetHour)
+                                {
+                                    endOperationTime = new DateTime(TimeUtility.Year, TimeUtility.Month,
+                                         TimeUtility.Day, 0, 0, 0);
+                                    endOperationTime = endOperationTime.AddDays(1);
+                                }
+                                else
+                                {
+                                    endOperationTime = new DateTime(TimeUtility.Year, TimeUtility.Month,
+                                         TimeUtility.Day, DayResetHour, 0, 0);
+                                }
+                            }
+                            else
+                            {
+                                endOperationTime = new DateTime(TimeUtility.Year, TimeUtility.Month,
+                                     TimeUtility.Day, DayResetHour, 0, 0);
+                                if (time.Hour >= DayResetHour)
+                                {
+                                    endOperationTime = endOperationTime.AddDays(1);
+                                }
+                            }
+                            seconds = (int)(endOperationTime - TimeUtility.ServerNow).TotalSeconds;
+                        }
+                        break;
                 }
             }
             else

--
Gitblit v1.8.0