From 2b05362eba2f989b7857349cc9a3a1c12f8181b6 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周五, 26 9月 2025 11:35:50 +0800
Subject: [PATCH] 222

---
 DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/DataCaptureHandler_03.cs |  108 ++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 77 insertions(+), 31 deletions(-)

diff --git a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/DataCaptureHandler_03.cs b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/DataCaptureHandler_03.cs
index ce93629..23f3513 100644
--- a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/DataCaptureHandler_03.cs
+++ b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/DataCaptureHandler_03.cs
@@ -1,4 +1,5 @@
 锘縰sing iWare_SCADA_BusinessLogical.BLL;
+using iWare_SCADA_BusinessLogical.BLL.Important;
 using iWare_SCADA_BusinessLogical.Utils;
 using iWare_SCADA_Model;
 using iWare_SCADA_Model.MiddleModel;
@@ -46,6 +47,7 @@
         {
             if (SystemValue.isStartedImitateModel)
             {
+                /*
                 var plcService = PLCManger.GetSinglePLCService(_dataCaptureConfig);
                 WorkPieceLogMiddle wplog = new WorkPieceLogMiddle();
                 wplog.Id = Yitter.IdGenerator.YitIdHelper.NextId();
@@ -64,8 +66,8 @@
                 wplog.UpdatedTime = DateTimeHelper.GetDateTime();
                 wplog.UpdatedUserName = DataCapturePointCode;
                 //鏇存柊WorkPieceInfo琛ㄤ互鍙婃彃鍏orkPieceLog琛ㄥ拰WorkPieceInfoLog琛�
-                WorkPieceInfoManager.WorkPiecePushOff(wplog, PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure));
-
+                WorkPiecePushOffManager.WorkPiecePushOff(wplog, PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure));
+                //*/
                 return;
             }
             ThreadStatusMonitorMiddle threadStatusMonitor = new ThreadStatusMonitorMiddle();
@@ -84,7 +86,7 @@
                     //plcService.Close();
                     //plcService.OpenService();
                 }
-                string value_03 = "";
+                string value_03 = "FALSE";//榛樿
                 while (true)
                 {
                     threadStatusMonitor.ErrorMsg = "";
@@ -110,12 +112,11 @@
                         else
                         {
                             var value = plcService.ReadValuePoint(_dataCaptureConfig.DbNumber, _dataCaptureConfig.Offset, PLCManger.GetTypeForString(_dataCaptureConfig.DataCaptureColumnType));
-                            if (value_03.ToUpper().Equals("FALSE") && value.ToString().ToUpper().Equals("TRUE"))
-                            {//褰撲笂涓�鏍囪浣�0锛屽綋鍓嶈幏鍙栨爣璁颁负1鏃讹紝
-                             //瑙﹀彂鎿嶄綔,  骞剁粰闈欐�佸彉閲忚祴鍊间负1
-                             //涓氬姟浠g爜
-                                threadStatusMonitor.Threadlastmodifytime = DateTime.Now;
-                                WorkPieceLogMiddle wplog = new WorkPieceLogMiddle();
+                            WorkPieceLogMiddle wplog = null;
+                            var value_bool = value.ToString().ToUpper().Equals("TRUE");
+                            if (value_bool)
+                            {
+                                wplog = new WorkPieceLogMiddle();
                                 wplog.Id = Yitter.IdGenerator.YitIdHelper.NextId();
                                 wplog.WorkingProcedure = WorkingProcedure;
                                 wplog.EquipmentID = _dataCaptureConfig.EquipmentID; ;
@@ -147,37 +148,82 @@
                                         Log4NetHelper.WriteErrorLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $" {WorkingProcedure}宸ュ簭鐩戞帶NOOK鏍囪 璇诲彇宸ヤ欢鐮佸姩鎬佽祴鍊笺�恵WorkingProcedure ?? "绌哄瓧绗︿覆"}銆戝紓甯竰wplog.Id}", setex);
                                     }
                                 }
-                                if (_dataCaptureConfig.WorkingProcedure.Equals("OP20")
-                                    //||_dataCaptureConfig.WorkingProcedure.Equals("OP60")
-                                    )
-                                {//op20浼氬悓鏃舵帹鍑哄浠讹紝鎵�浠ョ壒娈婂鐞�
-                                    wplog.WorkPieceID = wplog.WorkPieceIDA;
-                                    wplog.Remarks = "NOOK鎺ㄥ嚭宸ヤ欢A";
-                                    WorkPieceInfoManager.WorkPiecePushOff(wplog, PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure));
-                                    wplog.WorkPieceID = wplog.WorkPieceIDB;
-                                    wplog.Remarks = "NOOK鎺ㄥ嚭宸ヤ欢B";
-                                    WorkPieceInfoManager.WorkPiecePushOff(wplog, PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure));
-                                    wplog.WorkPieceID = wplog.WorkPieceIDC;
-                                    wplog.Remarks = "NOOK鎺ㄥ嚭宸ヤ欢C";
-                                    WorkPieceInfoManager.WorkPiecePushOff(wplog, PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure));
-                                    //wplog.WorkPieceID = wplog.WorkPieceIDD;
-                                    //wplog.Remarks = "NOOK鎺ㄥ嚭宸ヤ欢D";
-                                    //WorkPieceInfoManager.WorkPiecePushOff(wplog, PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure));
+
+                                //鐩戞帶涓婄嚎
+                                if (!_dataCaptureConfig.WorkingProcedure.Equals("OP20"))
+                                {
+                                    MonitorHelper.MonitorTestForLine(_dataCaptureConfig, value, colConfig, wplog.WorkPieceID);
                                 }
                                 else
                                 {
-                                    //鏇存柊WorkPieceInfo琛ㄤ互鍙婃彃鍏orkPieceLog琛ㄥ拰WorkPieceInfoLog琛�
-                                    WorkPieceInfoManager.WorkPiecePushOff(wplog, PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure));
+                                    MonitorHelper.MonitorTestForLine(_dataCaptureConfig, value, colConfig, wplog.WorkPieceIDA);
+                                    MonitorHelper.MonitorTestForLine(_dataCaptureConfig, value, colConfig, wplog.WorkPieceIDB);
+                                    MonitorHelper.MonitorTestForLine(_dataCaptureConfig, value, colConfig, wplog.WorkPieceIDC);
                                 }
-                                threadStatusMonitor.Threadstatue = 1;
+                            }
+                            else
+                            {
+                                value_03 = value.ToString();
+                            }
+
+                            if (wplog != null)
+                            {
+                                if (_dataCaptureConfig.WorkingProcedure.Equals("OP20"))
+                                {//鐗规畩澶勭悊OP20
+                                    if (value_03.ToUpper().Equals("FALSE") && value.ToString().ToUpper().Equals("TRUE"))
+                                    {//褰撲笂涓�鏍囪浣�0锛屽綋鍓嶈幏鍙栨爣璁颁负1鏃讹紝
+                                     //瑙﹀彂鎿嶄綔,  骞剁粰闈欐�佸彉閲忚祴鍊间负1
+                                     //涓氬姟浠g爜
+                                        threadStatusMonitor.Threadlastmodifytime = DateTime.Now;
+
+                                        //op20浼氬悓鏃舵帹鍑哄浠讹紝鎵�浠ョ壒娈婂鐞�
+                                        wplog.WorkPieceID = wplog.WorkPieceIDA;
+                                        wplog.Remarks = "NOOK鎺ㄥ嚭宸ヤ欢A";
+                                        WorkPiecePushOffManager.WorkPiecePushOff(wplog, PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure));
+                                        wplog.WorkPieceID = wplog.WorkPieceIDB;
+                                        wplog.Remarks = "NOOK鎺ㄥ嚭宸ヤ欢B";
+                                        WorkPiecePushOffManager.WorkPiecePushOff(wplog, PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure));
+                                        wplog.WorkPieceID = wplog.WorkPieceIDC;
+                                        wplog.Remarks = "NOOK鎺ㄥ嚭宸ヤ欢C";
+                                        WorkPiecePushOffManager.WorkPiecePushOff(wplog, PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure));
+                                        //wplog.WorkPieceID = wplog.WorkPieceIDD;
+                                        //wplog.Remarks = "NOOK鎺ㄥ嚭宸ヤ欢D";
+                                        //WorkPieceInfoManager.WorkPiecePushOff(wplog, PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure));
+
+                                        threadStatusMonitor.Threadstatue = 1;
+                                    }
+                                    value_03 = value.ToString();
+                                }
+                                else
+                                {
+                                    var isRight = SystemBussinessHelper.ValidateIsRightWorkPieceID(wplog.WorkPieceID);
+                                    if (isRight)
+                                    {
+                                        #region 澶勭悊涓氬姟
+
+                                        if (value_03.ToUpper().Equals("FALSE") && value.ToString().ToUpper().Equals("TRUE"))
+                                        {//褰撲笂涓�鏍囪浣�0锛屽綋鍓嶈幏鍙栨爣璁颁负1鏃讹紝
+                                         //瑙﹀彂鎿嶄綔,  骞剁粰闈欐�佸彉閲忚祴鍊间负1
+                                         //涓氬姟浠g爜
+                                            threadStatusMonitor.Threadlastmodifytime = DateTime.Now;
+
+                                            //鏇存柊WorkPieceInfo琛ㄤ互鍙婃彃鍏orkPieceLog琛ㄥ拰WorkPieceInfoLog琛�
+                                            WorkPiecePushOffManager.WorkPiecePushOff(wplog, PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure));
+
+                                            threadStatusMonitor.Threadstatue = 1;
 
 
 
+
+                                        }
+                                        value_03 = value.ToString();
+
+                                        #endregion
+                                    }
+
+                                }
 
                             }
-                            value_03 = value.ToString();
-
-
                         }
                         threadStatusMonitor.Remarks = $"abcdefg:{RandomHelper.GenerateRandomCode(4)}";
 

--
Gitblit v1.9.3