From 745d1ce73a3b27d2a3507843c8060755a0c95765 Mon Sep 17 00:00:00 2001
From: quanzhou <quan.zhou@broconcentric.com>
Date: 星期二, 21 十月 2025 19:06:36 +0800
Subject: [PATCH] 打印机条码格式修改,增添一个点检功能方法
---
src/Bro.M141.Process/M141Config.cs | 232 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 225 insertions(+), 7 deletions(-)
diff --git a/src/Bro.M141.Process/M141Config.cs b/src/Bro.M141.Process/M141Config.cs
index 5602e23..bba1b8b 100644
--- a/src/Bro.M141.Process/M141Config.cs
+++ b/src/Bro.M141.Process/M141Config.cs
@@ -6,6 +6,7 @@
using Bro.Common.Model;
using Bro.M135.Common;
using Bro.Process;
+using MathNet.Numerics.Distributions;
using Newtonsoft.Json;
using System.ComponentModel;
using System.Drawing.Design;
@@ -13,17 +14,28 @@
using System.Drawing.Printing;
using System.Reflection;
using System.Windows.Forms.Design;
+using Windows.Services.Maps;
+using static Bro.Common.Helper.EnumHelper;
namespace Bro.M141.Process
{
public class M141Config : ProcessConfigBase
{
+
+
[Category("鎵撳嵃鏈洪厤缃�")]
[Description("鎵撳嵃鏈洪厤缃泦鍚�")]
[DisplayName("鎵撳嵃鏈洪厤缃泦鍚�")]
[TypeConverter(typeof(CollectionCountConvert))]
[Editor(typeof(ComplexCollectionEditor<Printer>), typeof(UITypeEditor))]
public List<Printer> Printers { get; set; } = new List<Printer>();
+
+
+ [Category("鎵撳嵃鏈洪厤缃�")]
+ [Description("鏄惁鎵撳嵃灏佽鐮�")]
+ [DisplayName("鏄惁鎵撳嵃灏佽鐮�")]
+ public bool Isprint { get; set; } = false;
+
[Category("浜у搧鏄剧ず鐣岄潰閰嶇疆")]
@@ -54,6 +66,14 @@
public List<MeasureBind> MeasureBindCollection { get; set; } = new List<MeasureBind>();
+ [Category("鐐规閰嶇疆")]
+ [Description("鐐规閰嶇疆闆嗗悎锛岄厤缃娴嬬殑宸ヤ綅锛屽浘鐗囩储寮曪紝鐩告満鍜屾娴嬭皟鐢ㄩ」鍏崇郴")]
+ [DisplayName("鐐规閰嶇疆闆嗗悎")]
+ [TypeConverter(typeof(CollectionCountConvert))]
+ [Editor(typeof(ComplexCollectionEditor<MeasureBind>), typeof(UITypeEditor))]
+ public List<MeasureBind> MeasureBindCollection_Check { get; set; } = new List<MeasureBind>();
+
+
[Category("妫�娴嬭秴鏃惰缃�")]
[Description("妫�娴嬭秴鏃惰缃紝鑾峰彇妫�娴嬬粨鏋滄椂鐨勫厑璁告渶澶х瓑寰呮椂闂达紝鍗曚綅ms")]
@@ -68,6 +88,63 @@
[TypeConverter(typeof(SpecCodeSelectorConverter))]
public string CheckErrorSpecCode { get; set; } = "";
+
+ [Category("鐗瑰畾缂洪櫡閰嶇疆")]
+ [Description("S3鍜孲5鍏卞悓鍒ゆ柇缂洪櫡")]
+ [DisplayName("缂洪櫡鍚嶇О")]
+ [TypeConverter(typeof(GlobalDefectNameConverter))]
+ public string defectname { get; set; } = "";
+
+ private class GlobalDefectNameConverter : StringConverter
+ {
+ public override bool GetStandardValuesExclusive(ITypeDescriptorContext? context)
+ {
+ return false;
+ }
+
+ public override bool GetStandardValuesSupported(ITypeDescriptorContext? context)
+ {
+ return true;
+ }
+
+ public override StandardValuesCollection? GetStandardValues(ITypeDescriptorContext? context)
+ {
+ using (var scope = GlobalVar.Container.BeginLifetimeScope())
+ {
+ var config = scope.Resolve<IProcessConfig>();
+
+ return new StandardValuesCollection((config as IDefectSwitcher).DefectSwitchCollection.Select(u => u.DefectName).ToList());
+ }
+ }
+ }
+
+ [Category("杩炵画NG鎶ヨ璁剧疆")]
+ [Description("杩炵画NG鎶ヨ鎬诲紑鍏炽�倀rue锛氬紑鍚繛缁璑G鎶ヨ銆�false锛氬叧闂繛缁璑G鎶ヨ鏈哄埗")]
+ [DisplayName("杩炵画NG鎶ヨ鎬诲紑鍏�")]
+ public bool IsEnableContinuousNGAlarm { get; set; } = true;
+
+ [Category("杩炵画NG鎶ヨ璁剧疆")]
+ [Description("杩炵画NG鎶ヨ鍦板潃銆傚嚭鐜拌繛缁璑G鏃讹紝涓婁綅鏈哄悜璇ュ湴鍧�鍐欏叆1锛屽彇娑堟椂锛屽悜璇ュ湴鍧�鍐欏叆0銆�")]
+ [DisplayName("杩炵画NG鎶ヨ鍦板潃")]
+ public int ContinuousNGAlarmAddress { get; set; } = 0;
+
+ //[Category("杩炵画NG鎶ヨ璁剧疆")]
+ //[Description("杩炵画NG鎶ヨ涓婁紶MES鐨勬柟娉曞湴鍧�銆�")]
+ //[DisplayName("杩炵画NG鎶ヨ涓婁紶MES鐨勬柟娉曞湴鍧�")]
+ //public string ContinuousNGAlarmMESFunc { get; set; } = "";
+
+ [Category("杩炵画NG鎶ヨ璁剧疆")]
+ [Description("杩炵画NG鎶ヨ鏄惁闇�瑕佷汉宸ュ浣�")]
+ [DisplayName("杩炵画NG鎶ヨ鏄惁闇�瑕佷汉宸ュ浣�")]
+ public bool IsOperatorReset { get; set; } = false;
+
+
+ [Category("杩炵画NG鎶ヨ璁剧疆")]
+ [Description("杩炵画NG鎶ヨ璁剧疆闆嗗悎銆傝缃繛缁璑G鎶ヨ鐨勫紑鍏筹紝绫诲瀷锛屾暟閲忓拰鏃堕棿闃堝�笺�傛坊鍔犳垨鍒犻櫎鐩戞帶闇�瑕佽蒋浠堕噸鍚敓鏁堛��")]
+ [DisplayName("杩炵画NG鎶ヨ璁剧疆闆嗗悎")]
+ [TypeConverter(typeof(CollectionCountConvert))]
+ [Editor(typeof(ComplexCollectionEditor<ContinuousNGAlarm>), typeof(UITypeEditor))]
+ public List<ContinuousNGAlarm> ContinuousNGAlarmColletion { get; set; } = new List<ContinuousNGAlarm>();
[Category("浣嶇疆搴﹁缃�")]
[Description("浜у搧娴嬮噺鐐逛綅闆嗗悎")]
@@ -130,6 +207,15 @@
[DisplayName("褰撳墠鏍忓叿鐮�")]
public string basketcode { get; set; } = "NoRead";
+
+
+
+ [Category("鏍忓叿鏉$爜閰嶇疆")]
+ [Description("褰撳墠宸ュ崟鍙�")]
+ [DisplayName("褰撳墠宸ュ崟鍙�")]
+ public string zwoid { get; set; } = "";
+
+
[Category("鏍忓叿鏉$爜閰嶇疆")]
[Description("鏈珯鏄惁璇诲彇鏍忓叿鐮�")]
[DisplayName("鏈珯鏄惁璇诲彇鏍忓叿鐮�")]
@@ -148,6 +234,96 @@
[Description("蹇冭烦鍦板潃")]
[DisplayName("蹇冭烦鍦板潃")]
public int heartadd { get; set; } = 1505;
+
+
+
+ [Category("MES閰嶇疆")]
+ [Description("鏄惁涓婁紶MES")]
+ [DisplayName("鏄惁涓婁紶MES")]
+ public bool ISupMES { get; set; } = false;
+
+ [Category("MES閰嶇疆")]
+ [Description("鏄惁寮哄埗MES涓婁紶鎴愬姛")]
+ [DisplayName("鏄惁寮哄埗MES涓婁紶鎴愬姛")]
+ public bool ISokMes { get; set; } = false;
+
+ [Category("MES閰嶇疆")]
+ [Description("鏄惁涓婁紶NG鏁版嵁")]
+ [DisplayName("鏄惁涓婁紶NG鏁版嵁")]
+ public bool ISupNG { get; set; } = true;
+
+ [Category("MES閰嶇疆")]
+ [Description("鎺ュ彛閫夋嫨,0绡叿鎺ュ彛,1鏁版嵁涓婁紶鎺ュ彛,-1鎵�鏈夋帴鍙�")]
+ [DisplayName("鎺ュ彛閫夋嫨")]
+ public int MESchannel { get; set; } = 0;
+
+
+
+ [Category("MES閰嶇疆")]
+ [Description("璐﹀彿")]
+ [DisplayName("璐﹀彿")]
+ public string zuser { get; set; } = "aoiUser";
+
+ [Category("MES閰嶇疆")]
+ [Description("瀵嗙爜")]
+ [DisplayName("瀵嗙爜")]
+ public string zpassword { get; set; } = "Chia@aoi";
+
+ [Category("MES閰嶇疆")]
+ [Description("IP")]
+ [DisplayName("Ip")]
+ public string zIP { get; set; } = "10.2.20.114";
+
+ [Category("MES閰嶇疆")]
+ [Description("绔彛鍙�")]
+ [DisplayName("绔彛鍙�")]
+ public int zport { get; set; } = 15672;
+
+
+
+ //[Category("MES閰嶇疆")]
+ //[Description("澶囩敤鏍忓叿鐮�")]
+ //[DisplayName("澶囩敤鏍忓叿鐮�")]
+ //public string basketcode2 { get; set; } = "NoRead";
+
+ [Category("MES閰嶇疆")]
+ [Description("numpro")]
+ [DisplayName("numpro")]
+ [JsonIgnore]
+ public int numpro { get; set; } = 0;
+
+ [Category("MES閰嶇疆")]
+ [Description("mesnum1")]
+ [DisplayName("mesnum1")]
+ [JsonIgnore]
+ public int mesnum1 { get; set; } = 0;
+
+ [Category("MES閰嶇疆")]
+ [Description("mesnum2")]
+ [DisplayName("mesnum2")]
+ [JsonIgnore]
+ public int mesnum2 { get; set; } = 0;
+
+ [Category("MES閰嶇疆")]
+ [Description("mesnum3")]
+ [DisplayName("mesnum3")]
+ [JsonIgnore]
+ public int mesnum3 { get; set; } = 0;
+
+ [Category("MES閰嶇疆")]
+ [Description("mesnum4")]
+ [DisplayName("mesnum4")]
+ [JsonIgnore]
+ public int mesnum4 { get; set; } = 0;
+
+
+
+ [Category("MES閰嶇疆")]
+ [Description("plc搴忓彿鍜岀鍏风爜闆嗗悎")]
+ [DisplayName("plc搴忓彿鍜岀鍏风爜闆嗗悎")]
+ [TypeConverter(typeof(CollectionCountConvert))]
+ [Editor(typeof(ComplexCollectionEditor<PlcAndBasketcode>), typeof(UITypeEditor))]
+ public List<PlcAndBasketcode> PlcAndBasketcodes { get; set; } = new List<PlcAndBasketcode>();
}
@@ -224,6 +400,7 @@
public string plcname { get; set; } = "";
+
[Category("PLC閰嶇疆")]
[DisplayName("鏄惁鍚敤")]
[Description("鏄惁鍚敤")]
@@ -260,6 +437,12 @@
[Description("鎶ヨ鍚嶇О")]
public string alarmname { get; set; } = "";
+ [Category("閰嶇疆")]
+ [DisplayName("鎶ヨ绉嶇被")]
+ [Description("鎶ヨ绉嶇被")]
+ public string alarmtype { get; set; } = "";
+
+
[Browsable(false)]
[JsonIgnore]
public int value { get; set; } = -1;
@@ -279,7 +462,7 @@
{
var temchar = data.Split(',');
ret.alarmname = temchar[0];
- ret.address =Convert.ToInt32(temchar[1]);
+ ret.address = Convert.ToInt32(temchar[1]);
ret.address2 = Convert.ToInt32(temchar[2]);
}
catch (Exception ex)
@@ -339,13 +522,19 @@
}
+ public class PlcAndBasketcode
+ {
+ [Category("閰嶇疆")]
+ [Description("搴忓彿")]
+ [DisplayName("搴忓彿")]
+ public int id { get; set; } = 0;
+ [Category("閰嶇疆")]
+ [Description("鏉$爜")]
+ [DisplayName("鏉$爜")]
+ public string code { get; set; }
-
-
-
-
-
+ }
public class MeasureBind : IComplexDisplay, IHalconToolPath
{
[Category("绱㈠紩閰嶇疆")]
@@ -363,6 +552,11 @@
[DisplayName("鍥惧儚绱㈠紩")]
[Description("搴斿鍗曟妫�娴嬮」闇�瑕佸娆℃媿鐓ф椂锛岃褰曞浘鐗囩殑绱㈠紩鍙凤紝浠�0寮�濮�")]
public int ImageIndex { get; set; } = 0;
+
+ [Category("鍚敤閰嶇疆")]
+ [DisplayName("鍥哄畾妫�娴嬮」")]
+ [Description("true锛氳妫�娴嬮」鏄浐瀹氭娴嬮」鐩紝蹇呴』鎵ц false锛氳妫�娴嬫槸鍙彉妫�娴嬮」鐩紝娴佺▼涓喅瀹氭槸鍚︽娴嬶紝榛樿涓嶆娴�")]
+ public bool IsFixed { get; set; } = true;
[Category("鍙栧儚璁剧疆")]
[DisplayName("鐩告満閫夋嫨")]
@@ -422,7 +616,10 @@
[DisplayName("OK鍥剧墖淇濆瓨寮�鍏�")]
public bool OKImageSwitch { get; set; } = false;
-
+ [Category("鍥剧墖淇濆瓨璁剧疆")]
+ [Description("璇ョ珯妫�娴嬪浘鐗囦繚瀛樻椂锛屼繚瀛樼殑鍥剧墖椤哄簭鍚庣紑")]
+ [DisplayName("鍥剧墖淇濆瓨椤哄簭鍚庣紑")]
+ public string ImageSaveSeq { get; set; } = "1";
public string GetDisplayText()
{
@@ -907,6 +1104,27 @@
}
+ [Device("OfflineDemo", "绂荤嚎娴嬭瘯", DeviceAttributeType.OperationConfig)]
+ public class OfflineDemoOperationConfig : OperationConfigBase
+ {
+ [Category("鍥剧墖鐩綍")]
+ [Description("鍥剧墖鐩綍")]
+ [DisplayName("鍥剧墖鐩綍")]
+ [Editor(typeof(FoldDialogEditor), typeof(UITypeEditor))]
+ public string ImageFolder { get; set; }
+
+ [Category("妫�娴嬪姛鑳�")]
+ [Description("鍥剧墖鍦ㄦ壒閲忔祴璇曡繃绋嬩腑鏈�缁堝浘鐗囩粨鏋滀細瀛樺偍杈冩參闇�瑕佽缃欢鏃剁‘淇濆浘鐗囦笉琚祫婧愯嚜鍔ㄩ噴鏀�")]
+ [DisplayName("鍥剧墖瀛樺浘寤舵椂")]
+ public int SaveImageTime { get; set; } = 0;
+
+ [Category("妫�娴嬪姛鑳�")]
+ [Description("true锛氬惎鍔∣K娴嬭瘯 false锛氬惎鍔∟G娴嬭瘯")]
+ [DisplayName("鏄惁娴嬭瘯OK鍥剧墖")]
+ public bool IsOK { get; set; } = true;
+
+ }
+
public class RealTimeAdjustDataDetail : IComplexDisplay
{
[Category("鐐逛綅璁剧疆")]
--
Gitblit v1.8.0