| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 | 
							- using Aitex.Common.Util;
 
- using Aitex.Core.RT.Event;
 
- using Aitex.Core.RT.Log;
 
- using Aitex.Core.Util;
 
- using System;
 
- using System.Collections.Generic;
 
- using System.Globalization;
 
- using System.Linq;
 
- using System.Text;
 
- using System.Threading.Tasks;
 
- using System.Xml;
 
- namespace MECF.Framework.Common.Alarms
 
- {
 
-     class AlarmDefineFileContext : IAlarmDefineService
 
-     {
 
-         public Dictionary<string, Dictionary<string, EventItem>> GetAlarmDefineTemplate()
 
-         {
 
-             Dictionary<string, Dictionary<string, EventItem>> result = new Dictionary<string, Dictionary<string, EventItem>>();
 
-             foreach (var key in Singleton<EventManager>.Instance.AlarmDic.Keys)
 
-             {
 
-                 Dictionary<string, EventItem> temp = new Dictionary<string, EventItem>();
 
-                 foreach (var name in Singleton<EventManager>.Instance.AlarmDic[key].Keys)
 
-                 {
 
-                     var item = Singleton<EventManager>.Instance.AlarmDic[key][name].Clone();
 
-                     temp[name] = item;
 
-                 }
 
-                 result[key] = temp;
 
-             }
 
-             return result;
 
-         }
 
-         public Dictionary<int, AlarmDefine> GetAlarmDefine()
 
-         {
 
-             string recipeSchema = PathManager.GetCfgDir() + @"\AlarmDefine.xml";
 
-             XmlDocument xmlDom = new XmlDocument();
 
-             xmlDom.Load(recipeSchema);
 
-             XmlNodeList AlarmGroup = xmlDom.SelectNodes($"Alarms/AlarmGroup");
 
-             Dictionary<int, AlarmDefine> alarmList = new Dictionary<int, AlarmDefine>();
 
-             foreach (XmlNode item in AlarmGroup)
 
-             {
 
-                 foreach (XmlNode alarm in item.ChildNodes)
 
-                 {
 
-                     if (alarm != null)
 
-                     {
 
-                         AlarmDefine alarmDefine = CreateAlarmDefine(alarm);
 
-                         if (alarmDefine != null)
 
-                         {
 
-                             try
 
-                             {
 
-                                 alarmList.Add(alarmDefine.Number, alarmDefine);
 
-                             }
 
-                             catch (Exception ex)
 
-                             {
 
-                                 LOG.Write($"Alarm mumber={alarmDefine.Number} {ex}");
 
-                             }
 
-                         }
 
-                     }
 
-                 }
 
-             }
 
-             return alarmList;
 
-         }
 
-         private AlarmDefine CreateAlarmDefine(XmlNode alarm)
 
-         {
 
-             AlarmDefine alarmDefine = new AlarmDefine();
 
-             if (alarm != null && alarm.Attributes != null)
 
-             {
 
-                 if (alarm.Attributes["Number"] != null)
 
-                 {
 
-                     if(alarm.Attributes["Number"].Value.ToLower().Contains("0x"))
 
-                     {
 
-                         alarmDefine.Number = int.Parse(alarm.Attributes["Number"].Value.Substring(2), NumberStyles.HexNumber);
 
-                     }
 
-                     else
 
-                     {
 
-                         alarmDefine.Number = int.Parse(alarm.Attributes["Number"].Value, NumberStyles.Integer);
 
-                     }
 
-                 }
 
-                 if (alarm.Attributes["Message"] != null)
 
-                     alarmDefine.Message = alarm.Attributes["Message"].Value;
 
-                 if (alarm.Attributes["Action"] != null)
 
-                     alarmDefine.Action = alarm.Attributes["Action"].Value;
 
-                 if (alarm.Attributes["Recovery"] != null)
 
-                     alarmDefine.Recovery = alarm.Attributes["Recovery"].Value;
 
-                 if (alarm.Attributes["Cause"] != null)
 
-                     alarmDefine.Cause = alarm.Attributes["Cause"].Value;
 
-                 return alarmDefine;
 
-             }
 
-             return null;
 
-         }
 
-         public string GetStringAlarmDefineTemplate()
 
-         {
 
-             try
 
-             {
 
-                 string recipeSchema = PathManager.GetCfgDir() + @"\AlarmDefine.xml";
 
-                 XmlDocument xmlDom = new XmlDocument();
 
-                 xmlDom.Load(recipeSchema);
 
-                 return xmlDom.OuterXml;
 
-             }
 
-             catch (Exception ex)
 
-             {
 
-                 LOG.Write(ex);
 
-                 return "";
 
-             }
 
-         }
 
-     }
 
- }
 
 
  |