From c0b8009ef36746c7a14606267662570e8c59c2c6 Mon Sep 17 00:00:00 2001
From: xcd <834800634@qq.com>
Date: 星期四, 09 七月 2020 19:12:37 +0800
Subject: [PATCH] 部分模型修改
---
src/Bro.Device.GTSCard/GTSCardDriver.cs | 40 +++++-----
src/Bro.M071.Process/UI/M071_MainForm.cs | 50 ++++++------
src/Bro.Common.Device/DeviceBase/MotionCardBase.cs | 35 ++++----
src/Bro.Common.Model/Model/MonitorSet.cs | 12 +-
src/Bro.Common.Model/Model/IOItem.cs | 6 +
src/Bro.M071.Process/UI/M071_DataForm.cs | 2
src/Bro.M071.Process/M071Models.cs | 17 ++++
src/Bro.M071.Process/UI/KeyIndicator.cs | 2
src/Bro.UI.Config/MainFrm.cs | 35 ++++----
src/Bro.UI.Model.Winform/UI/DockContent/MenuFrmBase.cs | 1
10 files changed, 113 insertions(+), 87 deletions(-)
diff --git a/src/Bro.Common.Device/DeviceBase/MotionCardBase.cs b/src/Bro.Common.Device/DeviceBase/MotionCardBase.cs
index 1ff6cd5..2825f26 100644
--- a/src/Bro.Common.Device/DeviceBase/MotionCardBase.cs
+++ b/src/Bro.Common.Device/DeviceBase/MotionCardBase.cs
@@ -237,35 +237,38 @@
[Device("MotionOperationSet", "杩愬姩鎿嶄綔閰嶇疆鍩虹被", EnumHelper.DeviceAttributeType.OperationConfig)]
public class MotionCardOperationSet : IComplexDisplay
{
- [Category("IO鎿嶄綔閰嶇疆")]
- [DisplayName("IO棰勬鏌ュ畾涔夐泦鍚�")]
+ [Category("1.IO鎿嶄綔閰嶇疆")]
+ [DisplayName("1.IO棰勬鏌�")]
[Description("IO棰勬鏌ュ畾涔夐泦鍚�")]
[TypeConverter(typeof(CollectionCountConvert))]
[Editor(typeof(IORefrenceItemCollectionEditor), typeof(UITypeEditor))]
public List<IORefrenceItem> PreCheckIOCollection { get; set; } = new List<IORefrenceItem>();
- [Category("IO鎿嶄綔閰嶇疆")]
+ [Category("1.IO鎿嶄綔閰嶇疆")]
[Description("瓒呮椂璁剧疆锛屽崟浣嶏細ms")]
- [DisplayName("IO棰勬鏌ヨ秴鏃�")]
+ [DisplayName("2.IO棰勬鏌ヨ秴鏃�")]
public int PreCheckIOTimeout { get; set; } = 0;
- [Category("IO鎿嶄綔閰嶇疆")]
- [DisplayName("IO杈撳嚭瀹氫箟闆嗗悎")]
+ [Category("1.IO鎿嶄綔閰嶇疆")]
+ [DisplayName("3.IO杈撳嚭")]
[Description("IO杈撳嚭瀹氫箟闆嗗悎")]
[TypeConverter(typeof(CollectionCountConvert))]
+ [Editor(typeof(IORefrenceItemCollectionEditor), typeof(UITypeEditor))]
public List<IORefrenceItem> IOOutputCollection { get; set; } = new List<IORefrenceItem>();
- [Category("IO鎿嶄綔閰嶇疆")]
- [DisplayName("IO纭瀹氫箟闆嗗悎")]
+ [Category("1.IO鎿嶄綔閰嶇疆")]
+ [DisplayName("4.IO杈撳嚭纭")]
[Description("IO纭瀹氫箟闆嗗悎")]
[TypeConverter(typeof(CollectionCountConvert))]
+ [Editor(typeof(IORefrenceItemCollectionEditor), typeof(UITypeEditor))]
public List<IORefrenceItem> IOConfirmCollection { get; set; } = new List<IORefrenceItem>();
- [Category("IO鎿嶄綔閰嶇疆")]
+
+ [Category("1.IO鎿嶄綔閰嶇疆")]
[Description("瓒呮椂璁剧疆锛屽崟浣嶏細ms")]
- [DisplayName("IO纭瓒呮椂")]
+ [DisplayName("5.IO杈撳嚭纭瓒呮椂")]
public int IOConfirmTimeout { get; set; } = 0;
- [Category("鏉垮崱杩愬姩閰嶇疆")]
+ [Category("2.鏉垮崱杩愬姩閰嶇疆")]
[DisplayName("杩愬姩閰嶇疆闆嗗悎")]
[Description("MovingOps锛氳繍鍔ㄩ厤缃泦鍚�")]
[TypeConverter(typeof(CollectionCountConvert))]
@@ -378,13 +381,13 @@
if (itemType == typeof(IORefrenceItem))
{
IORefrenceItem item = new IORefrenceItem();
- if ((this.Context.Instance is IOperationConfig opConfig) && !string.IsNullOrWhiteSpace(opConfig.DeviceId))
+ if (this.Context.Instance is MotionCardOperationSet set)
{
using (var scope = GlobalVar.Container.BeginLifetimeScope())
{
List<IDevice> deviceList = scope.Resolve<List<IDevice>>();
- var device = deviceList.FirstOrDefault(u => u.Id == opConfig.DeviceId);
+ var device = deviceList.FirstOrDefault(u => u.Id == set.MotionCardId);
if (device != null && (device is MotionCardBase motionCard))
{
@@ -411,9 +414,9 @@
public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value)
{
- if (context.Instance is IOperationConfig opConfig)
+ if (context.Instance is MotionCardOperationSet set)
{
- if (string.IsNullOrWhiteSpace(opConfig.DeviceId))
+ if (string.IsNullOrWhiteSpace(set.MotionCardId))
{
return base.EditValue(context, provider, value);
}
@@ -422,7 +425,7 @@
{
List<IDevice> deviceList = scope.Resolve<List<IDevice>>();
- var device = deviceList.FirstOrDefault(u => u.Id == opConfig.DeviceId);
+ var device = deviceList.FirstOrDefault(u => u.Id == set.MotionCardId);
if (device == null)
{
diff --git a/src/Bro.Common.Model/Model/IOItem.cs b/src/Bro.Common.Model/Model/IOItem.cs
index 653cdb2..14a5754 100644
--- a/src/Bro.Common.Model/Model/IOItem.cs
+++ b/src/Bro.Common.Model/Model/IOItem.cs
@@ -113,7 +113,9 @@
{
item.IOItemSource.ForEach(i =>
{
- itemDict[i] = i.IODesc + "-" + i.IOType.GetEnumDescription() + "-" + i.IONum;
+ IODefinition temp = new IODefinition();
+ temp.DataFrom(i);
+ itemDict[temp] = (string.IsNullOrWhiteSpace(i.IODesc) ? i.IOPreStatement.GetEnumDescription() : i.IODesc) + "|" + i.IOType.GetEnumDescription() + "|" + i.IONum;
});
return new StandardValuesCollection(itemDict.Keys);
@@ -158,7 +160,7 @@
/// <returns></returns>
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
{
- var s = value.ToString().Split(new char[] { '-' }, StringSplitOptions.RemoveEmptyEntries);
+ var s = value.ToString().Split(new char[] { '|' });
if (s.Length == 3)
{
diff --git a/src/Bro.Common.Model/Model/MonitorSet.cs b/src/Bro.Common.Model/Model/MonitorSet.cs
index 6151b49..228e2f0 100644
--- a/src/Bro.Common.Model/Model/MonitorSet.cs
+++ b/src/Bro.Common.Model/Model/MonitorSet.cs
@@ -209,12 +209,12 @@
/// <summary>
/// 鐩戝惉鍥炰紶
/// </summary>
- [Category("鍥炰紶璁剧疆")]
- [DisplayName("鐩戝惉鍥炰紶")]
- [Description("鐩戝惉杩愬姩鏉垮崱锛屽苟寰�鎸囧畾鐨処O鍐欏叆鏁版嵁")]
- [TypeConverter(typeof(CollectionCountConvert))]
- [Editor(typeof(IOItem), typeof(UITypeEditor))]
- public List<IOItem> ReplyIODatas { get; set; } = new List<IOItem>();
+ //[Category("鍥炰紶璁剧疆")]
+ //[DisplayName("鐩戝惉鍥炰紶")]
+ //[Description("鐩戝惉杩愬姩鏉垮崱锛屽苟寰�鎸囧畾鐨処O鍐欏叆鏁版嵁")]
+ //[TypeConverter(typeof(CollectionCountConvert))]
+ //[Editor(typeof(ComplexCollectionEditor<IOItem>), typeof(UITypeEditor))]
+ //public List<IOItem> ReplyIODatas { get; set; } = new List<IOItem>();
}
public class IOperationConfigEditor : UITypeEditor
diff --git a/src/Bro.Device.GTSCard/GTSCardDriver.cs b/src/Bro.Device.GTSCard/GTSCardDriver.cs
index 5b3eb7f..5e34794 100644
--- a/src/Bro.Device.GTSCard/GTSCardDriver.cs
+++ b/src/Bro.Device.GTSCard/GTSCardDriver.cs
@@ -1027,27 +1027,27 @@
public override void OnMethodInvoked(IAsyncResult ar)
{
- MotionCardMonitorSet monitorSet = ar.AsyncState as MotionCardMonitorSet;
- ProcessResponse resValues = monitorSet.Response;
- if (resValues.ResultValue == (int)ReplyValue.IGNORE)
- {
- return;
- }
+ //MotionCardMonitorSet monitorSet = ar.AsyncState as MotionCardMonitorSet;
+ //ProcessResponse resValues = monitorSet.Response;
+ //if (resValues.ResultValue == (int)ReplyValue.IGNORE)
+ //{
+ // return;
+ //}
- Stopwatch sw = new Stopwatch();
- sw.Start();
- // 灏嗘寚瀹欼OItem鍐欏叆鏉垮崱
- foreach (var replyIOData in monitorSet.ReplyIODatas)
- {
- //鍐欏叆IO杈撳嚭
- if (replyIOData.IOType == IOType.OUTPUT)
- {
- GTSCardAPI.GT_SetDoBit((short)IConfig.CardNum, GTSCardAPI.MC_GPI, (short)replyIOData.IONum, (short)replyIOData.Value);
- }
- // in鍙涓嶈兘鍐�
- }
- sw.Stop();
- LogAsync(DateTime.Now, $"{Name}鍙嶉瀹屾垚锛岃�楁椂{sw.ElapsedMilliseconds}ms", $"{resValues.GetDisplayText()}");
+ //Stopwatch sw = new Stopwatch();
+ //sw.Start();
+ //// 灏嗘寚瀹欼OItem鍐欏叆鏉垮崱
+ //foreach (var replyIOData in monitorSet.ReplyIODatas)
+ //{
+ // //鍐欏叆IO杈撳嚭
+ // if (replyIOData.IOType == IOType.OUTPUT)
+ // {
+ // GTSCardAPI.GT_SetDoBit((short)IConfig.CardNum, GTSCardAPI.MC_GPI, (short)replyIOData.IONum, (short)replyIOData.Value);
+ // }
+ // // in鍙涓嶈兘鍐�
+ //}
+ //sw.Stop();
+ //LogAsync(DateTime.Now, $"{Name}鍙嶉瀹屾垚锛岃�楁椂{sw.ElapsedMilliseconds}ms", $"{resValues.GetDisplayText()}");
}
protected void MonitorCheckAndInvoke(List<IOItem> tempNew, List<IOItem> tempOld)
diff --git a/src/Bro.M071.Process/M071Models.cs b/src/Bro.M071.Process/M071Models.cs
index bd98beb..434029f 100644
--- a/src/Bro.M071.Process/M071Models.cs
+++ b/src/Bro.M071.Process/M071Models.cs
@@ -178,7 +178,22 @@
public string GetDisplayText()
{
- return $"{AliasName}";
+ string snapShot = "鏈寚瀹�";
+
+ using (var scope = GlobalVar.Container.BeginLifetimeScope())
+ {
+ var config = scope.Resolve<IProcessConfig>();
+ if (config != null)
+ {
+ var snapshotPoint = (config as M071Config).SnapshotPointCollection.FirstOrDefault(u => u.Id == SnapshotPointId);
+ if (snapshotPoint != null)
+ {
+ snapShot = snapshotPoint.Name;
+ }
+ }
+ }
+
+ return $"{AliasName}-{snapShot}-{ImageSeq}";
}
public List<string> GetHalconToolPathList()
diff --git a/src/Bro.M071.Process/UI/KeyIndicator.cs b/src/Bro.M071.Process/UI/KeyIndicator.cs
index 75271a0..ec6d69b 100644
--- a/src/Bro.M071.Process/UI/KeyIndicator.cs
+++ b/src/Bro.M071.Process/UI/KeyIndicator.cs
@@ -58,7 +58,7 @@
protected override void SetSelectedPen()
{
- Pen = new Pen(Color.Red, 6);
+ Pen = new Pen(Color.Red, 3);
}
public override void Draw(Graphics g)
diff --git a/src/Bro.M071.Process/UI/M071_DataForm.cs b/src/Bro.M071.Process/UI/M071_DataForm.cs
index af0c8eb..b86ee46 100644
--- a/src/Bro.M071.Process/UI/M071_DataForm.cs
+++ b/src/Bro.M071.Process/UI/M071_DataForm.cs
@@ -11,7 +11,7 @@
namespace Bro.M071.Process.UI
{
- [MenuNode("M071_DataForm", "鏁版嵁鏌ヨ鐣岄潰", 1, "M071Node", true)]
+ [MenuNode("M071_DataForm", "鏁版嵁鏌ヨ鐣岄潰", 3, "M071Node", true)]
public partial class M071_DataForm : MenuFrmBase
{
public M071_DataForm()
diff --git a/src/Bro.M071.Process/UI/M071_MainForm.cs b/src/Bro.M071.Process/UI/M071_MainForm.cs
index df918c4..938e116 100644
--- a/src/Bro.M071.Process/UI/M071_MainForm.cs
+++ b/src/Bro.M071.Process/UI/M071_MainForm.cs
@@ -51,35 +51,37 @@
if (string.IsNullOrWhiteSpace(Config.BackgroundImagePath))
return;
- try
+ this.Invoke(new Action(() =>
{
- Bitmap image = (Bitmap)Image.FromFile(Config.BackgroundImagePath);
- cvImage.LoadImage(image);
- cvImage.SetScreenSize();
- }
- catch (Exception ex)
- {
- LogAsync(new LogMsg(DateTime.Now, "杞藉叆鑳屾櫙鍥惧紓甯�", ex.Message));
- return;
- }
-
- cvImage.Elements.Clear();
- lvMeasures.Items.Clear();
- Config.MeasurementUnitCollection.ForEach(u =>
- {
- if (!u.IsEnabled)
+ try
+ {
+ Bitmap image = (Bitmap)Image.FromFile(Config.BackgroundImagePath);
+ cvImage.LoadImage(image);
+ cvImage.SetScreenSize();
+ }
+ catch (Exception ex)
+ {
+ LogAsync(new LogMsg(DateTime.Now, "杞藉叆鑳屾櫙鍥惧紓甯�", ex.Message));
return;
+ }
- var ele = new KeyIndicator(u.Id, u.DisplayLocation);
- cvImage.Elements.Add(ele);
+ cvImage.Elements.Clear();
+ lvMeasures.Items.Clear();
+ txtBarcode.ReadOnly = Config.IsBarcodeManulInputBlocked;
- ListViewItem item = new ListViewItem(u.GetDisplayText());
- item.Tag = u.Id;
- lvMeasures.Items.Add(item);
- });
+ Config.MeasurementUnitCollection.ForEach(u =>
+ {
+ if (!u.IsEnabled)
+ return;
- if (txtBarcode.IsHandleCreated)
- txtBarcode.BeginInvoke(new Action(() => txtBarcode.ReadOnly = Config.IsBarcodeManulInputBlocked));
+ var ele = new KeyIndicator(u.Id, u.DisplayLocation);
+ cvImage.Elements.Add(ele);
+
+ ListViewItem item = new ListViewItem(u.GetDisplayText());
+ item.Tag = u.Id;
+ lvMeasures.Items.Add(item);
+ });
+ }));
Process_M071.OnClearBarcode -= M071_MainForm_OnClearBarcode;
Process_M071.OnClearBarcode += M071_MainForm_OnClearBarcode;
diff --git a/src/Bro.UI.Config/MainFrm.cs b/src/Bro.UI.Config/MainFrm.cs
index 39c483d..39c3169 100644
--- a/src/Bro.UI.Config/MainFrm.cs
+++ b/src/Bro.UI.Config/MainFrm.cs
@@ -74,10 +74,10 @@
//});
m_deserializeMenuFrm = new DeserializeDockContent(GetMenuFromPersistString);
- LoadLayoutFromXML(m_deserializeMenuFrm);
-
m_deserializeDeviceRunFrm = new DeserializeDockContent(GetAllFormPersistString);
- _allMenuLoadDoneHandle.Set();
+
+ //LoadLayoutFromXML(m_deserializeMenuFrm);
+ //_allMenuLoadDoneHandle.Set();
Text = SettingHelper.GetProgramDescription();
string iconPath = SettingHelper.GetProgramIcon();
@@ -254,13 +254,16 @@
private void MainFrm_Load(object sender, EventArgs e)
{
+ LoadLayoutFromXML(m_deserializeMenuFrm);
+ _allMenuLoadDoneHandle.Set();
+
AdvancedPwdFrm.OnLoginOK = OnLoginOK;
- SpinWait wait = new SpinWait();
- while (_process == null)
- {
- wait.SpinOnce();
- }
+ //SpinWait wait = new SpinWait();
+ //while (_process == null)
+ //{
+ // wait.SpinOnce();
+ //}
LoadLayoutFromXML(m_deserializeDeviceRunFrm);
}
@@ -542,10 +545,10 @@
dockFrm.Text = desc[2];
- if (_process != null)
- {
- dockFrm.DownloadProcess(_process);
- }
+ //if (_process != null)
+ //{
+ // dockFrm.DownloadProcess(_process);
+ //}
dockFrm.SetLoginStatus(IsLogin);
@@ -580,10 +583,10 @@
dockFrm.Text = desc[2];
- if (_process != null)
- {
- dockFrm.DownloadProcess(_process);
- }
+ //if (_process != null)
+ //{
+ // dockFrm.DownloadProcess(_process);
+ //}
dockFrm.SetLoginStatus(IsLogin);
diff --git a/src/Bro.UI.Model.Winform/UI/DockContent/MenuFrmBase.cs b/src/Bro.UI.Model.Winform/UI/DockContent/MenuFrmBase.cs
index 007a6db..ab29bdb 100644
--- a/src/Bro.UI.Model.Winform/UI/DockContent/MenuFrmBase.cs
+++ b/src/Bro.UI.Model.Winform/UI/DockContent/MenuFrmBase.cs
@@ -27,6 +27,7 @@
_constructionDoneHandle.Wait();
OnProcessUpdated();
+ _constructionDoneHandle.Reset();
}
}
}
--
Gitblit v1.8.0