RecipeVPItemSelectViewModel.cs 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. using Aitex.Core.RT.SCCore;
  2. using Caliburn.Micro;
  3. using Caliburn.Micro.Core;
  4. using MECF.Framework.Common.DataCenter;
  5. using MECF.Framework.Common.RecipeCenter;
  6. using MECF.Framework.UI.Client.CenterViews.Editors.Recipe;
  7. using System;
  8. using System.Collections.Generic;
  9. using System.Collections.ObjectModel;
  10. using System.Linq;
  11. using System.Text;
  12. using System.Threading.Tasks;
  13. using System.Windows;
  14. using FurnaceUI.Models;
  15. using FurnaceUI.Views.Parameter;
  16. using FurnaceUI.Views.Recipes;
  17. using System.Windows.Controls;
  18. using VPDataItem = MECF.Framework.UI.Client.CenterViews.Editors.Recipe.VPData;
  19. namespace FurnaceUI.Views.Editors
  20. {
  21. public class RecipeVPItemSelectViewModel : FurnaceUIViewModelBase
  22. {
  23. public ObservableCollection<string> ItemGroup { get; set; } = new ObservableCollection<string>();
  24. public ObservableCollection<VPDataItem> SelectedItemList { get; set; } = new ObservableCollection<VPDataItem>();
  25. public bool IsSave { get; set; }
  26. private string _selectedGroup;
  27. public string SelectedGroup
  28. {
  29. get => _selectedGroup;
  30. set
  31. {
  32. _selectedGroup = value;
  33. NotifyOfPropertyChange("SelectedGroup");
  34. }
  35. }
  36. private string _selectedItem;
  37. public string SelectedItem
  38. {
  39. get => _selectedItem;
  40. set
  41. {
  42. _selectedItem = value;
  43. NotifyOfPropertyChange("SelectedItem");
  44. }
  45. }
  46. public RecipeVPItemSelectViewModel()
  47. {
  48. }
  49. public bool IsEnable => CGlobal.RecipeProcessEditViewEnable;//是否是View模式
  50. public string RecipeType { get; set; }
  51. protected override void OnViewLoaded(object view)
  52. {
  53. base.OnViewLoaded(view);
  54. LoadData();
  55. }
  56. private void LoadData()
  57. {
  58. ItemGroup.Clear();
  59. ItemGroup.Add("Step Time");
  60. ItemGroup.Add("Temperature");
  61. ItemGroup.Add("Loop Frequency");
  62. ItemGroup.Add("SubRecipeLoop Frequency");
  63. ItemGroup.Add("Thickness");
  64. }
  65. public void ItemChecked(string cmd)
  66. {
  67. switch (cmd)
  68. {
  69. case "Step Time":
  70. CreateSelectedItemList("Time");
  71. break;
  72. case "Temperature":
  73. CreateSelectedItemList("Temperature");
  74. break;
  75. case "Loop Frequency":
  76. CreateSelectedItemList("Loop Frequency");
  77. break;
  78. case "SubRecipeLoop Frequency":
  79. CreateSelectedItemList("SubRecipe");
  80. break;
  81. case "Thickness":
  82. CreateSelectedItemList("Thickness");
  83. break;
  84. default:
  85. break;
  86. }
  87. SelectedGroup = cmd;
  88. }
  89. private void CreateSelectedItemList(string cmd)
  90. {
  91. SelectedItemList.Clear();
  92. for (int i = 0; i < 30; i++)
  93. {
  94. SelectedItemList.Add(new VPDataItem()
  95. {
  96. No = i + 1,
  97. Name = $"{cmd}{i + 1}",
  98. IsCheck = false
  99. });
  100. }
  101. }
  102. public void SubItemChecked(string cmd)
  103. {
  104. SelectedItem = cmd;
  105. }
  106. public void TempSetSave()
  107. {
  108. IsSave = true;
  109. ((Window)GetView()).DialogResult = true;
  110. }
  111. public void TempSetCancel()
  112. {
  113. IsSave = false;
  114. ((Window)GetView()).DialogResult = false;
  115. }
  116. }
  117. }