using MvvmScaffoldFrame48.DLL.AuditTrail; using MvvmScaffoldFrame48.Model.StorageModel.SystemAlarm; using System; using System.Collections.Generic; using System.Linq; namespace MvvmScaffoldFrame48.DLL.AlarmTools { public static class SystemAlarm { private static ErrorMessageRecordManagement errorMessageRecord = new ErrorMessageRecordManagement(); private static List AlarmMessList = new List() { new AlarmMessModel() { ID = (int)AlarmMessageList.系统异常, AlarmType = "SystemException", AlarmMess = "系统异常", IsAlarm =false }, }; /// /// 开启指定警告 /// /// public static void AlarmAlert(AlarmMessageList ID,string AlarmPath) { var alarm = AlarmMessList.Find(x => x.ID == (int)ID); if (alarm.IsAlarm) { return; } else { errorMessageRecord.InsertErrorMessageRecord(new Model.StorageModel.AuditTrail.ErrorMessageRecordModel() { Category = "SystemAlarm", Message = alarm.AlarmMess, MessageType = alarm.AlarmType, MessagePath = AlarmPath, userID = 0, LogLevel = 0, DateTime = DateTime.Now, }); var ChanegAlarm = AlarmMessList.Find(x => x.ID == (int)ID); ChanegAlarm.IsAlarm = true; ChanegAlarm.AlarmDateTime = DateTime.Now; ChanegAlarm.AlarmPath = AlarmPath; } } /// /// 关闭指定警告 /// public static void AlarmCancel(AlarmMessageList ID) { AlarmMessList.Find(x => x.ID == (int)ID).IsAlarm = false; } /// /// 获取所有警告 /// public static List GetAllAlarm() { return AlarmMessList; } /// /// 获取所有已触发警告 /// public static List GetAlarm() { return AlarmMessList.Where(x => x.IsAlarm == true).ToList(); } } }