/// <summary> /// ��ʼ�����м�ص���ʱ���� /// </summary> private void InitAllVariables() { #region ��ʼ������ _curHightLightType = ClickLinkLabelType.None; _curFaultInfo = new MonitorErrData(); _curAlarmInfo = new MonitorErrData(); _tempStatisInfo = new TempAndHumiStatisticsInfo(); _humiStatisInfo = new TempAndHumiStatisticsInfo(); _curScanBoardIndex = -1; _totalFanSwitchCount = 0; _totalPowerSwitchCount = 0; //_scanCntOfInfoValid = 0; //_curMinTempValue = 0; //_curMaxTempValue = 0; //_curMinHumidityValue = 0; //_curMaxHumidityValue = 0; //_curTotalTemp = 0; //_curTotalHumidity = 0; //_curScreenTempList.Clear(); //_curScreenHumidityList.Clear(); _curTempMaxMinIndexInfo.MaxSBIndexList.Clear(); _curTempMaxMinIndexInfo.MinSBIndexList.Clear(); _curHumiMaxMinIndexInfo.MaxSBIndexList.Clear(); _curHumiMaxMinIndexInfo.MinSBIndexList.Clear(); #endregion }
private void GetSocketErrData(string sn,List<SocketCableMonitorInfo> SocketCableInfo, DeviceRegionInfo deviceRegInfo) { if (SocketCableInfo==null) { return; } for (int i = 0; i < SocketCableInfo.Count; i++) { foreach (var item in SocketCableInfo[i].SocketCableInfoDict.Keys) { for (int j = 0; j < SocketCableInfo[i].SocketCableInfoDict[item].Count; j++) { if(!SocketCableInfo[i].SocketCableInfoDict[item][j].IsCableOK) { MonitorErrData temp = new MonitorErrData(); temp.SN = sn; temp.ErrorType = ErrType.Soket; temp.MonitorResult = MonitorInfoResult.Fault; temp.DeviceRegInfo = (DeviceRegionInfo)deviceRegInfo.Clone(); _newAllScreenMonitorErrData.Add(temp); AddSystemRunData(ErrType.Soket, 1); return; } } } } }
private void GetScanBoardErrData(string sn,LedAlarmConfig alarmConfig,List<ScannerMonitorInfo> scannerMonitor) { FLogService.Info("EMailSendMonitorErrMsg" + "接收卡数据解析开始"); if (scannerMonitor == null || alarmConfig == null) { return; } MonitorErrData temp = null; for (int i = 0; i < scannerMonitor.Count; i++) { if(scannerMonitor[i].DeviceStatus==DeviceWorkStatus.Unknown) { continue; } //接收卡 if (scannerMonitor[i].DeviceStatus==DeviceWorkStatus.Error) { temp = new MonitorErrData(); temp.SN = sn; temp.ErrorType = ErrType.SBStatus; temp.MonitorResult = MonitorInfoResult.Fault; temp.DeviceRegInfo = (DeviceRegionInfo)scannerMonitor[i].DeviceRegInfo.Clone(); _newAllScreenMonitorErrData.Add(temp); AddSystemRunData(ErrType.SBStatus, 1); } //板载温度 ParameterAlarmConfig info = alarmConfig.ParameterAlarmConfigList.Find(a => a.ParameterType == StateQuantityType.Temperature);// && a.Disable == false); if (info != null && info.HighThreshold < scannerMonitor[i].Temperature) { temp = new MonitorErrData(); temp.SN = sn; temp.ErrorType = ErrType.Temperature; temp.MonitorResult = MonitorInfoResult.Alarm; temp.DeviceRegInfo = (DeviceRegionInfo)scannerMonitor[i].DeviceRegInfo.Clone(); _newAllScreenMonitorAlarmData.Add(temp); AddSystemRunData(ErrType.Temperature, 1); } } FLogService.Info("EMailSendMonitorErrMsg" + "接收卡数据解析完成"); }
private void GetSenderErrData(string sn,List<SenderMonitorInfo> senderMonitor) { FLogService.Info("EMailSendMonitorErrMsg" + "发送卡数据解析开始"); if (senderMonitor==null) { return ; } MonitorErrData temp = null; for (int i = 0; i < senderMonitor.Count; i++) { temp = new MonitorErrData(); if (senderMonitor[i].DeviceStatus == DeviceWorkStatus.Error) { temp = new MonitorErrData(); temp.SN = sn; temp.ErrorType = ErrType.SenderCard; temp.MonitorResult = MonitorInfoResult.Fault; temp.DeviceRegInfo = (DeviceRegionInfo)senderMonitor[i].DeviceRegInfo.Clone(); _newAllScreenMonitorErrData.Add(temp); AddSystemRunData(ErrType.SenderCard, 1); } //DVI temp = new MonitorErrData(); if(!senderMonitor[i].IsDviConnected) { temp = new MonitorErrData(); temp.SN = sn; temp.ErrorType = ErrType.DVI; temp.MonitorResult = MonitorInfoResult.Fault; temp.DeviceRegInfo = (DeviceRegionInfo)senderMonitor[i].DeviceRegInfo.Clone(); _newAllScreenMonitorErrData.Add(temp); AddSystemRunData(ErrType.DVI, 1); } for (int j = 0; j < senderMonitor[i].ReduPortIndexCollection.Count; j++) { //冗余 if (senderMonitor[i].ReduPortIndexCollection[j].IsReduState) { temp = new MonitorErrData(); temp.SN = sn; temp.ErrorType = ErrType.Redundancy; temp.MonitorResult = MonitorInfoResult.Alarm; temp.DeviceRegInfo = (DeviceRegionInfo)senderMonitor[i].DeviceRegInfo.Clone(); _newAllScreenMonitorAlarmData.Add(temp); AddSystemRunData(ErrType.Redundancy, 1); break; } } } FLogService.Info("EMailSendMonitorErrMsg" + "发送卡数据解析完成"); }
private void GetMonitorErrData(string sn,LedAlarmConfig alarmConfig,List<MonitorCardMonitorInfo> monitorCardInfo) { FLogService.Info("EMailSendMonitorErrMsg" + "监控数据解析开始"); if (monitorCardInfo == null || alarmConfig == null) { return; } MonitorErrData temp = null; for (int i = 0; i < monitorCardInfo.Count; i++) { //监控卡 if(monitorCardInfo[i].DeviceStatus==DeviceWorkStatus.Error) { temp = new MonitorErrData(); temp.SN = sn; temp.ErrorType = ErrType.MonitorCard; temp.MonitorResult = MonitorInfoResult.Fault; temp.DeviceRegInfo = (DeviceRegionInfo)monitorCardInfo[i].DeviceRegInfo.Clone(); _newAllScreenMonitorErrData.Add(temp); AddSystemRunData(ErrType.MonitorCard, 1); continue; } else if (monitorCardInfo[i].DeviceStatus == DeviceWorkStatus.Unknown) { continue; } //湿度 ParameterAlarmConfig info = alarmConfig.ParameterAlarmConfigList.Find(a => a.ParameterType == StateQuantityType.Humidity);// && a.Disable == false); if (monitorCardInfo[i].HumidityUInfo!=null && monitorCardInfo[i].HumidityUInfo.IsUpdate && info != null && info.HighThreshold < monitorCardInfo[i].HumidityUInfo.Humidity) { temp = new MonitorErrData(); temp.SN = sn; temp.ErrorType = ErrType.Humidity; temp.MonitorResult = MonitorInfoResult.Alarm; temp.DeviceRegInfo = (DeviceRegionInfo)monitorCardInfo[i].DeviceRegInfo.Clone(); _newAllScreenMonitorAlarmData.Add(temp); AddSystemRunData(ErrType.Humidity, 1); }//烟雾 if (monitorCardInfo[i].SmokeUInfo!=null && monitorCardInfo[i].SmokeUInfo.IsUpdate && monitorCardInfo[i].SmokeUInfo.IsSmokeAlarm) { temp = new MonitorErrData(); temp.SN = sn; temp.ErrorType = ErrType.Smoke; temp.MonitorResult = MonitorInfoResult.Alarm; temp.DeviceRegInfo = (DeviceRegionInfo)monitorCardInfo[i].DeviceRegInfo.Clone(); _newAllScreenMonitorAlarmData.Add(temp); AddSystemRunData(ErrType.Smoke, 1); }//箱门 if (monitorCardInfo[i].CabinetDoorUInfo!=null && monitorCardInfo[i].CabinetDoorUInfo.IsUpdate && monitorCardInfo[i].CabinetDoorUInfo.IsDoorOpen) { temp = new MonitorErrData(); temp.SN = sn; temp.ErrorType = ErrType.CabinetDoor; temp.MonitorResult = MonitorInfoResult.Alarm; temp.DeviceRegInfo = (DeviceRegionInfo)monitorCardInfo[i].DeviceRegInfo.Clone(); _newAllScreenMonitorAlarmData.Add(temp); AddSystemRunData(ErrType.CabinetDoor, 1); }//风扇 info = alarmConfig.ParameterAlarmConfigList.Find(a => a.ParameterType == StateQuantityType.FanSpeed);// && a.Disable == false); if (monitorCardInfo[i].FansUInfo != null && monitorCardInfo[i].FansUInfo.IsUpdate && info != null) { foreach (var item in monitorCardInfo[i].FansUInfo.FansMonitorInfoCollection.Keys) { if(monitorCardInfo[i].FansUInfo.FansMonitorInfoCollection[item] < info.LowThreshold) { temp = new MonitorErrData(); temp.SN = sn; temp.ErrorType = ErrType.Fan; temp.MonitorResult = MonitorInfoResult.Alarm; temp.DeviceRegInfo = (DeviceRegionInfo)monitorCardInfo[i].DeviceRegInfo.Clone(); _newAllScreenMonitorAlarmData.Add(temp); AddSystemRunData(ErrType.Fan, 1); break; } } } //电源 info = alarmConfig.ParameterAlarmConfigList.Find(a => a.ParameterType == StateQuantityType.Voltage);// && a.Disable == false); if (monitorCardInfo[i].PowerUInfo!=null && monitorCardInfo[i].PowerUInfo.IsUpdate && info != null) { foreach (var item in monitorCardInfo[i].PowerUInfo.PowerMonitorInfoCollection.Keys) { //告警 if (monitorCardInfo[i].PowerUInfo.PowerMonitorInfoCollection[item] > info.HighThreshold) { temp = new MonitorErrData(); temp.SN = sn; temp.ErrorType = ErrType.Power; temp.MonitorResult = MonitorInfoResult.Alarm; temp.DeviceRegInfo = (DeviceRegionInfo)monitorCardInfo[i].DeviceRegInfo.Clone(); _newAllScreenMonitorAlarmData.Add(temp); AddSystemRunData(ErrType.Power, 1); break; } } foreach (var item in monitorCardInfo[i].PowerUInfo.PowerMonitorInfoCollection.Keys) { //故障 if (monitorCardInfo[i].PowerUInfo.PowerMonitorInfoCollection[item] < info.LowThreshold) { temp = new MonitorErrData(); temp.SN = sn; temp.ErrorType = ErrType.Power; temp.MonitorResult = MonitorInfoResult.Fault; temp.DeviceRegInfo = (DeviceRegionInfo)monitorCardInfo[i].DeviceRegInfo.Clone(); _newAllScreenMonitorErrData.Add(temp); AddSystemRunData(ErrType.Power, 1); break; } } } //排线 if (monitorCardInfo[i].SocketCableUInfo != null && monitorCardInfo[i].SocketCableUInfo.IsUpdate) { GetSocketErrData(sn,monitorCardInfo[i].SocketCableUInfo.SocketCableInfoCollection, monitorCardInfo[i].DeviceRegInfo); } } FLogService.Info("EMailSendMonitorErrMsg" + "监控数据解析完成"); }