|
@@ -1269,6 +1269,16 @@ namespace Venus_RT.Modules
|
|
|
|
|
|
_faCallback.JobAborted(cj, GetFirstProcessJob(cj));
|
|
_faCallback.JobAborted(cj, GetFirstProcessJob(cj));
|
|
_dbCallback.LotFinished(cj);
|
|
_dbCallback.LotFinished(cj);
|
|
|
|
+
|
|
|
|
+ // remove control job
|
|
|
|
+ var deletedPollingJobs = new Queue<ControlJobInfo>();
|
|
|
|
+ foreach (var item in _qePollingJobs)
|
|
|
|
+ {
|
|
|
|
+ if (cj.InnerId != item.InnerId)
|
|
|
|
+ deletedPollingJobs.Enqueue(item);
|
|
|
|
+ }
|
|
|
|
+ _qePollingJobs = deletedPollingJobs;
|
|
|
|
+
|
|
foreach (var pj in pjAbortList)
|
|
foreach (var pj in pjAbortList)
|
|
{
|
|
{
|
|
_lstProcessJobs.Remove(pj);
|
|
_lstProcessJobs.Remove(pj);
|
|
@@ -1307,6 +1317,14 @@ namespace Venus_RT.Modules
|
|
{
|
|
{
|
|
_loadportControlJobDic[cj.Module] = null;
|
|
_loadportControlJobDic[cj.Module] = null;
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ var deletedPollingJobs = new Queue<ControlJobInfo>();
|
|
|
|
+ foreach (var item in _qePollingJobs)
|
|
|
|
+ {
|
|
|
|
+ if (cj.InnerId != item.InnerId)
|
|
|
|
+ deletedPollingJobs.Enqueue(item);
|
|
|
|
+ }
|
|
|
|
+ _qePollingJobs = deletedPollingJobs;
|
|
return true;
|
|
return true;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -1348,9 +1366,18 @@ namespace Venus_RT.Modules
|
|
}
|
|
}
|
|
_faCallback.JobPaused(cj, GetFirstProcessJob(cj));
|
|
_faCallback.JobPaused(cj, GetFirstProcessJob(cj));
|
|
|
|
|
|
|
|
+ var deletedPollingJobs = new Queue<ControlJobInfo>();
|
|
|
|
+ foreach (var item in _qePollingJobs)
|
|
|
|
+ {
|
|
|
|
+ if (cj.InnerId != item.InnerId)
|
|
|
|
+ deletedPollingJobs.Enqueue(item);
|
|
|
|
+ }
|
|
|
|
+ _qePollingJobs = deletedPollingJobs;
|
|
|
|
+
|
|
|
|
|
|
if (!_lstControlJobs.Exists(job => job.State == EnumControlJobState.Executing))
|
|
if (!_lstControlJobs.Exists(job => job.State == EnumControlJobState.Executing))
|
|
_cycleState = RState.Paused;
|
|
_cycleState = RState.Paused;
|
|
|
|
+
|
|
return true;
|
|
return true;
|
|
}
|
|
}
|
|
|
|
|