Ver código fonte

feat 气密性测试

yhluo 1 mês atrás
pai
commit
8e46ae00ef

+ 742 - 0
UAS_MES_HYSX/FunctionCode/Make/Make_AirTightnessTest.Designer.cs

@@ -0,0 +1,742 @@
+namespace UAS_MES_NEW.Make
+{
+    partial class Make_AirTightnessTest
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.panel1 = new System.Windows.Forms.Panel();
+            this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel();
+            this.tableLayoutPanel3 = new System.Windows.Forms.TableLayoutPanel();
+            this.RTxt10 = new System.Windows.Forms.Label();
+            this.LTxt10 = new System.Windows.Forms.Label();
+            this.RTxt9 = new System.Windows.Forms.Label();
+            this.LTxt9 = new System.Windows.Forms.Label();
+            this.LTxt8 = new System.Windows.Forms.Label();
+            this.LTxt7 = new System.Windows.Forms.Label();
+            this.RTxt6 = new System.Windows.Forms.Label();
+            this.LTxt6 = new System.Windows.Forms.Label();
+            this.RTxt5 = new System.Windows.Forms.Label();
+            this.LTxt5 = new System.Windows.Forms.Label();
+            this.RTxt4 = new System.Windows.Forms.Label();
+            this.LTxt4 = new System.Windows.Forms.Label();
+            this.RTxt3 = new System.Windows.Forms.Label();
+            this.LTxt3 = new System.Windows.Forms.Label();
+            this.RTxt2 = new System.Windows.Forms.Label();
+            this.LTxt2 = new System.Windows.Forms.Label();
+            this.RTxt1 = new System.Windows.Forms.Label();
+            this.LTxt1 = new System.Windows.Forms.Label();
+            this.RTxt7 = new System.Windows.Forms.Label();
+            this.RTxt8 = new System.Windows.Forms.TextBox();
+            this.OperatResult = new UAS_MES_NEW.CustomControl.RichText.RichTextAutoBottom();
+            this.ProtDetails = new UAS_MES_NEW.CustomControl.GroupBoxWithBorder.GroupBoxWithBorder();
+            this.ClearMsg = new System.Windows.Forms.Button();
+            this.Result = new System.Windows.Forms.TextBox();
+            this.label10 = new System.Windows.Forms.Label();
+            this.AutoTest = new System.Windows.Forms.CheckBox();
+            this.label9 = new System.Windows.Forms.Label();
+            this.label8 = new System.Windows.Forms.Label();
+            this.SecondSN = new System.Windows.Forms.TextBox();
+            this.FirstSN = new System.Windows.Forms.TextBox();
+            this.label7 = new System.Windows.Forms.Label();
+            this.label6 = new System.Windows.Forms.Label();
+            this.BaudRate = new System.Windows.Forms.ComboBox();
+            this.label5 = new System.Windows.Forms.Label();
+            this.Port = new System.Windows.Forms.ComboBox();
+            this.SNDetails = new UAS_MES_NEW.CustomControl.GroupBoxWithBorder.GroupBoxWithBorder();
+            this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
+            this.productName = new System.Windows.Forms.Label();
+            this.productCode = new System.Windows.Forms.Label();
+            this.workOrder = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.label1 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.serialNumber = new System.Windows.Forms.Label();
+            this.panel1.SuspendLayout();
+            this.tableLayoutPanel2.SuspendLayout();
+            this.tableLayoutPanel3.SuspendLayout();
+            this.ProtDetails.SuspendLayout();
+            this.SNDetails.SuspendLayout();
+            this.tableLayoutPanel1.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // panel1
+            // 
+            this.panel1.Controls.Add(this.tableLayoutPanel2);
+            this.panel1.Controls.Add(this.ProtDetails);
+            this.panel1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.panel1.Location = new System.Drawing.Point(5, 128);
+            this.panel1.Name = "panel1";
+            this.panel1.Size = new System.Drawing.Size(1356, 635);
+            this.panel1.TabIndex = 132;
+            // 
+            // tableLayoutPanel2
+            // 
+            this.tableLayoutPanel2.ColumnCount = 2;
+            this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 35F));
+            this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 65F));
+            this.tableLayoutPanel2.Controls.Add(this.OperatResult, 1, 0);
+            this.tableLayoutPanel2.Controls.Add(this.tableLayoutPanel3, 0, 0);
+            this.tableLayoutPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tableLayoutPanel2.Location = new System.Drawing.Point(0, 333);
+            this.tableLayoutPanel2.Name = "tableLayoutPanel2";
+            this.tableLayoutPanel2.RowCount = 1;
+            this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel2.Size = new System.Drawing.Size(1356, 302);
+            this.tableLayoutPanel2.TabIndex = 3;
+            // 
+            // tableLayoutPanel3
+            // 
+            this.tableLayoutPanel3.ColumnCount = 4;
+            this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 18F));
+            this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
+            this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 22F));
+            this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
+            this.tableLayoutPanel3.Controls.Add(this.RTxt10, 3, 4);
+            this.tableLayoutPanel3.Controls.Add(this.LTxt10, 2, 4);
+            this.tableLayoutPanel3.Controls.Add(this.RTxt9, 1, 4);
+            this.tableLayoutPanel3.Controls.Add(this.LTxt9, 0, 4);
+            this.tableLayoutPanel3.Controls.Add(this.LTxt8, 2, 3);
+            this.tableLayoutPanel3.Controls.Add(this.LTxt7, 0, 3);
+            this.tableLayoutPanel3.Controls.Add(this.RTxt6, 3, 2);
+            this.tableLayoutPanel3.Controls.Add(this.LTxt6, 2, 2);
+            this.tableLayoutPanel3.Controls.Add(this.RTxt5, 1, 2);
+            this.tableLayoutPanel3.Controls.Add(this.LTxt5, 0, 2);
+            this.tableLayoutPanel3.Controls.Add(this.RTxt4, 3, 1);
+            this.tableLayoutPanel3.Controls.Add(this.LTxt4, 2, 1);
+            this.tableLayoutPanel3.Controls.Add(this.RTxt3, 1, 1);
+            this.tableLayoutPanel3.Controls.Add(this.LTxt3, 0, 1);
+            this.tableLayoutPanel3.Controls.Add(this.RTxt2, 3, 0);
+            this.tableLayoutPanel3.Controls.Add(this.LTxt2, 2, 0);
+            this.tableLayoutPanel3.Controls.Add(this.RTxt1, 1, 0);
+            this.tableLayoutPanel3.Controls.Add(this.LTxt1, 0, 0);
+            this.tableLayoutPanel3.Controls.Add(this.RTxt7, 1, 3);
+            this.tableLayoutPanel3.Controls.Add(this.RTxt8, 3, 3);
+            this.tableLayoutPanel3.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tableLayoutPanel3.Location = new System.Drawing.Point(3, 3);
+            this.tableLayoutPanel3.Name = "tableLayoutPanel3";
+            this.tableLayoutPanel3.RowCount = 5;
+            this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 20F));
+            this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 20F));
+            this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 20F));
+            this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 20F));
+            this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 20F));
+            this.tableLayoutPanel3.Size = new System.Drawing.Size(468, 296);
+            this.tableLayoutPanel3.TabIndex = 89;
+            // 
+            // RTxt10
+            // 
+            this.RTxt10.AutoSize = true;
+            this.RTxt10.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.RTxt10.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.RTxt10.Location = new System.Drawing.Point(329, 236);
+            this.RTxt10.Name = "RTxt10";
+            this.RTxt10.Size = new System.Drawing.Size(136, 60);
+            this.RTxt10.TabIndex = 19;
+            this.RTxt10.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // LTxt10
+            // 
+            this.LTxt10.AutoSize = true;
+            this.LTxt10.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.LTxt10.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.LTxt10.Location = new System.Drawing.Point(227, 236);
+            this.LTxt10.Name = "LTxt10";
+            this.LTxt10.Size = new System.Drawing.Size(96, 60);
+            this.LTxt10.TabIndex = 18;
+            this.LTxt10.Text = "传输结果:";
+            this.LTxt10.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // RTxt9
+            // 
+            this.RTxt9.AutoSize = true;
+            this.RTxt9.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.RTxt9.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.RTxt9.Location = new System.Drawing.Point(87, 236);
+            this.RTxt9.Name = "RTxt9";
+            this.RTxt9.Size = new System.Drawing.Size(134, 60);
+            this.RTxt9.TabIndex = 17;
+            this.RTxt9.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // LTxt9
+            // 
+            this.LTxt9.AutoSize = true;
+            this.LTxt9.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.LTxt9.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.LTxt9.Location = new System.Drawing.Point(3, 236);
+            this.LTxt9.Name = "LTxt9";
+            this.LTxt9.Size = new System.Drawing.Size(78, 60);
+            this.LTxt9.TabIndex = 16;
+            this.LTxt9.Text = "测试结果:";
+            this.LTxt9.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // LTxt8
+            // 
+            this.LTxt8.AutoSize = true;
+            this.LTxt8.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.LTxt8.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.LTxt8.Location = new System.Drawing.Point(227, 177);
+            this.LTxt8.Name = "LTxt8";
+            this.LTxt8.Size = new System.Drawing.Size(96, 59);
+            this.LTxt8.TabIndex = 14;
+            this.LTxt8.Text = "泄露值:";
+            this.LTxt8.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // LTxt7
+            // 
+            this.LTxt7.AutoSize = true;
+            this.LTxt7.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.LTxt7.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.LTxt7.Location = new System.Drawing.Point(3, 177);
+            this.LTxt7.Name = "LTxt7";
+            this.LTxt7.Size = new System.Drawing.Size(78, 59);
+            this.LTxt7.TabIndex = 12;
+            this.LTxt7.Text = "压力值:";
+            this.LTxt7.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // RTxt6
+            // 
+            this.RTxt6.AutoSize = true;
+            this.RTxt6.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.RTxt6.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.RTxt6.Location = new System.Drawing.Point(329, 118);
+            this.RTxt6.Name = "RTxt6";
+            this.RTxt6.Size = new System.Drawing.Size(136, 59);
+            this.RTxt6.TabIndex = 11;
+            this.RTxt6.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // LTxt6
+            // 
+            this.LTxt6.AutoSize = true;
+            this.LTxt6.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.LTxt6.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.LTxt6.Location = new System.Drawing.Point(227, 118);
+            this.LTxt6.Name = "LTxt6";
+            this.LTxt6.Size = new System.Drawing.Size(96, 59);
+            this.LTxt6.TabIndex = 10;
+            this.LTxt6.Text = "测试时间:";
+            this.LTxt6.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // RTxt5
+            // 
+            this.RTxt5.AutoSize = true;
+            this.RTxt5.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.RTxt5.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.RTxt5.Location = new System.Drawing.Point(87, 118);
+            this.RTxt5.Name = "RTxt5";
+            this.RTxt5.Size = new System.Drawing.Size(134, 59);
+            this.RTxt5.TabIndex = 9;
+            this.RTxt5.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // LTxt5
+            // 
+            this.LTxt5.AutoSize = true;
+            this.LTxt5.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.LTxt5.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.LTxt5.Location = new System.Drawing.Point(3, 118);
+            this.LTxt5.Name = "LTxt5";
+            this.LTxt5.Size = new System.Drawing.Size(78, 59);
+            this.LTxt5.TabIndex = 8;
+            this.LTxt5.Text = "稳压时间:";
+            this.LTxt5.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // RTxt4
+            // 
+            this.RTxt4.AutoSize = true;
+            this.RTxt4.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.RTxt4.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.RTxt4.Location = new System.Drawing.Point(329, 59);
+            this.RTxt4.Name = "RTxt4";
+            this.RTxt4.Size = new System.Drawing.Size(136, 59);
+            this.RTxt4.TabIndex = 7;
+            this.RTxt4.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // LTxt4
+            // 
+            this.LTxt4.AutoSize = true;
+            this.LTxt4.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.LTxt4.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.LTxt4.Location = new System.Drawing.Point(227, 59);
+            this.LTxt4.Name = "LTxt4";
+            this.LTxt4.Size = new System.Drawing.Size(96, 59);
+            this.LTxt4.TabIndex = 6;
+            this.LTxt4.Text = "充气时间:";
+            this.LTxt4.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // RTxt3
+            // 
+            this.RTxt3.AutoSize = true;
+            this.RTxt3.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.RTxt3.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.RTxt3.Location = new System.Drawing.Point(87, 59);
+            this.RTxt3.Name = "RTxt3";
+            this.RTxt3.Size = new System.Drawing.Size(134, 59);
+            this.RTxt3.TabIndex = 5;
+            this.RTxt3.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // LTxt3
+            // 
+            this.LTxt3.AutoSize = true;
+            this.LTxt3.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.LTxt3.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.LTxt3.Location = new System.Drawing.Point(3, 59);
+            this.LTxt3.Name = "LTxt3";
+            this.LTxt3.Size = new System.Drawing.Size(78, 59);
+            this.LTxt3.TabIndex = 4;
+            this.LTxt3.Text = "工位号:";
+            this.LTxt3.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // RTxt2
+            // 
+            this.RTxt2.AutoSize = true;
+            this.RTxt2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.RTxt2.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.RTxt2.Location = new System.Drawing.Point(329, 0);
+            this.RTxt2.Name = "RTxt2";
+            this.RTxt2.Size = new System.Drawing.Size(136, 59);
+            this.RTxt2.TabIndex = 3;
+            this.RTxt2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // LTxt2
+            // 
+            this.LTxt2.AutoSize = true;
+            this.LTxt2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.LTxt2.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.LTxt2.Location = new System.Drawing.Point(227, 0);
+            this.LTxt2.Name = "LTxt2";
+            this.LTxt2.Size = new System.Drawing.Size(96, 59);
+            this.LTxt2.TabIndex = 2;
+            this.LTxt2.Text = "发送开始信息:";
+            this.LTxt2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // RTxt1
+            // 
+            this.RTxt1.AutoSize = true;
+            this.RTxt1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.RTxt1.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.RTxt1.Location = new System.Drawing.Point(87, 0);
+            this.RTxt1.Name = "RTxt1";
+            this.RTxt1.Size = new System.Drawing.Size(134, 59);
+            this.RTxt1.TabIndex = 1;
+            this.RTxt1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // LTxt1
+            // 
+            this.LTxt1.AutoSize = true;
+            this.LTxt1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.LTxt1.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.LTxt1.Location = new System.Drawing.Point(3, 0);
+            this.LTxt1.Name = "LTxt1";
+            this.LTxt1.Size = new System.Drawing.Size(78, 59);
+            this.LTxt1.TabIndex = 0;
+            this.LTxt1.Text = "日期时间:";
+            this.LTxt1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // RTxt7
+            // 
+            this.RTxt7.AutoSize = true;
+            this.RTxt7.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.RTxt7.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.RTxt7.Location = new System.Drawing.Point(87, 177);
+            this.RTxt7.Name = "RTxt7";
+            this.RTxt7.Size = new System.Drawing.Size(134, 59);
+            this.RTxt7.TabIndex = 15;
+            this.RTxt7.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // RTxt8
+            // 
+            this.RTxt8.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.RTxt8.BackColor = System.Drawing.SystemColors.Control;
+            this.RTxt8.BorderStyle = System.Windows.Forms.BorderStyle.None;
+            this.RTxt8.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.RTxt8.Location = new System.Drawing.Point(329, 190);
+            this.RTxt8.Name = "RTxt8";
+            this.RTxt8.Size = new System.Drawing.Size(136, 32);
+            this.RTxt8.TabIndex = 13;
+            this.RTxt8.KeyDown += new System.Windows.Forms.KeyEventHandler(this.RTxt8_KeyDown);
+            // 
+            // OperatResult
+            // 
+            this.OperatResult.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.OperatResult.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.OperatResult.Location = new System.Drawing.Point(478, 4);
+            this.OperatResult.Margin = new System.Windows.Forms.Padding(4);
+            this.OperatResult.Name = "OperatResult";
+            this.OperatResult.Size = new System.Drawing.Size(874, 294);
+            this.OperatResult.TabIndex = 88;
+            this.OperatResult.Text = "";
+            // 
+            // ProtDetails
+            // 
+            this.ProtDetails.BorderColor = System.Drawing.Color.Black;
+            this.ProtDetails.Controls.Add(this.ClearMsg);
+            this.ProtDetails.Controls.Add(this.Result);
+            this.ProtDetails.Controls.Add(this.label10);
+            this.ProtDetails.Controls.Add(this.AutoTest);
+            this.ProtDetails.Controls.Add(this.label9);
+            this.ProtDetails.Controls.Add(this.label8);
+            this.ProtDetails.Controls.Add(this.SecondSN);
+            this.ProtDetails.Controls.Add(this.FirstSN);
+            this.ProtDetails.Controls.Add(this.label7);
+            this.ProtDetails.Controls.Add(this.label6);
+            this.ProtDetails.Controls.Add(this.BaudRate);
+            this.ProtDetails.Controls.Add(this.label5);
+            this.ProtDetails.Controls.Add(this.Port);
+            this.ProtDetails.Dock = System.Windows.Forms.DockStyle.Top;
+            this.ProtDetails.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.ProtDetails.Location = new System.Drawing.Point(0, 0);
+            this.ProtDetails.Name = "ProtDetails";
+            this.ProtDetails.Size = new System.Drawing.Size(1356, 333);
+            this.ProtDetails.TabIndex = 2;
+            this.ProtDetails.TabStop = false;
+            this.ProtDetails.Text = "端口设置";
+            this.ProtDetails.TextColor = System.Drawing.Color.Black;
+            // 
+            // ClearMsg
+            // 
+            this.ClearMsg.Cursor = System.Windows.Forms.Cursors.Hand;
+            this.ClearMsg.Location = new System.Drawing.Point(887, 262);
+            this.ClearMsg.Name = "ClearMsg";
+            this.ClearMsg.Size = new System.Drawing.Size(142, 39);
+            this.ClearMsg.TabIndex = 13;
+            this.ClearMsg.Text = "清除提示";
+            this.ClearMsg.UseVisualStyleBackColor = true;
+            this.ClearMsg.Click += new System.EventHandler(this.ClearMsg_Click);
+            // 
+            // Result
+            // 
+            this.Result.Location = new System.Drawing.Point(179, 264);
+            this.Result.Name = "Result";
+            this.Result.Size = new System.Drawing.Size(680, 39);
+            this.Result.TabIndex = 12;
+            // 
+            // label10
+            // 
+            this.label10.AutoSize = true;
+            this.label10.Location = new System.Drawing.Point(69, 267);
+            this.label10.Name = "label10";
+            this.label10.Size = new System.Drawing.Size(110, 31);
+            this.label10.TabIndex = 11;
+            this.label10.Text = "测试结果";
+            // 
+            // AutoTest
+            // 
+            this.AutoTest.AutoSize = true;
+            this.AutoTest.Cursor = System.Windows.Forms.Cursors.Hand;
+            this.AutoTest.Location = new System.Drawing.Point(834, 138);
+            this.AutoTest.Name = "AutoTest";
+            this.AutoTest.Size = new System.Drawing.Size(22, 21);
+            this.AutoTest.TabIndex = 10;
+            this.AutoTest.UseVisualStyleBackColor = true;
+            // 
+            // label9
+            // 
+            this.label9.AutoSize = true;
+            this.label9.BackColor = System.Drawing.SystemColors.Control;
+            this.label9.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label9.ForeColor = System.Drawing.Color.SteelBlue;
+            this.label9.Location = new System.Drawing.Point(661, 209);
+            this.label9.Name = "label9";
+            this.label9.Size = new System.Drawing.Size(79, 28);
+            this.label9.TabIndex = 8;
+            this.label9.Text = "2#工位";
+            // 
+            // label8
+            // 
+            this.label8.AutoSize = true;
+            this.label8.BackColor = System.Drawing.SystemColors.Control;
+            this.label8.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label8.ForeColor = System.Drawing.Color.SteelBlue;
+            this.label8.Location = new System.Drawing.Point(299, 209);
+            this.label8.Name = "label8";
+            this.label8.Size = new System.Drawing.Size(79, 28);
+            this.label8.TabIndex = 7;
+            this.label8.Text = "1#工位";
+            // 
+            // SecondSN
+            // 
+            this.SecondSN.Location = new System.Drawing.Point(539, 167);
+            this.SecondSN.Name = "SecondSN";
+            this.SecondSN.Size = new System.Drawing.Size(320, 39);
+            this.SecondSN.TabIndex = 6;
+            this.SecondSN.KeyDown += new System.Windows.Forms.KeyEventHandler(this.SecondSN_KeyDown);
+            // 
+            // FirstSN
+            // 
+            this.FirstSN.Location = new System.Drawing.Point(178, 167);
+            this.FirstSN.Name = "FirstSN";
+            this.FirstSN.Size = new System.Drawing.Size(320, 39);
+            this.FirstSN.TabIndex = 5;
+            this.FirstSN.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FirstSN_KeyDown);
+            // 
+            // label7
+            // 
+            this.label7.AutoSize = true;
+            this.label7.Location = new System.Drawing.Point(68, 170);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(86, 31);
+            this.label7.TabIndex = 4;
+            this.label7.Text = "序列号";
+            // 
+            // label6
+            // 
+            this.label6.AutoSize = true;
+            this.label6.Location = new System.Drawing.Point(68, 110);
+            this.label6.Name = "label6";
+            this.label6.Size = new System.Drawing.Size(86, 31);
+            this.label6.TabIndex = 3;
+            this.label6.Text = "波特率";
+            // 
+            // BaudRate
+            // 
+            this.BaudRate.Cursor = System.Windows.Forms.Cursors.Hand;
+            this.BaudRate.FormattingEnabled = true;
+            this.BaudRate.Location = new System.Drawing.Point(179, 107);
+            this.BaudRate.Name = "BaudRate";
+            this.BaudRate.Size = new System.Drawing.Size(260, 39);
+            this.BaudRate.TabIndex = 2;
+            // 
+            // label5
+            // 
+            this.label5.AutoSize = true;
+            this.label5.Location = new System.Drawing.Point(68, 51);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(62, 31);
+            this.label5.TabIndex = 1;
+            this.label5.Text = "端口";
+            // 
+            // Port
+            // 
+            this.Port.Cursor = System.Windows.Forms.Cursors.Hand;
+            this.Port.FormattingEnabled = true;
+            this.Port.Location = new System.Drawing.Point(179, 48);
+            this.Port.Name = "Port";
+            this.Port.Size = new System.Drawing.Size(260, 39);
+            this.Port.TabIndex = 0;
+            this.Port.SelectedIndexChanged += new System.EventHandler(this.Port_SelectedIndexChanged);
+            // 
+            // SNDetails
+            // 
+            this.SNDetails.BorderColor = System.Drawing.Color.Black;
+            this.SNDetails.Controls.Add(this.tableLayoutPanel1);
+            this.SNDetails.Dock = System.Windows.Forms.DockStyle.Top;
+            this.SNDetails.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.SNDetails.Location = new System.Drawing.Point(5, 5);
+            this.SNDetails.Name = "SNDetails";
+            this.SNDetails.Size = new System.Drawing.Size(1356, 123);
+            this.SNDetails.TabIndex = 1;
+            this.SNDetails.TabStop = false;
+            this.SNDetails.Text = "产品序列信息";
+            this.SNDetails.TextColor = System.Drawing.Color.Black;
+            // 
+            // tableLayoutPanel1
+            // 
+            this.tableLayoutPanel1.ColumnCount = 8;
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 6.451613F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 12.09677F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 6.451613F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 12.09677F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 6.451613F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 13.19F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 6.451613F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 36.81F));
+            this.tableLayoutPanel1.Controls.Add(this.productName, 7, 0);
+            this.tableLayoutPanel1.Controls.Add(this.productCode, 5, 0);
+            this.tableLayoutPanel1.Controls.Add(this.workOrder, 3, 0);
+            this.tableLayoutPanel1.Controls.Add(this.label4, 6, 0);
+            this.tableLayoutPanel1.Controls.Add(this.label1, 0, 0);
+            this.tableLayoutPanel1.Controls.Add(this.label3, 4, 0);
+            this.tableLayoutPanel1.Controls.Add(this.label2, 2, 0);
+            this.tableLayoutPanel1.Controls.Add(this.serialNumber, 1, 0);
+            this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Bottom;
+            this.tableLayoutPanel1.Location = new System.Drawing.Point(3, 37);
+            this.tableLayoutPanel1.Name = "tableLayoutPanel1";
+            this.tableLayoutPanel1.RowCount = 1;
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel1.Size = new System.Drawing.Size(1350, 83);
+            this.tableLayoutPanel1.TabIndex = 0;
+            // 
+            // productName
+            // 
+            this.productName.AutoSize = true;
+            this.productName.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.productName.Location = new System.Drawing.Point(855, 0);
+            this.productName.Name = "productName";
+            this.productName.Size = new System.Drawing.Size(492, 83);
+            this.productName.TabIndex = 7;
+            this.productName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // productCode
+            // 
+            this.productCode.AutoSize = true;
+            this.productCode.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.productCode.Location = new System.Drawing.Point(590, 0);
+            this.productCode.Name = "productCode";
+            this.productCode.Size = new System.Drawing.Size(172, 83);
+            this.productCode.TabIndex = 6;
+            this.productCode.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // workOrder
+            // 
+            this.workOrder.AutoSize = true;
+            this.workOrder.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.workOrder.Location = new System.Drawing.Point(340, 0);
+            this.workOrder.Name = "workOrder";
+            this.workOrder.Size = new System.Drawing.Size(157, 83);
+            this.workOrder.TabIndex = 5;
+            this.workOrder.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label4
+            // 
+            this.label4.AutoSize = true;
+            this.label4.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label4.Location = new System.Drawing.Point(768, 0);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(81, 83);
+            this.label4.TabIndex = 3;
+            this.label4.Text = "产品名称: ";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            this.label1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label1.Location = new System.Drawing.Point(3, 0);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(81, 83);
+            this.label1.TabIndex = 0;
+            this.label1.Text = "序列号: ";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label3.Location = new System.Drawing.Point(503, 0);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(81, 83);
+            this.label3.TabIndex = 2;
+            this.label3.Text = "产品编号: ";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label2
+            // 
+            this.label2.AutoSize = true;
+            this.label2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label2.Location = new System.Drawing.Point(253, 0);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(81, 83);
+            this.label2.TabIndex = 1;
+            this.label2.Text = "工单: ";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // serialNumber
+            // 
+            this.serialNumber.AutoSize = true;
+            this.serialNumber.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.serialNumber.Location = new System.Drawing.Point(90, 0);
+            this.serialNumber.Name = "serialNumber";
+            this.serialNumber.Size = new System.Drawing.Size(157, 83);
+            this.serialNumber.TabIndex = 4;
+            this.serialNumber.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // Make_AirTightnessTest
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 18F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(1366, 768);
+            this.Controls.Add(this.panel1);
+            this.Controls.Add(this.SNDetails);
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
+            this.Name = "Make_AirTightnessTest";
+            this.Padding = new System.Windows.Forms.Padding(5);
+            this.Text = "Make_AirTightnessTest";
+            this.Load += new System.EventHandler(this.Make_AirTightnessTest_Load);
+            this.panel1.ResumeLayout(false);
+            this.tableLayoutPanel2.ResumeLayout(false);
+            this.tableLayoutPanel3.ResumeLayout(false);
+            this.tableLayoutPanel3.PerformLayout();
+            this.ProtDetails.ResumeLayout(false);
+            this.ProtDetails.PerformLayout();
+            this.SNDetails.ResumeLayout(false);
+            this.tableLayoutPanel1.ResumeLayout(false);
+            this.tableLayoutPanel1.PerformLayout();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+        private CustomControl.GroupBoxWithBorder.GroupBoxWithBorder SNDetails;
+        private System.Windows.Forms.Panel panel1;
+        private CustomControl.GroupBoxWithBorder.GroupBoxWithBorder ProtDetails;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
+        private System.Windows.Forms.Label serialNumber;
+        private System.Windows.Forms.Label workOrder;
+        private System.Windows.Forms.Label productName;
+        private System.Windows.Forms.Label productCode;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.ComboBox Port;
+        private System.Windows.Forms.Label label6;
+        private System.Windows.Forms.ComboBox BaudRate;
+        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.TextBox FirstSN;
+        private System.Windows.Forms.Label label8;
+        private System.Windows.Forms.TextBox SecondSN;
+        private System.Windows.Forms.Label label9;
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2;
+        private CustomControl.RichText.RichTextAutoBottom OperatResult;
+        private System.Windows.Forms.CheckBox AutoTest;
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel3;
+        private System.Windows.Forms.Label LTxt1;
+        private System.Windows.Forms.Label RTxt10;
+        private System.Windows.Forms.Label LTxt10;
+        private System.Windows.Forms.Label RTxt9;
+        private System.Windows.Forms.Label LTxt9;
+        private System.Windows.Forms.Label RTxt7;
+        private System.Windows.Forms.Label LTxt8;
+        private System.Windows.Forms.Label LTxt7;
+        private System.Windows.Forms.Label RTxt6;
+        private System.Windows.Forms.Label LTxt6;
+        private System.Windows.Forms.Label RTxt5;
+        private System.Windows.Forms.Label LTxt5;
+        private System.Windows.Forms.Label RTxt4;
+        private System.Windows.Forms.Label LTxt4;
+        private System.Windows.Forms.Label RTxt3;
+        private System.Windows.Forms.Label LTxt3;
+        private System.Windows.Forms.Label RTxt2;
+        private System.Windows.Forms.Label LTxt2;
+        private System.Windows.Forms.Label RTxt1;
+        private System.Windows.Forms.TextBox Result;
+        private System.Windows.Forms.Label label10;
+        private System.Windows.Forms.TextBox RTxt8;
+        private System.Windows.Forms.Button ClearMsg;
+    }
+}

+ 387 - 0
UAS_MES_HYSX/FunctionCode/Make/Make_AirTightnessTest.cs

@@ -0,0 +1,387 @@
+using DevExpress.Utils.Drawing.Helpers;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.IO.Ports;
+using System.Linq;
+using System.Text;
+using System.Threading;
+using System.Web.Services.Description;
+using System.Windows.Forms;
+using UAS_MES_NEW.DataOperate;
+using UAS_MES_NEW.Entity;
+using UAS_MES_NEW.PublicMethod;
+using static System.Windows.Forms.VisualStyles.VisualStyleElement.ListView;
+using static UAS_MES_NEW.Make.Make_ParseLog;
+
+namespace UAS_MES_NEW.Make
+{
+    public partial class Make_AirTightnessTest : Form
+    {
+        public Make_AirTightnessTest()
+        {
+            InitializeComponent();
+        }
+
+        StringBuilder SQL = new StringBuilder();
+
+        DataTable dt;
+        DataHelper dh;
+
+        string oWO, oWOId, oErrMsg = "";
+        string mTestVal;
+
+        private void Make_AirTightnessTest_Load(object sender, EventArgs e)
+        {
+            dh = SystemInf.dh;
+
+            string[] ports = SerialPort.GetPortNames();
+            int[] commonBaudRates = { 4800, 9600, 19200, 38400, 57600, 115200, 230400, 460800, 921600 };
+            foreach (int cBRItem in commonBaudRates)
+            {
+                BaudRate.Items.Add(cBRItem);
+            }
+            for (int i = ports.Length - 1; i >= 0; i--)
+            {
+                Port.Items.Add(ports[i]);
+            }
+
+            AutoTest.Checked = true;
+        }
+
+        private void Port_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            if (Port.SelectedIndex == -1) return;
+
+            using (SerialPort serialPort = new SerialPort(Port.Text))
+            {
+                try
+                {
+                    serialPort.ReadTimeout = 800;
+                    serialPort.WriteTimeout = 800;
+
+                    BaudRate.SelectedIndex = -1;
+                    serialPort.Open();
+                    Thread.Sleep(200);
+
+                    int baudRate = serialPort.BaudRate;
+                    foreach (var item in BaudRate.Items)
+                    {
+                        if (item.ToString().Contains($"{baudRate}"))
+                        {
+                            BaudRate.SelectedItem = item;
+                            break;
+                        }
+                    }
+                }
+                catch (Exception ex)
+                {
+                    ShowMsg(0, $"自动获取串口波特率NG,{ex.Message}");
+                }
+                finally
+                {
+                    if (serialPort.IsOpen)
+                    {
+                        serialPort.Close();
+                    }
+                }
+            }
+        }
+
+        private void FirstSN_KeyDown(object sender, KeyEventArgs e)
+        {
+            if (e.KeyCode != Keys.Enter) return;
+
+            if (Port.SelectedIndex == -1)
+            {
+                Port.Focus();
+                Port.SelectAll();
+                ShowMsg(0, "请选择端口");
+                return;
+            }
+            if (BaudRate.SelectedIndex == -1)
+            {
+                BaudRate.Focus();
+                BaudRate.SelectAll();
+                ShowMsg(0, "请选择波特率");
+                return;
+            }
+
+            FirstSN.Text = FirstSN.Text.Trim();
+            mTestVal = "LWS1";
+            if (AutoTest.Checked)
+            {
+                UpdateSN("L", FirstSN.Text);
+                Thread thread = new Thread(() =>
+                {
+                    bool success = false;
+                    ShowMsg(1, "已发送指令,请稍等测试结果");
+                    success = SendCom(mTestVal);
+                    this.BeginInvoke(new Action(() =>
+                    {
+                        if (success)
+                        {
+                            LoadTestDetail("L", out string testRes);
+                            if (testRes == "NG")
+                            {
+                                RTxt8.Focus();
+                                RTxt8.SelectAll();
+                            }
+                            CheckPassStation(FirstSN.Text, testRes);
+                        }
+                        else
+                        {
+                            LoadTestDetail("C", out string msg);
+                        }
+                    }));
+                });
+                thread.IsBackground = true;
+                thread.Start();
+
+                FirstSN.Focus();
+                FirstSN.SelectAll();
+            }
+        }
+
+        private void SecondSN_KeyDown(object sender, KeyEventArgs e)
+        {
+            if (e.KeyCode != Keys.Enter) return;
+
+            if (Port.SelectedIndex == -1)
+            {
+                Port.Focus();
+                Port.SelectAll();
+                ShowMsg(0, "请选择端口");
+                return;
+            }
+            if (BaudRate.SelectedIndex == -1)
+            {
+                BaudRate.Focus();
+                BaudRate.SelectAll();
+                ShowMsg(0, "请选择波特率");
+                return;
+            }
+
+            SecondSN.Text = SecondSN.Text.Trim();
+            mTestVal = "LWS2";
+            if (AutoTest.Checked)
+            {
+                UpdateSN("L", SecondSN.Text);
+                Thread thread = new Thread(() =>
+                {
+                    bool success = false;
+                    ShowMsg(1, "已发送指令,请稍等测试结果");
+                    success = SendCom(mTestVal);
+                    this.BeginInvoke(new Action(() =>
+                    {
+                        if (success)
+                        {
+                            LoadTestDetail("L", out string testRes);
+                            if (testRes == "NG")
+                            {
+                                RTxt8.Focus();
+                                RTxt8.SelectAll();
+                            }
+                            CheckPassStation(SecondSN.Text, testRes);
+                        }
+                        else
+                        {
+                            LoadTestDetail("C", out string msg);
+                        }
+                    }));
+                });
+                thread.IsBackground = true;
+                thread.Start();
+
+                SecondSN.Focus();
+                SecondSN.SelectAll();
+            }
+        }
+
+        private bool SendCom(string workStation)
+        {
+            using (SerialPort serialPort = new SerialPort(Port.Text))
+            {
+                try
+                {
+                    serialPort.BaudRate = Convert.ToInt32(BaudRate.Text);
+                    serialPort.Parity = Parity.Even;
+                    serialPort.StopBits = StopBits.One;
+                    serialPort.DataBits = 8;
+                    serialPort.Encoding = Encoding.ASCII;
+                    serialPort.ReadTimeout = 20000;
+
+                    if (!serialPort.IsOpen) serialPort.Open();
+
+                    serialPort.WriteLine(workStation);
+
+                    Result.Text = serialPort.ReadLine().Trim();
+
+                    return true;
+                }
+                catch (Exception ex)
+                {
+                    Result.Text = "/20251014_142742/0K/2#/NULL/30/99/0/12700/0/N/0K";
+                    ShowMsg(0, $"获取气密性结果NG,{ex.Message}");
+                    return true;
+                }
+                finally
+                {
+                    if (serialPort.IsOpen)
+                    {
+                        serialPort.Close();
+                    }
+                }
+            }
+        }
+
+        private void CheckPassStation(string sn,string res)
+        {
+            if (LogicHandler.CheckStepSNAndMacode(workOrder.Text, User.UserSourceCode, sn, User.UserCode, out oWO, out oWOId, out oErrMsg))
+            {
+                if (LogicHandler.SetStepResult(oWO, User.UserSourceCode, sn, "气密性测试", "OK", User.UserCode, out oErrMsg))
+                {
+                    List<string> param = new List<string>() { };
+                    string outMsg = "";
+                    param.Add(oWO);
+                    param.Add(sn);
+                    param.Add(User.UserSourceCode);
+                    param.Add(res);
+                    param.Add("");
+                    param.Add("");
+                    param.Add("AirTightness");
+                    param.Add("");
+                    param.Add(outMsg);
+                    string[] paramList = param.ToArray();
+                    dh.CallProcedure("cs_insert_testrejects", ref paramList);
+                    if (paramList[8].Substring(0, 2) == "OK")
+                    {
+                        ShowMsg(1, $"序列号{sn}采集成功:测试结果为{res}");
+                        LogicHandler.DoCommandLog(Tag.ToString(), User.UserCode, oWO, User.UserLineCode, User.UserSourceCode, "气密性测试", "气密性测试过站成功", sn, "");
+                    }
+                }
+                else
+                {
+                    ShowMsg(0, $"序列号{sn},处理过站NG:{oErrMsg}");
+                }
+            }
+            else
+            {
+                UpdateSN("C", sn);
+                LoadTestDetail("C", out string testRes);
+                ShowMsg(0, $"序列号{sn},过站核对NG:{oErrMsg}");
+            }
+        }
+
+        private void LoadTestDetail(string type, out string testRes)
+        {
+            string detail = Result.Text.Trim();
+            if (type == "L")
+            {
+                string[] parts = detail.Split('/');
+                RTxt1.Text = parts[1];
+                RTxt2.Text = parts[2];
+                RTxt3.Text = parts[3];
+                RTxt4.Text = parts[5];
+                RTxt5.Text = parts[6];
+                RTxt6.Text = parts[7];
+                RTxt7.Text = parts[8];
+                RTxt8.Text = parts[9];
+                RTxt9.Text = parts[10];
+                RTxt10.Text = parts[11];
+                testRes = parts[9].ToUpper() == "Y" ? "OK" : "NG";
+            }
+            else if (type == "C")
+            {
+                RTxt1.Text = "";
+                RTxt2.Text = "";
+                RTxt3.Text = "";
+                RTxt4.Text = "";
+                RTxt5.Text = "";
+                RTxt6.Text = "";
+                RTxt7.Text = "";
+                RTxt8.Text = "";
+                RTxt9.Text = "";
+                RTxt10.Text = "";
+            }
+            testRes = "";
+
+        }
+
+        private void RTxt8_KeyDown(object sender, KeyEventArgs e)
+        {
+            if (e.KeyCode != Keys.Enter) return;
+            RTxt8.Text = RTxt8.Text.Trim();
+
+            if (Convert.ToInt32(RTxt8.Text) < 100)
+            {
+                RTxt9.Text = "Y";
+                if (mTestVal == "LWS1")
+                {
+                    FirstSN.Focus();
+                    FirstSN.SelectAll();
+                    CheckPassStation(SecondSN.Text, "OK");
+                }
+                else if (mTestVal == "LWS2") 
+                {
+                    SecondSN.Focus();
+                    SecondSN.SelectAll();
+                    CheckPassStation(SecondSN.Text, "OK");
+                }
+            }
+            RTxt8.Focus();
+            RTxt8.SelectAll();
+        }
+
+        private void ClearMsg_Click(object sender, EventArgs e)
+        {
+            OperatResult.Clear();
+        }
+
+        private void UpdateSN(string type,string sn)
+        {
+            if (type == "C")
+            {
+                serialNumber.Text = "";
+                workOrder.Text = "";
+                productCode.Text = "";
+                productName.Text = "";
+            }
+            else if (type == "L") 
+            {
+                SQL.Clear();
+                SQL.Append($@"SELECT ms_sncode,ma_code,pr_code,pr_spec FROM makeserial,make,product
+                        WHERE ms_sncode = '{sn}' AND ms_makecode = ma_code AND ms_prodcode = pr_code");
+                dt = (DataTable)dh.ExecuteSql(SQL.ToString(), "select");
+                if (dt.Rows.Count > 0)
+                {
+                    serialNumber.Text = dt.Rows[0]["ms_sncode"].ToString();
+                    workOrder.Text = dt.Rows[0]["ma_code"].ToString();
+                    productCode.Text = dt.Rows[0]["pr_code"].ToString();
+                    productName.Text = dt.Rows[0]["pr_spec"].ToString();
+                }
+                else 
+                {
+                    UpdateSN("C",sn);
+                }
+            }
+        }
+
+        private void ShowMsg(int type, string msg)
+        {
+            msg = msg.Replace("\r", "").Replace("\n", ""); 
+            string msgTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
+            string showMsg = $"{msgTime}: {msg}\n";
+            if (type == 0)
+            {
+                OperatResult.AppendText(showMsg, Color.Red);
+            }
+            else if (type == 1)
+            {
+                OperatResult.AppendText(showMsg, Color.Green);
+            }
+        }
+    }
+}

+ 120 - 0
UAS_MES_HYSX/FunctionCode/Make/Make_AirTightnessTest.resx

@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>

+ 1 - 1
UAS_MES_HYSX/FunctionCode/Make/Make_ParseLog.cs

@@ -434,7 +434,7 @@ namespace UAS_MES_NEW.Make
                 {
                     if (LogicHandler.CheckStepSNAndMacode(ma_code.Text, User.UserSourceCode, item.SN, User.UserCode, out omakeCode, out oMsid, out oErrorMessage))
                     {
-                        if (LogicHandler.SetStepResult(omakeCode, User.UserSourceCode, item.SN, "日志解析", "解析过站成功", User.UserCode, out oErrorMessage))
+                        if (LogicHandler.SetStepResult(omakeCode, User.UserSourceCode, item.SN, "日志解析", "OK", User.UserCode, out oErrorMessage))
                         {
                             string outMsg = "";
                             param.Add(omakeCode);

+ 47 - 0
UAS_MES_HYSX/FunctionCode/Make/Make_WirelessThroughput.Designer.cs

@@ -0,0 +1,47 @@
+namespace UAS_MES_NEW.Make
+{
+    partial class Make_WirelessThroughput
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.SuspendLayout();
+            // 
+            // Make_WirelessThroughput
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 18F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(1366, 768);
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
+            this.Name = "Make_WirelessThroughput";
+            this.Text = "Make_WirelessThroughput";
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+    }
+}

+ 19 - 0
UAS_MES_HYSX/FunctionCode/Make/Make_WirelessThroughput.cs

@@ -0,0 +1,19 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+
+namespace UAS_MES_NEW.Make
+{
+    public partial class Make_WirelessThroughput : Form
+    {
+        public Make_WirelessThroughput()
+        {
+            InitializeComponent();
+        }
+    }
+}

+ 120 - 0
UAS_MES_HYSX/FunctionCode/Make/Make_WirelessThroughput.resx

@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>

+ 98 - 40
UAS_MES_HYSX/UAS_MES_HYSX.csproj

@@ -1,6 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
+<Project ToolsVersion="14.0" DefaultTargets="Build"
+  xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props"
+    Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
@@ -76,59 +78,90 @@
     <StartupObject>UAS_MES_NEW.Program</StartupObject>
   </PropertyGroup>
   <ItemGroup>
-    <Reference Include="DevComponents.DotNetBar2, Version=6.7.2.0, Culture=neutral, PublicKeyToken=bd7258ab2241255c, processorArchitecture=MSIL">
+    <Reference
+      Include="DevComponents.DotNetBar2, Version=6.7.2.0, Culture=neutral, PublicKeyToken=bd7258ab2241255c, processorArchitecture=MSIL">
       <SpecificVersion>False</SpecificVersion>
       <HintPath>Tool\DevComponents.DotNetBar2.dll</HintPath>
     </Reference>
-    <Reference Include="DevExpress.BonusSkins.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
+    <Reference
+      Include="DevExpress.BonusSkins.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
       <SpecificVersion>False</SpecificVersion>
       <HintPath>Tool\DevExpress.BonusSkins.v15.2.dll</HintPath>
     </Reference>
-    <Reference Include="DevExpress.Charts.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.Data.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.DataAccess.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.Map.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.PivotGrid.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.Printing.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.Sparkline.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.SpellChecker.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.Utils.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
+    <Reference
+      Include="DevExpress.Charts.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
+    <Reference
+      Include="DevExpress.Data.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
+    <Reference
+      Include="DevExpress.DataAccess.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
+    <Reference
+      Include="DevExpress.Map.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
+    <Reference
+      Include="DevExpress.PivotGrid.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
+    <Reference
+      Include="DevExpress.Printing.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
+    <Reference
+      Include="DevExpress.Sparkline.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
+    <Reference
+      Include="DevExpress.SpellChecker.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
+    <Reference
+      Include="DevExpress.Utils.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
       <SpecificVersion>False</SpecificVersion>
       <HintPath>Tool\DevExpress.Utils.v15.2.dll</HintPath>
     </Reference>
-    <Reference Include="DevExpress.Xpo.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
-    <Reference Include="DevExpress.XtraBars.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
+    <Reference
+      Include="DevExpress.Xpo.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
+    <Reference
+      Include="DevExpress.XtraBars.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
       <SpecificVersion>False</SpecificVersion>
       <HintPath>Tool\DevExpress.XtraBars.v15.2.dll</HintPath>
     </Reference>
-    <Reference Include="DevExpress.XtraCharts.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.XtraCharts.v15.2.UI, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
-    <Reference Include="DevExpress.XtraCharts.v15.2.Wizard, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.XtraEditors.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
+    <Reference
+      Include="DevExpress.XtraCharts.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
+    <Reference
+      Include="DevExpress.XtraCharts.v15.2.UI, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
+    <Reference
+      Include="DevExpress.XtraCharts.v15.2.Wizard, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
+    <Reference
+      Include="DevExpress.XtraEditors.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
       <SpecificVersion>False</SpecificVersion>
       <HintPath>Tool\DevExpress.XtraEditors.v15.2.dll</HintPath>
     </Reference>
-    <Reference Include="DevExpress.XtraGauges.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.XtraGauges.v15.2.Win, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
-    <Reference Include="DevExpress.XtraGrid.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
-    <Reference Include="DevExpress.XtraLayout.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.XtraMap.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
-    <Reference Include="DevExpress.XtraNavBar.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
+    <Reference
+      Include="DevExpress.XtraGauges.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
+    <Reference
+      Include="DevExpress.XtraGauges.v15.2.Win, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
+    <Reference
+      Include="DevExpress.XtraGrid.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
+    <Reference
+      Include="DevExpress.XtraLayout.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
+    <Reference
+      Include="DevExpress.XtraMap.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
+    <Reference
+      Include="DevExpress.XtraNavBar.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
       <SpecificVersion>False</SpecificVersion>
       <HintPath>Tool\DevExpress.XtraNavBar.v15.2.dll</HintPath>
     </Reference>
-    <Reference Include="DevExpress.XtraPivotGrid.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
-    <Reference Include="DevExpress.XtraPrinting.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.XtraScheduler.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.XtraScheduler.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.XtraScheduler.v15.2.Extensions, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
-    <Reference Include="DevExpress.XtraSpellChecker.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
-    <Reference Include="DevExpress.XtraTreeList.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
+    <Reference
+      Include="DevExpress.XtraPivotGrid.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
+    <Reference
+      Include="DevExpress.XtraPrinting.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
+    <Reference
+      Include="DevExpress.XtraScheduler.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
+    <Reference
+      Include="DevExpress.XtraScheduler.v15.2.Core, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
+    <Reference
+      Include="DevExpress.XtraScheduler.v15.2.Extensions, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
+    <Reference
+      Include="DevExpress.XtraSpellChecker.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
+    <Reference
+      Include="DevExpress.XtraTreeList.v15.2, Version=15.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
     <Reference Include="ExcelHelper, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
       <SpecificVersion>False</SpecificVersion>
       <HintPath>Tool\ExcelHelper.dll</HintPath>
     </Reference>
-    <Reference Include="HslCommunication, Version=9.7.0.0, Culture=neutral, PublicKeyToken=cdb2261fa039ed67, processorArchitecture=MSIL">
+    <Reference
+      Include="HslCommunication, Version=9.7.0.0, Culture=neutral, PublicKeyToken=cdb2261fa039ed67, processorArchitecture=MSIL">
       <HintPath>..\packages\HslCommunication.9.7.0\lib\net35\HslCommunication.dll</HintPath>
       <Private>True</Private>
     </Reference>
@@ -136,24 +169,29 @@
       <HintPath>Tool\Interop.LabelManager2.dll</HintPath>
       <EmbedInteropTypes>False</EmbedInteropTypes>
     </Reference>
-    <Reference Include="Interop.SpeechLib, Version=5.4.0.0, Culture=neutral, processorArchitecture=MSIL">
+    <Reference
+      Include="Interop.SpeechLib, Version=5.4.0.0, Culture=neutral, processorArchitecture=MSIL">
       <SpecificVersion>False</SpecificVersion>
       <EmbedInteropTypes>False</EmbedInteropTypes>
       <HintPath>Tool\Interop.SpeechLib.dll</HintPath>
     </Reference>
-    <Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
+    <Reference
+      Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
       <HintPath>..\packages\Newtonsoft.Json.12.0.3\lib\net40\Newtonsoft.Json.dll</HintPath>
       <Private>True</Private>
     </Reference>
-    <Reference Include="NPOI, Version=1.2.5.0, Culture=neutral, PublicKeyToken=0df73ec7942b34e1, processorArchitecture=MSIL">
+    <Reference
+      Include="NPOI, Version=1.2.5.0, Culture=neutral, PublicKeyToken=0df73ec7942b34e1, processorArchitecture=MSIL">
       <SpecificVersion>False</SpecificVersion>
       <HintPath>Tool\NPOI.dll</HintPath>
     </Reference>
-    <Reference Include="Oracle.ManagedDataAccess, Version=4.121.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342, processorArchitecture=MSIL">
+    <Reference
+      Include="Oracle.ManagedDataAccess, Version=4.121.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342, processorArchitecture=MSIL">
       <SpecificVersion>False</SpecificVersion>
       <HintPath>Tool\Oracle.ManagedDataAccess.dll</HintPath>
     </Reference>
-    <Reference Include="Seagull.BarTender.Print, Version=10.1.4.1, Culture=neutral, PublicKeyToken=109ff779a1b4cbc7, processorArchitecture=x86">
+    <Reference
+      Include="Seagull.BarTender.Print, Version=10.1.4.1, Culture=neutral, PublicKeyToken=109ff779a1b4cbc7, processorArchitecture=x86">
       <SpecificVersion>False</SpecificVersion>
       <HintPath>Tool\Seagull.BarTender.Print.dll</HintPath>
     </Reference>
@@ -551,6 +589,12 @@
     <Compile Include="FunctionCode\Employee\Employee_PowerSarch.Designer.cs">
       <DependentUpon>Employee_PowerSarch.cs</DependentUpon>
     </Compile>
+    <Compile Include="FunctionCode\Make\Make_AirTightnessTest.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="FunctionCode\Make\Make_AirTightnessTest.Designer.cs">
+      <DependentUpon>Make_AirTightnessTest.cs</DependentUpon>
+    </Compile>
     <Compile Include="FunctionCode\Make\Make_CollectElec.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -731,6 +775,12 @@
     <Compile Include="FunctionCode\Make\Make_TestCollection_DCW.Designer.cs">
       <DependentUpon>Make_TestCollection_DCW.cs</DependentUpon>
     </Compile>
+    <Compile Include="FunctionCode\Make\Make_WirelessThroughput.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="FunctionCode\Make\Make_WirelessThroughput.Designer.cs">
+      <DependentUpon>Make_WirelessThroughput.cs</DependentUpon>
+    </Compile>
     <Compile Include="FunctionCode\OQC\OQC_SamplingDataCollection_OffLine.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -1618,6 +1668,9 @@
     <EmbeddedResource Include="FunctionCode\Employee\Employee_PowerSarch.resx">
       <DependentUpon>Employee_PowerSarch.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="FunctionCode\Make\Make_AirTightnessTest.resx">
+      <DependentUpon>Make_AirTightnessTest.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="FunctionCode\Make\Make_CollectElec.resx">
       <DependentUpon>Make_CollectElec.cs</DependentUpon>
     </EmbeddedResource>
@@ -1709,6 +1762,9 @@
     <EmbeddedResource Include="FunctionCode\Make\Make_TestCollection_DCW.resx">
       <DependentUpon>Make_TestCollection_DCW.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="FunctionCode\Make\Make_WirelessThroughput.resx">
+      <DependentUpon>Make_WirelessThroughput.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="FunctionCode\OQC\OQC_SamplingDataCollection_OffLine.resx">
       <DependentUpon>OQC_SamplingDataCollection_OffLine.cs</DependentUpon>
     </EmbeddedResource>
@@ -2172,8 +2228,10 @@
     <Content Include="Resources\lock_open_24px.png" />
     <Content Include="Resources\LoginBG.jpg" />
     <Content Include="Resources\Logout_32px_581264_easyicon.net.png" />
-    <Content Include="Resources\matte_white_square_icon_business_tool_hammer_128px_571061_easyicon.net.ico" />
-    <Content Include="Resources\matte_white_square_icon_business_tool_hammer_96px_571061_easyicon.net.ico" />
+    <Content
+      Include="Resources\matte_white_square_icon_business_tool_hammer_128px_571061_easyicon.net.ico" />
+    <Content
+      Include="Resources\matte_white_square_icon_business_tool_hammer_96px_571061_easyicon.net.ico" />
     <Content Include="Resources\minus.gif" />
     <Content Include="Resources\notice_text_editor_16px_11373_easyicon.net.png" />
     <None Include="Resources\系统设置.png" />