From 35afcfe07fef52f74a2079fdb5977a87f88ddbb6 Mon Sep 17 00:00:00 2001
From: Ben Lin <maobin001@msn.com>
Date: 星期二, 17 十二月 2024 20:40:47 +0800
Subject: [PATCH] 提交前检查是否岗位、工单和不良代码

---
 Tiger.Business.MES/Task/Jobs.U9C_ME_GetWo.cs |  147 ++++++++++++++++++++++++++-----------------------
 1 files changed, 78 insertions(+), 69 deletions(-)

diff --git a/Tiger.Business.MES/Task/Jobs.U9C_ME_GetWo.cs b/Tiger.Business.MES/Task/Jobs.U9C_ME_GetWo.cs
index 9478f22..eeca62b 100644
--- a/Tiger.Business.MES/Task/Jobs.U9C_ME_GetWo.cs
+++ b/Tiger.Business.MES/Task/Jobs.U9C_ME_GetWo.cs
@@ -5,11 +5,14 @@
 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 static Microsoft.CodeAnalysis.CSharp.SyntaxTokenParser;
+using Sundial;
+using Microsoft.IdentityModel.Tokens;
+using Tiger.Model.Entitys.MES.Position;
 
 namespace Tiger.Business.MES
 {
@@ -34,7 +37,7 @@
             Logger.Scheduler.Info(context.Trigger.ConvertToMonitor());
             try
             {
-                var _lastRunTime = Biz.SysParam["GetWo_LastRun", "Interface_LastRun"].PARAM_VALUE;
+                var _lastRunTime = Cache.SysParam["GetWo_LastRun", "Interface_LastRun"].PARAM_VALUE; 
                 var LastRunTime = string.IsNullOrEmpty(_lastRunTime) ? DateTime.Now.AddMinutes(-10) : Convert.ToDateTime(_lastRunTime);
                 if ((DateTime.Now - LastRunTime).TotalMinutes > 10)
                 {
@@ -66,8 +69,63 @@
     {
         public string Id { get; set; }
         public string Tag { get; set; }
-        public string Name { get; set; } = typeof(fU9C_MES_GetWo).Name;
+        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()
+        {
+            #region 鍥哄畾鍐欐硶
+            Logger.Scheduler.Info($"/**\r\n *杩涘叆璁″垝璋冨害(鍚嶇О: {Name} )....\r\n */\r\n"); //鍥哄畾鍐欐硶
+            Schedule = JobManager.GetSchedule(Name); //鍥哄畾鍐欐硶
+            StartTime = DateTime.Now; //鍥哄畾鍐欐硶
+            #endregion
+            try
+            {
+                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 = Args.ByInterval=="Y"? tskJobInput.input.endTime.ToDateTime().AddHours(Args.Interval) : tskJobInput.input.endTime.ToDateTime();
+                        Trig.NextRunTime = Schedule.NextRun;
+                    }
+                }
+                SaveFluentSchedulerLog(status, $"{msg}");
+                Logger.Scheduler.Info($"璁″垝璋冨害(鍚嶇О: {Name} )瀹屾垚锛岃繑鍥炰俊鎭�: {msg} \r\n");
+            }
+            catch (System.Exception ex)
+            {
+                Logger.Scheduler.Fatal(ex, "鑾峰彇宸ュ崟淇℃伅寮傚父");
+                SaveFluentSchedulerLog("Failed", ex.Message);
+            }
+            Logger.Scheduler.Info($"/* 璁″垝璋冨害(鍚嶇О:{Name})缁撴潫 */\r\n"); //鍥哄畾鍐欐硶
+        }
+    }//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";
@@ -80,77 +138,28 @@
             {
                 string msg = "";
                 string status = "Successed";
-                var _lastRunTime = Biz.SysParam["GetWo_LastRun", "Interface_LastRun"].PARAM_VALUE;
+                var _lastRunTime = Cache.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 = DI.Resolve<IU9C_MES>().GetU9CBasWo(input);
-                    //if (!result.IsSuccessed)
-                    //{
-                    //    msg = $"鑾峰彇宸ュ崟淇℃伅寮傚父:{result.Message}";
-                    //    Logger.Scheduler.Error(msg);
-                    //    status = "Failed";
-                    //}
-                    //else
-                    //{
-                    //    msg = $"浠嶶9C鑾峰彇宸ュ崟淇℃伅鎴愬姛:{result.Message}";
-                    //}
-                }
-                SaveFluentSchedulerLog(Name, status, $"{msg}");
-                Logger.Scheduler.Info($"璁″垝璋冨害(鍚嶇О:{Name})瀹屾垚锛岃繑鍥炰俊鎭�:{msg}\r\n");
+                //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, "鑾峰彇宸ュ崟淇℃伅寮傚父");
-                SaveFluentSchedulerLog(Name, "Failed", ex.Message);
-            }
-        }
-
-        public class fTest : TigerJobBase, ITJob
-        {
-            public string Id { get; set; }
-            public string Tag { get; set; }
-            public string Name { get; set; }
-            public fTest()
-            {
-                Id = Guid.NewGuid().ToString("N");
-                Tag = "U9C_MES_GetWo Interface Job";
-                Name = "娴嬭瘯鎺ュ彛";
-            }
-
-            public void Execute()
-            {
-                Logger.Scheduler.Info($"杩涘叆璁″垝璋冨害(鍚嶇О:{Name})...\r\n");
-                try
-                {
-                    var _lastRunTime = Biz.SysParam["GetWo_LastRun", "Interface_LastRun"].PARAM_VALUE;
-                    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(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("浠嶶9C鑾峰彇宸ュ崟淇℃伅鎴愬姛");
-                    Logger.Scheduler.Info($"璁″垝璋冨害(鍚嶇О:{Name})瀹屾垚\r\n");
-                }
-                catch (System.Exception ex)
-                {
-                    Logger.Scheduler.Fatal(ex, "鑾峰彇宸ュ崟淇℃伅寮傚父\r\n");
-                }
+                Logger.Scheduler.Fatal(ex, "娴嬭瘯浠诲姟寮傚父\r\n");
             }
         }
     }

--
Gitblit v1.9.3