From 305e2990bb2161177e87ab7711f9dfb205762bcd Mon Sep 17 00:00:00 2001
From: kingno <30263@KINGNO>
Date: 星期一, 09 六月 2025 15:52:42 +0800
Subject: [PATCH] 优化数据传递

---
 src/Bro.M141_AOI1.Process/AOI1Process.cs |   70 ++++++++++++++++++++++++----------
 1 files changed, 49 insertions(+), 21 deletions(-)

diff --git a/src/Bro.M141_AOI1.Process/AOI1Process.cs b/src/Bro.M141_AOI1.Process/AOI1Process.cs
index 78b73b9..823c420 100644
--- a/src/Bro.M141_AOI1.Process/AOI1Process.cs
+++ b/src/Bro.M141_AOI1.Process/AOI1Process.cs
@@ -6,12 +6,14 @@
 using Bro.M141.Process;
 using Bro.UI.Model.Winform;
 using HalconDotNet;
+using Newtonsoft.Json;
 using NPOI.POIFS.Crypt.Dsig;
 using NPOI.SS.Formula.Functions;
 using NPOI.XSSF.Streaming.Values;
 using System.Collections.Concurrent;
 using System.Net.Sockets;
 using System.Text.RegularExpressions;
+using static Bro.Common.Helper.EnumHelper;
 using static NPOI.HSSF.Util.HSSFColor;
 using static Org.BouncyCastle.Crypto.Engines.SM2Engine;
 using static Org.BouncyCastle.Math.EC.ECCurve;
@@ -29,12 +31,21 @@
 
         AOI1Config ConfigAOI1 => Config as AOI1Config;
 
-
-
         public override void Open()
         {
-            base.Open();
 
+            //string configPath = @"C:\Users\30263\Desktop\666.txt";
+
+            //string _configBackupStr = "";
+            //using (StreamReader reader = new StreamReader(configPath, System.Text.Encoding.UTF8))
+            //{
+            //    _configBackupStr = reader.ReadToEnd();
+
+            //}
+
+            //ProductModel p = JsonConvert.DeserializeObject<ProductModel>(_configBackupStr, new JsonSerializerSettings() { TypeNameHandling = TypeNameHandling.All });
+
+            base.Open();
         }
 
         [ProcessMethod("", "PositionCheck_P1", "宸ヤ綅1妫�娴�", InvokeType.TestInvoke)]
@@ -117,14 +128,47 @@
                     }
                     else
                     {
-                        ret.Add(1);
+                        if (barcode.Split('-').Length > 5)
+                        {
+                            int mh = Plc1.Read(4000, 1, out _)[0];
+                            string codestr = barcode.Split('-')[4];
+                            if (codestr == "L")
+                            {
+                                codestr = "10";
+                            }
+
+                            if (codestr.Equals(mh.ToString()))
+                            {
+                                ret.Add(1);
+                            }
+                            else
+                            {
+                                ret.Add(2);
+                                Plc1.WriteSingleAddress(4010, 1, out _);//缁檖lc鎶ヨ
+                            }
+                        }
+                        else
+                        {
+                            ret.Add(999);
+                        }
                     }
 
                     FillSpecResults(results[0].PID, results[0].Specs, ret, opConfig.Products[0].SEQUENCE);
 
 
                     opConfig.Products[0].SN = barcode;
-                    opConfig.Products[0].Details.ForEach(u => u.SN = barcode);
+                    opConfig.Products[0].PID = barcode + "_1";
+                    opConfig.Products[0].Details.ForEach(u =>
+                    {
+                        u.SN = barcode;
+                        u.PID = barcode + "_1";
+                        u.ResultList.ForEach(x =>
+                    {
+
+                        x.PID = barcode + "_1";
+
+                    });
+                    });
 
                     LogAsync(DateTime.Now, EnumHelper.LogLevel.Action, $"浜у搧{opConfig.Products[0].PID}鏉$爜鑾峰彇涓簕barcode}");
                 }
@@ -158,7 +202,6 @@
 
             return msg;
         }
-
 
 
         private string BarcodeScannerCommunicate(TcpClientWrapBase client)
@@ -200,10 +243,6 @@
             }
             return isBarcodeValid;
         }
-
-
-
-
 
 
         [ProcessMethod("ImageCheck", "CheckLineProfile", "妫�娴嬩骇鍝佺嚎杞粨搴�", InvokeType.TestInvoke)]
@@ -347,17 +386,6 @@
 
             return msg;
         }
-
-
-
-
-
-
-
-
-
-
-
 
 
 

--
Gitblit v1.8.0