Ver código fonte

1、add PortWaferStart/PortWaferEnd event sequence name parameter;
2、start spooling ui

chenkui 1 ano atrás
pai
commit
7dc2089ceb

+ 2 - 2
Venus/Venus_MainPages/ViewModels/FaViewModel.cs

@@ -124,7 +124,7 @@ namespace Venus_MainPages.ViewModels
         }
 
         #region subscrib
-        //[Subscription(DataName.IsSpoolingEnable, ModuleNameString.System)]
+        [Subscription(DataName.IsSpoolingEnable, ModuleNameString.System)]
         public bool IsSpoolingEnable
         {
             get { return _isSpoolingEnable; }
@@ -137,7 +137,7 @@ namespace Venus_MainPages.ViewModels
         }
         private bool _isSpoolingEnable = false;
 
-        //[Subscription("System.SpoolingState")]
+        [Subscription("System.SpoolingState")]
         public string SpoolingState
         {
             get;

+ 1 - 1
Venus/Venus_RT/Config/EquipmentVariables.xml

@@ -3176,7 +3176,7 @@
         <int>14</int>
       </Reports>
     </CollectionEvent>
-    <CollectionEvent id="1013" logicalName="PortUnClamped" description="" enabled="true">
+    <CollectionEvent id="1013" logicalName="PortUnclamped" description="" enabled="true">
       <Reports>
         <int>15</int>
       </Reports>

+ 24 - 17
Venus/Venus_RT/Modules/Autotransfer_LP_FA.cs

@@ -181,15 +181,19 @@ namespace Venus_RT.Modules
         public void JobWaferStart(ControlJobInfo cj, int slotID)
         {
             ModuleName module = ModuleHelper.Converter(cj.Module);
-
-            EV.Notify(PortJobWaferStart, new SerializableDictionary<string, string>()
+            WaferInfo waferInfo = WaferManager.Instance.GetWafer(module, slotID);
+            if (waferInfo != null)
             {
-                {DVIDName.LotID,  cj.LotName},
-                {DVIDName.JobID,  cj.Name},
-                {DVIDName.PortID, PortId[module] },
-                {DVIDName.SlotID, (slotID+1).ToString() },
-                {DVIDName.CarrierID, cj.CarrierID?.ToString()}
-            });
+                EV.Notify(PortJobWaferStart, new SerializableDictionary<string, string>()
+                {
+                    {DVIDName.LotID,  cj.LotName},
+                    {DVIDName.JobID,  cj.Name},
+                    {DVIDName.PortID, PortId[module] },
+                    {DVIDName.SlotID, (slotID+1).ToString() },
+                    {DVIDName.CarrierID, cj.CarrierID?.ToString()},
+                    {DVIDName.RecipeID,waferInfo.SequenceName }
+                });
+            }
         }
 
         public void JobWaferEnd(ControlJobInfo cj, int slotID)
@@ -197,16 +201,19 @@ namespace Venus_RT.Modules
             ModuleName module = ModuleHelper.Converter(cj.Module);
 
             WaferInfo wafer = WaferManager.Instance.GetWafer(module, slotID);
-
-            EV.Notify(PortJobWaferEnd, new SerializableDictionary<string, string>()
+            if (wafer != null)
             {
-                {DVIDName.LotID,  cj.LotName},
-                {DVIDName.JobID,  cj.Name},
-                {DVIDName.PortID, PortId[module] },
-                {DVIDName.SlotID, (slotID+1).ToString() },
-                {DVIDName.CarrierID, cj.CarrierID?.ToString()},
-                {DVIDName.WaferProcessResult, (wafer.ProcessState == EnumWaferProcessStatus.Failed ? 0:1).ToString()}
-            });
+                EV.Notify(PortJobWaferEnd, new SerializableDictionary<string, string>()
+                {
+                    {DVIDName.LotID,  cj.LotName},
+                    {DVIDName.JobID,  cj.Name},
+                    {DVIDName.PortID, PortId[module] },
+                    {DVIDName.SlotID, (slotID+1).ToString() },
+                    {DVIDName.CarrierID, cj.CarrierID?.ToString()},
+                    {DVIDName.WaferProcessResult, (wafer.ProcessState == EnumWaferProcessStatus.Failed ? 0:1).ToString()},
+                    {DVIDName.SequenceID,wafer.SequenceName }
+                });
+            }
         }
     }
 }