| 
					
				 | 
			
			
				@@ -20,7 +20,7 @@ using FurnaceUI.Views.Maintenances; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 namespace FurnaceUI.Views.Operations
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public class SelfCheckViewModel : FurnaceUIViewModelBase
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -644,7 +644,7 @@ namespace FurnaceUI.Views.Operations 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             get
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                return IsManagerPermission&&(RtStatus == "Idle" || RtStatus == "AutoIdle");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return IsManagerPermission && (RtStatus == "Idle" || RtStatus == "AutoIdle");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         public bool PM1Installed { get; set; }
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1197,8 +1197,16 @@ namespace FurnaceUI.Views.Operations 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (ModuleManager.ModuleInfos.ContainsKey("WaferRobot"))
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 WaferInfo[] waferInfos = ModuleManager.ModuleInfos["WaferRobot"].WaferManager.Wafers.ToArray();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                WaferRobotWafer1 = waferInfos[0];
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                WaferRobotWafer2 = waferInfos[1];
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (waferInfos.Count() > 0)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    WaferRobotWafer1 = waferInfos[0];
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (waferInfos.Count() > 1)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    WaferRobotWafer2 = waferInfos[1];
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             var isLoadPortPosition = (string)QueryDataClient.Instance.Service.GetConfig("LoadPort.LoadPortPosition");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (isLoadPortPosition == "Upper")
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1391,7 +1399,7 @@ namespace FurnaceUI.Views.Operations 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         lpViewModel.LP3BorderVisibility = false;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         lpViewModel.LP4BorderVisibility = false;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         lpViewModel.TabSelectIndex = 0;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        (windowManager as WindowManager)?.ShowDialogWithTitle(lpViewModel,this, null, "LP1 Manual");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        (windowManager as WindowManager)?.ShowDialogWithTitle(lpViewModel, this, null, "LP1 Manual");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     break;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 case "LP2":
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1401,8 +1409,8 @@ namespace FurnaceUI.Views.Operations 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         lpViewModel.LP2BorderVisibility = true;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         lpViewModel.LP3BorderVisibility = false;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         lpViewModel.LP4BorderVisibility = false;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        lpViewModel.TabSelectIndex =1;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        (windowManager as WindowManager)?.ShowDialogWithTitle(lpViewModel,this, null, "LP2 Manual");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        lpViewModel.TabSelectIndex = 1;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        (windowManager as WindowManager)?.ShowDialogWithTitle(lpViewModel, this, null, "LP2 Manual");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     break;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 case "LP3":
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1413,7 +1421,7 @@ namespace FurnaceUI.Views.Operations 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         lpViewModel.LP3BorderVisibility = true;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         lpViewModel.LP4BorderVisibility = false;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         lpViewModel.TabSelectIndex = 2;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        (windowManager as WindowManager)?.ShowDialogWithTitle(lpViewModel,this, null, "LP3 Manual");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        (windowManager as WindowManager)?.ShowDialogWithTitle(lpViewModel, this, null, "LP3 Manual");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     break;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 case "LP4":
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1424,17 +1432,17 @@ namespace FurnaceUI.Views.Operations 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         lpViewModel.LP3BorderVisibility = false;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         lpViewModel.LP4BorderVisibility = true;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         lpViewModel.TabSelectIndex = 3;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        (windowManager as WindowManager)?.ShowDialogWithTitle(lpViewModel,this, null, "LP4 Manual");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        (windowManager as WindowManager)?.ShowDialogWithTitle(lpViewModel, this, null, "LP4 Manual");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     break;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 case "FIMS1":
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 case "FIMS2":
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         FIMSSensorViewModel fimsSensorViewModel = new FIMSSensorViewModel();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        (windowManager as WindowManager)?.ShowDialogWithTitle(fimsSensorViewModel,this, null, "FIMS Manual");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        (windowManager as WindowManager)?.ShowDialogWithTitle(fimsSensorViewModel, this, null, "FIMS Manual");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     break;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 default:
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     break;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1447,36 +1455,36 @@ namespace FurnaceUI.Views.Operations 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 case "SMIFA":
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         SMIFViewModel smifViewModel = new SMIFViewModel();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        (windowManager as WindowManager)?.ShowDialogWithTitle(smifViewModel,this, null, "SMIF Status");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        (windowManager as WindowManager)?.ShowDialogWithTitle(smifViewModel, this, null, "SMIF Status");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     break;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 case "SMIFB":
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         SMIFViewModel smifViewModel = new SMIFViewModel();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        (windowManager as WindowManager)?.ShowDialogWithTitle(smifViewModel,this, null, "SMIF Status");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        (windowManager as WindowManager)?.ShowDialogWithTitle(smifViewModel, this, null, "SMIF Status");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     break;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 case "CassetteRobot":
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     CassetteRobotViewModel cassetteRobotViewModel = new CassetteRobotViewModel();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     cassetteRobotViewModel.SystemName = "SMIFA";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    (windowManager as WindowManager)?.ShowDialogWithTitle(cassetteRobotViewModel,this, null, "CassetteRobot Status");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    (windowManager as WindowManager)?.ShowDialogWithTitle(cassetteRobotViewModel, this, null, "CassetteRobot Status");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     break;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 case "WaferRobot":
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     WaferRobotViewModel waferRobotViewModel = new WaferRobotViewModel();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    (windowManager as WindowManager)?.ShowDialogWithTitle(waferRobotViewModel,this, null, "WaferRobot Status");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    (windowManager as WindowManager)?.ShowDialogWithTitle(waferRobotViewModel, this, null, "WaferRobot Status");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     break;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 case "Stage":
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     StageSensorViewModel stageSensorViewModel = new StageSensorViewModel();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    (windowManager as WindowManager)?.ShowDialogWithTitle(stageSensorViewModel,this, null, "Stage Status");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    (windowManager as WindowManager)?.ShowDialogWithTitle(stageSensorViewModel, this, null, "Stage Status");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     break;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 case "Stocker":
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     StockerSensorViewModel stockerSensorViewModel = new StockerSensorViewModel();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    (windowManager as WindowManager)?.ShowDialogWithTitle(stockerSensorViewModel,this, null, "Stocker Status");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    (windowManager as WindowManager)?.ShowDialogWithTitle(stockerSensorViewModel, this, null, "Stocker Status");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     break;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 case "Boat":
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     BoatSensorViewModel boatSensorViewModel = new BoatSensorViewModel();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    (windowManager as WindowManager)?.ShowDialogWithTitle(boatSensorViewModel,this, null, "Boat Status");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    break;                
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    (windowManager as WindowManager)?.ShowDialogWithTitle(boatSensorViewModel, this, null, "Boat Status");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    break;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 default:
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     break;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1506,7 +1514,7 @@ namespace FurnaceUI.Views.Operations 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             var windowManager = IoC.Get<IWindowManager>();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             BoatModifyViewModel boatModifyViewModel = new BoatModifyViewModel(ModuleName.PM1.ToString());
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            (windowManager as WindowManager)?.ShowDialogWithTitle(boatModifyViewModel,this, null, "Boat Wafer");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            (windowManager as WindowManager)?.ShowDialogWithTitle(boatModifyViewModel, this, null, "Boat Wafer");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         public void PopupModule(string module)
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         {
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1515,15 +1523,15 @@ namespace FurnaceUI.Views.Operations 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 case "Init":
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     SelfCheckInitViewModel shelfCheckInitViewModel = new SelfCheckInitViewModel();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    (windowManager as WindowManager)?.ShowDialogWithTitle(shelfCheckInitViewModel,this, null, "Init");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    (windowManager as WindowManager)?.ShowDialogWithTitle(shelfCheckInitViewModel, this, null, "Init");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     break;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 case "ManualOperation":
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     SelfCheckManualOperationViewModel shelfCheckManualOperationViewModel = new SelfCheckManualOperationViewModel();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    (windowManager as WindowManager)?.ShowDialogWithTitle(shelfCheckManualOperationViewModel,this, null, "Manual Operation");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    (windowManager as WindowManager)?.ShowDialogWithTitle(shelfCheckManualOperationViewModel, this, null, "Manual Operation");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     break;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 case "Modify":
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     SelfCheckModifyViewModel shelfCheckModifyViewModel = new SelfCheckModifyViewModel();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    (windowManager as WindowManager)?.ShowDialogWithTitle(shelfCheckModifyViewModel,this, null, "Modify");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    (windowManager as WindowManager)?.ShowDialogWithTitle(shelfCheckModifyViewModel, this, null, "Modify");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     break;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     //case "SensorStatus":
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     //    SensorsViewModel sensorsViewModel = new SensorsViewModel();
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1536,7 +1544,7 @@ namespace FurnaceUI.Views.Operations 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             var windowManager = IoC.Get<IWindowManager>();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             RobotCommandViewModel robotCommandViewModel = new RobotCommandViewModel();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            (windowManager as WindowManager)?.ShowDialogWithTitle(robotCommandViewModel,this, null, "Modify");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            (windowManager as WindowManager)?.ShowDialogWithTitle(robotCommandViewModel, this, null, "Modify");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         public void CloseCmd()
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         {
 
			 |