| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 | 
							- using ExcelLibrary.BinaryFileFormat;
 
- using FurnaceUI.Models;
 
- using MECF.Framework.Common.OperationCenter;
 
- using MECF.Framework.UI.Client.CenterViews.Configs.SystemConfig;
 
- using MECF.Framework.UI.Client.ClientBase;
 
- using Microsoft.DwayneNeed.Numerics;
 
- using Newtonsoft.Json;
 
- using OpenSEMI.ClientBase;
 
- using SciChart.Core.Extensions;
 
- using System;
 
- using System.Collections.Generic;
 
- using System.Collections.ObjectModel;
 
- using System.Linq;
 
- using System.Text;
 
- using System.Threading.Tasks;
 
- using System.Windows;
 
- using System.Windows.Controls;
 
- using System.Windows.Forms;
 
- using System.Xml.Linq;
 
- namespace FurnaceUI.Views.Parameter
 
- {
 
-     public class AUXEditViewModel : FurnaceUIViewModelBase
 
-     {
 
-         #region 页面构造函数及其重载方法
 
-         protected override void OnInitialize()
 
-         {
 
-             base.OnInitialize();
 
-             GetModifyValue();
 
-             foreach (var item in TableNodeItems)
 
-             {
 
-                 var key = $"{item.Path}.{item.Name}";
 
-                 ValueList.Add(new PageValue() { Path = key, CurrentValue = item.CurrentValue, Max = item.Max, Min = item.Min, Type = item.Type });
 
-             }
 
-         }
 
-         #endregion
 
-         #region 模型字段
 
-         public List<ConfigItem> TableNodeItems { get; set; } = new List<ConfigItem>();
 
-         /// </summary>
 
-         private bool _isModifyAll = false;
 
-         public bool IsModifyAll
 
-         {
 
-             get { return _isModifyAll; }
 
-             set { _isModifyAll = value; this.NotifyOfPropertyChange(nameof(IsModifyAll)); }
 
-         }
 
-         public ObservableCollection<PageValue> ValueList { get; set; } = new ObservableCollection<PageValue>();
 
-         #endregion
 
-         private void GetModifyValue()
 
-         {
 
-             var value = SystemConfigProvider.Instance.GetValueByName("PM1.RecipeEditParameter.AUX.IsModifyAll");
 
-             IsModifyAll = bool.Parse(value);
 
-         }
 
-         public void SaveBtnClick()
 
-         {
 
-             List<bool> bools = new List<bool>();
 
-             foreach (var item in ValueList)
 
-             {
 
-                 var name = item.Path.Split('.').LastOrDefault();
 
-                 var canModifyAI = !IsModifyAll && name.Equals("AI");
 
-                 var canModifyUnit = !IsModifyAll && name.Equals("Unit");
 
-                 var canModifyAO = !IsModifyAll && name.Equals("AO");
 
-                 var canModifyInstalled = name.Equals("IsInstalled");
 
-                 if (canModifyAI || canModifyAO || canModifyUnit || canModifyInstalled) continue;
 
-                 if (!name.Equals("Unit") && string.IsNullOrEmpty(item.CurrentValue))
 
-                 {
 
-                     DialogBox.ShowWarning($"{name}值不可为空");
 
-                     bools.Add(false);
 
-                     return;
 
-                 }
 
-                 if (item.Type.Equals(DataType.String) || item.Type.Equals(DataType.Unknown))
 
-                 {
 
-                     bools.Add(true);
 
-                     continue;
 
-                 }
 
-                 double number;
 
-                 if (!double.TryParse(item.CurrentValue, out number))
 
-                 {
 
-                     DialogBox.ShowWarning($"{name}值必须为double类型");
 
-                     bools.Add(false);
 
-                     return;
 
-                 }
 
-                 if (!IsInRange(number, item.Min, item.Max))
 
-                 {
 
-                     DialogBox.ShowWarning($"{name}值必须位于{item.Min}-{item.Max}之间");
 
-                     bools.Add(false);
 
-                     return;
 
-                 }
 
-                 bools.Add(true);
 
-             }
 
-             if (bools != null && !bools.Contains(false))
 
-             {
 
-                 foreach (var item in ValueList)
 
-                 {
 
-                     var name = item.Path.Split('.').LastOrDefault();
 
-                     var canModifyAI = !IsModifyAll && name.Equals("AI");
 
-                     var canModifyUnit = !IsModifyAll && name.Equals("Unit");
 
-                     var canModifyAO = !IsModifyAll && name.Equals("AO");
 
-                     var canModifyInstalled = name.Equals("IsInstalled");
 
-                     if (canModifyUnit || canModifyAO || canModifyAI || canModifyInstalled)
 
-                     {
 
-                         continue;
 
-                     }
 
-                     InvokeClient.Instance.Service.DoOperation("System.SetConfig", item.Path, item.CurrentValue);
 
-                 }
 
-             }
 
-              ((Window)GetView()).DialogResult = true;
 
-         }
 
-         private bool IsInRange(double num, double min, double max)
 
-         {
 
-             return (num >= min && num <= max);
 
-         }
 
-         public void CancelBtnClick()
 
-         {
 
-             ((Window)GetView()).DialogResult = false;
 
-         }
 
-     }
 
- }
 
 
  |