From 606221429a2db29c0ce39cdd80e8a4d036722f34 Mon Sep 17 00:00:00 2001
From: kingno <30263@KINGNO>
Date: 星期四, 03 七月 2025 13:49:31 +0800
Subject: [PATCH] 优化离线测试图片无法二次测试的情况
---
src/Bro.M141.Process/M141Process_Mysql.cs | 26 +++++++++++++
src/Bro.M141.Process/M141Config.cs | 4 --
src/Bro.M141.Process/M141Process_ImageCheck.cs | 51 +++++++++++--------------
3 files changed, 48 insertions(+), 33 deletions(-)
diff --git a/src/Bro.M141.Process/M141Config.cs b/src/Bro.M141.Process/M141Config.cs
index f121104..7f46444 100644
--- a/src/Bro.M141.Process/M141Config.cs
+++ b/src/Bro.M141.Process/M141Config.cs
@@ -963,10 +963,6 @@
[Editor(typeof(FoldDialogEditor), typeof(UITypeEditor))]
public string ImageFolder { get; set; }
- [Category("鍚姩閰嶇疆")]
- [Description("true锛氬惎鍔ㄧ绾挎祴璇� false锛氬仠姝㈢绾挎祴璇�")]
- [DisplayName("娴嬭瘯寮�鍏�")]
- public bool IsStart { get; set; } = true;
[Category("妫�娴嬪姛鑳�")]
diff --git a/src/Bro.M141.Process/M141Process_ImageCheck.cs b/src/Bro.M141.Process/M141Process_ImageCheck.cs
index b61d5c4..dfcf451 100644
--- a/src/Bro.M141.Process/M141Process_ImageCheck.cs
+++ b/src/Bro.M141.Process/M141Process_ImageCheck.cs
@@ -2,6 +2,7 @@
using Bro.Common.Helper;
using Bro.Common.Interface;
using Bro.Common.Model;
+using Bro.DataBase.Model;
using Bro.M135.Common;
using Bro.M135.DBManager;
using HalconDotNet;
@@ -441,7 +442,7 @@
return msg;
}
-
+
@@ -481,26 +482,18 @@
} while (true);
- var Defaultclass = M141Config.DefectClassCollection.FirstOrDefault(u => u.IsDefault);
- productList.ForEach(p =>
- {
- if (Defaultclass == null)
- {
- if (string.IsNullOrEmpty(p.Result))
- {
- p.Result = "NG";
- }
- }
- else
- {
- if (string.IsNullOrEmpty(p.Result))
- {
- p.Result = Defaultclass.ClassName;
- }
- }
+ var Defaultclass = M141Config.DefectClassCollection.FirstOrDefault(u => u.ClassName == productList[0].Result);
- Plc1.WriteSingleAddress(1526, p.Result.ToUpper().Contains("NG") ? 2 : 1, out _);
- });
+ if (M141Config.StationCode == "S4" && productList[0].Result == "OK")
+ {
+ ////mysqlhelper.GetS2Result(productList[0].SEQUENCE);
+ Plc1.WriteSingleAddress(1526, mysqlhelper.GetS2Result(productList[0].SEQUENCE) ? 1 : 2, out _);
+ }
+ else
+ {
+ Plc1.WriteSingleAddress(1526, Defaultclass?.ClassValue ?? 2, out _);
+ }
+
Plc1.WriteSingleAddress(1516, 1, out _);
return msg;
@@ -527,7 +520,7 @@
return new ResponseMessage();
}
- private async void OfflineDemoAsync(string imageFolder,bool isok,int saveimagetime)
+ private async void OfflineDemoAsync(string imageFolder, bool isok, int saveimagetime)
{
await Task.Run(() =>
{
@@ -544,7 +537,7 @@
{
continue;
}
- if (imageFile.EndsWith("OK")& isok == false)
+ if (imageFile.EndsWith("OK") & isok == false)
{
continue;
}
@@ -552,18 +545,18 @@
{
continue;
}
- var nameDatas = imageFile.Split(new char[] { '_'}, StringSplitOptions.RemoveEmptyEntries).ToList();
+ var nameDatas = imageFile.Split(new char[] { '_' }, StringSplitOptions.RemoveEmptyEntries).ToList();
if (nameDatas.Count != 5)
{
LogAsync(DateTime.Now, EnumHelper.LogLevel.Error, $"鏂囦欢{imageFile}鍛藉悕涓嶇鍚堣鑼冿紝涓嶆墽琛岀绾挎祴璇�");
continue;
}
- var sn = nameDatas[0];
+ var sn = nameDatas[0]+"_1";
var imageSeq = nameDatas[2][^1].ToString();
var measureBind = M141Config.MeasureBindCollection.FirstOrDefault(u => u.ImageSaveSeq == imageSeq);
-
- if (measureBind == null || !measureBind.IsFixed)
+
+ if (measureBind == null || !measureBind.IsFixed)
{
LogAsync(DateTime.Now, EnumHelper.LogLevel.Assist, $"绂荤嚎娴嬭瘯锛屽伐浣峽(measureBind == null ? "鏈尮閰�" : $"{measureBind.WorkPosition}鏈紑鍚�")}");
continue;
@@ -579,11 +572,11 @@
Thread.Sleep(saveimagetime);
imgSet.HImage?.Dispose();
imgSet.HImage = null;
-
+
}
});
}
-
+
[ProcessMethod("printer", "printer", "鎵撳嵃鏈烘墦鍗�", InvokeType.TestInvoke)]
@@ -722,7 +715,7 @@
UpdateDefectAsync(defects);
var defectClass = GetDefectClassFromDefectList(defects);
- UpdateResult(DateTime.Now, p.SN, defectClass.ClassName, "",p.ImagePaths);
+ UpdateResult(DateTime.Now, p.SN, defectClass.ClassName, "", p.ImagePaths);
//浜у搧搴忓彿+1
//Interlocked.Increment(ref _productIndex);
diff --git a/src/Bro.M141.Process/M141Process_Mysql.cs b/src/Bro.M141.Process/M141Process_Mysql.cs
index 865db24..59cd94f 100644
--- a/src/Bro.M141.Process/M141Process_Mysql.cs
+++ b/src/Bro.M141.Process/M141Process_Mysql.cs
@@ -360,6 +360,32 @@
return null;
}
+ public bool GetS2Result(string plcnum)
+ {
+ try
+ {
+ 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)
{
sn = "Noread";
--
Gitblit v1.8.0