using Aitex.Core.Util; using MECF.Framework.Common.Equipment; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Xml; namespace MECF.Framework.Common.ToolLayout { public class RinseItemManager : Singleton { #region 常量 /// /// 前缀 /// private const string PREFIX = "Rinse"; #endregion #region 内部变量 /// /// 字典 /// private Dictionary _moduleItemDictionary = new Dictionary(); #endregion #region 属性 /// /// 已经安装模块 /// public List InstalledModules { get; private set; } = new List(); #endregion /// /// 初始化Rinse /// /// public void InitializeRinseItem(XmlElement rinseElement) { RinseItem rinseItem = new RinseItem(); rinseItem.CellType = "Cell"; LayoutCellItemManager.Instance.InitializeLayoutCellItem(rinseItem, rinseElement); rinseItem.RinseID = int.Parse(rinseElement.SelectSingleNode("RinseID").InnerText); rinseItem.ResistivityID = rinseElement.SelectSingleNode("ResistivityID").InnerText; string key = $"{PREFIX}{rinseItem.RinseID}"; if(rinseItem.Installed && !InstalledModules.Contains(key)) { InstalledModules.Add(key); } rinseItem.ModuleName = key; rinseItem.ModuleType = ModuleType.Rinse.ToString(); _moduleItemDictionary[key] = rinseItem; CellItemManager.Instance.InitialLayoutCellItem(rinseItem); } /// /// 获取rinse项 /// /// /// public RinseItem GetRinseItem(string moduleName) { return _moduleItemDictionary.ContainsKey(moduleName) ? _moduleItemDictionary[moduleName]:null; } } }