E84View2LP.xaml.cs 9.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340
  1. using System.Windows;
  2. using System.Windows.Controls;
  3. using Aitex.Core.Util;
  4. using Aitex.Sorter.Common;
  5. using Aitex.Sorter.UI.ViewModel;
  6. using EfemUI.Controls;
  7. namespace EfemUI.Views
  8. {
  9. public partial class E84View2LP : UserControl
  10. {
  11. public E84ViewModel _e84ViewModel;
  12. public E84View2LP()
  13. {
  14. InitializeComponent();
  15. _e84ViewModel = new E84ViewModel();
  16. DataContext = _e84ViewModel;
  17. IsVisibleChanged += E84View_IsVisibleChanged;
  18. }
  19. private void E84View_IsVisibleChanged(object sender, DependencyPropertyChangedEventArgs e)
  20. {
  21. (DataContext as E84ViewModel)?.EnableTimer(IsVisible);
  22. }
  23. }
  24. public class E84ViewModel2LP : UIViewModelBase
  25. {
  26. public E84ViewModel2LP() : base("E84ViewModel")
  27. {
  28. E84InfoDataLp1 = new E84InfoData();
  29. E84InfoDataLp2 = new E84InfoData();
  30. }
  31. public E84InfoData E84InfoDataLp1 { get; set; }
  32. public E84InfoData E84InfoDataLp2 { get; set; }
  33. [Subscription("IsPresent", "LP1")]
  34. public bool PodPresentLp1
  35. {
  36. get => E84InfoDataLp1.PodPresent;
  37. set => E84InfoDataLp1.PodPresent = value;
  38. }
  39. [Subscription(ParamName.IsPresent, "LP2")]
  40. public bool PodPresentLp2
  41. {
  42. get => E84InfoDataLp2.PodPresent;
  43. set => E84InfoDataLp2.PodPresent = value;
  44. }
  45. [Subscription(ParamName.IsPlaced, "LP1")]
  46. public bool PodPlacedLp1
  47. {
  48. get => E84InfoDataLp1.PodPlaced;
  49. set => E84InfoDataLp1.PodPlaced = value;
  50. }
  51. [Subscription(ParamName.IsPlaced, "LP2")]
  52. public bool PodPlacedLp2
  53. {
  54. get => E84InfoDataLp2.PodPlaced;
  55. set => E84InfoDataLp2.PodPlaced = value;
  56. }
  57. [Subscription(ParamName.IsClamped, "LP1")]
  58. public bool PodLatchedLp1
  59. {
  60. get => E84InfoDataLp1.PodLatched;
  61. set => E84InfoDataLp1.PodLatched = value;
  62. }
  63. [Subscription(ParamName.IsClamped, "LP2")]
  64. public bool PodLatchedLp2
  65. {
  66. get => E84InfoDataLp2.PodLatched;
  67. set => E84InfoDataLp2.PodLatched = value;
  68. }
  69. [Subscription(ParamName.IsDocked, "LP1")]
  70. public bool PodDockedLp1
  71. {
  72. get => E84InfoDataLp1.PodDocked;
  73. set => E84InfoDataLp1.PodDocked = value;
  74. }
  75. [Subscription(ParamName.IsDocked, "LP2")]
  76. public bool PodDockedLp2
  77. {
  78. get => E84InfoDataLp2.PodDocked;
  79. set => E84InfoDataLp2.PodDocked = value;
  80. }
  81. [Subscription(ParamName.LoadportState, "LP1")]
  82. public string LoadPortStateLp1
  83. {
  84. get => E84InfoDataLp1.LoadPortState;
  85. set => E84InfoDataLp1.LoadPortState = value;
  86. }
  87. [Subscription(ParamName.LoadportState, "LP2")]
  88. public string LoadPortStateLp2
  89. {
  90. get => E84InfoDataLp2.LoadPortState;
  91. set => E84InfoDataLp2.LoadPortState = value;
  92. }
  93. [Subscription("TransferState", "LP1")]
  94. public string PortStateLp1
  95. {
  96. get => E84InfoDataLp1.PortState;
  97. set => E84InfoDataLp1.PortState = value;
  98. }
  99. [Subscription("TransferState", "LP2")]
  100. public string PortStateLp2
  101. {
  102. get => E84InfoDataLp2.PortState;
  103. set => E84InfoDataLp2.PortState = value;
  104. }
  105. [Subscription(ParamName.CarrierId, DeviceName.LP1)]
  106. public string CarrierIdLp1
  107. {
  108. get => E84InfoDataLp1.CarrierID;
  109. set => E84InfoDataLp1.CarrierID = value;
  110. }
  111. [Subscription(ParamName.CarrierId, DeviceName.LP2)]
  112. public string CarrierIdLp2
  113. {
  114. get => E84InfoDataLp2.CarrierID;
  115. set => E84InfoDataLp2.CarrierID = value;
  116. }
  117. [Subscription(ParamName.SlotMap, DeviceName.LP1)]
  118. public string SlotMapLp1
  119. {
  120. get => E84InfoDataLp1.SlotMap;
  121. set => E84InfoDataLp1.SlotMap = value;
  122. }
  123. [Subscription(ParamName.SlotMap, DeviceName.LP2)]
  124. public string SlotMapLp2
  125. {
  126. get => E84InfoDataLp2.SlotMap;
  127. set => E84InfoDataLp2.SlotMap = value;
  128. }
  129. [Subscription("Valid", DeviceName.LP1)]
  130. public bool ValidLp1
  131. {
  132. get => E84InfoDataLp1.Valid;
  133. set => E84InfoDataLp1.Valid = value;
  134. }
  135. [Subscription("Valid", DeviceName.LP2)]
  136. public bool ValidLp2
  137. {
  138. get => E84InfoDataLp2.Valid;
  139. set => E84InfoDataLp2.Valid = value;
  140. }
  141. [Subscription("TransferRequest", DeviceName.LP1)]
  142. public bool TransferRequestLp1
  143. {
  144. get => E84InfoDataLp1.TransferRequest;
  145. set => E84InfoDataLp1.TransferRequest = value;
  146. }
  147. [Subscription("TransferRequest", DeviceName.LP2)]
  148. public bool TransferRequestLp2
  149. {
  150. get => E84InfoDataLp2.TransferRequest;
  151. set => E84InfoDataLp2.TransferRequest = value;
  152. }
  153. [Subscription("Busy", DeviceName.LP1)]
  154. public bool BusyLp1
  155. {
  156. get => E84InfoDataLp1.Busy;
  157. set => E84InfoDataLp1.Busy = value;
  158. }
  159. [Subscription("Busy", DeviceName.LP2)]
  160. public bool BusyLp2
  161. {
  162. get => E84InfoDataLp2.Busy;
  163. set => E84InfoDataLp2.Busy = value;
  164. }
  165. [Subscription("TransferComplete", DeviceName.LP1)]
  166. public bool TransferCompleteLp1
  167. {
  168. get => E84InfoDataLp1.TransferComplete;
  169. set => E84InfoDataLp1.TransferComplete = value;
  170. }
  171. [Subscription("TransferComplete", DeviceName.LP2)]
  172. public bool TransferCompleteLp2
  173. {
  174. get => E84InfoDataLp2.TransferComplete;
  175. set => E84InfoDataLp2.TransferComplete = value;
  176. }
  177. [Subscription("CS0", DeviceName.LP1)]
  178. public bool CS0Lp1
  179. {
  180. get => E84InfoDataLp1.CS0;
  181. set => E84InfoDataLp1.CS0 = value;
  182. }
  183. [Subscription("CS0", DeviceName.LP2)]
  184. public bool CS0Lp2
  185. {
  186. get => E84InfoDataLp2.CS0;
  187. set => E84InfoDataLp2.CS0 = value;
  188. }
  189. [Subscription("CS1", DeviceName.LP1)]
  190. public bool CS1Lp1
  191. {
  192. get => E84InfoDataLp1.CS1;
  193. set => E84InfoDataLp1.CS1 = value;
  194. }
  195. [Subscription("CS1", DeviceName.LP2)]
  196. public bool CS1Lp2
  197. {
  198. get => E84InfoDataLp2.CS1;
  199. set => E84InfoDataLp2.CS1 = value;
  200. }
  201. [Subscription("CONT", DeviceName.LP1)]
  202. public bool ContinuousTransferLp1
  203. {
  204. get => E84InfoDataLp1.ContinuousTransfer;
  205. set => E84InfoDataLp1.ContinuousTransfer = value;
  206. }
  207. [Subscription("CONT", DeviceName.LP2)]
  208. public bool ContinuousTransferLp2
  209. {
  210. get => E84InfoDataLp2.ContinuousTransfer;
  211. set => E84InfoDataLp2.ContinuousTransfer = value;
  212. }
  213. [Subscription("LoadRequest", DeviceName.LP1)]
  214. public bool LoadRequestLp1
  215. {
  216. get => E84InfoDataLp1.LoadRequest;
  217. set => E84InfoDataLp1.LoadRequest = value;
  218. }
  219. [Subscription("LoadRequest", DeviceName.LP2)]
  220. public bool LoadRequestLp2
  221. {
  222. get => E84InfoDataLp2.LoadRequest;
  223. set => E84InfoDataLp2.LoadRequest = value;
  224. }
  225. [Subscription("UnloadRequest", DeviceName.LP1)]
  226. public bool UnloadRequestLp1
  227. {
  228. get => E84InfoDataLp1.UnloadRequest;
  229. set => E84InfoDataLp1.UnloadRequest = value;
  230. }
  231. [Subscription("UnloadRequest", DeviceName.LP2)]
  232. public bool UnloadRequestLp2
  233. {
  234. get => E84InfoDataLp2.UnloadRequest;
  235. set => E84InfoDataLp2.UnloadRequest = value;
  236. }
  237. [Subscription("ReadyToTransfer", DeviceName.LP1)]
  238. public bool ReadyToTransferLp1
  239. {
  240. get => E84InfoDataLp1.ReadyToTransfer;
  241. set => E84InfoDataLp1.ReadyToTransfer = value;
  242. }
  243. [Subscription("ReadyToTransfer", DeviceName.LP2)]
  244. public bool ReadyToTransferLp2
  245. {
  246. get => E84InfoDataLp2.ReadyToTransfer;
  247. set => E84InfoDataLp2.ReadyToTransfer = value;
  248. }
  249. [Subscription("HandoffAvailable", DeviceName.LP1)]
  250. public bool HandoffAvailableLp1
  251. {
  252. get => E84InfoDataLp1.HandoffAvailable;
  253. set => E84InfoDataLp1.HandoffAvailable = value;
  254. }
  255. [Subscription("HandoffAvailable", DeviceName.LP2)]
  256. public bool HandoffAvailableLp2
  257. {
  258. get => E84InfoDataLp2.HandoffAvailable;
  259. set => E84InfoDataLp2.HandoffAvailable = value;
  260. }
  261. [Subscription("ES", DeviceName.LP1)]
  262. public bool EmergencyOkLp1
  263. {
  264. get => E84InfoDataLp1.EmergencyOk;
  265. set => E84InfoDataLp1.EmergencyOk = value;
  266. }
  267. [Subscription("ES", DeviceName.LP2)]
  268. public bool EmergencyOkLp2
  269. {
  270. get => E84InfoDataLp2.EmergencyOk;
  271. set => E84InfoDataLp2.EmergencyOk = value;
  272. }
  273. [Subscription("E84State", "LP1")]
  274. public string E84StateLp1
  275. {
  276. get => E84InfoDataLp1.E84State;
  277. set => E84InfoDataLp1.E84State = value;
  278. }
  279. [Subscription("E84State", "LP2")]
  280. public string E84StateLp2
  281. {
  282. get => E84InfoDataLp2.E84State;
  283. set => E84InfoDataLp2.E84State = value;
  284. }
  285. }
  286. }