From 3fc83007da4ba3442254bf36db0753514a0df1b0 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周三, 26 6月 2024 19:58:22 +0800
Subject: [PATCH] 2

---
 DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/HMI_WorkpieceReading.cs |   36 +++++++++++++++++++++---------------
 1 files changed, 21 insertions(+), 15 deletions(-)

diff --git a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/HMI_WorkpieceReading.cs b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/HMI_WorkpieceReading.cs
index 0ece0e1..2cd025d 100644
--- a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/HMI_WorkpieceReading.cs
+++ b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/HMI_WorkpieceReading.cs
@@ -54,13 +54,13 @@
         /// <param name="dataCaptureConfig"></param>
         public override void RefreshDataList(List<DataCaptureConfig> dataCaptureConfig)
         {
-          
+
         }
         /// <summary>
         /// 娓呴櫎HMI涓婃樉绀猴紙浜岀淮鐮佷笉鑳芥竻锛�
         /// </summary>
         /// <param name="colConfig"></param>
-        public void ClertHMI(PLCService plcService,List<DataCaptureColumnConfig> colConfig)
+        public void ClertHMI(PLCService plcService, List<DataCaptureColumnConfig> colConfig)
         {
             foreach (var col in colConfig.Where(o => o.DataCapturePointCode == DataCapturePointCode))
             {
@@ -76,6 +76,9 @@
                         plcService.WriteValuePointNew(col.DbNumber, col.Offset, 0);
                         break;
                     case "QualityState":
+                        plcService.WriteValuePointNew(col.DbNumber, col.Offset, 0);
+                        break;
+                    case "NoOkReason"://涓嶅悎鏍煎師鍥� 銆怑ditby shaocx,2024-06-23銆�
                         plcService.WriteValuePointNew(col.DbNumber, col.Offset, 0);
                         break;
                     case "QualityErrorInfo":
@@ -118,7 +121,7 @@
                     }
 
 
-                   
+
                     return;
                 }
                 if (plcService != null && !plcService.IsConnected)
@@ -175,11 +178,11 @@
                             object value1 = plcService.ReadValuePoint(_dataCaptureConfig.DbNumber, "88", 2, PLCManger.GetTypeForString("int"));
 
                             string value2 = value1 == null ? "" : value1.ToString().Trim();
-                            if ("50" .Equals(value2))
+                            if ("50".Equals(value2))
                             {
                                 ClertHMI(plcService, colConfig);
                             }
-                            else if ("21" .Equals(value2))
+                            else if ("21".Equals(value2))
                             {
                                 ClertHMI(plcService, colConfig);
                                 //10锛氭暟閲囪鍙栧け璐�
@@ -187,13 +190,13 @@
                                 //21锛氭壂鐮佹垚鍔熸爣璁�
                                 plcService.WriteValuePointNew(_dataCaptureConfig.DbNumber, "88", 11);
                                 object value = plcService.ReadValuePoint(_dataCaptureConfig.DbNumber, _dataCaptureConfig.Offset, _dataCaptureConfig.DataCaptureColumnLength.Value, PLCManger.GetTypeForString(_dataCaptureConfig.DataCaptureColumnType));
-                               
+
                                 if (value != null)
                                 {
                                     string WorkPieceID = value.ToString().Trim();
 
                                     //if (WorkPieceID.Length == 22)
-                                    if (WorkPieceID.Length>20)
+                                    if (WorkPieceID.Length > 20)
                                     {
                                         // 鏍规嵁宸ヤ欢鍙疯幏鍙栧伐浠朵俊鎭�
                                         WorkPieceInfo info = null;
@@ -201,10 +204,10 @@
                                         using (DbModel db = new DbModel())
                                         {
                                             info = new WorkPieceInfo();
-                                            info = db.WorkPieceInfo.Where(o => o.WorkPieceID == WorkPieceID&&o.IsDeleted==false).FirstOrDefault();
+                                            info = db.WorkPieceInfo.Where(o => o.WorkPieceID == WorkPieceID && o.IsDeleted == false).FirstOrDefault();
 
-                                            process = db.WorkPieceProcess.Where(o => o.WorkPieceID == WorkPieceID &&!o.OperationType.Equals("SPC")&& o.IsDeleted == false)
-                                                .OrderByDescending(o=>o.CreatedTime).FirstOrDefault();
+                                            process = db.WorkPieceProcess.Where(o => o.WorkPieceID == WorkPieceID && !o.OperationType.Equals("SPC") && o.IsDeleted == false)
+                                                .OrderByDescending(o => o.CreatedTime).FirstOrDefault();
                                         }
 
                                         if (info != null && info.Id > 0)
@@ -227,13 +230,16 @@
                                                     case "QualityState":
                                                         plcService.WriteValuePointNew(col.DbNumber, col.Offset, info.QualityState);
                                                         break;
+                                                    case "NoOkReason"://涓嶅悎鏍煎師鍥� 銆怑ditby shaocx,2024-06-23銆�
+                                                        plcService.WriteValuePointNew(col.DbNumber, col.Offset, info.QualityNoOk ?? 0);
+                                                        break;
                                                     case "ReaderEndState":
                                                         plcService.WriteValuePointNew(col.DbNumber, col.Offset, 11);
                                                         break;
                                                     case "DataSource":
-                                                        if(process!=null)
+                                                        if (process != null)
                                                         {
-                                                            plcService.WriteValuePointNew(col.DbNumber, col.Offset, process.CreatedUserName?? "Empty");
+                                                            plcService.WriteValuePointNew(col.DbNumber, col.Offset, process.CreatedUserName ?? "Empty");
                                                         }
                                                         else
                                                         {
@@ -283,7 +289,7 @@
                                             Log4NetHelper.WriteInfoLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $"HMI璇诲彇鐩戞帶 浜岀淮鐮佸�硷細銆�" + WorkPieceID + "銆戝湪鏁版嵁搴撲腑涓嶅瓨鍦�");
                                         }
                                     }
-                                    else if(WorkPieceID.Length > 0)
+                                    else if (WorkPieceID.Length > 0)
                                     {
                                         foreach (var col in colConfig.Where(o => o.DataCapturePointCode == DataCapturePointCode))
                                         {
@@ -337,9 +343,9 @@
                                 //}
                             }
 
-                           
+
                         }
-                        
+
                         if (!_dataCaptureConfig.DataCaptureFrequency.HasValue || _dataCaptureConfig.DataCaptureFrequency < 10)
                         {
                             Thread.Sleep(1000);

--
Gitblit v1.9.3