| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155 | 
							- using System;
 
- using System.Collections.Generic;
 
- using System.ComponentModel;
 
- using System.Linq;
 
- using System.Reflection;
 
- using System.Runtime.Serialization;
 
- using System.Text;
 
- using System.Windows.Input;
 
- using Aitex.Core.UI.MVVM;
 
- namespace Aitex.Core.Common.DeviceData
 
- {
 
-     [DataContract]
 
-     [Serializable]
 
-     public class AITStatisticsData : INotifyPropertyChanged, IDeviceData
 
-     {
 
-         public event PropertyChangedEventHandler PropertyChanged;
 
-         public void InvokePropertyChanged(string propertyName)
 
-         {
 
-             if (PropertyChanged != null)
 
-             {
 
-                 PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
 
-             }
 
-         }
 
-         public void InvokePropertyChanged()
 
-         {
 
-             PropertyInfo[] ps = this.GetType().GetProperties();
 
-             foreach (PropertyInfo p in ps)
 
-             {
 
-                 InvokePropertyChanged(p.Name);
 
-                 if (p.PropertyType == typeof(ICommand))
 
-                 {
 
-                     DelegateCommand<string> cmd = p.GetValue(this, null) as DelegateCommand<string>;
 
-                     if (cmd != null)
 
-                         cmd.RaiseCanExecuteChanged();
 
-                 }
 
-             }
 
-             FieldInfo[] fi = this.GetType().GetFields();
 
-             foreach (FieldInfo p in fi)
 
-             {
 
-                 InvokePropertyChanged(p.Name);
 
-                 if (p.FieldType == typeof(ICommand))
 
-                 {
 
-                     DelegateCommand<string> cmd = p.GetValue(this) as DelegateCommand<string>;
 
-                     if (cmd != null)
 
-                         cmd.RaiseCanExecuteChanged();
 
-                 }
 
-             }
 
-         }
 
-         /// <summary>
 
-         /// 设备的唯一名称,UI与RT交互的ID
 
-         /// </summary>
 
-         [DataMember]
 
-         public string DeviceName
 
-         {
 
-             get;
 
-             set;
 
-         }
 
-         /// <summary>
 
-         /// 显示在界面上的名称
 
-         /// </summary>
 
-         [DataMember]
 
-         public string DisplayName
 
-         {
 
-             get;
 
-             set;
 
-         }
 
-         /// <summary>
 
-         /// IO 表中定义的物理编号,物理追溯使用 比如: M122
 
-         /// </summary>
 
-         [DataMember]
 
-         public string DeviceSchematicId
 
-         {
 
-             get;
 
-             set;
 
-         }
 
-         [DataMember]
 
-         public string Description
 
-         {
 
-             get;
 
-             set;
 
-         }
 
-         [DataMember]
 
-         public string LastPMTime
 
-         {
 
-             get;
 
-             set;
 
-         }
 
-         [DataMember]
 
-         public double TimeFromLastPM
 
-         {
 
-             get;
 
-             set;
 
-         }
 
-         [DataMember]
 
-         public double TimeTotal
 
-         {
 
-             get;
 
-             set;
 
-         }
 
-         
 
-         [DataMember]
 
-         public double PMInterval
 
-         {
 
-             get;
 
-             set;
 
-         }
 
-         public string TimeFromLastPMDisplay
 
-         {
 
-             get
 
-             {
 
-                 TimeSpan ts = TimeSpan.FromSeconds(TimeFromLastPM);
 
-                 return string.Format("{0} Days {1:D2}:{2:D2}:{3:D2}", ts.Days, ts.Hours, ts.Minutes, ts.Seconds);
 
-             }
 
-         }
 
-         public string TimeTotalDisplay
 
-         {
 
-             get
 
-             {
 
-                 TimeSpan ts = TimeSpan.FromSeconds(TimeTotal);
 
-                 return string.Format("{0} Days {1:D2}:{2:D2}:{3:D2}", ts.Days, ts.Hours, ts.Minutes, ts.Seconds);
 
-             }
 
-         }
 
-         public AITStatisticsData()
 
-         {
 
-             DisplayName = "Undefined";
 
-         }
 
-         public void Update(IDeviceData data)
 
-         {
 
-             throw new NotImplementedException();
 
-         }
 
-     }
 
-     public enum AITStatisticsOperation
 
-     {
 
-         Reset,
 
-     }
 
- }
 
 
  |