From 6a4463810e276b62356d77c88509fa6fa7af65cf Mon Sep 17 00:00:00 2001
From: kingno <30263@KINGNO>
Date: 星期三, 23 七月 2025 15:46:33 +0800
Subject: [PATCH] mes数据逻辑上传完善,缺陷代码完善,添加S4工位的S2结果上传Plc的通信日志mes优化

---
 src/Bro.M141.Process/M141Process_Mysql.cs |   46 ++++++++++++++++++++++++++++++++--------------
 1 files changed, 32 insertions(+), 14 deletions(-)

diff --git a/src/Bro.M141.Process/M141Process_Mysql.cs b/src/Bro.M141.Process/M141Process_Mysql.cs
index 865db24..ae1408c 100644
--- a/src/Bro.M141.Process/M141Process_Mysql.cs
+++ b/src/Bro.M141.Process/M141Process_Mysql.cs
@@ -23,10 +23,8 @@
 {
     public class M141Process_Mysql
     {
-
         string connStrAll = "server=localhost;port=3306;user id=root;password=123456;database=BroDB;charset=utf8";
         string connStrLocal = "server=localhost;port=3306;user id=root;password=123456;database=BroDB;charset=utf8";
-
 
         #region 鍩虹鎿嶄綔
         public void IniDBIP(string IP)
@@ -107,7 +105,6 @@
         }
 
         #endregion
-
 
 
         public void NewProduct(ProductModel pro)
@@ -199,7 +196,7 @@
                     //string destr = "delete from forall where id not in (select id from (select id from forall order BY id desc limit 1000) as subquery)";
                     //Operatoremysql(destr, connStrAll);
 
-                    if (string.IsNullOrEmpty(netname) /*|| devicestr != "S3" */)
+                    if (string.IsNullOrEmpty(netname) || devicestr != "S3")
                     {
                         if (pro.Details != null)
                         {
@@ -213,7 +210,6 @@
                                     item.DefectList.AddRange(defects.Distinct());
                                     item.DefectList = item.DefectList.Distinct().ToList();
                                 }
-
                             }
                         }
                     }
@@ -291,7 +287,7 @@
                             Operatoremysql(str2, connStrAll);
                         }
 
-                        string mysqlstr = $"insert into forall (basketcode,device,plcnum,sn,data,time) values('{pro.BasketCode}','{devicestr}','{pro.SEQUENCE}','{pro.SN}','{JsonConvert.SerializeObject(pro, new JsonSerializerSettings() { TypeNameHandling = TypeNameHandling.All })}','{DateTime.Now.ToString("yyyyMMddHHmmss")}')";
+                        string mysqlstr = $"insert into forall (basketcode,zword,device,plcnum,sn,data,time) values('{pro.BasketCode}','{pro.Zword}','{devicestr}','{pro.SEQUENCE}','{pro.SN}','{JsonConvert.SerializeObject(pro, new JsonSerializerSettings() { TypeNameHandling = TypeNameHandling.All })}','{DateTime.Now.ToString("yyyyMMddHHmmss")}')";
 
                         if (Operatoremysql(mysqlstr, connStrAll))
                         {
@@ -335,7 +331,6 @@
             return null;
         }
 
-
         public List<Netdefectdetail> GetNetdefectdetails(string plcnum)
         {
             try
@@ -360,12 +355,38 @@
             return null;
         }
 
-        public string Getbasketcode(string plcnum, out string sn)
+        public bool GetS2Result(string plcnum)
         {
-            sn = "Noread";
             try
             {
-                string mysqlstr = $"select basketcode,sn from forall where plcnum='{plcnum}' && device='S2' order by id desc limit 1";
+                string mysqlstr = $"select data from forall where plcnum='{plcnum}' && device='S2' order by id desc limit 1";
+                string str = selectmysql(mysqlstr, connStrAll);
+                if (string.IsNullOrEmpty(str))
+                {
+                    return false;
+                }
+                else
+                {
+                    ProductModel p = null;
+                    p = JsonConvert.DeserializeObject<ProductModel>(str, new JsonSerializerSettings() { TypeNameHandling = TypeNameHandling.All });
+
+                    return p.Result == "OK";
+                }
+            }
+            catch (Exception e)
+            {
+                CommonLogger.LogAsync(DateTime.Now, EnumHelper.LogLevel.Exception, $"鏁版嵁搴揻orlocal鑾峰彇瀵硅薄寮傚父 {e.ToString()}");
+            }
+            return false;
+        }
+
+        public string Getbasketcode(string plcnum, out string sn, out string zword)
+        {
+            sn = "Noread";
+            zword = "Noread";
+            try
+            {
+                string mysqlstr = $"select basketcode,sn,zword from forall where plcnum='{plcnum}' && device='S2' order by id desc limit 1";
                 var dt = selectdt(mysqlstr, connStrAll);
                 if (dt == null || dt.Rows.Count == 0)
                 {
@@ -374,6 +395,7 @@
                 else
                 {
                     sn = dt.Rows[0][1].ToString();
+                    zword = dt.Rows[0][2].ToString();
                     return dt.Rows[0][0].ToString();
                 }
             }
@@ -383,7 +405,6 @@
             }
             return "NoRead";
         }
-
 
         public List<ProductModel> GetProductList(string plcnum)
         {
@@ -417,8 +438,6 @@
             return null;
         }
 
-
-
         public DataTable getBasketCode()
         {
             try
@@ -443,7 +462,6 @@
 
 
         }
-
 
         public void NewBasketcode(string code)
         {

--
Gitblit v1.8.0