From ff7cab72419729ce2c5adc46350ef45d89a5d1e5 Mon Sep 17 00:00:00 2001
From: patrick.xu <patrick.xu@broconcentric.com>
Date: 星期六, 24 七月 2021 10:31:41 +0800
Subject: [PATCH] MES动作添加异常捕捉和重试机制

---
 src/Bro.M071.Process/M071Process.cs |   40 +++++++++++++++++++++++++++-------------
 1 files changed, 27 insertions(+), 13 deletions(-)

diff --git a/src/Bro.M071.Process/M071Process.cs b/src/Bro.M071.Process/M071Process.cs
index 69301a8..a281648 100644
--- a/src/Bro.M071.Process/M071Process.cs
+++ b/src/Bro.M071.Process/M071Process.cs
@@ -58,25 +58,31 @@
         {
             InitialSetting();
 
-            base.Open();
+            if (!Config.IsOfflineMode)
+            {
+                base.Open();
 
-            InitialMotionCardBaseAxisAlarm();
+                InitialMotionCardBaseAxisAlarm();
 
-            SwitchBeep(false);
-            SwitchLightGreen(false);
-            SwitchLightRed(false);
-            SwitchLightYellow(false);
+                SwitchBeep(false);
+                SwitchLightGreen(false);
+                SwitchLightRed(false);
+                SwitchLightYellow(false);
 
-            Reset(null, null, null);
-            FullReset(null);
+                Reset(null, null, null);
+                FullReset(null);
+            }
 
             if (Config.Precision > 0)
             {
                 _precision = "f" + Config.Precision;
             }
 
-            IncomingCheckMethod = InitialMESWebServiceMethod(IncomingCheckMethodName, out IncomingCheckObj);
-            DataUploadMethod = InitialMESWebServiceMethod(DataUploadMethodName, out DataUploadObj);
+            if (Config.IsEnableMESUpload)
+            {
+                IncomingCheckMethod = InitialMESWebServiceMethod(IncomingCheckMethodName, out IncomingCheckObj);
+                DataUploadMethod = InitialMESWebServiceMethod(DataUploadMethodName, out DataUploadObj);
+            }
 
             var allowedShiftStr = ConfigurationManager.AppSettings["DataShift"];
             if (!double.TryParse(allowedShiftStr, out _allowedShift))
@@ -268,7 +274,7 @@
                 _isdoing = true;
             }
 
-            MachineState = MachineState.Running;
+            MeasureState = MachineState = MachineState.Running;
 
             OnCheckHintUpload?.Invoke(hint, true);
             OnMeasureStart?.Invoke();
@@ -648,6 +654,7 @@
                 //if (MachineState == MachineState.Running)
                 //    MachineState = MachineState.Ready;
 
+                MeasureState = MachineState.Ready;
                 if (MachineState != MachineState.Alarm)
                 {
                     if (MachineState == MachineState.Pause)
@@ -1438,8 +1445,15 @@
 
                             keyBindList.ForEach(kb =>
                             {
-                                kb.KeyImages.Add(image.ConvertHObjectToHImage());
-                                kb.FillKeyValues(resultDict);
+                                if (kb.KeyImages != null)
+                                {
+                                    kb.KeyImages.Add(image.ConvertHObjectToHImage());
+                                    kb.FillKeyValues(resultDict);
+                                }
+                                else
+                                {
+
+                                }
                             });
                         });
 

--
Gitblit v1.8.0