|
|
@@ -4808,20 +4808,19 @@ namespace FurnaceRT.Equipments.Jobs
|
|
|
}
|
|
|
int currentPWaferNum = GetCurrentDummyWaferNum(WaferType.P, true);
|
|
|
int currentEDWaferNum = GetCurrentDummyWaferNum(WaferType.ED);
|
|
|
- int currentSDWaferNum = GetCurrentDummyWaferNum(WaferType.SD);
|
|
|
var needPAndCurrect = productSlots.Count - pjPWaferCount;
|
|
|
//实际p少于配置的P
|
|
|
if (needPAndCurrect > 0)
|
|
|
{
|
|
|
//判断dumy是否够补充p类型
|
|
|
- var surplusDumyCount = (currentSDWaferNum + currentEDWaferNum) - needPAndCurrect;
|
|
|
+ var surplusDumyCount = ( currentEDWaferNum) - needPAndCurrect;
|
|
|
if (surplusDumyCount >= 0)
|
|
|
{
|
|
|
//判断剩余dumy是否足够Layout配置
|
|
|
if (surplusDumyCount < (extraDummySlots.Count + sideDummySlots.Count))
|
|
|
{
|
|
|
reason = $"layout recipe P waferNumber={productSlots.Count}, " +
|
|
|
- $"select P waferNumber={pjPWaferCount},current SD waferNumber={currentSDWaferNum},current ED Wafer {currentEDWaferNum}," +
|
|
|
+ $"select P waferNumber={pjPWaferCount},current ED Wafer {currentEDWaferNum}," +
|
|
|
$"supplement P wafer {needPAndCurrect}, surplusDumyCount={surplusDumyCount},Not enough dummy ";
|
|
|
return false;
|
|
|
}
|
|
|
@@ -4842,12 +4841,7 @@ namespace FurnaceRT.Equipments.Jobs
|
|
|
currentEDWaferNum--;
|
|
|
needPAndCurrect--;
|
|
|
}
|
|
|
- if (currentSDWaferNum > 0 && layoutRecipeDataExpert.Items[i].ToLower() == WaferType.P.ToDescription())
|
|
|
- {
|
|
|
- layoutRecipeDataExpert.Items[i] = WaferType.SD.ToString();
|
|
|
- currentSDWaferNum--;
|
|
|
- needPAndCurrect--;
|
|
|
- }
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
@@ -4874,12 +4868,7 @@ namespace FurnaceRT.Equipments.Jobs
|
|
|
currentEDWaferNum--;
|
|
|
needPAndCurrect--;
|
|
|
}
|
|
|
- if (currentSDWaferNum > 0 && layoutRecipeDataExpert.Items[i].ToLower() == WaferType.P.ToDescription())
|
|
|
- {
|
|
|
- layoutRecipeDataExpert.Items[i] = WaferType.SD.ToString();
|
|
|
- currentSDWaferNum--;
|
|
|
- needPAndCurrect--;
|
|
|
- }
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
@@ -4900,12 +4889,7 @@ namespace FurnaceRT.Equipments.Jobs
|
|
|
currentEDWaferNum--;
|
|
|
needPAndCurrect--;
|
|
|
}
|
|
|
- if (currentSDWaferNum > 0 && layoutRecipeDataExpert.Items[item.Key].ToLower() == WaferType.P.ToDescription())
|
|
|
- {
|
|
|
- layoutRecipeDataExpert.Items[item.Key] = WaferType.SD.ToString();
|
|
|
- currentSDWaferNum--;
|
|
|
- needPAndCurrect--;
|
|
|
- }
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -4925,12 +4909,7 @@ namespace FurnaceRT.Equipments.Jobs
|
|
|
currentEDWaferNum--;
|
|
|
needPAndCurrect--;
|
|
|
}
|
|
|
- if (currentSDWaferNum > 0 && layoutRecipeDataExpert.Items[i].ToLower() == WaferType.P.ToDescription())
|
|
|
- {
|
|
|
- layoutRecipeDataExpert.Items[i] = WaferType.SD.ToString();
|
|
|
- currentSDWaferNum--;
|
|
|
- needPAndCurrect--;
|
|
|
- }
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
@@ -4941,7 +4920,7 @@ namespace FurnaceRT.Equipments.Jobs
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- reason = $"layout recipe P waferNumber={productSlots.Count}, select P waferNumber={pjPWaferCount},current SD waferNumber={currentSDWaferNum},current ED Wafer {currentEDWaferNum}, Not enough to supplement P";
|
|
|
+ reason = $"layout recipe P waferNumber={productSlots.Count}, select P waferNumber={pjPWaferCount},current ED Wafer {currentEDWaferNum}, Not enough to supplement P";
|
|
|
return false;
|
|
|
}
|
|
|
|