From 20a0c7b19c248617fb1852a63834bb668831f86e Mon Sep 17 00:00:00 2001 From: Ben Lin <maobin001@msn.com> Date: 星期一, 28 十月 2024 03:01:16 +0800 Subject: [PATCH] 计划任务更新 --- Tiger.Business.MES/Task/Jobs.U9C_ME_GetWo.cs | 124 ++++++++++++++++++++++++++++++++++++++-- 1 files changed, 116 insertions(+), 8 deletions(-) diff --git a/Tiger.Business.MES/Task/Jobs.U9C_ME_GetWo.cs b/Tiger.Business.MES/Task/Jobs.U9C_ME_GetWo.cs index 457dead..0188002 100644 --- a/Tiger.Business.MES/Task/Jobs.U9C_ME_GetWo.cs +++ b/Tiger.Business.MES/Task/Jobs.U9C_ME_GetWo.cs @@ -1,14 +1,18 @@ 锘縰sing Rhea.Common; -using Sundial; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks; +using Newtonsoft.Json; using Tiger.IBusiness; using Tiger.Model; using Tiger.Model.Minsun; +using FluentScheduler; +using Sundial; +using Microsoft.IdentityModel.Tokens; +using Tiger.Model.Entitys.MES.Position; namespace Tiger.Business.MES { @@ -17,23 +21,30 @@ /// </summary> public class U9C_MES_GetWo : TigerJobBase, ITigerJob { - public string Id { get; set; } = Guid.NewGuid().ToString("N"); - public string Tag { get; set; } = "U9C_MES_GetWo Interface Job"; - public string Name { get; set; } = "U9C_MES_GetWo Interface Job"; + public string Id { get; set; } + public string Tag { get; set; } + public string Name { get; set; } - public async Task ExecuteAsync(JobExecutingContext context, CancellationToken stoppingToken) + public U9C_MES_GetWo() + { + Id = Guid.NewGuid().ToString("N"); + Tag = "U9C_MES_GetWo Interface Job"; + Name = "U9C_MES_GetWo Interface Job"; + } + + public async Task ExecuteAsync(Sundial.JobExecutingContext context, CancellationToken stoppingToken) { Logger.Scheduler.Info(context.Trigger.ConvertToMonitor()); try { var _lastRunTime = Biz.SysParam["GetWo_LastRun", "Interface_LastRun"].PARAM_VALUE; - var LastRunTime = string.IsNullOrEmpty(_lastRunTime) ? DateTime.Now.AddMinutes(-30) : Convert.ToDateTime(_lastRunTime); - if ((DateTime.Now - LastRunTime).TotalMinutes > 30) + var LastRunTime = string.IsNullOrEmpty(_lastRunTime) ? DateTime.Now.AddMinutes(-10) : Convert.ToDateTime(_lastRunTime); + if ((DateTime.Now - LastRunTime).TotalMinutes > 10) { GetWoInput input = new GetWoInput { startTime = LastRunTime.ToString("yyyy-MM-dd HH:mm:ss"), - endTime = LastRunTime.AddMinutes(30).ToString("yyyy-MM-dd HH:mm:ss") + endTime = LastRunTime.AddMinutes(10).ToString("yyyy-MM-dd HH:mm:ss") }; var result = await DI.Resolve<IU9C_MES>().GetBasWo(input); if (!result.IsSuccessed) @@ -50,4 +61,101 @@ await Task.CompletedTask; } } + + /// <summary> + /// 浠嶶9C鑾峰彇宸ュ崟淇℃伅 FluentScheduler鐗� + /// </summary> + public class fU9C_MES_GetWo : TigerJobBase, ITJob + { + public string Id { get; set; } + public string Tag { get; set; } + public string Name { get; set; } + public fU9C_MES_GetWo() + { + Id = Guid.NewGuid().ToString("N"); + Tag = "U9C_MES_GetWo Interface Job"; + GetJob(typeof(fU9C_MES_GetWo).Name); + Name = Job.JobName; + } + + public void Execute() + { + Logger.Scheduler.Info($"杩涘叆璁″垝璋冨害(鍚嶇О:{Name})...\r\n"); + try + { + Schedule = JobManager.GetSchedule(Name); + StartTime = DateTime.Now; + string msg = ""; + string status = "Successed"; + GetJob(typeof(fU9C_MES_GetWo).Name); + TskJobInput tskJobInput = CheckIFCanGo(); + if (tskJobInput.result) + { + var result = DI.Resolve<IU9C_MES>().GetU9CBasWo(tskJobInput.input); + if (!result.IsSuccessed) + { + msg = $"鑾峰彇宸ュ崟淇℃伅寮傚父:{result.Message}"; + Logger.Scheduler.Error(msg); + status = "Failed"; + } + else + { + msg = $"浠嶶9C鑾峰彇宸ュ崟淇℃伅鎴愬姛:{result.Message}"; + Trig.LastRunTime = (tskJobInput.input.endTime.ToDateTime() - DateTime.Now).TotalMinutes > 0 ? Trig.LastRunTime : tskJobInput.input.endTime.ToDateTime(); + } + } + SaveFluentSchedulerLog(status, $"{msg}"); + Logger.Scheduler.Info($"璁″垝璋冨害(鍚嶇О:{Name})瀹屾垚锛岃繑鍥炰俊鎭�:{msg}\r\n"); + } + catch (System.Exception ex) + { + Logger.Scheduler.Fatal(ex, "鑾峰彇宸ュ崟淇℃伅寮傚父"); + SaveFluentSchedulerLog("Failed", ex.Message); + } + } + }//endClass + + public class fTest : TigerJobBase, ITJob + { + public string Id { get; set; } + public string Tag { get; set; } + public string Name { get; set; } = typeof(fTest).Name; + public fTest() + { + Id = Guid.NewGuid().ToString("N"); + Tag = "U9C_MES_GetWo Interface Job"; + } + + public void Execute() + { + Logger.Scheduler.Info($"杩涘叆璁″垝璋冨害(鍚嶇О:{Name})...\r\n"); + try + { + string msg = ""; + string status = "Successed"; + var _lastRunTime = Biz.SysParam["GetWo_LastRun", "Interface_LastRun"].PARAM_VALUE; + var LastRunTime = string.IsNullOrEmpty(_lastRunTime) ? DateTime.Now.AddMinutes(-10) : Convert.ToDateTime(_lastRunTime); + StartTime = DateTime.Now; + //if ((DateTime.Now - LastRunTime).TotalMinutes > 10) + //{ + // GetWoInput input = new GetWoInput + // { + // startTime = LastRunTime.ToString("yyyy-MM-dd HH:mm:ss"), + // endTime = LastRunTime.AddMinutes(10).ToString("yyyy-MM-dd HH:mm:ss") + // }; + // var result = await DI.Resolve<IU9C_MES>().GetBasWo(input); + // if (!result.IsSuccessed) + // { + // Logger.Scheduler.Error($"鑾峰彇宸ュ崟淇℃伅寮傚父:{result.Message}"); + // } + //} + SaveFluentSchedulerLog(status, "娴嬭瘯浠诲姟鎴愬姛"); + Logger.Scheduler.Info($"璁″垝璋冨害(鍚嶇О:{Name})瀹屾垚\r\n"); + } + catch (System.Exception ex) + { + Logger.Scheduler.Fatal(ex, "娴嬭瘯浠诲姟寮傚父\r\n"); + } + } + } } -- Gitblit v1.9.3