RinseUIControl.xaml.cs 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215
  1. using Aitex.Core.RT.Log;
  2. using MECF.Framework.Common.Device.Rinse;
  3. using MECF.Framework.Common.OperationCenter;
  4. using System;
  5. using System.Collections.Generic;
  6. using System.Linq;
  7. using System.Reflection;
  8. using System.Text;
  9. using System.Threading.Tasks;
  10. using System.Windows;
  11. using System.Windows.Controls;
  12. using System.Windows.Data;
  13. using System.Windows.Documents;
  14. using System.Windows.Input;
  15. using System.Windows.Media;
  16. using System.Windows.Media.Imaging;
  17. using System.Windows.Navigation;
  18. using System.Windows.Shapes;
  19. namespace CyberX8_Themes.UserControls
  20. {
  21. /// <summary>
  22. /// RinseUIControl.xaml 的交互逻辑
  23. /// </summary>
  24. public partial class RinseUIControl : UserControl
  25. {
  26. public RinseUIControl()
  27. {
  28. InitializeComponent();
  29. }
  30. public static readonly DependencyProperty ModuleNameProperty = DependencyProperty.Register(
  31. "ModuleName", typeof(string), typeof(RinseUIControl),
  32. new FrameworkPropertyMetadata("", FrameworkPropertyMetadataOptions.AffectsRender));
  33. /// <summary>
  34. /// 模块名称
  35. /// </summary>
  36. public string ModuleName
  37. {
  38. get
  39. {
  40. return (string)this.GetValue(ModuleNameProperty);
  41. }
  42. set
  43. {
  44. this.SetValue(ModuleNameProperty, value);
  45. }
  46. }
  47. public static readonly DependencyProperty RinseCommonDataProperty = DependencyProperty.Register(
  48. "RinseCommonData", typeof(RinseData), typeof(RinseUIControl), new FrameworkPropertyMetadata(null, FrameworkPropertyMetadataOptions.AffectsRender));
  49. /// <summary>
  50. /// RinseData
  51. /// </summary>
  52. public bool RinseCommonData
  53. {
  54. get
  55. {
  56. return (bool)this.GetValue(RinseCommonDataProperty);
  57. }
  58. set
  59. {
  60. this.SetValue(RinseCommonDataProperty, value);
  61. }
  62. }
  63. public static readonly DependencyProperty InterLockProperty = DependencyProperty.Register(
  64. "InterLock", typeof(bool), typeof(RinseUIControl), new FrameworkPropertyMetadata(false, FrameworkPropertyMetadataOptions.AffectsRender));
  65. /// <summary>
  66. /// InterLock
  67. /// </summary>
  68. public bool InterLock
  69. {
  70. get
  71. {
  72. return (bool)this.GetValue(InterLockProperty);
  73. }
  74. set
  75. {
  76. this.SetValue(InterLockProperty, value);
  77. }
  78. }
  79. public static readonly DependencyProperty IsErrorProerty = DependencyProperty.Register(
  80. "IsError", typeof(bool), typeof(RinseUIControl), new FrameworkPropertyMetadata(false, FrameworkPropertyMetadataOptions.AffectsRender));
  81. /// <summary>
  82. /// 工艺腔体是否error
  83. /// </summary>
  84. public bool IsError
  85. {
  86. get
  87. {
  88. return (bool)this.GetValue(IsErrorProerty);
  89. }
  90. set
  91. {
  92. this.SetValue(IsErrorProerty, value);
  93. }
  94. }
  95. public static readonly DependencyProperty IsWaferHolderProerty = DependencyProperty.Register(
  96. "IsWaferHolder", typeof(bool), typeof(RinseUIControl), new FrameworkPropertyMetadata(false, FrameworkPropertyMetadataOptions.AffectsRender));
  97. /// <summary>
  98. /// 工艺腔体是否存在WaferHolder
  99. /// </summary>
  100. public bool IsWaferHolder
  101. {
  102. get
  103. {
  104. return (bool)this.GetValue(IsWaferHolderProerty);
  105. }
  106. set
  107. {
  108. this.SetValue(IsWaferHolderProerty, value);
  109. }
  110. }
  111. public static readonly DependencyProperty UIWaterLevelProperty = DependencyProperty.Register(
  112. "UIWaterLevel", typeof(double), typeof(RinseUIControl), new FrameworkPropertyMetadata(0.0, FrameworkPropertyMetadataOptions.AffectsRender));
  113. /// <summary>
  114. /// UIWaterLevel
  115. /// </summary>
  116. public double UIWaterLevel
  117. {
  118. get
  119. {
  120. return (double)this.GetValue(UIWaterLevelProperty);
  121. }
  122. set
  123. {
  124. this.SetValue(UIWaterLevelProperty, value);
  125. }
  126. }
  127. private void Metals_Click(object sender, RoutedEventArgs e)
  128. {
  129. }
  130. private void Wastes_Click(object sender, RoutedEventArgs e)
  131. {
  132. }
  133. private void OpenClampValve_Click(object sender, RoutedEventArgs e)
  134. {
  135. LOG.WriteLog(eEvent.EV_DEVICE_INFO, "", $"ClampValveOn");
  136. InvokeClient.Instance.Service.DoOperation($"{ModuleName}.ClampValveOn");
  137. }
  138. private void CloseClampValve_Click(object sender, RoutedEventArgs e)
  139. {
  140. LOG.WriteLog(eEvent.EV_DEVICE_INFO, "", $"ClampValveOff");
  141. InvokeClient.Instance.Service.DoOperation($"{ModuleName}.ClampValveOff");
  142. }
  143. private void OpenN2Valve_Click(object sender, RoutedEventArgs e)
  144. {
  145. InvokeClient.Instance.Service.DoOperation($"{ModuleName}.N2ValveOn");
  146. }
  147. private void CloseN2Valve_Click(object sender, RoutedEventArgs e)
  148. {
  149. InvokeClient.Instance.Service.DoOperation($"{ModuleName}.N2ValveOff");
  150. }
  151. private void OpenDrainValve_Click(object sender, RoutedEventArgs e)
  152. {
  153. InvokeClient.Instance.Service.DoOperation($"{ModuleName}.DrainValveOn");
  154. }
  155. private void CloseDrainValve_Click(object sender, RoutedEventArgs e)
  156. {
  157. InvokeClient.Instance.Service.DoOperation($"{ModuleName}.DrainValveOff");
  158. }
  159. private void OpenWasteValve_Click(object sender, RoutedEventArgs e)
  160. {
  161. InvokeClient.Instance.Service.DoOperation($"{ModuleName}.WasteValveOn");
  162. }
  163. private void CloseWasteValve_Click(object sender, RoutedEventArgs e)
  164. {
  165. InvokeClient.Instance.Service.DoOperation($"{ModuleName}.WasteValveOff");
  166. }
  167. private void OpenFillValve_Click(object sender, RoutedEventArgs e)
  168. {
  169. InvokeClient.Instance.Service.DoOperation($"{ModuleName}.FillValveOn");
  170. }
  171. private void CloseFillValve_Click(object sender, RoutedEventArgs e)
  172. {
  173. InvokeClient.Instance.Service.DoOperation($"{ModuleName}.FillValveOff");
  174. }
  175. private void CheckBox_Checked(object sender, RoutedEventArgs e)
  176. {
  177. InterLock = true;
  178. InvokeClient.Instance.Service.DoOperation($"{ModuleName}.ByPassInterLocks", InterLock);
  179. }
  180. private void CheckBox_UnChecked(object sender, RoutedEventArgs e)
  181. {
  182. InterLock = false;
  183. InvokeClient.Instance.Service.DoOperation($"{ModuleName}.ByPassInterLocks", InterLock);
  184. }
  185. }
  186. }