| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340 | using System.Windows;using System.Windows.Controls;using Aitex.Core.Util;using Aitex.Sorter.Common;using Aitex.Sorter.UI.ViewModel;using EfemUI.Controls;namespace EfemUI.Views{    public partial class E84View2LP : UserControl    {        public E84ViewModel _e84ViewModel;        public E84View2LP()        {            InitializeComponent();            _e84ViewModel = new E84ViewModel();            DataContext = _e84ViewModel;            IsVisibleChanged += E84View_IsVisibleChanged;        }        private void E84View_IsVisibleChanged(object sender, DependencyPropertyChangedEventArgs e)        {            (DataContext as E84ViewModel)?.EnableTimer(IsVisible);        }    }    public class E84ViewModel2LP : UIViewModelBase    {        public E84ViewModel2LP() : base("E84ViewModel")        {            E84InfoDataLp1 = new E84InfoData();            E84InfoDataLp2 = new E84InfoData();        }        public E84InfoData E84InfoDataLp1 { get; set; }        public E84InfoData E84InfoDataLp2 { get; set; }        [Subscription("IsPresent", "LP1")]        public bool PodPresentLp1        {            get => E84InfoDataLp1.PodPresent;            set => E84InfoDataLp1.PodPresent = value;        }        [Subscription(ParamName.IsPresent, "LP2")]        public bool PodPresentLp2        {            get => E84InfoDataLp2.PodPresent;            set => E84InfoDataLp2.PodPresent = value;        }                [Subscription(ParamName.IsPlaced, "LP1")]        public bool PodPlacedLp1        {            get => E84InfoDataLp1.PodPlaced;            set => E84InfoDataLp1.PodPlaced = value;        }        [Subscription(ParamName.IsPlaced, "LP2")]        public bool PodPlacedLp2        {            get => E84InfoDataLp2.PodPlaced;            set => E84InfoDataLp2.PodPlaced = value;        }               [Subscription(ParamName.IsClamped, "LP1")]        public bool PodLatchedLp1        {            get => E84InfoDataLp1.PodLatched;            set => E84InfoDataLp1.PodLatched = value;        }        [Subscription(ParamName.IsClamped, "LP2")]        public bool PodLatchedLp2        {            get => E84InfoDataLp2.PodLatched;            set => E84InfoDataLp2.PodLatched = value;        }                [Subscription(ParamName.IsDocked, "LP1")]        public bool PodDockedLp1        {            get => E84InfoDataLp1.PodDocked;            set => E84InfoDataLp1.PodDocked = value;        }        [Subscription(ParamName.IsDocked, "LP2")]        public bool PodDockedLp2        {            get => E84InfoDataLp2.PodDocked;            set => E84InfoDataLp2.PodDocked = value;        }                [Subscription(ParamName.LoadportState, "LP1")]        public string LoadPortStateLp1        {            get => E84InfoDataLp1.LoadPortState;            set => E84InfoDataLp1.LoadPortState = value;        }        [Subscription(ParamName.LoadportState, "LP2")]        public string LoadPortStateLp2        {            get => E84InfoDataLp2.LoadPortState;            set => E84InfoDataLp2.LoadPortState = value;        }                [Subscription("TransferState", "LP1")]        public string PortStateLp1        {            get => E84InfoDataLp1.PortState;            set => E84InfoDataLp1.PortState = value;        }        [Subscription("TransferState", "LP2")]        public string PortStateLp2        {            get => E84InfoDataLp2.PortState;            set => E84InfoDataLp2.PortState = value;        }                [Subscription(ParamName.CarrierId, DeviceName.LP1)]        public string CarrierIdLp1        {            get => E84InfoDataLp1.CarrierID;            set => E84InfoDataLp1.CarrierID = value;        }        [Subscription(ParamName.CarrierId, DeviceName.LP2)]        public string CarrierIdLp2        {            get => E84InfoDataLp2.CarrierID;            set => E84InfoDataLp2.CarrierID = value;        }        [Subscription(ParamName.SlotMap, DeviceName.LP1)]        public string SlotMapLp1        {            get => E84InfoDataLp1.SlotMap;            set => E84InfoDataLp1.SlotMap = value;        }        [Subscription(ParamName.SlotMap, DeviceName.LP2)]        public string SlotMapLp2        {            get => E84InfoDataLp2.SlotMap;            set => E84InfoDataLp2.SlotMap = value;        }                [Subscription("Valid", DeviceName.LP1)]        public bool ValidLp1        {            get => E84InfoDataLp1.Valid;            set => E84InfoDataLp1.Valid = value;        }        [Subscription("Valid", DeviceName.LP2)]        public bool ValidLp2        {            get => E84InfoDataLp2.Valid;            set => E84InfoDataLp2.Valid = value;        }                [Subscription("TransferRequest", DeviceName.LP1)]        public bool TransferRequestLp1        {            get => E84InfoDataLp1.TransferRequest;            set => E84InfoDataLp1.TransferRequest = value;        }        [Subscription("TransferRequest", DeviceName.LP2)]        public bool TransferRequestLp2        {            get => E84InfoDataLp2.TransferRequest;            set => E84InfoDataLp2.TransferRequest = value;        }        [Subscription("Busy", DeviceName.LP1)]        public bool BusyLp1        {            get => E84InfoDataLp1.Busy;            set => E84InfoDataLp1.Busy = value;        }        [Subscription("Busy", DeviceName.LP2)]        public bool BusyLp2        {            get => E84InfoDataLp2.Busy;            set => E84InfoDataLp2.Busy = value;        }        [Subscription("TransferComplete", DeviceName.LP1)]        public bool TransferCompleteLp1        {            get => E84InfoDataLp1.TransferComplete;            set => E84InfoDataLp1.TransferComplete = value;        }        [Subscription("TransferComplete", DeviceName.LP2)]        public bool TransferCompleteLp2        {            get => E84InfoDataLp2.TransferComplete;            set => E84InfoDataLp2.TransferComplete = value;        }                [Subscription("CS0", DeviceName.LP1)]        public bool CS0Lp1        {            get => E84InfoDataLp1.CS0;            set => E84InfoDataLp1.CS0 = value;        }        [Subscription("CS0", DeviceName.LP2)]        public bool CS0Lp2        {            get => E84InfoDataLp2.CS0;            set => E84InfoDataLp2.CS0 = value;        }                [Subscription("CS1", DeviceName.LP1)]        public bool CS1Lp1        {            get => E84InfoDataLp1.CS1;            set => E84InfoDataLp1.CS1 = value;        }        [Subscription("CS1", DeviceName.LP2)]        public bool CS1Lp2        {            get => E84InfoDataLp2.CS1;            set => E84InfoDataLp2.CS1 = value;        }                [Subscription("CONT", DeviceName.LP1)]        public bool ContinuousTransferLp1        {            get => E84InfoDataLp1.ContinuousTransfer;            set => E84InfoDataLp1.ContinuousTransfer = value;        }        [Subscription("CONT", DeviceName.LP2)]        public bool ContinuousTransferLp2        {            get => E84InfoDataLp2.ContinuousTransfer;            set => E84InfoDataLp2.ContinuousTransfer = value;        }                [Subscription("LoadRequest", DeviceName.LP1)]        public bool LoadRequestLp1        {            get => E84InfoDataLp1.LoadRequest;            set => E84InfoDataLp1.LoadRequest = value;        }        [Subscription("LoadRequest", DeviceName.LP2)]        public bool LoadRequestLp2        {            get => E84InfoDataLp2.LoadRequest;            set => E84InfoDataLp2.LoadRequest = value;        }                [Subscription("UnloadRequest", DeviceName.LP1)]        public bool UnloadRequestLp1        {            get => E84InfoDataLp1.UnloadRequest;            set => E84InfoDataLp1.UnloadRequest = value;        }        [Subscription("UnloadRequest", DeviceName.LP2)]        public bool UnloadRequestLp2        {            get => E84InfoDataLp2.UnloadRequest;            set => E84InfoDataLp2.UnloadRequest = value;        }        [Subscription("ReadyToTransfer", DeviceName.LP1)]        public bool ReadyToTransferLp1        {            get => E84InfoDataLp1.ReadyToTransfer;            set => E84InfoDataLp1.ReadyToTransfer = value;        }        [Subscription("ReadyToTransfer", DeviceName.LP2)]        public bool ReadyToTransferLp2        {            get => E84InfoDataLp2.ReadyToTransfer;            set => E84InfoDataLp2.ReadyToTransfer = value;        }                [Subscription("HandoffAvailable", DeviceName.LP1)]        public bool HandoffAvailableLp1        {            get => E84InfoDataLp1.HandoffAvailable;            set => E84InfoDataLp1.HandoffAvailable = value;        }        [Subscription("HandoffAvailable", DeviceName.LP2)]        public bool HandoffAvailableLp2        {            get => E84InfoDataLp2.HandoffAvailable;            set => E84InfoDataLp2.HandoffAvailable = value;        }                [Subscription("ES", DeviceName.LP1)]        public bool EmergencyOkLp1        {            get => E84InfoDataLp1.EmergencyOk;            set => E84InfoDataLp1.EmergencyOk = value;        }        [Subscription("ES", DeviceName.LP2)]        public bool EmergencyOkLp2        {            get => E84InfoDataLp2.EmergencyOk;            set => E84InfoDataLp2.EmergencyOk = value;        }                [Subscription("E84State", "LP1")]        public string E84StateLp1        {            get => E84InfoDataLp1.E84State;            set => E84InfoDataLp1.E84State = value;        }        [Subscription("E84State", "LP2")]        public string E84StateLp2        {            get => E84InfoDataLp2.E84State;            set => E84InfoDataLp2.E84State = value;        }            }}
 |