ScheduledMaintenanceMonitorView.xaml 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486
  1. <UserControl
  2. x:Class="FurnaceUI.Views.Editors.ScheduledMaintenanceMonitorView"
  3. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  4. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  5. xmlns:cal="http://www.caliburn.org"
  6. xmlns:converter="clr-namespace:FurnaceUI.Converter"
  7. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  8. xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"
  9. xmlns:local="clr-namespace:FurnaceUI.Views.Editors"
  10. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  11. Width="1000"
  12. Height="780"
  13. Background="White"
  14. FontFamily="Segoe"
  15. FontSize="20"
  16. mc:Ignorable="d">
  17. <UserControl.Resources>
  18. <converter:IsCheckShowStringConverter x:Key="isCheckShowStringConverter" />
  19. <Style BasedOn="{StaticResource ExOnlyVerticalScrollBar}" TargetType="ScrollBar" />
  20. </UserControl.Resources>
  21. <Grid>
  22. <Grid.RowDefinitions>
  23. <RowDefinition Height="Auto" />
  24. <RowDefinition Height="Auto" />
  25. <RowDefinition Height="Auto" />
  26. <RowDefinition Height="Auto" />
  27. <RowDefinition Height="*" />
  28. <RowDefinition Height="80" />
  29. </Grid.RowDefinitions>
  30. <StackPanel Margin="10,0,0,0" Orientation="Horizontal">
  31. <TextBlock
  32. Margin="5,0"
  33. VerticalAlignment="Center"
  34. FontSize="20"
  35. Text="Table No." />
  36. <TextBox
  37. Width="60"
  38. Height="40"
  39. HorizontalAlignment="Left"
  40. HorizontalContentAlignment="Center"
  41. FontSize="20"
  42. IsEnabled="False"
  43. Text="{Binding EditModel.Number}" />
  44. </StackPanel>
  45. <Canvas />
  46. <GroupBox
  47. Grid.Row="1"
  48. Margin="10,5,10,0"
  49. Padding="5,5,5,0"
  50. Header="Maintenance Item information">
  51. <Grid>
  52. <Grid.RowDefinitions>
  53. <RowDefinition Height="50" />
  54. <RowDefinition Height="50" />
  55. <RowDefinition Height="*" MinHeight="60" />
  56. </Grid.RowDefinitions>
  57. <Grid.ColumnDefinitions>
  58. <ColumnDefinition Width="240" />
  59. <ColumnDefinition />
  60. <ColumnDefinition Width="0.5*" />
  61. </Grid.ColumnDefinitions>
  62. <TextBlock
  63. Margin="5,0"
  64. HorizontalAlignment="Right"
  65. VerticalAlignment="Center"
  66. Text="Maintenance Name" />
  67. <TextBlock
  68. Grid.Row="1"
  69. Margin="5,0"
  70. HorizontalAlignment="Right"
  71. VerticalAlignment="Center"
  72. Text="Maintenance ltem" />
  73. <TextBox
  74. Grid.Column="1"
  75. Margin="2"
  76. FontSize="20"
  77. Text="{Binding EditModel.Display, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}" />
  78. <TextBox
  79. Grid.Row="1"
  80. Grid.Column="1"
  81. Margin="2"
  82. FontSize="20"
  83. IsEnabled="False"
  84. Text="{Binding EditModel.Item}" />
  85. <GroupBox
  86. Grid.Row="2"
  87. Grid.Column="1"
  88. Grid.ColumnSpan="4"
  89. Header="Addition information">
  90. <StackPanel>
  91. <ContentControl>
  92. <ContentControl.Resources>
  93. <DataTemplate x:Key="EmptyDataTemplate" />
  94. <DataTemplate x:Key="CommonDataTemplate">
  95. <StackPanel Height="40" Orientation="Horizontal">
  96. <TextBlock
  97. MinWidth="110"
  98. Margin="5,0"
  99. VerticalAlignment="Center"
  100. Text="{Binding DataContext.EditModel.AdditionInformationName, RelativeSource={RelativeSource AncestorType=UserControl, Mode=FindAncestor}}" />
  101. <TextBox
  102. Grid.Column="1"
  103. Width="200"
  104. Margin="5,0"
  105. FontSize="20"
  106. Text="{Binding DataContext.EditModel.AdditionInformationDisplay, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay, RelativeSource={RelativeSource AncestorType=UserControl, Mode=FindAncestor}}" />
  107. </StackPanel>
  108. </DataTemplate>
  109. <DataTemplate x:Key="ReactorGroupDataTemplate">
  110. <StackPanel Height="40" Orientation="Horizontal">
  111. <TextBlock
  112. MinWidth="110"
  113. Margin="5,0"
  114. HorizontalAlignment="Right"
  115. VerticalAlignment="Center"
  116. Text="{Binding DataContext.EditModel.AdditionInformationName, RelativeSource={RelativeSource AncestorType=UserControl, Mode=FindAncestor}}" />
  117. <TextBox
  118. Grid.Column="1"
  119. Width="200"
  120. Margin="5,0"
  121. FontSize="20"
  122. Text="{Binding DataContext.EditModel.AdditionInformationDisplay, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay, RelativeSource={RelativeSource AncestorType=UserControl, Mode=FindAncestor}}" />
  123. <!--<Button Content="Step Group Registration" />-->
  124. </StackPanel>
  125. </DataTemplate>
  126. </ContentControl.Resources>
  127. <ContentControl.Style>
  128. <Style TargetType="ContentControl">
  129. <Style.Triggers>
  130. <DataTrigger Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.CarrierWafer}">
  131. <Setter Property="ContentTemplate" Value="{StaticResource CommonDataTemplate}" />
  132. </DataTrigger>
  133. <MultiDataTrigger>
  134. <MultiDataTrigger.Conditions>
  135. <Condition Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.Reactor}" />
  136. <Condition Binding="{Binding EditModel.ReactorsType}" Value="{x:Static local:ReactorsEnum.StepThickness}" />
  137. </MultiDataTrigger.Conditions>
  138. <MultiDataTrigger.Setters>
  139. <Setter Property="ContentTemplate" Value="{StaticResource ReactorGroupDataTemplate}" />
  140. </MultiDataTrigger.Setters>
  141. </MultiDataTrigger>
  142. <MultiDataTrigger>
  143. <MultiDataTrigger.Conditions>
  144. <Condition Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.Reactor}" />
  145. <Condition Binding="{Binding EditModel.ReactorsType}" Value="{x:Static local:ReactorsEnum.StepRunTime}" />
  146. </MultiDataTrigger.Conditions>
  147. <MultiDataTrigger.Setters>
  148. <Setter Property="ContentTemplate" Value="{StaticResource ReactorGroupDataTemplate}" />
  149. </MultiDataTrigger.Setters>
  150. </MultiDataTrigger>
  151. <MultiDataTrigger>
  152. <MultiDataTrigger.Conditions>
  153. <Condition Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.Reactor}" />
  154. <Condition Binding="{Binding EditModel.ReactorsType}" Value="{x:Static local:ReactorsEnum.StepRunFreq}" />
  155. </MultiDataTrigger.Conditions>
  156. <MultiDataTrigger.Setters>
  157. <Setter Property="ContentTemplate" Value="{StaticResource CommonDataTemplate}" />
  158. </MultiDataTrigger.Setters>
  159. </MultiDataTrigger>
  160. <MultiDataTrigger>
  161. <MultiDataTrigger.Conditions>
  162. <Condition Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.Reactor}" />
  163. <Condition Binding="{Binding EditModel.ReactorsType}" Value="{x:Static local:ReactorsEnum.StepRunTime}" />
  164. </MultiDataTrigger.Conditions>
  165. <MultiDataTrigger.Setters>
  166. <Setter Property="ContentTemplate" Value="{StaticResource CommonDataTemplate}" />
  167. </MultiDataTrigger.Setters>
  168. </MultiDataTrigger>
  169. </Style.Triggers>
  170. </Style>
  171. </ContentControl.Style>
  172. </ContentControl>
  173. </StackPanel>
  174. </GroupBox>
  175. </Grid>
  176. </GroupBox>
  177. <GroupBox
  178. Grid.Row="2"
  179. Margin="10,5,10,0"
  180. Padding="5,5,5,0"
  181. Header="Current Value information">
  182. <Grid>
  183. <Grid.RowDefinitions>
  184. <RowDefinition Height="40" />
  185. <RowDefinition />
  186. </Grid.RowDefinitions>
  187. <Grid.ColumnDefinitions>
  188. <ColumnDefinition Width="240" />
  189. <ColumnDefinition Width="200" />
  190. <ColumnDefinition Width="Auto" MinWidth="80" />
  191. <ColumnDefinition Width="*" />
  192. </Grid.ColumnDefinitions>
  193. <TextBlock
  194. Grid.Row="0"
  195. Margin="5,0"
  196. HorizontalAlignment="Right"
  197. VerticalAlignment="Center"
  198. Text="Current Value" />
  199. <TextBox
  200. Grid.Column="1"
  201. Margin="5,0"
  202. FontSize="20"
  203. IsEnabled="{Binding IsEnable}"
  204. Text="{Binding EditModel.CurrentValue, StringFormat={}{0:000.000}, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}" />
  205. <TextBox
  206. Grid.Column="2"
  207. Height="40"
  208. Margin="5,0"
  209. HorizontalContentAlignment="Center"
  210. FontSize="20"
  211. IsEnabled="False"
  212. Text="{Binding EditModel.Unit}" />
  213. <StackPanel Grid.Column="3" Orientation="Horizontal">
  214. <Button
  215. Width="220"
  216. Content="Current Value Change"
  217. FontSize="20">
  218. <i:Interaction.Triggers>
  219. <i:EventTrigger EventName="Click">
  220. <cal:ActionMessage MethodName="CurrentValueChange" />
  221. </i:EventTrigger>
  222. </i:Interaction.Triggers>
  223. <!--<Button.Style>
  224. <Style BasedOn="{StaticResource ResourceKey={x:Type Button}}" TargetType="Button">
  225. <Style.Triggers>
  226. <DataTrigger Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.CarrierWafer}">
  227. <Setter Property="Visibility" Value="Collapsed" />
  228. </DataTrigger>
  229. <DataTrigger Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.Boat}">
  230. <Setter Property="Visibility" Value="Visible" />
  231. </DataTrigger>
  232. <DataTrigger Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.Conditioning}">
  233. <Setter Property="Visibility" Value="Visible" />
  234. </DataTrigger>
  235. <DataTrigger Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.Reactor}">
  236. <Setter Property="Visibility" Value="Visible" />
  237. </DataTrigger>
  238. </Style.Triggers>
  239. </Style>
  240. </Button.Style>-->
  241. </Button>
  242. <Button
  243. Width="220"
  244. Margin="5,0,0,0"
  245. Content="Current Value Clear"
  246. FontSize="20">
  247. <i:Interaction.Triggers>
  248. <i:EventTrigger EventName="Click">
  249. <cal:ActionMessage MethodName="ClearCurrentValue" />
  250. </i:EventTrigger>
  251. </i:Interaction.Triggers>
  252. <!--<Button.Style>
  253. <Style BasedOn="{StaticResource ResourceKey={x:Type Button}}" TargetType="Button">
  254. <Style.Triggers>
  255. <DataTrigger Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.CarrierWafer}">
  256. <Setter Property="Visibility" Value="Collapsed" />
  257. </DataTrigger>
  258. <DataTrigger Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.Boat}">
  259. <Setter Property="Visibility" Value="Visible" />
  260. </DataTrigger>
  261. <DataTrigger Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.Conditioning}">
  262. <Setter Property="Visibility" Value="Visible" />
  263. </DataTrigger>
  264. <DataTrigger Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.Reactor}">
  265. <Setter Property="Visibility" Value="Visible" />
  266. </DataTrigger>
  267. </Style.Triggers>
  268. </Style>
  269. </Button.Style>-->
  270. </Button>
  271. </StackPanel>
  272. <TextBlock
  273. Grid.Row="1"
  274. Grid.Column="3"
  275. Grid.ColumnSpan="4"
  276. Margin="0,0,0,-0.5"
  277. TextWrapping="WrapWithOverflow">
  278. <TextBlock.Style>
  279. <Style TargetType="TextBlock">
  280. <Style.Triggers>
  281. <DataTrigger Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.CarrierWafer}">
  282. <Setter Property="Text" Value="" />
  283. </DataTrigger>
  284. <DataTrigger Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.Boat}">
  285. <Setter Property="Text" Value="As for the value diplay araa,the current value is displayed when the current value change button isPressed,but the monitor value is displayed when the value change button is not pressed." />
  286. </DataTrigger>
  287. <DataTrigger Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.Conditioning}">
  288. <Setter Property="Text" Value="As for the value diplay araa,the current value is displayed when the current value change button isPressed,but the monitor value is displayed when the value change button is not pressed." />
  289. </DataTrigger>
  290. <DataTrigger Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.Reactor}">
  291. <Setter Property="Text" Value="As for the value diplay araa,the current value is displayed when the current value change button isPressed,but the monitor value is displayed when the value change button is not pressed." />
  292. </DataTrigger>
  293. </Style.Triggers>
  294. </Style>
  295. </TextBlock.Style>
  296. </TextBlock>
  297. </Grid>
  298. </GroupBox>
  299. <GroupBox
  300. Grid.Row="3"
  301. Margin="10,5,10,0"
  302. Padding="5,5,5,0"
  303. Header="Scheduling Start Value information">
  304. <Grid>
  305. <Grid.RowDefinitions>
  306. <RowDefinition Height="Auto" />
  307. <RowDefinition Height="40" />
  308. <RowDefinition />
  309. <RowDefinition />
  310. </Grid.RowDefinitions>
  311. <Grid.ColumnDefinitions>
  312. <ColumnDefinition Width="240" />
  313. <ColumnDefinition Width="200" />
  314. <ColumnDefinition Width="Auto" MinWidth="80" />
  315. <ColumnDefinition />
  316. </Grid.ColumnDefinitions>
  317. <TextBlock
  318. Grid.Row="0"
  319. Margin="5,0"
  320. HorizontalAlignment="Right"
  321. VerticalAlignment="Center"
  322. Text="Scheduling Start Value" />
  323. <TextBlock
  324. Grid.Row="1"
  325. Margin="5,0"
  326. HorizontalAlignment="Right"
  327. VerticalAlignment="Center"
  328. Text="Maintenance Processing" />
  329. <TextBox
  330. Grid.Row="0"
  331. Grid.Column="1"
  332. Height="40"
  333. Margin="5,0"
  334. FontSize="20"
  335. Text="{Binding EditModel.StartValue, StringFormat={}{0:000.000}, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}" />
  336. <ComboBox x:Name="cbPickModulesCassetteRobot" Grid.Row="1"
  337. Grid.Column="1"
  338. Height="40"
  339. Margin="5,0"
  340. FontSize="20" ItemsSource="{Binding MaintenanceProcessingList}" SelectedItem="{Binding EditModel.MaintenanceProcessing, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}" />
  341. <Button Grid.Row="1" Grid.Column="2" Visibility="{Binding JobAutoStartCommandVisibility,UpdateSourceTrigger=PropertyChanged,Converter={StaticResource bool2VisibilityConverter}}" Grid.ColumnSpan="2" Width="auto" Content="{Binding EditModel.AssociationProcessRecipeName,UpdateSourceTrigger=PropertyChanged}">
  342. <i:Interaction.Triggers>
  343. <i:EventTrigger EventName="Click">
  344. <cal:ActionMessage MethodName="SelectProcessRecipe">
  345. </cal:ActionMessage>
  346. </i:EventTrigger>
  347. </i:Interaction.Triggers>
  348. </Button>
  349. <!--<TextBox
  350. Grid.Row="1"
  351. Grid.Column="1"
  352. Height="40"
  353. Margin="5,0"
  354. FontSize="20"
  355. Text="{Binding EditModel.MaintenanceProcessing, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}" />-->
  356. <TextBox
  357. Grid.Row="0"
  358. Grid.Column="2"
  359. Height="40"
  360. Margin="5,0"
  361. HorizontalContentAlignment="Center"
  362. FontSize="20"
  363. IsEnabled="False"
  364. Text="{Binding EditModel.Unit}" />
  365. <TextBlock
  366. Grid.Row="0"
  367. Grid.Column="3"
  368. VerticalAlignment="Center"
  369. Text="Scheduling the maintence process is begun on this beginning value arrival,please set the value in which this margin is given to limit value."
  370. TextWrapping="WrapWithOverflow" />
  371. </Grid>
  372. </GroupBox>
  373. <GroupBox
  374. Grid.Row="4"
  375. Margin="10,5,10,0"
  376. Padding="5,5,5,0"
  377. Header="Maintenance Limit Value information">
  378. <Grid>
  379. <Grid.ColumnDefinitions>
  380. <ColumnDefinition Width="240" />
  381. <ColumnDefinition Width="200" />
  382. <ColumnDefinition Width="Auto" MinWidth="80" />
  383. <ColumnDefinition />
  384. </Grid.ColumnDefinitions>
  385. <TextBlock
  386. Margin="5,0"
  387. HorizontalAlignment="Right"
  388. VerticalAlignment="Center"
  389. Text="Maintenance Limit Value" />
  390. <TextBox
  391. Grid.Column="1"
  392. Height="40"
  393. Margin="5,0"
  394. FontSize="20"
  395. Text="{Binding EditModel.LimitValue, StringFormat={}{0:000.000}, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}" />
  396. <TextBox
  397. Grid.Column="2"
  398. Height="40"
  399. Margin="5,0"
  400. HorizontalContentAlignment="Center"
  401. VerticalContentAlignment="Center"
  402. FontSize="20"
  403. IsEnabled="False"
  404. Text="{Binding EditModel.Unit}" />
  405. <TextBlock
  406. Grid.Column="3"
  407. VerticalAlignment="Center"
  408. TextWrapping="WrapWithOverflow">
  409. <TextBlock.Style>
  410. <Style TargetType="TextBlock">
  411. <Style.Triggers>
  412. <MultiDataTrigger>
  413. <MultiDataTrigger.Conditions>
  414. <Condition Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.CarrierWafer}" />
  415. </MultiDataTrigger.Conditions>
  416. <MultiDataTrigger.Setters>
  417. <Setter Property="Text" Value="The processing of wafer is completed by this limit value arrival." />
  418. </MultiDataTrigger.Setters>
  419. </MultiDataTrigger>
  420. <MultiDataTrigger>
  421. <MultiDataTrigger.Conditions>
  422. <Condition Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.Boat}" />
  423. </MultiDataTrigger.Conditions>
  424. <MultiDataTrigger.Setters>
  425. <Setter Property="Text" Value="Dummy Wafer on the boat is collected to the source carrier when current value reaches the limit value." />
  426. </MultiDataTrigger.Setters>
  427. </MultiDataTrigger>
  428. <MultiDataTrigger>
  429. <MultiDataTrigger.Conditions>
  430. <Condition Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.Conditioning}" />
  431. </MultiDataTrigger.Conditions>
  432. <MultiDataTrigger.Setters>
  433. <Setter Property="Text" Value="Alarm is reported by this limit value arrival." />
  434. </MultiDataTrigger.Setters>
  435. </MultiDataTrigger>
  436. <MultiDataTrigger>
  437. <MultiDataTrigger.Conditions>
  438. <Condition Binding="{Binding EditModel.DataItemType}" Value="{x:Static local:DataItemEnum.Reactor}" />
  439. </MultiDataTrigger.Conditions>
  440. <MultiDataTrigger.Setters>
  441. <Setter Property="Text" Value="A new job started by this limit value arrival." />
  442. </MultiDataTrigger.Setters>
  443. </MultiDataTrigger>
  444. </Style.Triggers>
  445. </Style>
  446. </TextBlock.Style>
  447. </TextBlock>
  448. </Grid>
  449. </GroupBox>
  450. <Border Grid.Row="5">
  451. <Grid>
  452. <Canvas>
  453. <Button
  454. Canvas.Left="706"
  455. Canvas.Top="19"
  456. Width="130"
  457. Height="45"
  458. Content="Save"
  459. Style="{StaticResource CommandButton}">
  460. <i:Interaction.Triggers>
  461. <i:EventTrigger EventName="Click">
  462. <cal:ActionMessage MethodName="SetSave" />
  463. </i:EventTrigger>
  464. </i:Interaction.Triggers>
  465. </Button>
  466. <Button
  467. Canvas.Left="856"
  468. Canvas.Top="19"
  469. Width="130"
  470. Height="45"
  471. Content="Cancel"
  472. Style="{StaticResource CommandButton}">
  473. <i:Interaction.Triggers>
  474. <i:EventTrigger EventName="Click">
  475. <cal:ActionMessage MethodName="SetCancel" />
  476. </i:EventTrigger>
  477. </i:Interaction.Triggers>
  478. </Button>
  479. </Canvas>
  480. </Grid>
  481. </Border>
  482. </Grid>
  483. </UserControl>