Browse Source

同步TIN02更改 :增加recipe执行结束的判断,防止end完成在discharg之后造成的预约job创建不成功问题

jiangjy 2 weeks ago
parent
commit
1f57c64a4d

+ 12 - 0
Furnace/FurnaceRT/Equipments/PMs/PMMethods.cs

@@ -23,6 +23,7 @@ using MECF.Framework.Common.CommonData.EnumData;
 using MECF.Framework.Common.DataCenter;
 using MECF.Framework.Common.DataCenter;
 using MECF.Framework.Common.Device.Bases;
 using MECF.Framework.Common.Device.Bases;
 using MECF.Framework.Common.Equipment;
 using MECF.Framework.Common.Equipment;
+using MECF.Framework.Common.Jobs;
 using MECF.Framework.Common.SubstrateTrackings;
 using MECF.Framework.Common.SubstrateTrackings;
 using MECF.Framework.Common.Utilities;
 using MECF.Framework.Common.Utilities;
 using System;
 using System;
@@ -456,6 +457,17 @@ namespace FurnaceRT.Equipments.PMs
             return $"{item.Item}-{item.Display} {item.AdditionInformationDisplay}  {item.CurrentValue} limit is ({item.StartValue}~{item.LimitValue}) {item.Unit}"; ;
             return $"{item.Item}-{item.Display} {item.AdditionInformationDisplay}  {item.CurrentValue} limit is ({item.StartValue}~{item.LimitValue}) {item.Unit}"; ;
 
 
         }
         }
+
+        public static bool CheckRecipeIsCompleted(ProcessJobInfo pj)
+        {
+
+            var pm = Singleton<EquipmentManager>.Instance.Modules[ModuleName.PM1] as PMModule;
+            if (pm == null || pm.RecipeRunningInfo == null || pm.RecipeRunningInfo.RecipeStepList == null)
+            {
+                return true;
+            }
+            return pm.IsRecipeCompleted;
+        }
     }
     }
 
 
     public enum BackUpDireEnum
     public enum BackUpDireEnum

+ 13 - 1
Furnace/FurnaceRT/Equipments/PMs/PMModule.cs

@@ -140,6 +140,7 @@ namespace FurnaceRT.Equipments.PMs
         {
         {
             get { return FsmState == (int)STATE.Init; }
             get { return FsmState == (int)STATE.Init; }
         }
         }
+        //Add by SSH,20250930,判断recipe是否执行结束,给job使用
 
 
         public bool IsBusy
         public bool IsBusy
         {
         {
@@ -166,7 +167,18 @@ namespace FurnaceRT.Equipments.PMs
         public event Action<string> OnEnterError;
         public event Action<string> OnEnterError;
 
 
         private PMHomeRoutine _homeRoutine;
         private PMHomeRoutine _homeRoutine;
+        public bool IsRecipeCompleted
+        {
+            get
+            {
+                if (_processRoutine == null)
+                {
+                    return true;
+                }
+                return _processRoutine.IsRecipeCompleted;
 
 
+            }
+        }
         private PMLeakCheckRoutine _leakCheckRoutine;
         private PMLeakCheckRoutine _leakCheckRoutine;
 
 
         private PreProcess _preprocessRoutine;
         private PreProcess _preprocessRoutine;
@@ -1272,7 +1284,7 @@ namespace FurnaceRT.Equipments.PMs
             return true;
             return true;
         }
         }
 
 
-   
+
         private bool FsmStartContinue(object[] param)
         private bool FsmStartContinue(object[] param)
         {
         {
             return true;
             return true;

+ 2 - 0
Furnace/FurnaceRT/Equipments/PMs/RecipeExecutions/Process.cs

@@ -66,6 +66,8 @@ namespace FurnaceRT.Equipments.PMs.RecipeExecutions
         private double _holdTimeElpasedTime;
         private double _holdTimeElpasedTime;
 
 
         private double _waferTimeElpasedTimeBeforPaused;
         private double _waferTimeElpasedTimeBeforPaused;
+        //Add by SSH,20250930,判断recipe是否执行结束,给job使用
+        public bool IsRecipeCompleted { get { return _state == RecipeRunningState.RecipeCompleted || _state == RecipeRunningState.Error; } }
 
 
         private double _totalElpasedTime;
         private double _totalElpasedTime;