| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180 | 
							- using MECF.Framework.Common.CommonData;
 
- using MECF.Framework.Common.DataCenter;
 
- using MECF.Framework.Common.IOCore;
 
- using OpenSEMI.ClientBase;
 
- 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;
 
- namespace FurnaceUI.Views.Operations
 
- {
 
-     public class InterlockItemViewModel : FurnaceUIViewModelBase
 
-     {
 
-         public string ItemType { get; set; }
 
-         public ObservableCollection<InterlockItem> InterlockItems { get; set; } = new ObservableCollection<InterlockItem>();
 
-         private InterlockItem _interlockSelectedItem;
 
-         public InterlockItem InterlockSelectedItem
 
-         {
 
-             get => _interlockSelectedItem;
 
-             set
 
-             {
 
-                 _interlockSelectedItem = value;
 
-                 NotifyOfPropertyChange(nameof(InterlockSelectedItem));
 
-             }
 
-         }
 
-         private string _selectedItem;
 
-         public string SelectedItem
 
-         {
 
-             get => _selectedItem;
 
-             set
 
-             {
 
-                 _selectedItem = value;
 
-                 NotifyOfPropertyChange(nameof(SelectedItem));
 
-             }
 
-         }
 
-         private string _searchKey;
 
-         public string SearchKey
 
-         {
 
-             get => _searchKey;
 
-             set
 
-             {
 
-                 _searchKey = value;
 
-                 NotifyOfPropertyChange(nameof(SearchKey));
 
-             }
 
-         }
 
-         public InterlockItemViewModel(string itemType)
 
-         {
 
-             ItemType = itemType;
 
-         }
 
-         protected override void OnInitialize()
 
-         {
 
-             InitItem();
 
-             base.OnInitialize();
 
-         }
 
-         private void InitItem()
 
-         {
 
-             if (ItemType == "Action")
 
-             {
 
-                 List<NotifiableIoItem> notifiableIoItems = new List<NotifiableIoItem>();
 
-                 notifiableIoItems = QueryDataClient.Instance.Service.GetDoList($"System.PM1");
 
-                 for (int i = 0; i < notifiableIoItems.Count; i++)
 
-                 {
 
-                     InterlockItems.Add(new InterlockItem() { ItemName = notifiableIoItems[i].Name });
 
-                 }
 
-             }
 
-             else
 
-             {
 
-                 List<NotifiableIoItem> notifiableIoItems = new List<NotifiableIoItem>();
 
-                 notifiableIoItems = QueryDataClient.Instance.Service.GetDiList($"System.PM1");
 
-                 for (int i = 0; i < notifiableIoItems.Count; i++)
 
-                 {
 
-                     InterlockItems.Add(new InterlockItem() { ItemName = notifiableIoItems[i].Name });
 
-                 }
 
-                 notifiableIoItems = QueryDataClient.Instance.Service.GetAiList($"System.PM1");
 
-                 for (int i = 0; i < notifiableIoItems.Count; i++)
 
-                 {
 
-                     InterlockItems.Add(new InterlockItem() { ItemName = notifiableIoItems[i].Name });
 
-                 }
 
-                 notifiableIoItems = QueryDataClient.Instance.Service.GetDoList($"System.PM1");
 
-                 for (int i = 0; i < notifiableIoItems.Count; i++)
 
-                 {
 
-                     InterlockItems.Add(new InterlockItem() { ItemName = notifiableIoItems[i].Name });
 
-                 }
 
-             }
 
-         }
 
-         public void SearchItem()
 
-         {
 
-             if (!string.IsNullOrEmpty(SearchKey))
 
-             {
 
-                 InterlockItems.Clear();
 
-                 if (ItemType == "Action")
 
-                 {
 
-                     List<NotifiableIoItem> notifiableIoItems = new List<NotifiableIoItem>();
 
-                     notifiableIoItems = QueryDataClient.Instance.Service.GetDoList($"System.PM1");
 
-                     for (int i = 0; i < notifiableIoItems.Count; i++)
 
-                     {
 
-                         if (notifiableIoItems[i].Name.Contains(SearchKey))
 
-                             InterlockItems.Add(new InterlockItem() { ItemName = notifiableIoItems[i].Name });
 
-                     }
 
-                 }
 
-                 else
 
-                 {
 
-                     List<NotifiableIoItem> notifiableIoItems = new List<NotifiableIoItem>();
 
-                     notifiableIoItems = QueryDataClient.Instance.Service.GetDiList($"System.PM1");
 
-                     for (int i = 0; i < notifiableIoItems.Count; i++)
 
-                     {
 
-                         if (notifiableIoItems[i].Name.Contains(SearchKey))
 
-                             InterlockItems.Add(new InterlockItem() { ItemName = notifiableIoItems[i].Name });
 
-                     }
 
-                     notifiableIoItems = QueryDataClient.Instance.Service.GetAiList($"System.PM1");
 
-                     for (int i = 0; i < notifiableIoItems.Count; i++)
 
-                     {
 
-                         if (notifiableIoItems[i].Name.Contains(SearchKey))
 
-                             InterlockItems.Add(new InterlockItem() { ItemName = notifiableIoItems[i].Name });
 
-                     }
 
-                     notifiableIoItems = QueryDataClient.Instance.Service.GetDoList($"System.PM1");
 
-                     for (int i = 0; i < notifiableIoItems.Count; i++)
 
-                     {
 
-                         if (notifiableIoItems[i].Name.Contains(SearchKey))
 
-                             InterlockItems.Add(new InterlockItem() { ItemName = notifiableIoItems[i].Name });
 
-                     }
 
-                 }
 
-             }
 
-             else
 
-             {
 
-                 DialogBox.ShowWarning("Please input search key!");
 
-             }
 
-         }
 
-         public void SelectItem()
 
-         {
 
-             if (InterlockSelectedItem == null)
 
-                 SelectedItem = "";
 
-             else
 
-                 SelectedItem = InterlockSelectedItem.ItemName;
 
-         }
 
-         public void SaveCmd()
 
-         {
 
-             if (string.IsNullOrEmpty(SelectedItem))
 
-             {
 
-                 DialogBox.ShowWarning("SelectedItem is empty!");
 
-                 return;
 
-             }
 
-             ((Window)GetView()).DialogResult = true;
 
-         }
 
-         public void CloseCmd()
 
-         {
 
-             ((Window)GetView()).DialogResult = false;
 
-         }
 
-     }
 
-     public class InterlockItem : NotifiableItem
 
-     {
 
-         private string _itemName;
 
-         public string ItemName
 
-         {
 
-             get => _itemName;
 
-             set
 
-             {
 
-                 _itemName = value;
 
-                 InvokePropertyChanged(nameof(ItemName));
 
-             }
 
-         }
 
-     }
 
- }
 
 
  |