SicMultiplate/Modules/Mainframe/PMs/Utilities/XmlConfig.cs

38 lines
1.3 KiB
C#
Raw Normal View History

2023-04-13 15:35:13 +08:00
using System.Collections.Generic;
2023-03-28 13:24:11 +08:00
using System.Linq;
using System.Xml.Linq;
2023-04-13 15:35:13 +08:00
using Aitex.Common.Util;
2023-03-28 13:24:11 +08:00
2023-04-13 15:35:13 +08:00
namespace SicModules.PMs.Utilities
2023-03-28 13:24:11 +08:00
{
public static class XmlConfig
{
public static Dictionary<string, UnitAlarmItem> LoadUnitAlarmDefineConfig(string moduleName, string target)
{
var path = PathManager.GetCfgDir() + $"UnitAlarmDefine/{moduleName}UnitAlarmDefine.xml";
var spinUnitAlarmDic = new Dictionary<string, UnitAlarmItem>();
var doc = XDocument.Load(path);
var items = doc.Root.Elements();
if (items == null)
return null;
items.ToList().ForEach(x => spinUnitAlarmDic[$"{target}.{x.Attribute("DI").Value}"] = new UnitAlarmItem()
{
DI = x.Attribute("DI").Value,
ID = x.Attribute("ID").Value,
Description = x.Attribute("Description").Value,
GlobalDescription_en = x.Attribute("GlobalDescription_en").Value,
GlobalDescription_zh = x.Attribute("GlobalDescription_zh").Value,
Level = x.Attribute("Level").Value,
AlarmValue = x.Attribute("AlarmValue").Value == "1"?true:false,
});
return spinUnitAlarmDic;
}
}
}