| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125 | using System;using System.Collections.Generic;using System.Collections.ObjectModel;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Xml;using Aitex.Common.Util;using Aitex.Core.RT.Event;using Aitex.Core.RT.Log;using Aitex.Core.RT.ParameterCenter;using Aitex.Core.RT.RecipeCenter;namespace MECF.Framework.Common.ParameterCenter{    public class DefaultParameterFileContext : IParameterFileContext    {        public string GetParameterDefiniton(string chamberType)        {            try            {                string parameterSchema = PathManager.GetCfgDir() + $@"\Parameter\{chamberType}\ParameterFormat.xml";                XmlDocument xmlDom = new XmlDocument();                xmlDom.Load(parameterSchema);                return xmlDom.OuterXml;            }            catch (Exception ex)            {                LOG.Write(ex);                return "";            }        }        public IEnumerable<string> GetParameters(string path, bool includingUsedParameter)        {            try            {                var parameters = new List<string>();                string parameterPath = PathManager.GetParameterDir() + path + "\\";                if (!Directory.Exists(parameterPath))                    return parameters;                var di = new DirectoryInfo(parameterPath);                var fis = di.GetFiles("*.rcp", SearchOption.AllDirectories);                foreach (var fi in fis)                {                    string str = fi.FullName.Substring(di.FullName.Length);                    str = str.Substring(0, str.LastIndexOf('.'));                    if (includingUsedParameter || (!includingUsedParameter && !str.Contains("HistoryParameter\\")))                    {                        parameters.Add(str);                    }                }                return parameters;            }            catch (Exception ex)            {                LOG.Write(ex);                return new List<string>();            }        }        public void PostInfoEvent(string message)        {            EV.PostMessage("System", EventEnum.GeneralInfo, message);        }        public void PostWarningEvent(string message)        {            EV.PostMessage("System", EventEnum.DefaultWarning, message);        }        public void PostAlarmEvent(string message)        {            EV.PostMessage("System", EventEnum.DefaultAlarm, message);        }        public void PostDialogEvent(string message)        {            EV.PostNotificationMessage(message);        }        public void PostInfoDialogMessage(string message)        {            EV.PostMessage("System", EventEnum.GeneralInfo, message);            EV.PostPopDialogMessage(EventLevel.Information, "System Information", message);        }        public void PostWarningDialogMessage(string message)        {            EV.PostMessage("System", EventEnum.GeneralInfo, message);            EV.PostPopDialogMessage(EventLevel.Warning, "System Warning", message);        }        public void PostAlarmDialogMessage(string message)        {            EV.PostMessage("System", EventEnum.GeneralInfo, message);            EV.PostPopDialogMessage(EventLevel.Alarm, "System Alarm", message);        }        public string GetParameterTemplate(string chamberId)        {            string schema = GetParameterDefiniton(chamberId);            XmlDocument dom = new XmlDocument();            dom.LoadXml(schema);            XmlNode nodeTemplate = dom.SelectSingleNode("/Aitex/TableParameterData");            return nodeTemplate.OuterXml;        }        public Dictionary<string, ObservableCollection<ParameterTemplateColumnBase>> GetGroupParameterTemplate()        {            string schema = GetParameterDefiniton("Developer");            XmlDocument dom = new XmlDocument();            dom.LoadXml(schema);            return null;        }    }}
 |