|
@@ -450,65 +450,54 @@ namespace FurnaceRT.Equipments.PMs
|
|
|
var maintenanceItemSDWaferUserTime = ScheduleMaintenanceDataManager.Instance.GetItem(MaintenanceItemEnum.SDWaferUserTime.ToString());
|
|
|
|
|
|
|
|
|
- int SDCountWarning = (int)maintenanceItemSDCarrierUseFreq.StartValue;
|
|
|
- int SDCountAlarm = (int)maintenanceItemSDCarrierUseFreq.LimitValue;
|
|
|
- bool IsEnableSDWaferUseCountWarning = SDCountWarning > 0;
|
|
|
|
|
|
-
|
|
|
- int SDThicknessWarning = (int)maintenanceItemSDWaferThickness.StartValue;
|
|
|
- int SDThicknessAlarm = (int)maintenanceItemSDWaferThickness.LimitValue;
|
|
|
- bool IsEnableSDWaferThicknessWarning = SDThicknessWarning > 0;
|
|
|
-
|
|
|
- int SDTimeWarning = DateTimeUtil.GetSecond(maintenanceItemSDWaferUserTime.StartValue);
|
|
|
- int SDTimeAlarm = DateTimeUtil.GetSecond(maintenanceItemSDWaferUserTime.LimitValue);
|
|
|
- bool IsEnableSDWaferUseTimeWarning = SDTimeWarning > 0;
|
|
|
- if (wafer.WaferType == WaferType.SD && IsEnableSDWaferUseCountWarning && wafer.UseCount > SDCountWarning && wafer.UseCount < SDCountAlarm)
|
|
|
+ if (wafer.WaferType == WaferType.SD && maintenanceItemSDCarrierUseFreq.StartValue > 0 && wafer.UseCount > maintenanceItemSDCarrierUseFreq.StartValue && wafer.UseCount < maintenanceItemSDCarrierUseFreq.LimitValue)
|
|
|
{
|
|
|
|
|
|
- pm.MaintenanceProcessingCommandExec(maintenanceItemSDCarrierUseFreq, new AlarmReportItem(Singleton<EquipmentManager>.Instance.SDWaferTypeUseCountWarning.Set, $"more than {SDCountWarning} 次"));
|
|
|
+ pm.MaintenanceProcessingCommandExec(maintenanceItemSDCarrierUseFreq, new AlarmReportItem(Singleton<EquipmentManager>.Instance.SDWaferTypeUseCountWarning.Set, $"more than {maintenanceItemSDCarrierUseFreq.StartValue} 次"));
|
|
|
|
|
|
}
|
|
|
|
|
|
- if (wafer.WaferType == WaferType.SD && IsEnableSDWaferUseTimeWarning && wafer.UseTime > SDTimeWarning && wafer.UseTime < SDTimeAlarm)
|
|
|
+ if (wafer.WaferType == WaferType.SD && maintenanceItemSDWaferUserTime.StartValue > 0 && wafer.UseTime > maintenanceItemSDWaferUserTime.StartValue && wafer.UseTime < maintenanceItemSDWaferUserTime.LimitValue)
|
|
|
{
|
|
|
- DateTimeUtil.ConvertSecondsToHoursAndMinutes(SDTimeWarning, out var hours, out var minutes);
|
|
|
+ DateTimeUtil.ConvertSecondsToHoursAndMinutes((int)maintenanceItemSDWaferUserTime.StartValue, out var hours, out var minutes);
|
|
|
|
|
|
pm.MaintenanceProcessingCommandExec(maintenanceItemSDWaferUserTime, new AlarmReportItem(Singleton<EquipmentManager>.Instance.SDWaferTypeUseTimeWarning.Set, $"more than {hours} hour {minutes} min"));
|
|
|
|
|
|
}
|
|
|
|
|
|
- if (wafer.WaferType == WaferType.SD && IsEnableSDWaferThicknessWarning && wafer.UseThick > SDThicknessWarning && wafer.UseThick < SDThicknessAlarm)
|
|
|
+ if (wafer.WaferType == WaferType.SD && maintenanceItemSDWaferThickness.StartValue > 0 && wafer.UseThick > maintenanceItemSDWaferThickness.StartValue && wafer.UseThick < maintenanceItemSDWaferThickness.LimitValue)
|
|
|
{
|
|
|
- pm.MaintenanceProcessingCommandExec(maintenanceItemSDWaferThickness, new AlarmReportItem(Singleton<EquipmentManager>.Instance.SDWaferTypeThicknessWarning.Set, $"more than {SDThicknessWarning} nm"));
|
|
|
+ pm.MaintenanceProcessingCommandExec(maintenanceItemSDWaferThickness, new AlarmReportItem(Singleton<EquipmentManager>.Instance.SDWaferTypeThicknessWarning.Set, $"more than {maintenanceItemSDWaferThickness.StartValue} nm"));
|
|
|
|
|
|
}
|
|
|
|
|
|
- if (wafer.WaferType == WaferType.SD && IsEnableSDWaferUseCountWarning && wafer.UseCount >= SDCountAlarm)
|
|
|
+ if (wafer.WaferType == WaferType.SD && maintenanceItemSDCarrierUseFreq.StartValue > 0 && wafer.UseCount >= maintenanceItemSDCarrierUseFreq.LimitValue)
|
|
|
{
|
|
|
if (maintenanceItemSDCarrierUseFreq.MaintenanceProcessing == MaintenanceProcessingCommandEnum.None.ToString())
|
|
|
return true;
|
|
|
|
|
|
- pm.MaintenanceProcessingCommandExec(maintenanceItemSDCarrierUseFreq, new AlarmReportItem(Singleton<EquipmentManager>.Instance.SDWaferTypeUseCountAlarm.Set, $"more than {SDCountAlarm} 次"),"",false);
|
|
|
+ pm.MaintenanceProcessingCommandExec(maintenanceItemSDCarrierUseFreq, new AlarmReportItem(Singleton<EquipmentManager>.Instance.SDWaferTypeUseCountAlarm.Set, $"more than {maintenanceItemSDCarrierUseFreq.LimitValue} 次"), "", false);
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
- if (wafer.WaferType == WaferType.SD && IsEnableSDWaferUseTimeWarning && wafer.UseTime >= SDTimeAlarm)
|
|
|
+ if (wafer.WaferType == WaferType.SD && maintenanceItemSDWaferUserTime.StartValue > 0 && wafer.UseTime >= maintenanceItemSDWaferUserTime.LimitValue)
|
|
|
{
|
|
|
if (maintenanceItemSDWaferUserTime.MaintenanceProcessing == MaintenanceProcessingCommandEnum.None.ToString())
|
|
|
return true;
|
|
|
|
|
|
- DateTimeUtil.ConvertSecondsToHoursAndMinutes(SDTimeAlarm, out var hours, out var minutes);
|
|
|
+ DateTimeUtil.ConvertSecondsToHoursAndMinutes((int)maintenanceItemSDWaferUserTime.LimitValue, out var hours, out var minutes);
|
|
|
pm.MaintenanceProcessingCommandExec(maintenanceItemSDWaferUserTime, new AlarmReportItem(Singleton<EquipmentManager>.Instance.SDWaferTypeUseTimeAlarm.Set, $"more than {hours} hour {minutes}"), "", false);
|
|
|
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
- if (wafer.WaferType == WaferType.SD && IsEnableSDWaferThicknessWarning && wafer.UseThick >= SDThicknessAlarm)
|
|
|
+ if (wafer.WaferType == WaferType.SD && maintenanceItemSDWaferThickness.StartValue > 0 && wafer.UseThick >= maintenanceItemSDWaferThickness.LimitValue)
|
|
|
{
|
|
|
if (maintenanceItemSDWaferThickness.MaintenanceProcessing == MaintenanceProcessingCommandEnum.None.ToString())
|
|
|
return true;
|
|
|
|
|
|
- pm.MaintenanceProcessingCommandExec(maintenanceItemSDWaferThickness, new AlarmReportItem(Singleton<EquipmentManager>.Instance.SDWaferTypeThicknessAlarm.Set, $"more than {SDThicknessAlarm} nm"), "", false);
|
|
|
+ pm.MaintenanceProcessingCommandExec(maintenanceItemSDWaferThickness, new AlarmReportItem(Singleton<EquipmentManager>.Instance.SDWaferTypeThicknessAlarm.Set, $"more than {maintenanceItemSDWaferThickness.LimitValue} nm"), "", false);
|
|
|
|
|
|
return false;
|
|
|
}
|
|
@@ -519,24 +508,15 @@ namespace FurnaceRT.Equipments.PMs
|
|
|
var maintenanceItemEDWaferThickness = ScheduleMaintenanceDataManager.Instance.GetItem(MaintenanceItemEnum.FDWaferThickness.ToString());
|
|
|
var maintenanceItemEDWaferUserTime = ScheduleMaintenanceDataManager.Instance.GetItem(MaintenanceItemEnum.FDWaferUserTime.ToString());
|
|
|
|
|
|
- int EDCountWarning = (int)maintenanceItemEDCarrierUseFreq.StartValue;
|
|
|
- int EDCountAlarm = (int)maintenanceItemEDCarrierUseFreq.LimitValue;
|
|
|
- bool IsEnableEDWaferUseCountWarning = EDCountWarning > 0;
|
|
|
|
|
|
|
|
|
- int EDThicknessWarning = (int)maintenanceItemEDWaferThickness.StartValue;
|
|
|
- int EDThicknessAlarm = (int)maintenanceItemEDWaferThickness.LimitValue;
|
|
|
- bool IsEnableEDWaferThicknessWarning = EDThicknessWarning > 0;
|
|
|
|
|
|
- int EDTimeWarning = DateTimeUtil.GetSecond(maintenanceItemEDWaferUserTime.StartValue);
|
|
|
- int EDTimeAlarm = DateTimeUtil.GetSecond(maintenanceItemEDWaferUserTime.LimitValue);
|
|
|
- bool IsEnableEDWaferUseTimeWarning = EDTimeWarning > 0;
|
|
|
- if (wafer.WaferType == WaferType.ED && IsEnableEDWaferUseCountWarning && maintenanceItemEDCarrierUseFreq.CurrentValue > EDCountWarning && wafer.UseCount < EDCountAlarm)
|
|
|
+ if (wafer.WaferType == WaferType.ED && maintenanceItemEDCarrierUseFreq.StartValue > 0 && maintenanceItemEDCarrierUseFreq.CurrentValue > maintenanceItemEDCarrierUseFreq.StartValue && wafer.UseCount < maintenanceItemEDCarrierUseFreq.LimitValue)
|
|
|
{
|
|
|
pm.MaintenanceProcessingCommandExec(maintenanceItemEDCarrierUseFreq, new AlarmReportItem(Singleton<EquipmentManager>.Instance.EDWaferTypeUseCountWarning.Set));
|
|
|
}
|
|
|
|
|
|
- if (wafer.WaferType == WaferType.ED && IsEnableEDWaferUseTimeWarning && wafer.UseTime > EDTimeWarning && wafer.UseTime < EDTimeAlarm)
|
|
|
+ if (wafer.WaferType == WaferType.ED && maintenanceItemEDWaferUserTime.StartValue > 0 && wafer.UseTime > maintenanceItemEDWaferUserTime.StartValue && wafer.UseTime < maintenanceItemEDWaferUserTime.LimitValue)
|
|
|
{
|
|
|
var currentValue = DateTimeUtil.SecondToHHmmss(maintenanceItemEDWaferUserTime.CurrentValue.ToString());
|
|
|
var startValue = DateTimeUtil.SecondToHHmmss(maintenanceItemEDWaferUserTime.StartValue.ToString());
|
|
@@ -549,39 +529,39 @@ namespace FurnaceRT.Equipments.PMs
|
|
|
|
|
|
}
|
|
|
|
|
|
- if (wafer.WaferType == WaferType.ED && IsEnableEDWaferThicknessWarning && wafer.UseThick > EDThicknessWarning && wafer.UseThick < EDThicknessAlarm)
|
|
|
+ if (wafer.WaferType == WaferType.ED && maintenanceItemEDWaferThickness.StartValue > 0 && wafer.UseThick > maintenanceItemEDWaferThickness.StartValue && wafer.UseThick < maintenanceItemEDWaferThickness.LimitValue)
|
|
|
{
|
|
|
- pm.MaintenanceProcessingCommandExec(maintenanceItemEDWaferThickness, new AlarmReportItem(Singleton<EquipmentManager>.Instance.EDWaferTypeThicknessWarning.Set, $"more than {EDThicknessWarning} nm"));
|
|
|
+ pm.MaintenanceProcessingCommandExec(maintenanceItemEDWaferThickness, new AlarmReportItem(Singleton<EquipmentManager>.Instance.EDWaferTypeThicknessWarning.Set, $"more than {maintenanceItemEDWaferThickness.StartValue} nm"));
|
|
|
|
|
|
}
|
|
|
|
|
|
- if (wafer.WaferType == WaferType.ED && IsEnableEDWaferUseCountWarning && wafer.UseCount >= EDCountAlarm)
|
|
|
+ if (wafer.WaferType == WaferType.ED && maintenanceItemEDCarrierUseFreq.StartValue > 0 && wafer.UseCount >= maintenanceItemEDCarrierUseFreq.LimitValue)
|
|
|
{
|
|
|
if (maintenanceItemEDCarrierUseFreq.MaintenanceProcessing == MaintenanceProcessingCommandEnum.None.ToString())
|
|
|
return true;
|
|
|
|
|
|
- pm.MaintenanceProcessingCommandExec(maintenanceItemEDCarrierUseFreq, new AlarmReportItem(Singleton<EquipmentManager>.Instance.EDWaferTypeUseCountAlarm.Set, $"more than {EDCountAlarm} 次"), "", false);
|
|
|
+ pm.MaintenanceProcessingCommandExec(maintenanceItemEDCarrierUseFreq, new AlarmReportItem(Singleton<EquipmentManager>.Instance.EDWaferTypeUseCountAlarm.Set, $"more than {maintenanceItemEDCarrierUseFreq.LimitValue} 次"), "", false);
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
- if (wafer.WaferType == WaferType.ED && IsEnableEDWaferUseTimeWarning && wafer.UseTime >= EDTimeAlarm)
|
|
|
+ if (wafer.WaferType == WaferType.ED && maintenanceItemEDWaferUserTime.StartValue > 0 && wafer.UseTime >= maintenanceItemEDWaferUserTime.LimitValue)
|
|
|
{
|
|
|
|
|
|
if (maintenanceItemEDWaferUserTime.MaintenanceProcessing == MaintenanceProcessingCommandEnum.None.ToString())
|
|
|
return true;
|
|
|
|
|
|
- DateTimeUtil.ConvertSecondsToHoursAndMinutes(EDTimeAlarm, out var hours, out var minutes);
|
|
|
+ DateTimeUtil.ConvertSecondsToHoursAndMinutes((int)maintenanceItemEDWaferUserTime.LimitValue, out var hours, out var minutes);
|
|
|
pm.MaintenanceProcessingCommandExec(maintenanceItemEDWaferUserTime, new AlarmReportItem(Singleton<EquipmentManager>.Instance.EDWaferTypeUseTimeAlarm.Set, $"more than {hours} hour {minutes}"), "", false);
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
- if (wafer.WaferType == WaferType.ED && IsEnableEDWaferThicknessWarning && wafer.UseThick >= EDThicknessAlarm)
|
|
|
+ if (wafer.WaferType == WaferType.ED && maintenanceItemEDWaferThickness.StartValue > 0 && wafer.UseThick >= maintenanceItemEDWaferThickness.LimitValue)
|
|
|
{
|
|
|
|
|
|
if (maintenanceItemEDWaferThickness.MaintenanceProcessing == MaintenanceProcessingCommandEnum.None.ToString())
|
|
|
return true;
|
|
|
|
|
|
- pm.MaintenanceProcessingCommandExec(maintenanceItemEDWaferThickness, new AlarmReportItem(Singleton<EquipmentManager>.Instance.EDWaferTypeThicknessAlarm.Set, $"more than {EDThicknessAlarm} nm"), "", false);
|
|
|
+ pm.MaintenanceProcessingCommandExec(maintenanceItemEDWaferThickness, new AlarmReportItem(Singleton<EquipmentManager>.Instance.EDWaferTypeThicknessAlarm.Set, $"more than {maintenanceItemEDWaferThickness.LimitValue} nm"), "", false);
|
|
|
return false;
|
|
|
}
|
|
|
#endregion
|