瀏覽代碼

1、ControlJobInfo类增加了SequenceNameList,解决LoadPort UI中Sequence显示问题

chenkui 1 年之前
父節點
當前提交
5740a76224

+ 3 - 0
Venus/Framework/Common/Jobs/ControlJob.cs

@@ -32,6 +32,9 @@ namespace MECF.Framework.Common.Jobs
         [DataMember]
         public List<WaferInfo> LotWafers { get; set; }
 
+        [DataMember]
+        public string[] SequenceNameList { get; set; }
+
         public string CarrierID { get; set; }
 
         public bool IsPreJobCleanDone { get; set; }

+ 3 - 4
Venus/Venus_MainPages/ViewModels/OperationOverViewModel.cs

@@ -787,12 +787,11 @@ namespace Venus_MainPages.ViewModels
                 info.LotId = cjInfo.Name;
                 info.JobID = cjInfo.Name;
                 info.JobStatus = cjInfo.State.ToString();
-                if (cjInfo.LotWafers != null&&cjInfo.State!=EnumControlJobState.Completed)
+                if (cjInfo.SequenceNameList != null)
                 {
-                    for (int i = 0; i < cjInfo.LotWafers.Count; i++)
+                    for (int i = 0; i < cjInfo.SequenceNameList.Length; i++)
                     {
-                        int index = Math.Abs(24 - cjInfo.LotWafers[i].Slot);
-                        info.ModuleData.WaferManager.Wafers[index].SequenceName = cjInfo.LotWafers[i].SequenceName;
+                        info.ModuleData.WaferManager.Wafers[24-i].SequenceName = cjInfo.SequenceNameList[i];
                     }
                 }
                 info.PreCleanRecipeName = cjInfo.PreJobClean;

+ 6 - 4
Venus/Venus_RT/Modules/AutoCycle.cs

@@ -225,6 +225,11 @@ namespace Venus_RT.Modules
             string jobId = (string)param["JobId"];
             string module = (string)param["Module"];
             //bool autoStart = (bool)param["AutoStart"];
+
+            if (string.IsNullOrEmpty(jobId))
+            {
+                jobId = "CJ_Local_" + module;
+            }
             string lotId = jobId;
             if (param.ContainsKey("LotId"))
                 lotId = (string)param["LotId"];
@@ -248,10 +253,6 @@ namespace Venus_RT.Modules
                 return false;
             }
 
-            if (string.IsNullOrEmpty(jobId))
-            {
-                jobId = "CJ_Local_" + module;
-            }
 
             if (_lstControlJobs.Exists(x => x.Name == jobId))
             {
@@ -280,6 +281,7 @@ namespace Venus_RT.Modules
             cj.JetState = EnumJetCtrlJobState.Created;
             cj.PreJobClean = preCleanRecipe;
             cj.PostJobClean = postCleanRecipe;
+            cj.SequenceNameList = slotSequence;
 
             Dictionary<string, bool[]> seqSlot = new Dictionary<string, bool[]>();
             Dictionary<string, List<Tuple<ModuleName, int>>> seqSlotWafers = new Dictionary<string, List<Tuple<ModuleName, int>>>();

+ 6 - 5
Venus/Venus_RT/Modules/SystemDispatcher.cs

@@ -769,6 +769,11 @@ namespace Venus_RT.Modules
             string[] slotSequence = (string[])param["SlotSequence"];
             string jobId = (string)param["JobId"];
             string module = (string)param["Module"];
+
+            if (string.IsNullOrEmpty(jobId))
+            {
+                jobId = "CJ_Local_" + module;
+            }
             //bool autoStart        = (bool)param["AutoStart"];
             string lotId = jobId;
             if (param.ContainsKey("LotId"))
@@ -793,11 +798,6 @@ namespace Venus_RT.Modules
                 return false;
             }
 
-            if (string.IsNullOrEmpty(jobId))
-            {
-                jobId = "CJ_Local_" + module;
-            }
-
             if (_lstControlJobs.Exists(x => x.Name == jobId))
             {
                 reason = $"{jobId} already created";
@@ -816,6 +816,7 @@ namespace Venus_RT.Modules
             cj.JetState = EnumJetCtrlJobState.Created;
             cj.PreJobClean = preCleanRecipe;
             cj.PostJobClean = postCleanRecipe;
+            cj.SequenceNameList = slotSequence;
 
             Dictionary<string, bool[]> seqSlot = new Dictionary<string, bool[]>();
             Dictionary<string, List<Tuple<ModuleName, int>>> seqSlotWafers = new Dictionary<string, List<Tuple<ModuleName, int>>>();