From c4a3f8db90530a727ffab77c3bb5bb7d782792bf Mon Sep 17 00:00:00 2001
From: alielie <alielie@git.com>
Date: 星期一, 25 八月 2025 15:50:27 +0800
Subject: [PATCH] 上传代码;

---
 HMI.UnitTest/MainWindow.xaml.cs |  221 +++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 205 insertions(+), 16 deletions(-)

diff --git a/HMI.UnitTest/MainWindow.xaml.cs b/HMI.UnitTest/MainWindow.xaml.cs
index d6a2c49..a267a28 100644
--- a/HMI.UnitTest/MainWindow.xaml.cs
+++ b/HMI.UnitTest/MainWindow.xaml.cs
@@ -1,31 +1,220 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
+锘縰sing ConnectionUtil;
+using HMI.Core.Api;
+using HMI.Core.Util;
+using HMI.Simple.Util;
+using log4net;
+using Panuon.WPF.UI;
+using Plugin.DataBoard;
+using Plugin.TestResult_WPF;
+using Plugin.TsExecution;
+using System;
+using System.Threading;
 using System.Threading.Tasks;
 using System.Windows;
-using System.Windows.Controls;
-using System.Windows.Data;
-using System.Windows.Documents;
-using System.Windows.Input;
-using System.Windows.Media;
-using System.Windows.Media.Imaging;
-using System.Windows.Navigation;
-using System.Windows.Shapes;
-using HMI.SettingControl;
 
 namespace UnitTest
 {
     /// <summary>
     /// MainWindow.xaml 鐨勪氦浜掗�昏緫
     /// </summary>
-    public partial class MainWindow : Window
+    public partial class MainWindow : WindowX
     {
+        private ILog log = LogManager.GetLogger("UnitTest");
         public MainWindow()
         {
+            ProductModelHelper.GetModelBySNR("cc123", out string model, out string msg);
+            LangUtil.Load();
             InitializeComponent();
-            page.Children.Clear();
-            //page.Children.Add(new SettingControl());
+            //page.Children.Add(new UserControl1());
+        }
+
+        TcpClientWrapper tcpClient;
+
+        PipeClient2 client;
+
+        private void Button_Click(object sender, RoutedEventArgs e)
+        {
+            Task.Run(() =>
+            {
+                for (int j = 0; j < 1000; j++)
+                {
+                    string status = (j % 2 == 0) ? "Passed" : "Failed";
+                    string d = (j % 2 == 0) ? "9" : "9999999999999999999999999999999999999999999999999999999999999999995";
+                    tsExecution.AddTestData(0, $"ConnectivityCANRec,2,3,4,{d},6,{status}");
+                    Thread.Sleep(5);
+                }
+            });
+
+            Task.Run(() =>
+            {
+                for (int j = 0; j < 1000; j++)
+                {
+                    string status = (j % 2 == 0) ? "Passed" : "Failed";
+                    string d = (j % 2 == 0) ? "9" : "9999999999999999999999999999999999999999999999999999999999999999995";
+                    tsExecution.AddTestData(1, $"ConnectivityCANRec,2,3,4,{d},6,{status}");
+                    Thread.Sleep(5);
+                }
+            });
+
+            Task.Run(() =>
+            {
+                for (int j = 0; j < 1000; j++)
+                {
+                    string status = (j % 2 == 0) ? "Passed" : "Failed";
+                    string d = (j % 2 == 0) ? "9" : "9999999999999999999999999999999999999999999999999999999999999999995";
+                    tsExecution.AddTestData(2, $"ConnectivityCANRec,2,3,4,{d},6,{status}");
+                    Thread.Sleep(5);
+                }
+            });
+
+            //Task.Run(() =>
+            //{
+            //    for (int j = 0; j < 1000; j++)
+            //    {
+            //        string status = (j % 2 == 0) ? "Passed" : "Failed";
+            //        string d = (j % 2 == 0) ? "9" : "9999999999999999999999999999999999999999999999999999999999999999995";
+            //        tsExecution.AddTestData(3, $"ConnectivityCANRec,2,3,4,{d},6,{status}");
+            //        Thread.Sleep(5);
+            //    }
+            //});
+
+            //Task.Run(() =>
+            //{
+            //    for (int j = 0; j < 1000; j++)
+            //    {
+            //        string status = (j % 2 == 0) ? "Passed" : "Failed";
+            //        string d = (j % 2 == 0) ? "9" : "9999999999999999999999999999999999999999999999999999999999999999995";
+            //        tsExecution.AddTestData(1, $"ConnectivityCANRec,2,3,4,{d},6,{status}");
+            //        Thread.Sleep(5);
+            //    }
+            //});
+
+            //tsExecution.UpdatePositionStatus(0, "Passed");
+            tsExecution.UpdatePositionStatus(0, "Failed");
+            //tsExecution.UpdatePositionProcessValue(0, 12);
+            //tsExecution.PausePosition(0);
+            //tsExecution.SetPositionBarcode(0, "123456789");
+            //tsExecution.SavePositionCSV(0);
+
+
+            //tsExecution.UpdatePositionStatus(1, "Failed");
+            //tsExecution.UpdatePositionStatus(2, "Ready");
+            //tsExecution.UpdatePositionStatus(3, "Testing");
+            //tsExecution.UpdatePositionProcessValue(1, 50);
+            //tsExecution.UpdatePositionProcessValue(2, 100);
+            //tsExecution.UpdatePositionProcessValue(3, 99);
+
+
+            //client = new PipeClient2("DAService");
+            ////client.OnData += Client_OnData1;
+            //client.Connect();
+
+            //tcpClient = new TcpClientWrapper("127.0.0.1", 5555);
+            //tcpClient.Connect();
+
+            //viewControl.View.GetDataTable(0).GetSingleCell(0).SetStatus("testing");
+
+            //new Thread(new ThreadStart(PipeServerMessage)).Start();
+            //new Thread(new ThreadStart(PipeClientMessage)).Start();
+        }
+
+        private void Client_OnData1(object sender, PipeDataEventArgs e)
+        {
+            Console.WriteLine($"{e.Data}");
+        }
+
+        private void Client_OnData(object sender, PipeDataEventArgs e)
+        {
+            Dispatcher.Invoke(() =>
+            {
+                console.Text += e.Data;
+            });
+        }
+
+        private void Button_Click2(object sender, RoutedEventArgs e)
+        {
+            var allStart = DateTime.Now;
+            for (int i = 0; i < 100; i++)
+            {
+                var start = DateTime.Now;
+                if (client.SendMessage("ping", out string res))
+                {
+                    var interval = (DateTime.Now - start).TotalMilliseconds;
+                    Console.WriteLine($"{interval}: {res}");
+                }
+            }
+            Console.WriteLine($"Total: {(DateTime.Now - allStart).TotalMilliseconds}");
+        }
+
+        private void Button_Click3(object sender, RoutedEventArgs e)
+        {
+            try
+            {
+                var allStart = DateTime.Now;
+                for (int i = 0; i < 500; i++)
+                {
+                    var start = DateTime.Now;
+                    string data = input.Text;
+                    string str = $"{{\"command\":5,\"value\":{data},\"id\":\"DITag0\"}}\r\n";
+                    string res = tcpClient.SendMessage(str);
+                    var interval = (DateTime.Now - start).TotalMilliseconds;
+                    Console.WriteLine($"{interval}: {res}");
+                }
+                Console.WriteLine($"Total: {(DateTime.Now - allStart).TotalMilliseconds}");
+            }
+            catch (Exception ex)
+            {
+
+            }
+        }
+
+        private void Button_Click4(object sender, RoutedEventArgs e)
+        {
+            try
+            {
+                var allStart = DateTime.Now;
+                for (int i = 0; i < 500; i++)
+                {
+                    var start = DateTime.Now;
+                    string data = input.Text;
+                    string str = $"{{\"command\":5,\"value\":{data},\"id\":\"DITag0\"}}";
+                    client.SendMessage(str, out string res);
+                    var interval = (DateTime.Now - start).TotalMilliseconds;
+                    Console.WriteLine($"{interval}: {res}");
+                }
+                Console.WriteLine($"Total: {(DateTime.Now - allStart).TotalMilliseconds}");
+
+            }
+            catch (Exception ex)
+            {
+                Console.WriteLine(ex.StackTrace);
+            }
+        }
+
+        private void HandlePlugin(object obj)
+        {
+            if (obj is IPlugin plugin)
+            {
+                plugin.SetBaseFolder("C:\\Workspace\\VisualStudio\\WPFProject\\WPFProject\\bin\\x64\\Debug\\Config\\TsExecution");
+                plugin.SetLogger(log);
+                plugin.InitFinish();
+            }
+
+        }
+
+        private ViewControl viewControl;
+
+        private TsExecution tsExecution;
+
+        private DataBoard dataBoard;
+
+        private void Window_Loaded(object sender, RoutedEventArgs e)
+        {
+            var plugin = new TsExecution();
+            HandlePlugin(plugin);
+            border.Child = plugin;
+            tsExecution = plugin;
+            this.Loaded -= Window_Loaded;
         }
     }
 }

--
Gitblit v1.9.1