| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 | 
							- using OpenSEMI.ClientBase;
 
- using System;
 
- using System.Collections.Generic;
 
- using System.Linq;
 
- using System.Text;
 
- using System.Threading.Tasks;
 
- using System.Windows;
 
- using FurnaceUI.Models;
 
- using MECF.Framework.Common.OperationCenter;
 
- using MECF.Framework.UI.Client.CenterViews.Editors.Recipe;
 
- using Caliburn.Micro;
 
- using System.Collections.ObjectModel;
 
- using Caliburn.Micro.Core;
 
- using Aitex.Core.Util;
 
- using FurnaceUI.Views.Editors;
 
- namespace FurnaceUI.Views.Operations
 
- {
 
-     public class PMCommandViewModel : FurnaceUIViewModelBase
 
-     {
 
-         public bool IsEnabledAction { get; set; }
 
-         [Subscription("PM1.IsExecuteAbortRecipe")]
 
-         public bool PM1IsExecuteAbortRecipe { get; set; }
 
-         [Subscription("PM1.AbortRecipeName")]
 
-         public string PM1AbortRecipeName { get; set; }
 
-         [Subscription("PM1.MainRecipeName")]
 
-         public string PM1MainRecipeName { get; set; }
 
-         [Subscription("PM1.RecipeHold")]
 
-         public bool PM1IsRecipeHold { get; set; }
 
-         public bool IsHoldButtonEnable => !PM1IsRecipeHold;
 
-         public bool IsPermission => this.Permission == 3;
 
-         public PMCommandViewModel()
 
-         {
 
-           
 
-         }
 
-         public void ClickCmd(string cmd)
 
-         {
 
-             switch (cmd)
 
-             {
 
-                 case "OK":
 
-                     ((Window)GetView()).DialogResult = true;
 
-                     break;
 
-                 case "Cancel":
 
-                     ((Window)GetView()).DialogResult = false;
 
-                     break;
 
-                 default:
 
-                     break;
 
-             }
 
-         }
 
-         public void Skip()
 
-         {
 
-             if (!DialogBox.Confirm("Are you sure to skip current step?"))
 
-                 return;
 
-             InvokeClient.Instance.Service.DoOperation($"PM1.RecipeSkipStep", "");
 
-         }
 
-         public void Jump()
 
-         {
 
-             if (!DialogBox.Confirm("Are you sure to jump current step?"))
 
-                 return;
 
-             var recipes = new RecipeDataBase();
 
-             //if (PM1IsExecuteAbortRecipe)
 
-             //{
 
-             //    recipes.PrefixPath = "Furnace\\Abort";
 
-             //    recipes.Name = PM1AbortRecipeName;
 
-             //}
 
-             //else
 
-             {
 
-                 recipes.PrefixPath = "Furnace\\Process";
 
-                 recipes.Name = PM1MainRecipeName;
 
-             }
 
-             RecipeProvider _recipeProvider = new RecipeProvider();
 
-             recipes.Clear();
 
-             var recipeContent = _recipeProvider.LoadRecipe(recipes.PrefixPath, recipes.Name);
 
-             if (string.IsNullOrEmpty(recipeContent))
 
-             {
 
-                 MessageBox.Show($"{recipes.PrefixPath}\\{recipes.Name} is empty, please confirm the file is valid.");
 
-                 return;
 
-             }
 
-            // recipes.RecipeChamberType = "OriginChamber";
 
-             recipes.InitData(recipes.PrefixPath, recipes.Name, recipeContent, "PM1");
 
-             var windowManager = IoC.Get<IWindowManager>();
 
-             RecipeLoopSetViewModel recipeLoopSetViewModel = new RecipeLoopSetViewModel();
 
-             recipeLoopSetViewModel.StepNames = new ObservableCollection<ShowStep>(recipes.Steps.OrderBy(x => x.StepNo).Select(x => new ShowStep() { StepNo = x.StepNo, StepName = x.Name }).ToList());
 
-             if ((bool)(windowManager as WindowManager)?.ShowDialogWithTitle(recipeLoopSetViewModel, null, "Jump"))
 
-             {
 
-                 InvokeClient.Instance.Service.DoOperation($"PM1.RecipeJumpStep", recipeLoopSetViewModel.SelectedIndex, recipeLoopSetViewModel.SelectedText.Replace("]","").Replace("[",""));
 
-             }
 
-         }
 
-         public void Hold()
 
-         {
 
-             if (!DialogBox.Confirm("Are you sure to hold current recipe?"))
 
-                 return;
 
-             InvokeClient.Instance.Service.DoOperation($"PM1.RecipePause", "");
 
-         }
 
-         public void Release()
 
-         {
 
-             if (!DialogBox.Confirm("Are you sure to release current recipe?"))
 
-                 return;
 
-             InvokeClient.Instance.Service.DoOperation($"PM1.RecipeContinue", "");
 
-         }
 
-         public void EmergencyAbort()
 
-         {
 
-             if (!DialogBox.Confirm("Are you sure to execute Abort?"))
 
-                 return;
 
-             InvokeClient.Instance.Service.DoOperation("PM1.RecipeAbort");
 
-         }
 
-     }
 
- }
 
 
  |