| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165 | 
							- using Caliburn.Micro;
 
- using Caliburn.Micro.Core;
 
- using Aitex.Core.Common.DeviceData;
 
- using Aitex.Core.UI.ControlDataContext;
 
- using Aitex.Core.Util;
 
- using MECF.Framework.Common.DataCenter;
 
- using MECF.Framework.Common.OperationCenter;
 
- using FurnaceUI.Models;
 
- using FurnaceUI.Views.Editors;
 
- using System.Collections.ObjectModel;
 
- using System.Collections.Generic;
 
- using System.Threading.Tasks;
 
- using System.Reflection;
 
- using System;
 
- using Aitex.Core.RT.Log;
 
- using System.Linq;
 
- using System.Windows;
 
- using MECF.Framework.UI.Client.CenterViews.Configs.SystemConfig;
 
- using OpenSEMI.ClientBase;
 
- using MECF.Framework.Common.Jobs;
 
- namespace FurnaceUI.Views.Maintenances
 
- {
 
-     public class FIMSSensorViewModel : FurnaceUIViewModelBase
 
-     {
 
-         public bool IsPermission { get => this.Permission == 3; }
 
-         private bool _fIMS1CycleVisibility = false;
 
-         public bool FIMS1CycleVisibility { get => _fIMS1CycleVisibility; set => SetField(ref _fIMS1CycleVisibility, value, nameof(FIMS1CycleVisibility)); }
 
-         private bool _fIMS2CycleVisibility = false;
 
-         public bool FIMS2CycleVisibility { get => _fIMS2CycleVisibility; set => SetField(ref _fIMS2CycleVisibility, value, nameof(FIMS2CycleVisibility)); }
 
-         [Subscription("FIMS1.FIMSCycledCount")]
 
-         public int FIMS1CycledCount { get; set; }
 
-         [Subscription("FIMS2.FIMSCycledCount")]
 
-         public int FIMS2CycledCount { get; set; }
 
-         public string FIMS1CycleInfo => $"{FIMS1CycledCount} / {_fims1CycleCount}";
 
-         public string FIMS2CycleInfo => $"{FIMS2CycledCount} / {_fims2CycleCount}";
 
-         private int _fims1CycleCount;
 
-         private int _fims2CycleCount;
 
-         [Subscription("Scheduler.ControlJobList")]
 
-         public List<ControlJobInfo> ControlJobs
 
-         {
 
-             get;
 
-             set;
 
-         }
 
-         public bool IsSystemStaus
 
-         {
 
-             get
 
-             {
 
-                 if (ControlJobs != null && ControlJobs.Count > 0)
 
-                 {
 
-                     return ControlJobs.FirstOrDefault().State == EnumControlJobState.Paused;
 
-                 }
 
-                 return (RtStatus != "AutoRunning");
 
-             }
 
-             set { }
 
-         }
 
-         [Subscription("FIMS1.Status")]
 
-         public string FIMS1Status { get; set; }
 
-         [Subscription("FIMS2.Status")]
 
-         public string FIMS2Status { get; set; }
 
-         [Subscription("Rt.Status")]
 
-         public string RtStatus { get; set; }
 
-         [Subscription("FIMS1.IsOnline")]
 
-         public bool FIMS1IsOnline { get; set; }
 
-         [Subscription("FIMS2.IsOnline")]
 
-         public bool FIMS2IsOnline { get; set; }
 
-         public bool IsFIMS1OnlineButtonEnable => !FIMS1IsOnline;
 
-         public bool IsFIMS2OnlineButtonEnable => !FIMS2IsOnline;
 
-         public bool IsFIMS1OfflineButtonEnable => FIMS1IsOnline && RtStatus != "AutoRunning";
 
-         public bool IsFIMS2OfflineButtonEnable => FIMS2IsOnline && RtStatus != "AutoRunning";
 
-         public FIMSSensorViewModel()
 
-         {
 
-         }
 
-         public void Home(object target)
 
-         {
 
-             if (DialogBox.Confirm($"Are you sure you want to {target} Home?"))
 
-                 InvokeClient.Instance.Service.DoOperation($"{target}.Home");
 
-         }
 
-         public void Load(object target)
 
-         {
 
-             if (DialogBox.Confirm($"Are you sure you want to {target} Load?"))
 
-             {
 
-                 var valueConfig = SystemConfigProvider.Instance.GetValueByName("PM1.N2Purge.WaferCharge.FOUPN2PurgeEnable");
 
-                 InvokeClient.Instance.Service.DoOperation($"{target}.Load", new object[] { valueConfig });
 
-             }
 
-         }
 
-         public void Unload(object target)
 
-         {
 
-             if (DialogBox.Confirm($"Are you sure you want to {target} Unload?"))
 
-                 InvokeClient.Instance.Service.DoOperation($"{target}.Unload");
 
-         }
 
-         public void SetAlarmReset(object target)
 
-         {
 
-             if (DialogBox.Confirm($"Are you sure you want to {target} Reset?"))
 
-                 InvokeClient.Instance.Service.DoOperation($"{target?.ToString().Split('.').ToList().LastOrDefault()}.Reset");
 
-         }
 
-         public void SetOnline(object target)
 
-         {
 
-             if (!DialogBox.Confirm($"Are you sure  want to {target} Online?"))
 
-                 return;
 
-             InvokeClient.Instance.Service.DoOperation($"{target}.SetOnline");
 
-         }
 
-         public void SetOffline(object target)
 
-         {
 
-             if (!DialogBox.Confirm($"Are you sure  want to {target} Offline?"))
 
-                 return;
 
-             InvokeClient.Instance.Service.DoOperation($"{target}.SetOffline");
 
-         }
 
-         public void ClosedCmd()
 
-         {
 
-             (GetView() as Window).Close();
 
-         }
 
-         protected override void OnViewLoaded(object view)
 
-         {
 
-             base.OnViewLoaded(view);
 
-             _fims1CycleCount = (int)QueryDataClient.Instance.Service.GetConfig("FIMS.FIMS1.CycleCount");
 
-             _fims2CycleCount = (int)QueryDataClient.Instance.Service.GetConfig("FIMS.FIMS2.CycleCount");
 
-         }
 
-         public void SetDockUndock(object target, bool value)
 
-         {
 
-             InvokeClient.Instance.Service.DoOperation($"{target}.SetDockUndock", value);
 
-         }
 
-         protected override void InvokeAfterUpdateProperty(Dictionary<string, object> data)
 
-         {
 
-             base.InvokeAfterUpdateProperty(data);
 
-             FIMS1CycleVisibility = FIMS1Status == "Cycle";
 
-             FIMS2CycleVisibility = FIMS2Status == "Cycle";
 
-         }
 
-         public void SetFIMSCycle(object target)
 
-         {
 
-             if (!DialogBox.Confirm($"Are you sure  want to {target} Cycle Start?"))
 
-                 return;
 
-             InvokeClient.Instance.Service.DoOperation($"{target}.Cycle");
 
-         }
 
-         public void SetFIMSAbort(object target)
 
-         {
 
-             if (!DialogBox.Confirm($"Are you sure  want to {target} Cycle Stop?"))
 
-                 return;
 
-             InvokeClient.Instance.Service.DoOperation($"{target}.Abort");
 
-         }
 
-     }
 
- }
 
 
  |