| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155 | 
							- using System.Collections.Generic;
 
- using System.Collections.ObjectModel;
 
- using System.IO;
 
- using System.Linq;
 
- using System.Xml;
 
- using Aitex.Common.Util;
 
- using Aitex.Core.RT.Event;
 
- using MECF.Framework.Common.DataCenter;
 
- using MECF.Framework.Common.Equipment;
 
- using MECF.Framework.Common.Jobs;
 
- using MECF.Framework.Common.RecipeCenter;
 
- using OpenSEMI.ClientBase;
 
- using OpenSEMI.ClientBase.ServiceProvider;
 
- using RecipeEditorLib.DGExtension.CustomColumn;
 
- namespace Venus_MainPages.Sequence
 
- {
 
-     public class SequenceDataProvider : IProvider
 
-     {
 
-         private IUiSequenceManager m_uiSequenceManager;
 
-         public SequenceDataProvider(IUiSequenceManager uiSequenceManager)
 
-         {
 
-             m_uiSequenceManager = uiSequenceManager;
 
-         }
 
-         public void Create()
 
-         {
 
-         }
 
-         public bool CreateSequenceFolder(string foldername)
 
-         {
 
-             return m_uiSequenceManager.CreateSequenceFolder(foldername);
 
-         }
 
-         public bool DeleteSequenceFolder(string foldername)
 
-         {
 
-             return m_uiSequenceManager.DeleteSequenceFolder(foldername);
 
-         }
 
-         public bool Save(SequenceData seq)
 
-         {
 
-             var path = GenerateSequenceFilePath("Sequence", seq.Name);
 
-             if (CheckSequenceUsedInJob(seq.Name))
 
-             {
 
-                 DialogBox.ShowDialog(DialogButton.OK, 0, "Sequence is used in auto running jobs, can not be modified");
 
-                 return false;
 
-             }
 
-             return m_uiSequenceManager.SaveSequence(seq.Name, seq.ToXml());
 
-         }
 
-         public List<string> GetSequences()
 
-         {
 
-             return m_uiSequenceManager.GetSequenceNameList();
 
-         }
 
-         public List<string> GetRecipes(ModuleName modulename)
 
-         {
 
-             return m_uiSequenceManager.GetRecipes(modulename, true).ToList();
 
-         }
 
-         public SequenceData GetSequenceByName(ObservableCollection<EditorDataGridTemplateColumnBase> _columns, string name)
 
-         {
 
-             string content = m_uiSequenceManager.GetSequence(name);
 
-             SequenceData seq = new SequenceData();
 
-             XmlDocument doc = new XmlDocument();
 
-             doc.LoadXml(content);
 
-             seq.Name = name;
 
-             seq.Load(_columns, doc);
 
-             return seq;
 
-         }
 
-         public bool Rename(string beforename, string currentname)
 
-         {
 
-             var path = GenerateSequenceFilePath("Sequence", currentname);
 
-             if (CheckSequenceUsedInJob(currentname))
 
-             {
 
-                 DialogBox.ShowDialog(DialogButton.OK, 0, "Sequence is used in auto running jobs, can not be modified");
 
-                 return false;
 
-             }
 
-             return m_uiSequenceManager.RenameSequence(beforename, currentname);
 
-         }
 
-         public bool Delete(string name)
 
-         {
 
-             var path = GenerateSequenceFilePath("Sequence", name);
 
-             if (CheckSequenceUsedInJob(name))
 
-             {
 
-                 DialogBox.ShowDialog(DialogButton.OK, 0, "Sequence is used in auto running jobs, can not be modified");
 
-                 return false;
 
-             }
 
-             return m_uiSequenceManager.DeleteSequence(name);
 
-         }
 
-         public bool SaveAs(string name, SequenceData seq)
 
-         {
 
-             var path = GenerateSequenceFilePath("Sequence", name);
 
-             if (CheckSequenceUsedInJob(name))
 
-             {
 
-                 DialogBox.ShowDialog(DialogButton.OK, 0, "Sequence is used in auto running jobs, can not be modified");
 
-                 return false;
 
-             }
 
-             return m_uiSequenceManager.SaveAsSequence(name, seq.ToXml());
 
-         }
 
-         public string GetSequenceFromXml()
 
-         {
 
-             string template = m_uiSequenceManager.GetSequenceFormatXml();
 
-             return template;
 
-         }
 
-         private string GenerateSequenceFilePath(string chamId, string recipeName)
 
-         {
 
-             return getRecipeDirPath(chamId) + recipeName + ".seq";
 
-         }
 
-         private string getRecipeDirPath(string chamId)
 
-         {
 
-             var dir = string.Format("{0}{1}\\", PathManager.GetRecipeDir(), chamId);
 
-             DirectoryInfo di = new DirectoryInfo(dir);
 
-             if (!di.Exists) di.Create();
 
-             return dir;
 
-         }
 
-         public bool CheckSequenceUsedInJob(string sequenceName)
 
-         {
 
-             List<ProcessJobInfo> ProcessList = (List<ProcessJobInfo>)QueryDataClient.Instance.Service.GetData("Scheduler.CurrentRecipeList");
 
-             if (ProcessList != null)
 
-             {
 
-                 foreach (var pj in ProcessList)
 
-                 {
 
-                     if (string.Equals(sequenceName, pj.Sequence.Name, System.StringComparison.OrdinalIgnoreCase))
 
-                         return true;
 
-                 }
 
-             }
 
-             return false;
 
-         }
 
-         public List<string> GetSequenceNameList()
 
-         {
 
-             return m_uiSequenceManager.GetSequenceNameList();
 
-         }
 
-         public List<string> GetRecipesByPath(string prefixPath)
 
-         {
 
-             return m_uiSequenceManager.GetRecipesByPath(prefixPath);
 
-         }
 
-     }
 
- }
 
 
  |