#include "AlarmCfg.h" #include "../../utils/StringHelper.h" #include "../../LanguageManager.h" #include "../../Toast.h" AlarmCfg::AlarmCfg() :m_IsAlarm(false) , m_IsShow(true) , m_AlarmInfo("") , m_AlarmContinueTick(0) , m_CheckAlarmSetTick(40) { } AlarmCfg::~AlarmCfg() { } AlarmCfg::AlarmCfg(string code, string content, int type) :m_Code(code) , m_Content(content) , m_Type(type) , m_IsAlarm(false) , m_IsEnable(true) , m_IsShow(true) , m_AlarmInfo("") , m_AlarmContinueTick(0) , m_CheckAlarmSetTick(40) { } string AlarmCfg::GetUpdateSql() { char buffer[512]; sprintf_s(buffer, sizeof(buffer), "UPDATE %s set %s=%d,%s=%d WHERE %s='%s'", TABLE_NAME.c_str(), FIELD_TYPE.c_str(), m_Type, FIELD_ISENABLE.c_str(), m_IsEnable ? 1 : 0, FIELD_CODE.c_str(), m_Code.c_str() ); return string(buffer); } void AlarmCfg::SetUse(bool isUse) { m_IsShow = isUse; if (!isUse)m_IsEnable = isUse; } string AlarmCfg::GetTypeInfo(int t) { string str = _(u8"未知"); switch (t) { case ALARM_TYPE_STOP: { str = _(u8"停止"); }break; case ALARM_TYPE_PAUSE: { str = _(u8"暂停"); }break; case ALARM_TYPE_WARN: { str = _(u8"预警"); }break; case ALARM_TYPE_AUTO_PAUSE: { str = _(u8"自动暂停"); }break; } return str; } const string AlarmCfg::TABLE_NAME = "AlarmCfg"; const string AlarmCfg::FIELD_ID = "id"; const string AlarmCfg::FIELD_CODE = "code"; const string AlarmCfg::FIELD_TYPE = "type"; const string AlarmCfg::FIELD_CONTENT = "content"; const string AlarmCfg::FIELD_ISENABLE = "is_enable"; AlarmCfgWrapper::AlarmCfgWrapper() { m_DeviceJudgeDisconnectAlarm=NULL; m_PLCJudgeDisconnectAlarm=NULL; m_SystemStopAlarm = NULL; m_HighPressureLackAlarm = NULL; m_PowerBreakAlarm = NULL; m_LaserChillerAlarm = NULL; m_BusAirSwitchAlarm = NULL; m_ExtDevicePowerAirSwitchAlarm = NULL; m_HeatingPowerAirSwitchAlarm = NULL; m_LaserPowerAirSwitchAlarm = NULL; m_ServoPowerAirSwitchAlarm = NULL; m_Laser1Alarm = NULL; m_Laser2Alarm = NULL; m_Laser3Alarm = NULL; m_Laser4Alarm = NULL; m_Laser1ComAlarm = NULL; m_Laser2ComAlarm = NULL; m_Laser3ComAlarm = NULL; m_Laser4ComAlarm = NULL; m_HeatingAlarm = NULL; m_UpDownLimitAlarm = NULL; m_PrintCabinDoorOpenAlarm = NULL; m_PrintCabinDoorLockOpenAlarm = NULL; m_PrintMoldServoAlarm = NULL; m_ArmServoAlarm = NULL; m_SupplyServoAlarm = NULL; m_MoldLoadOverLimitAlarm = NULL; m_ArmLoadOverLimitAlarm = NULL; m_PurifierDisconnectAlarm = NULL; m_InverterRunSignalAlarm = NULL; m_OxygenOverLimitAlarm = NULL; m_PrintSignalAlarm = NULL; m_ScananerChillerAlarm = NULL; m_PurifierChillerAlarm = NULL; m_WindOverLimitAlarm = NULL; m_FanFreqLowAlarm = NULL; m_PowderEmpty = NULL; m_VoltageAlarm = NULL; m_ScannerVoltageAlarm = NULL; // m_MoldMotionTransferAlarm = NULL; m_LinearEncoderCompensateAlarm = NULL; m_HighPressureLackAlarm = NULL; m_ProtectGasLackAlarm = NULL; m_OutdoorOxygenAlarm = NULL; m_SupplyPipeBlockWarn = NULL; m_ArmLimitAlarm = NULL; m_RecoatCheckAlarm = NULL; m_LayerLinearPosAlarm = NULL; m_MoldServoPosWarn = NULL; m_PrintLinnearAccDevAlarm = NULL; m_PurifierKeepAliveAlarm = NULL; m_HeatingTempAlarm = NULL; m_OxygenSensorDisconnectAlarm = NULL; m_HeatingDisconnectAlarm = NULL; m_PurifierOxygenAlarm = NULL; m_PurifierMidTempAlarm = NULL; m_ScannerInteriorAlarm = NULL; m_PurifierInternalAlarm = NULL; m_ScannerCtrlComAlarm = NULL; m_PLCKeepaliveAlarm = NULL; m_PLCInnerStopAlarm = NULL; m_WindOverLimitJudgeFlag = 0; } AlarmCfgWrapper::~AlarmCfgWrapper() { for (map::iterator it = m_AllAlarmMap.begin(); it != m_AllAlarmMap.end(); it++) { AlarmCfg* pcfg = it->second; if(pcfg)delete pcfg; pcfg = NULL; } m_AllAlarmMap.clear(); m_StopAlarmCfgMap.clear(); m_PauseAlarmCfgMap.clear(); m_WarnAlarmCfgMap.clear(); } void AlarmCfgWrapper::Init() { m_DeviceJudgeDisconnectAlarm = m_StopAlarmCfgMap["DeviceJudgeDisconnectAlarm"]; m_PLCJudgeDisconnectAlarm = m_StopAlarmCfgMap["PLCJudgeDisconnectAlarm"]; m_SystemStopAlarm = m_StopAlarmCfgMap["SystemStopAlarm"]; //m_HighPressureLackAlarm = m_StopAlarmCfgMap["HighPressureLackAlarm"]; m_PowerBreakAlarm = m_StopAlarmCfgMap["PowerBreakAlarm"]; m_LaserChillerAlarm = m_StopAlarmCfgMap["LaserChillerAlarm"]; m_BusAirSwitchAlarm = m_StopAlarmCfgMap["BusAirSwitchAlarm"]; m_ExtDevicePowerAirSwitchAlarm = m_StopAlarmCfgMap["ExtDevicePowerAirSwitchAlarm"]; m_HeatingPowerAirSwitchAlarm = m_StopAlarmCfgMap["HeatingPowerAirSwitchAlarm"]; m_LaserPowerAirSwitchAlarm = m_StopAlarmCfgMap["LaserPowerAirSwitchAlarm"]; m_ServoPowerAirSwitchAlarm = m_StopAlarmCfgMap["ServoPowerAirSwitchAlarm"]; m_Laser1Alarm = m_StopAlarmCfgMap["Laser1Alarm"]; m_Laser2Alarm = m_StopAlarmCfgMap["Laser2Alarm"]; m_Laser3Alarm = m_StopAlarmCfgMap["Laser3Alarm"]; m_Laser4Alarm = m_StopAlarmCfgMap["Laser4Alarm"]; m_Laser1ComAlarm = m_StopAlarmCfgMap["Laser1ComAlarm"]; m_Laser2ComAlarm = m_StopAlarmCfgMap["Laser2ComAlarm"]; m_Laser3ComAlarm = m_StopAlarmCfgMap["Laser3ComAlarm"]; m_Laser4ComAlarm = m_StopAlarmCfgMap["Laser4ComAlarm"]; m_HeatingAlarm = m_StopAlarmCfgMap["HeatingAlarm"]; m_UpDownLimitAlarm = m_StopAlarmCfgMap["UpDownLimitAlarm"]; m_PrintCabinDoorOpenAlarm = m_StopAlarmCfgMap["PrintCabinDoorOpenAlarm"]; if (m_PrintCabinDoorOpenAlarm)m_PrintCabinDoorOpenAlarm->m_IsAlarm = false; m_PrintCabinDoorLockOpenAlarm = m_StopAlarmCfgMap["PrintCabinDoorLockOpenAlarm"]; m_PrintMoldServoAlarm = m_StopAlarmCfgMap["PrintMoldServoAlarm"]; m_ArmServoAlarm = m_StopAlarmCfgMap["ArmServoAlarm"]; m_SupplyServoAlarm = m_StopAlarmCfgMap["SupplyServoAlarm"]; m_MoldLoadOverLimitAlarm = m_StopAlarmCfgMap["MoldLoadOverLimitAlarm"]; m_ArmLoadOverLimitAlarm = m_StopAlarmCfgMap["ArmLoadOverLimitAlarm"]; m_PurifierDisconnectAlarm = m_StopAlarmCfgMap["PurifierDisconnectAlarm"]; m_InverterRunSignalAlarm = m_StopAlarmCfgMap["InverterRunSignalAlarm"]; m_OxygenOverLimitAlarm = m_StopAlarmCfgMap["OxygenOverLimitAlarm"]; m_PrintSignalAlarm = m_StopAlarmCfgMap["PrintSignalAlarm"]; m_ScananerChillerAlarm = m_StopAlarmCfgMap["ScananerChillerAlarm"]; m_PurifierChillerAlarm = m_StopAlarmCfgMap["PurifierChillerAlarm"]; m_WindOverLimitAlarm = m_StopAlarmCfgMap["WindOverLimitAlarm"]; m_FanFreqLowAlarm = m_StopAlarmCfgMap["FanFreqLowAlarm"]; m_VoltageAlarm = m_StopAlarmCfgMap["VoltageAlarm"]; m_ScannerVoltageAlarm = m_StopAlarmCfgMap["ScannerVoltageAlarm"]; m_ArmLimitAlarm = m_StopAlarmCfgMap["ArmLimitAlarm"]; m_LayerLinearPosAlarm = m_StopAlarmCfgMap["LayerLinearPosAlarm"]; m_PrintLinnearAccDevAlarm = m_StopAlarmCfgMap["PrintLinnearAccDevAlarm"]; m_PurifierKeepAliveAlarm = m_StopAlarmCfgMap["PurifierKeepAliveAlarm"]; m_PurifierOxygenAlarm = m_StopAlarmCfgMap["PurifierOxygenAlarm"]; m_PurifierMidTempAlarm = m_StopAlarmCfgMap["PurifierMidTempAlarm"]; //m_MoldMotionTransferAlarm = m_StopAlarmCfgMap["MoldMotionTransferAlarm"]; m_LinearEncoderCompensateAlarm = m_StopAlarmCfgMap["LinearEncoderCompensateAlarm"]; m_PowderEmpty = m_PauseAlarmCfgMap["PowderEmpty"]; m_PowderStickLowLevelAlarm = m_PauseAlarmCfgMap["PowderStickLowLevelAlarm"]; m_RecoatCheckAlarm = m_PauseAlarmCfgMap["RecoatCheckAlarm"]; m_HeatingTempAlarm = m_PauseAlarmCfgMap["HeatingTempAlarm"]; m_OxygenSensorDisconnectAlarm = m_PauseAlarmCfgMap["OxygenSensorDisconnectAlarm"]; m_HeatingDisconnectAlarm = m_PauseAlarmCfgMap["HeatingDisconnectAlarm"]; m_HighPressureLackAlarm = m_WarnAlarmCfgMap["HighPressureLackAlarm"]; m_ProtectGasLackAlarm = m_WarnAlarmCfgMap["ProtectGasLackAlarm"]; m_OutdoorOxygenAlarm = m_WarnAlarmCfgMap["OutdoorOxygenAlarm"]; m_SupplyPipeBlockWarn = m_WarnAlarmCfgMap["SupplyPipeBlockWarn"]; m_AddPowderWarn = m_WarnAlarmCfgMap["AddPowderWarn"]; m_MoldServoPosWarn = m_WarnAlarmCfgMap["MoldServoPosWarn"]; m_ScannerInteriorAlarm = m_StopAlarmCfgMap["ScannerInteriorAlarm"]; m_PurifierInternalAlarm = m_StopAlarmCfgMap["PurifierInternalAlarm"]; m_ScannerCtrlComAlarm = m_StopAlarmCfgMap["ScannerCtrlComAlarm"]; m_PLCKeepaliveAlarm = m_StopAlarmCfgMap["PLCKeepaliveAlarm"]; m_PLCInnerStopAlarm = m_StopAlarmCfgMap["PLCInnerStopAlarm"]; InitShowVec(); } void AlarmCfgWrapper::InitShowVec() { }