From 6f3b05c06125b457d0c78e259f3befe4910881cf Mon Sep 17 00:00:00 2001
From: Ben Lin <maobin001@msn.com>
Date: 星期日, 27 十月 2024 16:54:29 +0800
Subject: [PATCH] 计划任务更新

---
 Tiger.Business/Services/Base/InterfaceService.cs |   41 ++++++++++++++++++++++++++++-------------
 1 files changed, 28 insertions(+), 13 deletions(-)

diff --git a/Tiger.Business/Services/Base/InterfaceService.cs b/Tiger.Business/Services/Base/InterfaceService.cs
index c76253f..0dfcd20 100644
--- a/Tiger.Business/Services/Base/InterfaceService.cs
+++ b/Tiger.Business/Services/Base/InterfaceService.cs
@@ -1,10 +1,10 @@
 锘縰sing Apache.NMS.ActiveMQ.Threads;
+using FluentScheduler;
 using Microsoft.Extensions.DependencyInjection;
 using Microsoft.Extensions.Logging;
 using Newtonsoft.Json;
 using Rhea.Common;
 using SqlSugar;
-using Sundial;
 using System;
 using System.Collections;
 using System.Collections.Generic;
@@ -15,7 +15,6 @@
 using Tiger.IBusiness;
 using Tiger.Model;
 using Tiger.Model.Minsun;
-using static System.Collections.Specialized.BitVector32;
 
 namespace Tiger.Business
 {
@@ -24,12 +23,12 @@
     /// </summary>
     public class InterfaceService: IInterfaceService
     {
-        public ISchedulerFactory _schedulerFactory { get; set; }
+        public Sundial.ISchedulerFactory _schedulerFactory { get; set; }
         /// <summary>
         /// 璁剧疆璁″垝浠诲姟宸ュ巶绫�
         /// </summary>
         /// <param name="schedulerFactory"></param>
-        public void SetSchedulerFactory(ISchedulerFactory schedulerFactory)
+        public void SetSchedulerFactory(Sundial.ISchedulerFactory schedulerFactory)
         {
             _schedulerFactory = schedulerFactory;
         }
@@ -40,10 +39,10 @@
         /// <typeparam name="TJob"></typeparam>
         /// <param name="newEntity"></param>
         /// <param name="jobParam"></param>
-        public ApiAction AddJob<TJob>(TJob newEntity, TskJobParam jobParam) where TJob : class, IJob
+        public ApiAction AddJob<TJob>(TJob newEntity, TskJobParam jobParam) where TJob : class, Sundial.IJob
         {
             ApiAction apiAction = new();
-            TriggerBuilder triggerBuilder = Triggers.Period(jobParam.Period * 60 * 1000).LoadFrom(new
+            Sundial.TriggerBuilder triggerBuilder = Sundial.Triggers.Period(jobParam.Period * 60 * 1000).LoadFrom(new
             {
                 TriggerId = jobParam.JobName + "_trigger1",
             });
@@ -57,7 +56,7 @@
         /// <typeparam name="TJob"></typeparam>
         /// <param name="jobname"></param>
         /// <param name="triggerBuilders"></param>
-        public ApiAction AddJob<TJob>(string jobname, params TriggerBuilder[] triggerBuilders) where TJob : class, IJob
+        public ApiAction AddJob<TJob>(string jobname, params Sundial.TriggerBuilder[] triggerBuilders) where TJob : class, Sundial.IJob
         {
             ApiAction apiAction = new();
             triggerBuilders[0].LoadFrom(new
@@ -77,9 +76,9 @@
         public ApiAction UpdateJob(TSK_JOB job)
         {
             ApiAction apiAction = new ApiAction();
-            IScheduler scheduler = GetJob(job.JobName);
+            Sundial.IScheduler scheduler = GetJob(job.JobName);
             var trigger = scheduler.GetTrigger($"{job.JobName}_trigger1");
-            if (trigger.Status == TriggerStatus.Running)
+            if (trigger.Status == Sundial.TriggerStatus.Running)
             {
                 apiAction.IsSuccessed = false;
                 apiAction.Message = $"浣滀笟[{job.JobName}]姝e湪杩愯涓嶈兘缂栬緫";
@@ -114,7 +113,8 @@
         public void StartJob(string jobname)
         {
             // 甯﹁繑鍥炲��
-            var scheduleResult = _schedulerFactory.TryRunJob(jobname);
+            Sundial.IScheduler scheduler;
+            var scheduleResult = _schedulerFactory.TryRunJob(jobname, out scheduler);
         }
 
         /// <summary>
@@ -122,9 +122,9 @@
         /// </summary>
         /// <param name="jobname"></param>
         /// <returns></returns>
-        public IScheduler GetJob(string jobname)
+        public Sundial.IScheduler GetJob(string jobname)
         {
-            IScheduler scheduler;
+            Sundial.IScheduler scheduler;
             var scheduleResult = _schedulerFactory.TryGetJob(jobname, out scheduler);
             return scheduler;
         }
@@ -133,7 +133,7 @@
         /// 鑾峰彇鎵�鏈変綔涓�
         /// </summary>
         /// <returns></returns>
-        public List<IScheduler> GetJobs()
+        public List<Sundial.IScheduler> GetJobs()
         {
             return _schedulerFactory.GetJobs().ToList();
         }
@@ -170,5 +170,20 @@
         {
             ;
         }
+
+        public void JobInitialize()
+        {
+            JobManager.Initialize();
+        }
+
+        ApiAction IInterfaceService.AddTskJob<TJob>(TJob newEntity, FluentJobParam jobParam)
+        {
+            throw new NotImplementedException();
+        }
+
+        public void RemovefJob(string jobname)
+        {
+            throw new NotImplementedException();
+        }
     }
 }

--
Gitblit v1.9.3