From 96adc295cb04fd135d63d3a907f2732274f90965 Mon Sep 17 00:00:00 2001
From: wanshenmean <cathay_xy@163.com>
Date: 星期二, 21 四月 2026 01:11:21 +0800
Subject: [PATCH] feat: 添加MES异步上传辅助服务并重构相关代码
---
Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/QuartzNet/SchedulerCenterServer.cs | 27 +++++++++++++--------------
1 files changed, 13 insertions(+), 14 deletions(-)
diff --git a/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/QuartzNet/SchedulerCenterServer.cs b/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/QuartzNet/SchedulerCenterServer.cs
index 3b8288c..6be42fe 100644
--- a/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/QuartzNet/SchedulerCenterServer.cs
+++ b/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/QuartzNet/SchedulerCenterServer.cs
@@ -31,6 +31,7 @@
using WIDESEAWCS_QuartzJob.DTO;
using WIDESEAWCS_QuartzJob.CustomException;
using Quartz.Impl.Matchers;
+using WIDESEAWCS_Core.LogHelper;
namespace WIDESEAWCS_QuartzJob
{
@@ -49,9 +50,10 @@
public SchedulerCenterServer(IJobFactory jobFactory)
{
_iocjobFactory = jobFactory;
- _scheduler = GetSchedulerAsync();
+ // 浣跨敤鍚屾涓婁笅鏂囪繍琛屽紓姝ユ柟娉�
+ _scheduler = Task.Run(async () => await GetSchedulerAsync()).GetAwaiter().GetResult();
}
- private IScheduler GetSchedulerAsync()
+ private async Task<IScheduler> GetSchedulerAsync()
{
if (_scheduler != null)
return this._scheduler;
@@ -66,7 +68,7 @@
};
//StdSchedulerFactory factory = new StdSchedulerFactory(collection);
StdSchedulerFactory factory = new StdSchedulerFactory();
- return _scheduler = factory.GetScheduler().Result;
+ return _scheduler = await factory.GetScheduler();
}
catch (Exception ex)
{
@@ -84,7 +86,7 @@
WebResponseContent result = new WebResponseContent();
try
{
- if (_scheduler.IsShutdown && _scheduler.IsStarted)
+ if (_scheduler.IsShutdown || !_scheduler.IsStarted)
{
// 浠嶧actory涓幏鍙朣cheduler瀹炰緥
NameValueCollection collection = new NameValueCollection
@@ -93,7 +95,7 @@
};
//StdSchedulerFactory factory = new StdSchedulerFactory(collection);
StdSchedulerFactory factory = new StdSchedulerFactory();
- _scheduler = factory.GetScheduler().Result;
+ _scheduler = await factory.GetScheduler();
}
this._scheduler.JobFactory = this._iocjobFactory;
@@ -102,13 +104,13 @@
{
//绛夊緟浠诲姟杩愯瀹屾垚
await this._scheduler.Start();
- await Console.Out.WriteLineAsync(QuartzJobInfoMessage.StartJobSuccess);
+ QuartzLogger.Info(QuartzJobInfoMessage.StartJobSuccess);
result = WebResponseContent.Instance.OK(QuartzJobInfoMessage.StartJobSuccess);
return result;
}
else
{
- await _scheduler.Shutdown();
+ // 璋冨害鍣ㄥ凡鍦ㄨ繍琛岋紝鐩存帴杩斿洖鎻愮ず
result = WebResponseContent.Instance.Error(QuartzJobInfoMessage.JobHasStart);
return result;
}
@@ -133,16 +135,13 @@
//绛夊緟浠诲姟杩愯瀹屾垚
await _scheduler.Shutdown(false);
- await Console.Out.WriteLineAsync(QuartzJobInfoMessage.StopJobSuccess);
+ QuartzLogger.Info(QuartzJobInfoMessage.StopJobSuccess);
result = WebResponseContent.Instance.OK(QuartzJobInfoMessage.StopJobSuccess);
return result;
}
else
{
- IReadOnlyCollection<string> jobGroupNames = await _scheduler.GetJobGroupNames();
-
- await _scheduler.PauseAll();
-
+ // 璋冨害鍣ㄥ凡鍋滄锛岀洿鎺ヨ繑鍥炴彁绀猴紙涓嶅啀瀵瑰凡 shutdown 鐨� scheduler 璋冪敤 PauseAll锛�
result = WebResponseContent.Instance.Error(QuartzJobInfoMessage.JobHasStop);
return result;
}
@@ -167,7 +166,7 @@
{
try
{
- if (_scheduler.IsShutdown && _scheduler.IsStarted)
+ if (_scheduler.IsShutdown || !_scheduler.IsStarted)
{
// 浠嶧actory涓幏鍙朣cheduler瀹炰緥
NameValueCollection collection = new NameValueCollection
@@ -176,7 +175,7 @@
};
//StdSchedulerFactory factory = new StdSchedulerFactory(collection);
StdSchedulerFactory factory = new StdSchedulerFactory();
- _scheduler = factory.GetScheduler().Result;
+ _scheduler = await factory.GetScheduler();
}
--
Gitblit v1.9.3