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;
using MECF.Framework.Common.CommonData;
namespace Aitex.Core.Common.DeviceData
{
[DataContract]
[Serializable]
public class AITValveData : NotifiableItem, IDeviceData
{
[DataMember]
public string UniqueName { get; set; }
[DataMember]
public string DeviceName { get; set; }
///
/// 显示在界面上的名称
///
[DataMember]
public string DisplayName { get; set; }
///
/// IO 表中定义的物理编号,物理追溯使用 比如: V122
///
[DataMember]
public string DeviceSchematicId { get; set; }
///
/// 当前设定值
///
[DataMember]
public bool SetPoint { get; set; }
///
/// 默认值
///
[DataMember]
public bool DefaultValue { get; set; }
///
/// 实际反馈值
///
[DataMember]
public bool Feedback { get; set; }
public bool IsOpen {
get { return Feedback; }
}
public AITValveData()
{
DisplayName = "未定义阀门";
}
public void Update(IDeviceData data)
{
AITValveData item = data as AITValveData;
if (item == null)
return;
this.DefaultValue = item.DefaultValue;
this.DeviceSchematicId = item.DeviceSchematicId;
this.DeviceName = item.DeviceName;
this.DisplayName = item.DisplayName;
this.Feedback = item.Feedback;
this.SetPoint = item.SetPoint;
InvokePropertyChanged();
}
}
public class AITValveOperation
{
public const string GVTurnValve = "GVTurnValve";
}
public class AITValveDataPropertyName
{
public const string Status = "Status";
public const string SetPoint = "SetPoint";
}
}