Dun.Jason 1 ano atrás
pai
commit
fe79797aa6

+ 2 - 1
src/Hotline.Api/Controllers/TestController.cs

@@ -214,7 +214,8 @@ public class TestController : BaseController
 
         //var r = _timeLimitDomainService.CalcWorkTime(DateTime.Parse("2024-3-22 05:00:00"), DateTime.Parse("2024-3-22 06:00:00"), false);
         //var r = _timeLimitDomainService.CalcWorkTime(DateTime.Parse("2024-3-24 17:20:00"), DateTime.Parse("2024-3-24 17:21:00"), false);
-        await _aiVisitService.QueryAiVisitTask(batchId, taskId, HttpContext.RequestAborted);
+        //await _aiVisitService.QueryAiVisitTask(batchId, taskId, HttpContext.RequestAborted);
+        var r = _timeLimitDomainService.CalcWorkTimeReduce(DateTime.Now, 5);
 
         return OpenResponse.Ok(DateTime.Now.ToString("F"));
     }

+ 8 - 0
src/Hotline/Settings/TimeLimits/ITimeLimitDomainService.cs

@@ -88,5 +88,13 @@ namespace Hotline.Settings.TimeLimits
         /// <returns></returns>
 		DateTime WorkDay(DateTime date);
 
+        /// <summary>
+        /// 倒推工作日
+        /// </summary>
+        /// <param name="date"></param>
+        /// <returns></returns>
+        DateTime CalcWorkTimeReduce(DateTime date, int timeValue);
+
+
     }
 }

+ 23 - 0
src/Hotline/Settings/TimeLimits/TimeLimitDomainService.cs

@@ -664,5 +664,28 @@ namespace Hotline.Settings.TimeLimits
             return rsDate;
         }
 
+
+        /// <summary>
+        /// 倒推工作日
+        /// </summary>
+        /// <param name="date"></param>
+        /// <returns></returns>
+        public DateTime CalcWorkTimeReduce(DateTime date,int timeValue)
+        {
+            for (int i = 0; i < timeValue; i++)
+            {
+                if (IsWorkDay(date))
+                {
+                    date = date.AddDays(-1);
+                }
+                else
+                {
+                    date = date.AddDays(-1);
+                    i--;
+                }
+            }
+
+            return date;
+        }
     }
 }