Browse Source

1、change PortWaferstart/PortWaferEnd event to WaferArrived/WaferLeved event

chenkui 1 year ago
parent
commit
d4a031af0e
1 changed files with 21 additions and 19 deletions
  1. 21 19
      Venus/Venus_RT/Modules/SystemDispatcher.cs

+ 21 - 19
Venus/Venus_RT/Modules/SystemDispatcher.cs

@@ -1776,11 +1776,31 @@ namespace Venus_RT.Modules
         private void WaferArrived(WaferTask wafer, MoveItem item)
         {
             _dictModuleTask[item.DestinationModule].WaferArrived(wafer, item.DestinationSlot);
+            //--2024-03-21 增加了PortJobWaferEnd 上报事件 start--
+            if (ModuleHelper.IsLoadPort(item.DestinationModule))
+            {
+                ControlJobInfo currentControlJob = GetLoadPortCurrentControlJob(item.DestinationModule);
+                if (currentControlJob != null)
+                {
+                    _faCallback.JobWaferEnd(currentControlJob, item.SourceSlot);
+                }
+            }
+            //--2024-03-21 增加了PortJobWaferEnd 上报事件 end--
         }
 
         private void WaferLeaved(WaferTask wafer, MoveItem item)
         {
             _dictModuleTask[item.SourceModule].WaferLeaved(wafer, item.DestinationSlot);
+            //--2024-03-21 增加了PortJobWaferStart 上报事件 start--
+            if (ModuleHelper.IsLoadPort(item.SourceModule))
+            {
+                ControlJobInfo currentControlJob = GetLoadPortCurrentControlJob(item.SourceModule);
+                if (currentControlJob != null)
+                {
+                    _faCallback.JobWaferStart(currentControlJob, item.SourceSlot);
+                }
+            }
+            //--2024-03-21 增加了PortJobWaferStart 上报事件 end--
         }
 
         private ModuleName GetComingAvailablePM(ControlJobInfo cj)
@@ -2290,25 +2310,7 @@ namespace Venus_RT.Modules
                         foreach (var action in _curEfemAction)
                         {
                             var waferTask = _lstWaferTasks.Find(wafer => (wafer.movingStatus == RState.End || wafer.movingStatus == RState.Init) && wafer.currentMod == action.SourceModule && wafer.currentSlot == action.SourceSlot);
-                            waferTask.MoveTo(action.DestinationModule, action.DestinationSlot);
-                            //--2024-03-21 增加了PortJobWaferStart 上报事件 start--
-                            if (ModuleHelper.IsLoadPort(action.SourceModule))
-                            {
-                                ControlJobInfo currentControlJob = GetLoadPortCurrentControlJob(action.SourceModule);
-                                if(currentControlJob!=null)
-                                {
-                                    _faCallback.JobWaferStart(currentControlJob, action.SourceSlot);
-                                }
-                            }
-                            if(ModuleHelper.IsLoadPort(action.DestinationModule))
-                            {
-                                ControlJobInfo currentControlJob = GetLoadPortCurrentControlJob(action.DestinationModule);
-                                if (currentControlJob != null)
-                                {
-                                    _faCallback.JobWaferEnd(currentControlJob, action.SourceSlot);
-                                }
-                            }
-                            //--2024-03-21 增加了PortJobWaferStart 上报事件 end--
+                            waferTask.MoveTo(action.DestinationModule, action.DestinationSlot);                            
                         }
 
                         (_dictModuleTask[ModuleName.EfemRobot].Scheduler as SchedulerEfemRobot).PostMoveItems(_curEfemAction.ToArray());