From 882170c9dbe7e1c5a3e859ac2fde7234e4ab462e Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周五, 23 8月 2024 15:16:47 +0800
Subject: [PATCH] NOOK推出时,更新质量状态 【Editby shaocx,2024-08-23】

---
 DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs        |    2 +
 DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/Utils/QualityStateHelper.cs        |   99 +++++++++++++++++++++++++++++++++++++++++++++++++
 DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/iWare_SCADA_BusinessLogical.csproj |    1 
 3 files changed, 102 insertions(+), 0 deletions(-)

diff --git a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs
index f33d548..4df18b8 100644
--- a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs
+++ b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs
@@ -965,6 +965,8 @@
                             pro.UpdatedTime = DateTimeHelper.GetDateTime();
                         }
 
+                        QualityStateHelper.SetQualityStateForNoOk(ref info, ref pro);
+
                         db.WorkPieceInfoLog.Add(GetAddWorkPieceInfoLog(info));
 
                     }
diff --git a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/Utils/QualityStateHelper.cs b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/Utils/QualityStateHelper.cs
new file mode 100644
index 0000000..f6198cc
--- /dev/null
+++ b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/Utils/QualityStateHelper.cs
@@ -0,0 +1,99 @@
+锘�
+using iWare_SCADA_Model;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace iWare_SCADA_BusinessLogical.Utils
+{
+    /// <summary>
+    /// 璐ㄩ噺鐘舵�佸彉鏇村府鍔╃被
+    /// </summary>
+    public class QualityStateHelper
+    {
+        /// <summary>
+        /// NOOK鎺ㄥ嚭鏃讹紝鏇存柊璐ㄩ噺鐘舵�� 銆怑ditby shaocx,2024-08-23銆�
+        /// </summary>
+        /// <param name="value"></param>
+        /// <returns></returns>
+        public static void SetQualityStateForNoOk(ref WorkPieceInfo info, ref WorkPieceProcess pro)
+        {
+            try
+            {
+                QualityNoOkEnum? qualityNoOkEnum = null;
+                info.QualityState = (int)QualityState.NG;
+
+                if (info.QualityNoOk == null)
+                {
+                    SetQualityNoOkEnum(info, ref qualityNoOkEnum);
+                    if (qualityNoOkEnum != null)
+                    {
+                        info.QualityNoOk = (int)qualityNoOkEnum;
+                        info.QualityNoOkReason = qualityNoOkEnum.ToString();
+                    }
+                }
+
+                if (pro != null)
+                {
+                    pro.QualityState = (int)QualityState.NG;
+
+                    if (qualityNoOkEnum != null)
+                    {
+                        info.QualityNoOk = (int)qualityNoOkEnum;
+                        info.QualityNoOkReason = qualityNoOkEnum.ToString();
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+
+            }
+        }
+
+
+        /// <summary>
+        /// 鑾峰彇涓嶅悎鏍煎師鍥�
+        /// </summary>
+        private static void SetQualityNoOkEnum(WorkPieceInfo logMiddle, ref QualityNoOkEnum? qualityNoOkEnum)
+        {
+            qualityNoOkEnum = null;
+            if (logMiddle.WorkingProcedureCurrent == "OP60")
+            {
+                return;
+            }
+            else if (logMiddle.WorkingProcedureCurrent == "OP80")
+            {
+                return;
+            }
+            else if (logMiddle.WorkingProcedureCurrent == "OP10")
+            {
+                qualityNoOkEnum = QualityNoOkEnum.OP10鍘氬害瓒呭樊;
+                return;
+            }
+            else if (logMiddle.WorkingProcedureCurrent == "OP20")
+            {
+                qualityNoOkEnum = QualityNoOkEnum.OP20灏忓ご瀛旂洿寰勮秴宸�;
+                return;
+            }
+            else if (logMiddle.WorkingProcedureCurrent == "OP30")
+            {
+                return;
+            }
+            else if (logMiddle.WorkingProcedureCurrent == "OP35")
+            {
+                qualityNoOkEnum = QualityNoOkEnum.OP35婊氬帇鍔涗笉鍚堟牸;
+                return;
+            }
+            else if (logMiddle.WorkingProcedureCurrent == "OP40")
+            {
+                qualityNoOkEnum = QualityNoOkEnum.OP40鍘氬害瓒呭樊;
+                return;
+            }
+            return;
+        }
+
+    }
+}
diff --git a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/iWare_SCADA_BusinessLogical.csproj b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/iWare_SCADA_BusinessLogical.csproj
index 02cec37..247ca55 100644
--- a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/iWare_SCADA_BusinessLogical.csproj
+++ b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/iWare_SCADA_BusinessLogical.csproj
@@ -156,6 +156,7 @@
       <DesignTime>True</DesignTime>
       <DependentUpon>Resources.resx</DependentUpon>
     </Compile>
+    <Compile Include="Utils\QualityStateHelper.cs" />
     <Compile Include="Utils\MonitorHelper.cs" />
     <Compile Include="Utils\SystemHelper.cs" />
     <Compile Include="Utils\ComboBoxHelper.cs" />

--
Gitblit v1.9.3