public void TryAddNewAlarmCode(int alarmCodeID, string alarmText, EnumAlarmLevel level, string description) { Alarm newAlarm = new Alarm(); newAlarm.Id = alarmCodeID; newAlarm.AlarmText = alarmText; newAlarm.Level = level; newAlarm.Description = description; if (!AllAlarms.ContainsKey(newAlarm.Id)) { AllAlarms.Add(newAlarm.Id, newAlarm); } }
/// <summary> /// 生成告警描述部分 /// </summary> /// <param name="alarmSerialNum"></param> /// <param name="Name"></param> /// <param name="dtAlarmtimeStart"></param> /// <param name="ID"></param> /// <param name="enumalarmlevel"></param> /// <param name="arlarmNum"></param> /// <param name="alarmflagDes"></param> /// <param name="dtalarmflagtime"></param> /// <param name="alarmDes"></param> /// <returns></returns> public bool AlarmDesGen(int alarmSerialNum, string Name, DateTime dtAlarmtimeStart, int ID, EnumAlarmLevel enumalarmlevel, int arlarmNum, EnumAlarmflagDes alarmflagDes, DateTime dtalarmflagtime, string alarmDes, ref byte[] bres) { string nouse = " "; string tap = " "; bool bflag = false; //if (bres.Length != EVENT_LENGTH) return bflag; bres = new byte[EVENT_LENGTH]; try { string salarmSerialNum = alarmSerialNum.ToString(); if (salarmSerialNum.Length > 6) { return(bflag); } salarmSerialNum = salarmSerialNum.PadLeft(6, '0'); string sName = StringLengthConfirm(Name, 42); string sAlarmtimeStart = dtAlarmtimeStart.ToString("yyyy-MM-dd HH:mm:ss"); string sid = GetAlarmID(ID); string sAlarmlevel = ""; switch (enumalarmlevel) { case EnumAlarmLevel.FATAL: sAlarmlevel = "紧急"; break; case EnumAlarmLevel.MAIN: sAlarmlevel = "重要"; break; case EnumAlarmLevel.NORMAL: sAlarmlevel = "一般"; break; default: return(bflag); } string sarlarmNum = arlarmNum.ToString(); if (sarlarmNum.Length > 6) { return(bflag); } sarlarmNum = sarlarmNum.PadLeft(6, '0'); string salarmflagDes = ""; switch (alarmflagDes) { case EnumAlarmflagDes.START: salarmflagDes = "开始"; break; case EnumAlarmflagDes.OVER: salarmflagDes = "结束"; break; case EnumAlarmflagDes.CONFIRM: salarmflagDes = "确认"; break; case EnumAlarmflagDes.CLEAR: salarmflagDes = "清除"; break; default: return(bflag); } string sdtalarmflagtime = nouse; if (dtalarmflagtime != null) { sdtalarmflagtime = dtalarmflagtime.ToString("yyyy-MM-dd HH:mm:ss"); } alarmDes = "值=" + alarmDes; string salarmDes = StringLengthConfirm(alarmDes, 32); string res = "[" + salarmSerialNum + tap + sName + tap + sAlarmtimeStart + tap + sid + tap + sAlarmlevel + tap + sarlarmNum + tap + salarmflagDes + tap + sdtalarmflagtime + tap + salarmDes + "]"; res = StringLengthConfirm(res, 160); bres = System.Text.Encoding.Default.GetBytes(res); bflag = true; } catch (Exception) { } return(bflag); }