123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186 |
- using Aitex.Core.RT.SCCore;
- using Caliburn.Micro;
- using Caliburn.Micro.Core;
- using MECF.Framework.Common.DataCenter;
- using MECF.Framework.Common.RecipeCenter;
- using MECF.Framework.UI.Client.CenterViews.Editors.Recipe;
- using System;
- using System.Collections.Generic;
- using System.Collections.ObjectModel;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows;
- using FurnaceUI.Models;
- using FurnaceUI.Views.Parameter;
- using FurnaceUI.Views.Recipes;
- using System.Windows.Controls;
- using MECF.Framework.Common.OperationCenter;
- using Aitex.Core.Common.DeviceData;
- namespace FurnaceUI.Views.Editors
- {
- public class RecipeValveViewModel : FurnaceUIViewModelBase
- {
- public Dictionary<string, string> ValveSets { get; set; } = new Dictionary<string, string>();
- private ObservableCollection<RecipeTemplateColumnBase> _valveTemplateColumn;
- public ObservableCollection<RecipeTemplateColumnBase> ValveTemplateColumn
- {
- get => _valveTemplateColumn;
- set
- {
- _valveTemplateColumn = value;
- CreateDictDefault();
- NotifyOfPropertyChange("ValveTemplateColumn");
- }
- }
- public Dictionary<string, ObservableCollection<RecipeTemplateColumnBase>> _recipeTemplate;
- public Dictionary<string, ObservableCollection<RecipeTemplateColumnBase>> RecipeTemplate
- {
- get => _recipeTemplate;
- set
- {
- _recipeTemplate = value;
- ValveTemplateColumn = RecipeTemplate["Valve"];
- foreach (var valve in ValveTemplateColumn)
- {
- valve.IsEnable = IsEnable;
- int iCount = valve.Options.Count;
- for (int i = 0; i < iCount; i++)
- {
- if (valve.Options[i].ControlName.Contains("Continue"))
- valve.Options.RemoveAt(i);
- }
- }
- NotifyOfPropertyChange("RecipeTemplate");
- }
- }
- private void CreateDictDefault()
- {
- foreach (var item in _valveTemplateColumn)
- {
- if (!ValveSets.ContainsKey(item.ControlName))
- {
- ValveSets.Add(item.ControlName, "Close");
- }
- }
- }
- public bool IsSave { get; set; }
- public RecipeValveViewModel()
- {
- }
- public bool IsEnable => CGlobal.RecipeProcessEditViewEnable;//是否是View模式
- public string RecipeType { get; set; }
- protected override void OnViewLoaded(object view)
- {
- base.OnViewLoaded(view);
- LoadData();
- }
- private void LoadData()
- {
- foreach (var item in ValveSets.Keys)
- {
- if (ValveSets[item] == "Open")
- {
- var templateColumn =ValveTemplateColumn.Where(x => x.ControlName == item).FirstOrDefault();
- if (templateColumn != null)
- {
- templateColumn.SelectedValueIndex = 1;
- }
- }
- }
- }
- public void GASValveSelectionChanged(object sender, object e)
- {
- var obj = (RecipeTemplateColumnBase)((ComboBox)sender).DataContext;
- bool isOpen = false;
- if (obj.SelectedValueIndex == 0)
- {
- isOpen = false;
- }
- else if (obj.SelectedValueIndex == 1)
- {
- isOpen = true;
- }
- InvokeClient.Instance.Service.DoOperation($"PM1.{obj.ControlName}.{AITValveOperation.GVVirtualTurnValve}", isOpen);
- }
- public void GASSettingSave()
- {
- IsSave = true;
- if (_valveTemplateColumn != null)
- {
- foreach (var item in _valveTemplateColumn)
- {
- if (ValveSets != null)
- if (ValveSets.ContainsKey(item.ControlName))
- {
- switch (item.SelectedValueIndex)
- {
- case 0:
- ValveSets[item.ControlName] = "Close";
- break;
- case 1:
- ValveSets[item.ControlName] = "Open";
- break;
- case 2:
- ValveSets[item.ControlName] = "Continue";
- break;
- }
- }
- else
- {
- string valveSet = "Close";
- switch (item.SelectedValueIndex)
- {
- case 0:
- valveSet = "Close";
- break;
- case 1:
- valveSet = "Open";
- break;
- case 2:
- valveSet = "Continue";
- break;
- }
- ValveSets.Add(item.ControlName, valveSet);
- }
- }
- }
- }
- public void TempSetSave()
- {
- GASSettingSave();
- ((Window)GetView()).DialogResult = true;
- }
- public void TempSetCancel()
- {
- IsSave = false;
- ((Window)GetView()).DialogResult = false;
- }
- }
- }
|