| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212 | 
							- using Aitex.Core.UI.View.Common;
 
- using MECF.Framework.Common.ControlDataContext;
 
- using MECF.Framework.Common.DataCenter;
 
- using MECF.Framework.Common.Equipment;
 
- using Prism.Commands;
 
- using Prism.Mvvm;
 
- using System;
 
- using System.Collections.Generic;
 
- using System.ComponentModel;
 
- using System.Linq;
 
- using System.Text;
 
- using System.Threading.Tasks;
 
- using Venus_MainPages.Views;
 
- namespace Venus_MainPages.ViewModels
 
- {
 
-     public class WaferOffsetViewModel : BindableBase
 
-     {
 
-         #region 私有变量
 
-         private DateTime m_fromdateTime;//开始时间
 
-         private DateTime m_todateTime;//结束时间
 
-         private bool m_PMAIsInstalled;//模块安装用于show
 
-         private bool m_PMBIsInstalled;//模块安装用于show
 
-         private bool m_PMCIsInstalled;//模块安装用于show
 
-         private bool m_PMDIsInstalled;//模块安装用于show
 
-         private bool m_LLAIsInstalled;//模块安装用于show
 
-         private bool m_LLBIsInstalled;//模块安装用于show
 
-         private List<AwcModule> m_AwcModulesList;
 
-         private WaferOffsetView m_waferoffset;
 
-         private DelegateCommand<object> _LoadCommandPD;
 
-         #endregion
 
-         #region 公开变量
 
-         public bool PMAIsInstalled
 
-         {
 
-             get { return m_PMAIsInstalled; }
 
-             set { SetProperty(ref m_PMAIsInstalled, value); }
 
-         }
 
-         public bool PMBIsInstalled
 
-         {
 
-             get { return m_PMBIsInstalled; }
 
-             set { SetProperty(ref m_PMBIsInstalled, value); }
 
-         }
 
-         public bool PMCIsInstalled
 
-         {
 
-             get { return m_PMCIsInstalled; }
 
-             set { SetProperty(ref m_PMCIsInstalled, value); }
 
-         }
 
-         public bool PMDIsInstalled
 
-         {
 
-             get { return m_PMDIsInstalled; }
 
-             set { SetProperty(ref m_PMDIsInstalled, value); }
 
-         }
 
-         public bool LLAIsInstalled
 
-         {
 
-             get { return m_LLAIsInstalled; }
 
-             set { SetProperty(ref m_LLAIsInstalled, value); }
 
-         }
 
-         public bool LLBIsInstalled
 
-         {
 
-             get { return m_LLBIsInstalled; }
 
-             set { SetProperty(ref m_LLBIsInstalled, value); }
 
-         }
 
-         public DateTime FromDateTime 
 
-         { 
 
-             get => m_fromdateTime; 
 
-             set 
 
-             { 
 
-                 SetProperty(ref m_fromdateTime, value);
 
-             } 
 
-         }
 
-         public DateTime ToDateTime
 
-         {
 
-             get => m_todateTime;
 
-             set
 
-             {
 
-                 SetProperty(ref m_todateTime, value);
 
-             }
 
-         }
 
-         public List<AwcModule> AwcModulesList
 
-         {
 
-             get { return m_AwcModulesList; }
 
-             set { SetProperty(ref m_AwcModulesList, value); }
 
-         }
 
-         public DelegateCommand<object> LoadCommandPD =>
 
-             _LoadCommandPD ?? (_LoadCommandPD = new DelegateCommand<object>(OnLoadPd));
 
-         #endregion
 
-         #region 私有方法
 
-         private void OnLoadPd(object obj)
 
-         {
 
-             m_waferoffset = (WaferOffsetView)obj; 
 
-             m_waferoffset.TimeFrom.ValueChanged += TimeFrom_ValueChanged;
 
-             m_waferoffset.TimeTo.ValueChanged += TimeFrom_ValueChanged;
 
-             m_waferoffset.TimeFrom.Value = DateTime.Today;
 
-             m_waferoffset.TimeTo.Value = new DateTime(DateTime.Today.Year, DateTime.Today.Month, DateTime.Today.Day, 23, 59, 59, 999);
 
-         }
 
-         private void TimeFrom_ValueChanged(object sender, EventArgs e)
 
-         {
 
-             if (AwcModulesList.Count > 0)
 
-             {
 
-                 for (int i = 0; i < AwcModulesList.Count; i++)
 
-                 {
 
-                     AwcModulesList[i].From_date = m_waferoffset.TimeFrom.Value;
 
-                     AwcModulesList[i].End_date = m_waferoffset.TimeTo.Value;
 
-                 }
 
-             }
 
-         }
 
-         #endregion
 
-         //public ObservableCollection<> 
 
-         public WaferOffsetViewModel()
 
-         {
 
-             string allModules = QueryDataClient.Instance.Service.GetConfig($"System.InstalledModules").ToString();
 
-             AwcModulesList = new List<AwcModule>();
 
-             if (allModules.Contains("PMA"))
 
-                 AwcModulesList.Add(new AwcModule() { Module_Name = ModuleName.PMA.ToString(), From_date = FromDateTime, End_date = ToDateTime, OffsetItems = new List<OffsetItem>() });
 
-             if (allModules.Contains("PMB"))
 
-                 AwcModulesList.Add(new AwcModule() { Module_Name = ModuleName.PMB.ToString(), From_date = FromDateTime, End_date = ToDateTime, OffsetItems = new List<OffsetItem>() });
 
-             if (allModules.Contains("PMC"))
 
-                 AwcModulesList.Add(new AwcModule() { Module_Name = ModuleName.PMC.ToString(), From_date = FromDateTime, End_date = ToDateTime, OffsetItems = new List<OffsetItem>() });
 
-             if (allModules.Contains("PMD"))
 
-                 AwcModulesList.Add(new AwcModule() { Module_Name = ModuleName.PMD.ToString(), From_date = FromDateTime, End_date = ToDateTime, OffsetItems = new List<OffsetItem>() });
 
-             if (allModules.Contains("LLA"))
 
-                 AwcModulesList.Add(new AwcModule() { Module_Name = ModuleName.LLA.ToString(), From_date = FromDateTime, End_date = ToDateTime, OffsetItems = new List<OffsetItem>() });
 
-             if (allModules.Contains("LLB"))
 
-                 AwcModulesList.Add(new AwcModule() { Module_Name = ModuleName.LLB.ToString(), From_date = FromDateTime, End_date = ToDateTime, OffsetItems = new List<OffsetItem>() });
 
-             }
 
-     }
 
-     //用于散点展示的数据结构
 
-     public class AwcModule : INotifyPropertyChanged
 
-     {
 
-         public event PropertyChangedEventHandler PropertyChanged;
 
-         public void InvokePropertyChanged(string propertyName)
 
-         {
 
-             if (PropertyChanged != null)
 
-             {
 
-                 PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
 
-             }
 
-         }
 
-         private string _modulename;
 
-         private DelegateCommand _GetDataCommand;
 
-         private DelegateCommand _RemoveDataCommand;
 
-         private List<OffsetItem> _OffsetItems;
 
-         private DateTime _From_date;
 
-         private DateTime _End_date;
 
-         private List<(double x, double y, int arm, string info)> _PositionInfo;
 
-         public string Module_Name { get => _modulename; set { _modulename = value; InvokePropertyChanged("Module_Name"); } }
 
-         public DateTime From_date { get => _From_date; set { _From_date = value; InvokePropertyChanged("From_date"); } }
 
-         public DateTime End_date { get => _End_date; set { _End_date = value; InvokePropertyChanged("End_date"); } }
 
-         public List<OffsetItem> OffsetItems { get => _OffsetItems; set { _OffsetItems = value; InvokePropertyChanged("OffsetItems"); } }
 
-         public List<(double x, double y, int arm, string info)> PositionInfo
 
-         {
 
-             get => _PositionInfo;
 
-             set
 
-             {
 
-                 _PositionInfo = value;
 
-                 InvokePropertyChanged("PositionInfo");
 
-             }
 
-         }
 
-         public DelegateCommand GetDataCommand =>
 
-             _GetDataCommand ?? (_GetDataCommand = new DelegateCommand(getdata));
 
-         public DelegateCommand RemoveDataCommand =>
 
-             _RemoveDataCommand ?? (_RemoveDataCommand = new DelegateCommand(() => PositionInfo = new List<(double x, double y, int arm, string info)>()));
 
-         private void getdata()
 
-         {
 
-             OffsetItems = QueryDataClient.Instance.Service.QueryOffsetDataByTime(Module_Name, From_date, End_date);
 
-             List<(double x, double y, int arm, string info)> posInfo = new List<(double x, double y, int arm, string info)>();
 
-             foreach (OffsetItem item in OffsetItems)
 
-             {
 
-                 int armPt;
 
-                 if (item.ArmPosition == "Blade1")
 
-                     armPt = 1;
 
-                 else
 
-                     armPt = 0;
 
-                 string content = string.Format(
 
-                     $"OriginModule:{item.OriginModule}\r\n" +
 
-                     $"OriginSlot:{item.OriginSlot}\r\n" +
 
-                     $"SourceModule:{item.SourceModule}\r\n" +
 
-                     $"SourceSlot:{item.SourceSlot}\r\n" +
 
-                     $"DestinationModule:{item.DestinationModule}\r\n" +
 
-                     $"DestinationSlot:{item.DestinationSlot}\r\n" +
 
-                     $"ArmPosition:{item.ArmPosition}\r\n" +
 
-                     $"ArmPan:{item.ArmPan}\r\n" +
 
-                     $"OffsetX:{item.OffsetX}\r\n" +
 
-                     $"OffsetY:{item.OffsetY}\r\n" +
 
-                     $"OffsetD:{item.OffsetD}\r\n" +
 
-                     $"StartTime:{item.StartTime}\r\n" +
 
-                     $"EndTime:{item.EndTime}\r\n"
 
-                     );
 
-                 posInfo.Add((item.OffsetX, item.OffsetY, armPt, content));
 
-             }
 
-             PositionInfo = posInfo;
 
-         }
 
-     }
 
- }
 
 
  |