From 15bbd62b0b24b72c717ae91ab45348a2083ad04e Mon Sep 17 00:00:00 2001
From: alielie <alielie@git.com>
Date: 星期五, 10 十月 2025 08:58:18 +0800
Subject: [PATCH] 优化bug;
---
Plugin.TestResult/TestResultView.xaml.cs | 97 +++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 82 insertions(+), 15 deletions(-)
diff --git a/Plugin.TestResult/TestResultView.xaml.cs b/Plugin.TestResult/TestResultView.xaml.cs
index c1d5f03..f2f148d 100644
--- a/Plugin.TestResult/TestResultView.xaml.cs
+++ b/Plugin.TestResult/TestResultView.xaml.cs
@@ -5,6 +5,7 @@
using NationalInstruments.TestStand.Utility;
using Plugin.TestResult_WPF.Constant;
using Plugin.TestResult_WPF.Model;
+using Plugin.TsSupport;
using System;
using System.Collections.Generic;
using System.Windows;
@@ -35,7 +36,7 @@
/// <summary>
/// 娴嬭瘯搴忓垪鎿嶄綔鍙ユ焺
/// </summary>
- private SequenceContext SequenceContext = null;
+ public SequenceContext SequenceContext { get; private set; } = null;
/// <summary>
/// 娴嬭瘯妯″瀷搴忓垪
/// </summary>
@@ -45,6 +46,8 @@
{
}
+
+ public bool IsRunning { get; set; } = false;
public TestResultView(BaseConfig config)
{
@@ -63,10 +66,10 @@
InitializeComponent();
- testApp = new AxApplicationMgr();
- testApp.ExitApplication += new EventHandler(this.axApplicationMgr_ExitApplication);
- testApp.UIMessageEvent += new _ApplicationMgrEvents_UIMessageEventEventHandler(this.axApplicationMgr_UIMessageEvent);
- testApp.ExecutionClosed += new _ApplicationMgrEvents_ExecutionClosedEventHandler(this.axApplicationMgr_ExecutionClosed);
+ testApp = TestAppManager.GetAxApplicationMgr();
+ testApp.ExitApplication += this.axApplicationMgr_ExitApplication;
+ testApp.UIMessageEvent += this.axApplicationMgr_UIMessageEvent;
+ testApp.ExecutionClosed += this.axApplicationMgr_ExecutionClosed;
((System.ComponentModel.ISupportInitialize)(this.testApp)).BeginInit();//myClient涓虹涓夋柟鎺т欢鍚�
@@ -90,21 +93,21 @@
Random random = new Random(i * 13);
sb.Elapsed += (s, e) =>
{
-
+ table.RefreshCount(1, 0);
table.SetTemperature(random.Next(100));
for (int j = 0; j < 3; j++)
{
table.SetTemperature(j + "89", random.Next(100));
}
- table.SetOkCount(random.Next(100));
- table.SetNgCount(random.Next(100));
+ //table.SetOkCount(random.Next(100));
+ //table.SetNgCount(random.Next(100));
table.SetStatus(CommonStatus.GetRandomStatus());
table.SetStartTime(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
table.SetEndTime(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
table.SetConsumeTime(random.Next(10000));
+ tables[0].GetSingleCell(0).AddElectricData(random.Next(100));
-
- var cell = table.GetSingleCell(random.Next(table.GetSize()));
+ var cell = tables[0].GetSingleCell(0);//table.GetSingleCell(random.Next(table.GetSize()));
cell.SetStatus(CommonStatus.GetRandomStatus());
cell.SetInfos(new Info
{
@@ -155,7 +158,7 @@
public DataTable GetDataTable(int index)
{
- if (index > 0 && index < tables.Length) return tables[index];
+ if (index >= 0 && index < tables.Length) return tables[index];
return null;
}
@@ -172,7 +175,6 @@
this.testApp.LoginOnStart = false;
this.testApp.Start();
this.modeSeq = this.engine.GetSequenceFileEx(@"C:\Program Files\National Instruments\TestStand 2020\Components\Models\TestStandModels\ParallelModel.seq");
-
}
catch (Exception ex)
{
@@ -383,6 +385,46 @@
tables[ovenIndex].GetSingleCell(cellIndex).ClearInfo();
return;
}
+ if (MethodCode == 12)
+ {
+ /// 淇濆瓨娓╁害鏂囦欢
+ strData = e.uiMsg.StringData;
+ string[] datas = strData.Split(';');
+ int ovenIndex = int.Parse(datas[0]);
+ string folder = datas[1];
+ tables[ovenIndex].SaveTempFile(folder);
+ return;
+ }
+ if (MethodCode == 13)
+ {
+ /// 娣诲姞鐢垫祦鏁版嵁
+ strData = e.uiMsg.StringData;
+ string[] datas = strData.Split(';');
+ int ovenIndex = int.Parse(datas[0]);
+ int cellIndex = int.Parse(datas[1]);
+ double eData = double.Parse(datas[2]);
+ tables[ovenIndex].GetSingleCell(cellIndex).AddElectricData(eData);
+ return;
+ }
+ if (MethodCode == 14)
+ {
+ /// 娓呯┖鐢垫祦鏁版嵁
+ strData = e.uiMsg.StringData;
+ int ovenIndex = int.Parse(strData);
+ tables[ovenIndex].ClearElectricData();
+ return;
+ }
+ if (MethodCode == 15)
+ {
+ /// 娓呯┖鐢垫祦鏁版嵁
+ strData = e.uiMsg.StringData;
+ string[] datas = strData.Split(';');
+ int ovenIndex = int.Parse(datas[0]);
+ int cellIndex = int.Parse(datas[1]);
+ string filePath = datas[2];
+ tables[ovenIndex].GetSingleCell(cellIndex).SaveElectricDataToCSV(filePath);
+ return;
+ }
}
catch (Exception ex)
{
@@ -393,16 +435,19 @@
public void SetStartFlag(int index, bool data)
{
if (this.SequenceContext == null) return;
- char name = (char)(index + 65);
+ string name = tables[index].title;
string key = $"StationState.Start_{name}";
- this.engine.Globals.SetValBoolean(key, 0, data);
- bool val = this.engine.Globals.GetValBoolean(key, 0);
+ this.engine.Globals.SetValBoolean(key, 1, data);
+ //bool val = this.engine.Globals.GetValBoolean(key, 0);
//this.SequenceContext.StationGlobals.SetValBoolean(key, 0, data);
//bool val = this.SequenceContext.StationGlobals.GetValBoolean(key, 0);
}
public void ReleaseResource()
{
+ testApp.ExitApplication -= this.axApplicationMgr_ExitApplication;
+ testApp.UIMessageEvent -= this.axApplicationMgr_UIMessageEvent;
+ testApp.ExecutionClosed -= this.axApplicationMgr_ExecutionClosed;
foreach (var table in tables)
{
table.RelaseResource();
@@ -419,5 +464,27 @@
table.ClearNumber();
}
}
+
+ public void SetProductSource(List<string> productSource)
+ {
+ foreach (var table in tables)
+ {
+ table.SetProductSource(productSource);
+ }
+ }
+
+ public void SetCurrentProduct(string currentProduct)
+ {
+ foreach (var table in tables)
+ {
+ table.SetCurrentProduct(currentProduct);
+ }
+ }
+
+ public void SetOvenProduct(int index, string product)
+ {
+ string LookupStr = $"StationState.ProductModel_{tables[index].title}";
+ engine?.Globals?.SetValString(LookupStr, 1, product);
+ }
}
}
--
Gitblit v1.9.1