Browse Source

Merge branch 'master' of ssh://10.10.100.21/source/mes-client

Hcsy 8 years ago
parent
commit
9d99bf78dd

+ 95 - 78
UAS-MES/FunctionCode/Make/Make_ColorBoxLoadPrint.Designer.cs

@@ -43,7 +43,7 @@
             this.load = new System.Windows.Forms.RadioButton();
             this.unload = new System.Windows.Forms.RadioButton();
             this.code_label = new System.Windows.Forms.Label();
-            this.ma_craftcode = new System.Windows.Forms.Label();
+            this.ms_craftcode = new System.Windows.Forms.Label();
             this.ClearSn_code = new System.Windows.Forms.PictureBox();
             this.Lock = new UAS_MES.CustomControl.CustomCheckBox.LockCheckBox();
             this.ma_code = new UAS_MES.CustomControl.TextBoxWithIcon.MaCodeSearchTextBox();
@@ -63,9 +63,10 @@
             // 
             this.ms_makecode_label.AutoSize = true;
             this.ms_makecode_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.ms_makecode_label.Location = new System.Drawing.Point(19, 16);
+            this.ms_makecode_label.Location = new System.Drawing.Point(25, 20);
+            this.ms_makecode_label.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.ms_makecode_label.Name = "ms_makecode_label";
-            this.ms_makecode_label.Size = new System.Drawing.Size(58, 21);
+            this.ms_makecode_label.Size = new System.Drawing.Size(72, 27);
             this.ms_makecode_label.TabIndex = 125;
             this.ms_makecode_label.Text = "工单号";
             // 
@@ -73,9 +74,10 @@
             // 
             this.pr_code_label.AutoSize = true;
             this.pr_code_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.pr_code_label.Location = new System.Drawing.Point(248, 16);
+            this.pr_code_label.Location = new System.Drawing.Point(331, 20);
+            this.pr_code_label.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.pr_code_label.Name = "pr_code_label";
-            this.pr_code_label.Size = new System.Drawing.Size(74, 21);
+            this.pr_code_label.Size = new System.Drawing.Size(92, 27);
             this.pr_code_label.TabIndex = 126;
             this.pr_code_label.Text = "产品编号";
             // 
@@ -83,9 +85,10 @@
             // 
             this.mcd_okqty_label.AutoSize = true;
             this.mcd_okqty_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.mcd_okqty_label.Location = new System.Drawing.Point(248, 62);
+            this.mcd_okqty_label.Location = new System.Drawing.Point(331, 78);
+            this.mcd_okqty_label.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.mcd_okqty_label.Name = "mcd_okqty_label";
-            this.mcd_okqty_label.Size = new System.Drawing.Size(74, 21);
+            this.mcd_okqty_label.Size = new System.Drawing.Size(92, 27);
             this.mcd_okqty_label.TabIndex = 127;
             this.mcd_okqty_label.Text = "打印计数";
             // 
@@ -93,9 +96,10 @@
             // 
             this.mcd_remainqty_label.AutoSize = true;
             this.mcd_remainqty_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.mcd_remainqty_label.Location = new System.Drawing.Point(466, 62);
+            this.mcd_remainqty_label.Location = new System.Drawing.Point(621, 78);
+            this.mcd_remainqty_label.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.mcd_remainqty_label.Name = "mcd_remainqty_label";
-            this.mcd_remainqty_label.Size = new System.Drawing.Size(58, 21);
+            this.mcd_remainqty_label.Size = new System.Drawing.Size(72, 27);
             this.mcd_remainqty_label.TabIndex = 128;
             this.mcd_remainqty_label.Text = "剩余数";
             // 
@@ -103,9 +107,10 @@
             // 
             this.label4.AutoSize = true;
             this.label4.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.label4.Location = new System.Drawing.Point(733, 112);
+            this.label4.Location = new System.Drawing.Point(977, 140);
+            this.label4.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.label4.Name = "label4";
-            this.label4.Size = new System.Drawing.Size(74, 21);
+            this.label4.Size = new System.Drawing.Size(92, 27);
             this.label4.TabIndex = 129;
             this.label4.Text = "打印张数";
             // 
@@ -115,9 +120,10 @@
             | System.Windows.Forms.AnchorStyles.Left)));
             this.ms_sncode_label.AutoSize = true;
             this.ms_sncode_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.ms_sncode_label.Location = new System.Drawing.Point(19, 62);
+            this.ms_sncode_label.Location = new System.Drawing.Point(25, 78);
+            this.ms_sncode_label.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.ms_sncode_label.Name = "ms_sncode_label";
-            this.ms_sncode_label.Size = new System.Drawing.Size(58, 21);
+            this.ms_sncode_label.Size = new System.Drawing.Size(72, 27);
             this.ms_sncode_label.TabIndex = 145;
             this.ms_sncode_label.Text = "序列号";
             // 
@@ -125,9 +131,10 @@
             // 
             this.pr_detail_label.AutoSize = true;
             this.pr_detail_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.pr_detail_label.Location = new System.Drawing.Point(466, 16);
+            this.pr_detail_label.Location = new System.Drawing.Point(621, 20);
+            this.pr_detail_label.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.pr_detail_label.Name = "pr_detail_label";
-            this.pr_detail_label.Size = new System.Drawing.Size(74, 21);
+            this.pr_detail_label.Size = new System.Drawing.Size(92, 27);
             this.pr_detail_label.TabIndex = 146;
             this.pr_detail_label.Text = "产品名称";
             // 
@@ -135,9 +142,10 @@
             // 
             this.PrintLabel_label.AutoSize = true;
             this.PrintLabel_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.PrintLabel_label.Location = new System.Drawing.Point(730, 62);
+            this.PrintLabel_label.Location = new System.Drawing.Point(973, 78);
+            this.PrintLabel_label.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.PrintLabel_label.Name = "PrintLabel_label";
-            this.PrintLabel_label.Size = new System.Drawing.Size(42, 21);
+            this.PrintLabel_label.Size = new System.Drawing.Size(52, 27);
             this.PrintLabel_label.TabIndex = 160;
             this.PrintLabel_label.Text = "标签";
             // 
@@ -145,9 +153,10 @@
             // 
             this.label2.AutoSize = true;
             this.label2.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.label2.Location = new System.Drawing.Point(730, 14);
+            this.label2.Location = new System.Drawing.Point(973, 18);
+            this.label2.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.label2.Name = "label2";
-            this.label2.Size = new System.Drawing.Size(58, 21);
+            this.label2.Size = new System.Drawing.Size(72, 27);
             this.label2.TabIndex = 161;
             this.label2.Text = "打印机";
             // 
@@ -155,10 +164,10 @@
             // 
             this.PrintLabel.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
             this.PrintLabel.FormattingEnabled = true;
-            this.PrintLabel.Location = new System.Drawing.Point(808, 62);
-            this.PrintLabel.Margin = new System.Windows.Forms.Padding(2);
+            this.PrintLabel.Location = new System.Drawing.Point(1077, 78);
+            this.PrintLabel.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
             this.PrintLabel.Name = "PrintLabel";
-            this.PrintLabel.Size = new System.Drawing.Size(152, 20);
+            this.PrintLabel.Size = new System.Drawing.Size(201, 23);
             this.PrintLabel.TabIndex = 162;
             this.PrintLabel.SelectedValueChanged += new System.EventHandler(this.PrintLabel_SelectedValueChanged);
             // 
@@ -166,10 +175,9 @@
             // 
             this.ms_sncode.AutoSize = true;
             this.ms_sncode.Font = new System.Drawing.Font("微软雅黑", 12F);
-            this.ms_sncode.Location = new System.Drawing.Point(81, 62);
-            this.ms_sncode.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.ms_sncode.Location = new System.Drawing.Point(108, 78);
             this.ms_sncode.Name = "ms_sncode";
-            this.ms_sncode.Size = new System.Drawing.Size(0, 21);
+            this.ms_sncode.Size = new System.Drawing.Size(0, 27);
             this.ms_sncode.TabIndex = 163;
             // 
             // load
@@ -177,10 +185,10 @@
             this.load.AutoSize = true;
             this.load.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.load.ForeColor = System.Drawing.Color.Blue;
-            this.load.Location = new System.Drawing.Point(22, 421);
-            this.load.Margin = new System.Windows.Forms.Padding(2);
+            this.load.Location = new System.Drawing.Point(29, 526);
+            this.load.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
             this.load.Name = "load";
-            this.load.Size = new System.Drawing.Size(60, 25);
+            this.load.Size = new System.Drawing.Size(73, 31);
             this.load.TabIndex = 164;
             this.load.TabStop = true;
             this.load.Text = "上料";
@@ -191,10 +199,10 @@
             this.unload.AutoSize = true;
             this.unload.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.unload.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))));
-            this.unload.Location = new System.Drawing.Point(126, 421);
-            this.unload.Margin = new System.Windows.Forms.Padding(2);
+            this.unload.Location = new System.Drawing.Point(168, 526);
+            this.unload.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
             this.unload.Name = "unload";
-            this.unload.Size = new System.Drawing.Size(60, 25);
+            this.unload.Size = new System.Drawing.Size(73, 31);
             this.unload.TabIndex = 165;
             this.unload.TabStop = true;
             this.unload.Text = "下料";
@@ -204,30 +212,31 @@
             // 
             this.code_label.AutoSize = true;
             this.code_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.code_label.Location = new System.Drawing.Point(230, 423);
-            this.code_label.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.code_label.Location = new System.Drawing.Point(307, 529);
             this.code_label.Name = "code_label";
-            this.code_label.Size = new System.Drawing.Size(58, 21);
+            this.code_label.Size = new System.Drawing.Size(72, 27);
             this.code_label.TabIndex = 167;
             this.code_label.Text = "录入框";
             // 
-            // ma_craftcode
+            // ms_craftcode
             // 
-            this.ma_craftcode.AutoSize = true;
-            this.ma_craftcode.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.ma_craftcode.Location = new System.Drawing.Point(733, 166);
-            this.ma_craftcode.Name = "ma_craftcode";
-            this.ma_craftcode.Size = new System.Drawing.Size(0, 21);
-            this.ma_craftcode.TabIndex = 170;
-            this.ma_craftcode.Visible = false;
+            this.ms_craftcode.AutoSize = true;
+            this.ms_craftcode.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.ms_craftcode.Location = new System.Drawing.Point(977, 208);
+            this.ms_craftcode.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.ms_craftcode.Name = "ms_craftcode";
+            this.ms_craftcode.Size = new System.Drawing.Size(0, 27);
+            this.ms_craftcode.TabIndex = 170;
+            this.ms_craftcode.Visible = false;
             // 
             // ClearSn_code
             // 
             this.ClearSn_code.Cursor = System.Windows.Forms.Cursors.Hand;
             this.ClearSn_code.Image = global::UAS_MES.Properties.Resources.bindingNavigatorDeleteItem_Image;
-            this.ClearSn_code.Location = new System.Drawing.Point(437, 428);
+            this.ClearSn_code.Location = new System.Drawing.Point(583, 535);
+            this.ClearSn_code.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.ClearSn_code.Name = "ClearSn_code";
-            this.ClearSn_code.Size = new System.Drawing.Size(16, 16);
+            this.ClearSn_code.Size = new System.Drawing.Size(21, 20);
             this.ClearSn_code.TabIndex = 173;
             this.ClearSn_code.TabStop = false;
             this.ClearSn_code.Click += new System.EventHandler(this.ClearSn_code_Click);
@@ -237,10 +246,10 @@
             this.Lock.AutoSize = true;
             this.Lock.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.Lock.LeaveEvent = false;
-            this.Lock.Location = new System.Drawing.Point(202, 18);
-            this.Lock.Margin = new System.Windows.Forms.Padding(2);
+            this.Lock.Location = new System.Drawing.Point(269, 22);
+            this.Lock.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
             this.Lock.Name = "Lock";
-            this.Lock.Size = new System.Drawing.Size(51, 21);
+            this.Lock.Size = new System.Drawing.Size(61, 24);
             this.Lock.TabIndex = 172;
             this.Lock.Text = "锁定";
             this.Lock.UseVisualStyleBackColor = true;
@@ -252,14 +261,14 @@
             this.ma_code.Condition = null;
             this.ma_code.DBTitle = null;
             this.ma_code.FormName = null;
-            this.ma_code.Location = new System.Drawing.Point(85, 18);
-            this.ma_code.Margin = new System.Windows.Forms.Padding(2);
+            this.ma_code.Location = new System.Drawing.Point(113, 22);
+            this.ma_code.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
             this.ma_code.Name = "ma_code";
             this.ma_code.Power = null;
             this.ma_code.ReturnData = null;
             this.ma_code.SelectField = null;
             this.ma_code.SetValueField = null;
-            this.ma_code.Size = new System.Drawing.Size(115, 20);
+            this.ma_code.Size = new System.Drawing.Size(153, 25);
             this.ma_code.TabIndex = 171;
             this.ma_code.TableName = null;
             this.ma_code.TextBoxEnable = true;
@@ -269,10 +278,11 @@
             this.ma_bomversion.AutoSize = true;
             this.ma_bomversion.CutLength = null;
             this.ma_bomversion.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.ma_bomversion.Location = new System.Drawing.Point(772, 187);
-            this.ma_bomversion.MaximumSize = new System.Drawing.Size(150, 0);
+            this.ma_bomversion.Location = new System.Drawing.Point(1029, 234);
+            this.ma_bomversion.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.ma_bomversion.MaximumSize = new System.Drawing.Size(200, 0);
             this.ma_bomversion.Name = "ma_bomversion";
-            this.ma_bomversion.Size = new System.Drawing.Size(0, 21);
+            this.ma_bomversion.Size = new System.Drawing.Size(0, 27);
             this.ma_bomversion.TabIndex = 169;
             this.ma_bomversion.Visible = false;
             // 
@@ -281,11 +291,11 @@
             this.code.AllPower = null;
             this.code.BackColor = System.Drawing.Color.White;
             this.code.ID = null;
-            this.code.Location = new System.Drawing.Point(301, 425);
-            this.code.Margin = new System.Windows.Forms.Padding(2);
+            this.code.Location = new System.Drawing.Point(401, 531);
+            this.code.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
             this.code.Name = "code";
             this.code.Power = null;
-            this.code.Size = new System.Drawing.Size(132, 21);
+            this.code.Size = new System.Drawing.Size(175, 25);
             this.code.Str = null;
             this.code.Str1 = null;
             this.code.Str2 = null;
@@ -294,19 +304,20 @@
             // 
             // Printer
             // 
-            this.Printer.Location = new System.Drawing.Point(808, 14);
-            this.Printer.Margin = new System.Windows.Forms.Padding(4);
+            this.Printer.Location = new System.Drawing.Point(1077, 18);
+            this.Printer.Margin = new System.Windows.Forms.Padding(5, 5, 5, 5);
             this.Printer.Name = "Printer";
-            this.Printer.Size = new System.Drawing.Size(152, 25);
+            this.Printer.Size = new System.Drawing.Size(203, 31);
             this.Printer.TabIndex = 159;
             // 
             // mcd_remainqty
             // 
             this.mcd_remainqty.AutoSize = true;
             this.mcd_remainqty.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.mcd_remainqty.Location = new System.Drawing.Point(560, 62);
+            this.mcd_remainqty.Location = new System.Drawing.Point(747, 78);
+            this.mcd_remainqty.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.mcd_remainqty.Name = "mcd_remainqty";
-            this.mcd_remainqty.Size = new System.Drawing.Size(19, 21);
+            this.mcd_remainqty.Size = new System.Drawing.Size(24, 27);
             this.mcd_remainqty.TabIndex = 158;
             this.mcd_remainqty.Text = "0";
             // 
@@ -314,9 +325,10 @@
             // 
             this.mcd_okqty.AutoSize = true;
             this.mcd_okqty.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.mcd_okqty.Location = new System.Drawing.Point(340, 62);
+            this.mcd_okqty.Location = new System.Drawing.Point(453, 78);
+            this.mcd_okqty.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.mcd_okqty.Name = "mcd_okqty";
-            this.mcd_okqty.Size = new System.Drawing.Size(19, 21);
+            this.mcd_okqty.Size = new System.Drawing.Size(24, 27);
             this.mcd_okqty.TabIndex = 157;
             this.mcd_okqty.Text = "0";
             // 
@@ -325,10 +337,11 @@
             this.pr_code.AutoSize = true;
             this.pr_code.CutLength = null;
             this.pr_code.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.pr_code.Location = new System.Drawing.Point(340, 16);
-            this.pr_code.MaximumSize = new System.Drawing.Size(150, 0);
+            this.pr_code.Location = new System.Drawing.Point(453, 20);
+            this.pr_code.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.pr_code.MaximumSize = new System.Drawing.Size(200, 0);
             this.pr_code.Name = "pr_code";
-            this.pr_code.Size = new System.Drawing.Size(0, 21);
+            this.pr_code.Size = new System.Drawing.Size(0, 27);
             this.pr_code.TabIndex = 156;
             this.pr_code.TextChanged += new System.EventHandler(this.pr_code_TextChanged);
             // 
@@ -337,18 +350,20 @@
             this.pr_detail.AutoSize = true;
             this.pr_detail.CutLength = null;
             this.pr_detail.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.pr_detail.Location = new System.Drawing.Point(560, 16);
-            this.pr_detail.MaximumSize = new System.Drawing.Size(150, 0);
+            this.pr_detail.Location = new System.Drawing.Point(747, 20);
+            this.pr_detail.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.pr_detail.MaximumSize = new System.Drawing.Size(200, 0);
             this.pr_detail.Name = "pr_detail";
-            this.pr_detail.Size = new System.Drawing.Size(0, 21);
+            this.pr_detail.Size = new System.Drawing.Size(0, 27);
             this.pr_detail.TabIndex = 154;
             // 
             // OperateResult
             // 
             this.OperateResult.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.OperateResult.Location = new System.Drawing.Point(22, 105);
+            this.OperateResult.Location = new System.Drawing.Point(29, 131);
+            this.OperateResult.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.OperateResult.Name = "OperateResult";
-            this.OperateResult.Size = new System.Drawing.Size(691, 305);
+            this.OperateResult.Size = new System.Drawing.Size(920, 380);
             this.OperateResult.TabIndex = 143;
             this.OperateResult.Text = "";
             // 
@@ -358,10 +373,11 @@
             this.PrintNum.BackColor = System.Drawing.Color.White;
             this.PrintNum.Enabled = false;
             this.PrintNum.ID = null;
-            this.PrintNum.Location = new System.Drawing.Point(808, 112);
+            this.PrintNum.Location = new System.Drawing.Point(1077, 140);
+            this.PrintNum.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.PrintNum.Name = "PrintNum";
             this.PrintNum.Power = null;
-            this.PrintNum.Size = new System.Drawing.Size(143, 21);
+            this.PrintNum.Size = new System.Drawing.Size(189, 25);
             this.PrintNum.Str = null;
             this.PrintNum.Str1 = null;
             this.PrintNum.Str2 = null;
@@ -369,14 +385,14 @@
             // 
             // Make_ColorBoxLoadPrint
             // 
-            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
+            this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 15F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
-            this.ClientSize = new System.Drawing.Size(969, 452);
+            this.ClientSize = new System.Drawing.Size(1292, 565);
             this.Controls.Add(this.PrintNum);
             this.Controls.Add(this.ClearSn_code);
             this.Controls.Add(this.Lock);
             this.Controls.Add(this.ma_code);
-            this.Controls.Add(this.ma_craftcode);
+            this.Controls.Add(this.ms_craftcode);
             this.Controls.Add(this.ma_bomversion);
             this.Controls.Add(this.code_label);
             this.Controls.Add(this.code);
@@ -400,6 +416,7 @@
             this.Controls.Add(this.pr_code_label);
             this.Controls.Add(this.ms_makecode_label);
             this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
+            this.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.Name = "Make_ColorBoxLoadPrint";
             this.Tag = "Make!ColorBoxLoadPrint";
             this.Text = "s";
@@ -407,7 +424,7 @@
             this.Load += new System.EventHandler(this.Make_ColorBoxLoadPrint_Load);
             this.SizeChanged += new System.EventHandler(this.Make_ColorBoxLoadPrint_SizeChanged);
             ((System.ComponentModel.ISupportInitialize)(this.ClearSn_code)).EndInit();
-            this.ResumeLayout(true);
+            this.ResumeLayout(false);
             this.PerformLayout();
 
         }
@@ -435,7 +452,7 @@
         private CustomControl.TextBoxWithIcon.SnCollectionBox code;
         private System.Windows.Forms.Label code_label;
         private CustomControl.ValueLabel.ValueLabel ma_bomversion;
-        private System.Windows.Forms.Label ma_craftcode;
+        private System.Windows.Forms.Label ms_craftcode;
         private CustomControl.TextBoxWithIcon.MaCodeSearchTextBox ma_code;
         private CustomControl.CustomCheckBox.LockCheckBox Lock;
         private System.Windows.Forms.PictureBox ClearSn_code;

+ 3 - 3
UAS-MES/FunctionCode/Make/Make_ColorBoxLoadPrint.cs

@@ -111,7 +111,7 @@ namespace UAS_MES.Make
                         if (LogicHandler.CheckStepSNAndMacode(ma_code.Text, User.UserSourceCode, code.Text, User.UserCode, out macode, out Msid, out ErrorMessage) || ListA.Rows.Count > 0)
                         {
                             sql.Clear();
-                            sql.Append("select ma_code,ma_craftcode,ms_sncode,ma_qty,pr_detail,pr_code,ma_bomversion,ms_firstsn from makeserial left join make on ");
+                            sql.Append("select ma_code,ms_craftcode,ms_sncode,ma_qty,pr_detail,pr_code,ma_bomversion,ms_firstsn from makeserial left join make on ");
                             sql.Append("ms_makecode=ma_code left join product on ms_prodcode=pr_code where ms_id='" + Msid + "'");
                             DataTable dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
                             if (dt.Rows.Count > 0)
@@ -134,7 +134,7 @@ namespace UAS_MES.Make
                             sql.Append("sp_barcoderule,wm_concat(sp_soncode) sp_soncode,max(sp_ifuseregex)sp_ifuseregex,max(sp_ifforsn)");
                             sql.Append("sp_ifforsn,max(sp_length)sp_length,max(sp_type)sp_type,max(sp_prefix)sp_prefix,max(sp_regex)");
                             sql.Append("sp_regex,max(pr_detail)pr_detail from stepproduct left join product on pr_code=sp_fsoncode where ");
-                            sql.Append("sp_bomversion='" + ma_bomversion.Text + "' and sp_craftcode='" + ma_craftcode.Text + "' and sp_stepcode='" + User.CurrentStepCode + "' ");
+                            sql.Append("sp_bomversion='" + ma_bomversion.Text + "' and sp_craftcode='" + ms_craftcode.Text + "' and sp_stepcode='" + User.CurrentStepCode + "' ");
                             sql.Append("And sp_mothercode ='" + pr_code.Text + "' and sp_tracekind=1 and not exists(select 1 from craftmaterial where (cm_sncode='" + ms_firstsn + "' or ");
                             sql.Append("cm_sncode in (select sn from makesnrelation where firstsn='" + ms_firstsn + "')) and cm_makecode='" + ma_code.Text + "' and cm_soncode=");
                             sql.Append("sp_soncode and cm_status=0) group by sp_fsoncode order by SP_DETNO asc");
@@ -244,7 +244,7 @@ namespace UAS_MES.Make
                             sql.Append("insert into Craftmaterial (cm_id ,cm_makecode,cm_maid,cm_maprodcode, cm_soncode, cm_mscode, cm_sncode, cm_stepcode, cm_stepname,cm_fsoncode,");
                             sql.Append("cm_craftcode,cm_craftname,cm_barcode,cm_inqty,cm_indate,cm_inman,cm_linecode,cm_wccode,cm_sourcecode,cm_spid,cm_status,cm_materialtype,cm_firstsn)");
                             sql.Append("select Craftmaterial_seq.nextval, ma_code, ma_id, ma_prodcode,:soncode,ms_code,ms_sncode,mcd_stepcode,");
-                            sql.Append("mcd_stepname,sp_fsoncode,ma_craftcode,ma_craftname,:barcode,1,sysdate,'" + User.UserCode + "','" + User.UserLineCode + "',ma_wccode,");
+                            sql.Append("mcd_stepname,sp_fsoncode,ms_craftcode,ms_craftname,:barcode,1,sysdate,'" + User.UserCode + "','" + User.UserLineCode + "',ma_wccode,");
                             sql.Append("'" + User.UserSourceCode + "',:sp_id,0,1,ms_firstsn from make left join makecraftdetail on mcd_macode=ma_code  left join stepproduct on sp_stepcode=mcd_stepcode ");
                             sql.Append("and sp_craftcode=ma_craftcode and sp_mothercode = ma_prodcode left join makeserial on ms_makecode=ma_code ");
                             sql.Append("where ma_code='" + ma_code.Text + "'and sp_id=:sp_id1 and mcd_stepcode = '" + User.CurrentStepCode + "' and ms_sncode='" + ms_sncode.Text + "'");

+ 3 - 3
UAS-MES/FunctionCode/Make/Make_Decompose.cs

@@ -109,9 +109,9 @@ namespace UAS_MES.Make
             sncode_1 = sncode;
             sql.Clear();
             sql.Append("select cm_craftcode,cm_spid,cm_craftname,cm_firstsn,cm_makecode,cm_stepcode,cm_stepname,cm_maprodcode,cm_fsoncode,cm_wccode,cm_maid,cm_soncode,pr_detail,cm_materialtype,");
-            sql.Append("max(cm_status) cm_status,max(cm_id) cm_id from craftmaterial left join product on pr_code=cm_soncode where(cm_sncode  in (select firstsn from makesnrelation where sn ");
-            sql.Append(" ='" + sncode_1 + "'union all select sn from makesnrelation where firstsn = '" + sncode_1 + "')");
-            sql.Append("or cm_sncode = '" + sncode_1 + "') group by cm_craftcode,cm_firstsn,cm_stepcode,cm_stepname,cm_spid,cm_makecode,cm_maprodcode,cm_maid,cm_soncode,cm_wccode,pr_detail,cm_materialtype,cm_craftname,cm_fsoncode ORDER BY cm_status DESC");
+            sql.Append("max(cm_status) cm_status,max(cm_id) cm_id from craftmaterial left join product on pr_code=cm_soncode where(cm_sncode  in (select '" + sncode_1 + "' from dual union select firstsn from makesnrelation where sn ");
+            sql.Append(" ='" + sncode_1 + "'union  select sn from makesnrelation where firstsn = '" + sncode_1 + "')");
+            sql.Append(") group by cm_craftcode,cm_firstsn,cm_stepcode,cm_stepname,cm_spid,cm_makecode,cm_maprodcode,cm_maid,cm_soncode,cm_wccode,pr_detail,cm_materialtype,cm_craftname,cm_fsoncode ORDER BY cm_status DESC");
             dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
             if (dt.Rows.Count > 0)
             {

+ 14 - 14
UAS-MES/FunctionCode/Make/Make_FeedingCollection.Designer.cs

@@ -59,7 +59,7 @@
             this.sn_code = new UAS_MES.CustomControl.TextBoxWithIcon.EnterTextBox();
             this.LockMakeCode = new UAS_MES.CustomControl.CustomCheckBox.LockCheckBox();
             this.ma_code = new UAS_MES.CustomControl.TextBoxWithIcon.MaCodeSearchTextBox();
-            this.ma_craftcode = new System.Windows.Forms.Label();
+            this.ms_craftcode = new System.Windows.Forms.Label();
             this.ma_bomversion = new System.Windows.Forms.Label();
             this.ma_bomversion_label = new System.Windows.Forms.Label();
             this.panel2.SuspendLayout();
@@ -465,16 +465,16 @@
             this.ma_code.TextBoxEnable = true;
             this.ma_code.UserControlTextChanged += new UAS_MES.CustomControl.TextBoxWithIcon.MaCodeSearchTextBox.OnTextChange(this.ma_code_UserControlTextChanged);
             // 
-            // ma_craftcode
+            // ms_craftcode
             // 
-            this.ma_craftcode.AutoSize = true;
-            this.ma_craftcode.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.ma_craftcode.Location = new System.Drawing.Point(1024, 56);
-            this.ma_craftcode.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
-            this.ma_craftcode.Name = "ma_craftcode";
-            this.ma_craftcode.Size = new System.Drawing.Size(0, 27);
-            this.ma_craftcode.TabIndex = 142;
-            this.ma_craftcode.Visible = false;
+            this.ms_craftcode.AutoSize = true;
+            this.ms_craftcode.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.ms_craftcode.Location = new System.Drawing.Point(1024, 56);
+            this.ms_craftcode.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.ms_craftcode.Name = "ms_craftcode";
+            this.ms_craftcode.Size = new System.Drawing.Size(0, 27);
+            this.ms_craftcode.TabIndex = 142;
+            this.ms_craftcode.Visible = false;
             // 
             // ma_bomversion
             // 
@@ -504,7 +504,7 @@
             this.ClientSize = new System.Drawing.Size(1197, 680);
             this.Controls.Add(this.ma_bomversion_label);
             this.Controls.Add(this.ma_bomversion);
-            this.Controls.Add(this.ma_craftcode);
+            this.Controls.Add(this.ms_craftcode);
             this.Controls.Add(this.ma_code);
             this.Controls.Add(this.LockMakeCode);
             this.Controls.Add(this.ClearSn_code);
@@ -541,10 +541,10 @@
             this.Text = "上料采集";
             this.Load += new System.EventHandler(this.Make_FeedingCollection_Load);
             this.SizeChanged += new System.EventHandler(this.Make_FeedingCollection_SizeChanged);
-            this.panel2.ResumeLayout(true);
+            this.panel2.ResumeLayout(false);
             this.panel2.PerformLayout();
             ((System.ComponentModel.ISupportInitialize)(this.ClearSn_code)).EndInit();
-            this.ResumeLayout(true);
+            this.ResumeLayout(false);
             this.PerformLayout();
 
         }
@@ -581,7 +581,7 @@
         private System.Windows.Forms.PictureBox ClearSn_code;
         private CustomControl.CustomCheckBox.LockCheckBox LockMakeCode;
         private CustomControl.TextBoxWithIcon.MaCodeSearchTextBox ma_code;
-        private System.Windows.Forms.Label ma_craftcode;
+        private System.Windows.Forms.Label ms_craftcode;
         private System.Windows.Forms.Label ma_bomversion;
         private System.Windows.Forms.Label ma_bomversion_label;
     }

+ 6 - 10
UAS-MES/FunctionCode/Make/Make_FeedingCollection.cs

@@ -25,7 +25,6 @@ namespace UAS_MES.Make
         //完工状态
         string ms_status;
         //工艺路线编号
-        string ms_craftcode;
         //Bom版本
         string mabomversion;
         string ErrorMessage = "";
@@ -83,7 +82,7 @@ namespace UAS_MES.Make
         {
             DBFind = ma_code.ReturnData;
             BaseUtil.SetFormValue(this.Controls, DBFind);
-            string ifforsn = dh.getFieldDataByCondition("make left join stepbom on ma_prodcode=sb_prodcode left join stepproduct on sb_id=sp_sbid", "nvl(sp_ifforsn,0) sp_ifforsn", "ma_code='" + ma_code.Text + "' and sp_craftcode='" + ma_craftcode.Text + "' and sp_stepcode='" + User.CurrentStepCode + "' and sb_bomversion='" + ma_bomversion.Text + "' order by sp_detno").ToString();
+            string ifforsn = dh.getFieldDataByCondition("make left join stepbom on ma_prodcode=sb_prodcode left join stepproduct on sb_id=sp_sbid", "nvl(sp_ifforsn,0) sp_ifforsn", "ma_code='" + ma_code.Text + "' and sp_craftcode='" + ms_craftcode.Text + "' and sp_stepcode='" + User.CurrentStepCode + "' and sb_bomversion='" + ma_bomversion.Text + "' order by sp_detno").ToString();
             if (ifforsn != "" && ifforsn != "0")
                 iflastsn.Checked = true;
             else
@@ -222,14 +221,13 @@ namespace UAS_MES.Make
                 //将录入框的值给序列号
                 sn_code.Text = code.Text;
                 sql.Clear();
-                sql.Append("select ma_prodcode,ma_ecncode,ma_softversion,ms_firstsn,ma_craftcode,ma_bomversion,ma_qty,ma_code,pr_detail,ms_status,ms_id,ms_craftcode,ms_nextstepcode");
+                sql.Append("select ma_prodcode,ma_ecncode,ma_softversion,ms_firstsn,ma_bomversion,ma_qty,ma_code,pr_detail,ms_status,ms_id,ms_craftcode,ms_nextstepcode");
                 sql.Append(",ms_prodcode,ms_makecode,ms_code,ms_stepname  from makeserial left join make on ma_code=ms_makecode ");
                 sql.Append("left join product on ms_prodcode=pr_code where ms_sncode='" + code.Text + "' order by ms_id desc");
                 dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
                 if (dt.Rows.Count > 0)
                 {
                     ms_id = dt.Rows[0]["ms_id"].ToString();
-                    ms_craftcode = dt.Rows[0]["ms_craftcode"].ToString();
                     make_code = dt.Rows[0]["ma_code"].ToString();
                     mabomversion = dt.Rows[0]["ma_bomversion"].ToString();
                     make_prodcode = dt.Rows[0]["ms_prodcode"].ToString();
@@ -237,7 +235,7 @@ namespace UAS_MES.Make
                     ms_status = dt.Rows[0]["ms_status"].ToString();
                     ms_firstsn = dt.Rows[0]["ms_firstsn"].ToString();
                     BaseUtil.SetFormValue(this.Controls, dt);
-                    string ifforsn = dh.getFieldDataByCondition("make left join stepbom on ma_prodcode=sb_prodcode left join stepproduct on sb_id=sp_sbid", "nvl(sp_ifforsn,0) sp_ifforsn", "ma_code='" + ma_code.Text + "' and sp_stepcode='" + User.CurrentStepCode + "'  and sp_craftcode='" + ma_craftcode.Text + "' and sb_bomversion='" + ma_bomversion.Text + "' order by sp_detno").ToString();
+                    string ifforsn = dh.getFieldDataByCondition("make left join stepbom on ma_prodcode=sb_prodcode left join stepproduct on sb_id=sp_sbid", "nvl(sp_ifforsn,0) sp_ifforsn", "ma_code='" + ma_code.Text + "' and sp_stepcode='" + User.CurrentStepCode + "'  and sp_craftcode='" + ms_craftcode.Text + "' and sb_bomversion='" + ma_bomversion.Text + "' order by sp_detno").ToString();
                     if (ifforsn != "" && ifforsn != "0")
                         iflastsn.Checked = true;
                     else
@@ -248,7 +246,6 @@ namespace UAS_MES.Make
                     {
                         dt = (DataTable)dh.ExecuteSql("select ms_id,ms_makecode,ms_craftcode,ms_status,ms_nextstepcode,ms_prodcode,ms_code from makeserial where ms_sncode='" + code.Text + "' and ms_makecode<>'" + ma_code.Text + "' order by ms_id desc", "select");
                         string make_code = "";
-                        string ms_craftcode = "";
                         string make_prodcode = "";
                         string nextstepcode = "";
                         string ms_status = "";
@@ -256,7 +253,6 @@ namespace UAS_MES.Make
                         {
                             ms_id = dt.Rows[0]["ms_id"].ToString();
                             make_code = dt.Rows[0]["ms_makecode"].ToString();
-                            ms_craftcode = dt.Rows[0]["ms_craftcode"].ToString();
                             make_prodcode = dt.Rows[0]["ms_prodcode"].ToString();
                             nextstepcode = dt.Rows[0]["ms_nextstepcode"].ToString();
                             ms_status = dt.Rows[0]["ms_status"].ToString();
@@ -265,7 +261,7 @@ namespace UAS_MES.Make
                             {
                                 sql.Clear();
                                 sql.Append("select sp_id,sp_soncode from make inner join stepbom on ma_prodcode=sb_prodcode and ma_bomversion=sb_bomversion left ");
-                                sql.Append("join stepproduct on sp_sbid=sb_id where ma_code='" + ma_code.Text + "' and sp_craftcode='" + ma_craftcode.Text + "' ");
+                                sql.Append("join stepproduct on sp_sbid=sb_id where ma_code='" + ma_code.Text + "' and sp_craftcode='" + ms_craftcode.Text + "' ");
                                 sql.Append("and sp_stepcode='" + User.CurrentStepCode + "' and nvl(sp_ifforsn,0)<>0");
                                 dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
                                 if (dt.Rows.Count > 0)
@@ -329,7 +325,7 @@ namespace UAS_MES.Make
             sql.Append("sp_barcoderule,wm_concat(sp_soncode) sp_soncode,max(sp_ifuseregex)sp_ifuseregex,max(sp_ifforsn)");
             sql.Append("sp_ifforsn,max(sp_length)sp_length,max(sp_type)sp_type,max(sp_prefix)sp_prefix,max(sp_regex)");
             sql.Append("sp_regex,max(pr_detail)pr_detail from stepproduct left join product on pr_code=sp_fsoncode where ");
-            sql.Append("sp_bomversion='" + ma_bomversion.Text + "' and sp_craftcode='" + ma_craftcode.Text + "' and sp_stepcode='" + User.CurrentStepCode + "' ");
+            sql.Append("sp_bomversion='" + ma_bomversion.Text + "' and sp_craftcode='" + ms_craftcode.Text + "' and sp_stepcode='" + User.CurrentStepCode + "' ");
             sql.Append("And sp_mothercode ='" + ma_prodcode.Text + "' and sp_tracekind=1 and not exists(select 1 from craftmaterial where (cm_sncode='" + ms_firstsn + "' or ");
             sql.Append("cm_sncode in (select sn from makesnrelation where firstsn='" + ms_firstsn + "')) and cm_makecode='" + ma_code.Text + "' and cm_fsoncode=");
             sql.Append("sp_fsoncode and cm_status=0) group by sp_fsoncode order by SP_DETNO asc");
@@ -396,7 +392,7 @@ namespace UAS_MES.Make
                 sql.Append("insert into Craftmaterial (cm_id ,cm_makecode,cm_maid,cm_maprodcode, cm_soncode, cm_mscode, cm_sncode, cm_stepcode, cm_stepname,cm_fsoncode,");
                 sql.Append("cm_craftcode,cm_craftname,cm_barcode,cm_inqty,cm_indate,cm_inman,cm_linecode,cm_wccode,cm_sourcecode,cm_spid,cm_status,cm_materialtype,cm_firstsn)");
                 sql.Append("select Craftmaterial_seq.nextval, ma_code, ma_id, ma_prodcode,:soncode,ms_code,ms_sncode,mcd_stepcode,");
-                sql.Append("mcd_stepname,sp_fsoncode,ma_craftcode,ma_craftname,:barcode,1,sysdate,'" + User.UserCode + "','" + User.UserLineCode + "',ma_wccode,");
+                sql.Append("mcd_stepname,sp_fsoncode,ms_craftcode,ms_craftname,:barcode,1,sysdate,'" + User.UserCode + "','" + User.UserLineCode + "',ma_wccode,");
                 sql.Append("'" + User.UserSourceCode + "',:sp_id,0,1,ms_firstsn from make left join makecraftdetail on mcd_macode=ma_code  left join stepproduct on sp_stepcode=mcd_stepcode ");
                 sql.Append("and sp_craftcode=ma_craftcode and sp_mothercode = ma_prodcode left join makeserial on ms_makecode=ma_code ");
                 sql.Append("where ma_code='" + make_code + "'and sp_id=:sp_id1 and mcd_stepcode = '" + User.CurrentStepCode + "' and ms_sncode='" + ms_sncode + "'");

+ 3 - 1
UAS-MES/FunctionCode/Make/Make_NewBadCode.cs

@@ -104,6 +104,7 @@ namespace UAS_MES.Make
                     }
                     if (!AddToReject)
                     {
+                        WaitRejectList.Items[i].Checked = false;
                         ChoosedRejectList.Items.Add((ListViewItem)WaitRejectList.Items[i].Clone());
                         WaitRejectList.Items[i].Remove();
                         CheckedNum++;
@@ -124,7 +125,7 @@ namespace UAS_MES.Make
                         }
                     }
                     if (!AddToReject)
-                    {
+                    {                      
                         ChoosedRejectList.Items.Add((ListViewItem)WaitRejectList.Items[i].Clone());
                         WaitRejectList.Items[i].Remove();
                         CheckedNum++;
@@ -141,6 +142,7 @@ namespace UAS_MES.Make
             {
                 if (ChoosedRejectList.Items[i].Checked)
                 {
+                    ChoosedRejectList.Items[i].Checked = false;
                     WaitRejectList.Items.Add((ListViewItem)ChoosedRejectList.Items[i].Clone());
                     ChoosedRejectList.Items[i].Remove();
                     CheckedNum++;

+ 2 - 0
UAS-MES/FunctionCode/Make/Make_NewBadCode_DE.cs

@@ -108,6 +108,7 @@ namespace UAS_MES.Make
                     }
                     if (!AddToReject)
                     {
+                        WaitRejectList.Items[i].Checked = false;
                         ChoosedRejectList.Items.Add((ListViewItem)WaitRejectList.Items[i].Clone());
                         WaitRejectList.Items[i].Remove();
                         CheckedNum++;
@@ -145,6 +146,7 @@ namespace UAS_MES.Make
             {
                 if (ChoosedRejectList.Items[i].Checked)
                 {
+                    ChoosedRejectList.Items[i].Checked = false;
                     WaitRejectList.Items.Add((ListViewItem)ChoosedRejectList.Items[i].Clone());
                     ChoosedRejectList.Items[i].Remove();
                     CheckedNum++;

+ 69 - 237
UAS-MES/FunctionCode/Make/Make_SeqProgramTransform.cs

@@ -45,17 +45,12 @@ namespace UAS_MES.Make
         int ma_qty;
         //存放所有关联信息的类型和录入的值
         Hashtable hs;
-        string startNo = "";//起始序列
-
-        string endNo = "";//终止序列
-
-        string system = "";//进制
 
         string oMakecode = "";
+
         string oMsid = "";
 
         string siid="";//存储TSN对应的sninfo记录id
-        bool onlyPass = false;
 
         DataTable macRange;//记录macBT范围
 
@@ -68,6 +63,10 @@ namespace UAS_MES.Make
         string macOrBt = "";//存储去掉":"或者"-"的mac和bt
 
         string imeif = "";
+
+        bool hasSnList = false;//记录是否有转换后SN清单
+
+        bool hasMakeRule = false;//记录是否有工单防呆规则
         public Make_SeqProgramTransform()
         {
             InitializeComponent();
@@ -108,20 +107,17 @@ namespace UAS_MES.Make
                                 oMsid = dh.getFieldDataByCondition("makeserial", "max(ms_id)", "ms_sncode in (select '" + code.Text + "' from dual union select sn from makesnrelation where beforesn='" + code.Text + "' and sn<>' ' union select beforesn from makesnrelation where sn='" + code.Text + "' and beforesn<>' ')").ToString();
                                 if (oMsid=="")
                                 {
-                                    OperateResult.AppendText(">>TSN号错误\n", Color.Red, code);
+                                    OperateResult.AppendText("<<TSN号错误\n", Color.Red, code);
                                     return;
                                 }
                                 //根据ms_id查询
                                 sql.Clear();
-                                sql.Append("select 1 from makeserial where ms_id='"+oMsid+"' and ms_beforesn='"+code.Text+"' and ms_nextmacode is null and ms_outboxcode is null");
+                                sql.Append("select ms_stepcode from makeserial where ms_id='" + oMsid+"' and ms_beforesn='"+code.Text+"' and ms_nextmacode is null and ms_outboxcode is null");
                                 dt = (DataTable)dh.ExecuteSql(sql.GetString(),"select");
                                 //如果行数大于0则允许转号
                                 if (dt.Rows.Count > 0)
                                 {
-                                    sql.Clear();
-                                    sql.Append("select 1 from makeserial where ms_id='" + oMsid + "' and ms_stepcode='" + User.CurrentStepCode + "'");
-                                    dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
-                                    if (dt.Rows.Count > 0)
+                                    if (dt.Rows[0]["ms_stepcode"].ToString()==User.CurrentStepCode)
                                     {
                                         step = 1;
 
@@ -132,13 +128,13 @@ namespace UAS_MES.Make
                                     }
                                     else
                                     {
-                                        OperateResult.AppendText(">>当前工序不允许重新转号\n", Color.Red, code);
+                                        OperateResult.AppendText("<<当前工序不允许重新转号\n", Color.Red, code);
                                         return;
                                     }
                                 }
                                 else
                                 {
-                                    OperateResult.AppendText(">>TSN号" + code.Text + "当前状态不允许重新转号\n", Color.Red, code);
+                                    OperateResult.AppendText("<<TSN号" + code.Text + "当前状态不允许重新转号\n", Color.Red, code);
                                     return;
                                 }
                             }
@@ -159,7 +155,7 @@ namespace UAS_MES.Make
                                 }
                                 else
                                 {
-                                    OperateResult.AppendText(">>TSN号" + code.Text + "不存在\n", Color.Red, code);
+                                    OperateResult.AppendText("<<TSN号" + code.Text + "不存在\n", Color.Red, code);
                                     return;
                                 }
                             }
@@ -170,8 +166,8 @@ namespace UAS_MES.Make
                             //没有获取到就提示错误请维护产品对应的关联采集信息
                             if (ListA.Rows.Count == 0)
                             {
-                                OperateResult.AppendText(">>请维护产品对应的关联采集信息\n", Color.Red, code);
-                                OperateResult.AppendText("<<请输入TSN\n", Color.Black);
+                                OperateResult.AppendText("<<请维护产品对应的关联采集信息\n", Color.Red, code);
+                                OperateResult.AppendText(">>请输入TSN\n", Color.Black);
                                 if (ChangeResult.Checked)
                                 {
                                     clearInfo();
@@ -180,29 +176,10 @@ namespace UAS_MES.Make
                             }
                             if (ChangeResult.Checked)
                             {
-                                OperateResult.AppendText("<<请输入SN\n", Color.Green, code);
+                                OperateResult.AppendText(">>请输入SN\n", Color.Green, code);
                             }
-                            //判断重新转换是否勾选了
-                            if (ChangeResult.Checked)
-                            {
-                                ////勾选了
-                                //if (dh.CheckExist("MakeSerial", "ms_beforesn='" + code.Text + "' and ms_id='" + oMsid + "'"))
-                                //{
-                                //    step = 1;
-
-                                //    TSN = code.Text;
-                                //    //显示序列号
-                                //    show_sncode.Text = TSN;
-                                //    OperateResult.AppendText("<<请输入SN\n", Color.Green, code);
-                                //    ChangeResult.Enabled = false;
-                                //}
-                                //else
-                                //{
-                                //    OperateResult.AppendText(">>不存在该已转序列号:" + code.Text + "\n", Color.Red, code);
-                                //    OperateResult.AppendText("<<请重新输入TSN\n", Color.Black);
-                                //}
-                            }
-                            else
+                            //判断重新转换未勾选
+                            if (!ChangeResult.Checked)
                             {
                                 //没有勾选,只能修改一次
                                 //核对TSN是否正确
@@ -215,7 +192,7 @@ namespace UAS_MES.Make
                                     TSN = code.Text;
                                     //显示之前的序列号
                                     show_sncode.Text = TSN;
-                                    OperateResult.AppendText("<<请输入SN\n", Color.Green, code);
+                                    OperateResult.AppendText(">>请输入SN\n", Color.Green, code);
                                     ChangeResult.Enabled = false;
                                 }
                                 else
@@ -228,14 +205,13 @@ namespace UAS_MES.Make
                                         TSN = code.Text;
                                         //显示序列号
                                         show_sncode.Text = TSN;
-                                        OperateResult.AppendText("<<请输入SN\n", Color.Green, code);
+                                        OperateResult.AppendText(">>请输入SN\n", Color.Green, code);
                                         ChangeResult.Enabled = false;
-                                        onlyPass = true;
                                     }
                                     else
                                     {
-                                        OperateResult.AppendText(">>序列号:" + code.Text + "已转换过\n", Color.Red, code);
-                                        OperateResult.AppendText("<<请重新输入TSN\n", Color.Black);
+                                        OperateResult.AppendText("<<序列号:" + code.Text + "已转换过\n", Color.Red, code);
+                                        OperateResult.AppendText(">>请重新输入TSN\n", Color.Black);
                                     }
                                 }
                             }
@@ -243,60 +219,36 @@ namespace UAS_MES.Make
                         else if (step == 1)
                         {
                             OperateResult.AppendText(">>" + code.Text + "\n", Color.Black);
-                            //判断用户是否锁定输入SN长度,
-                            if (!checkLengthOrPre(SNLength_checkBox, SNLength, "长度", "SN"))
-                            {
-                                return;
-                            }
-                            //判断用户是否锁定输入SN前缀,
-                            if (!checkLengthOrPre(SNPre_checkBox, SNPre, "前缀", "SN"))
-                            {
-                                return;
-                            }
                             //判断工单是否导入了序列号清单
-                            if (dh.CheckExist("makesnlist", "msl_makecode='" + ms_macode.Text + "' and msl_type='after'"))
+                            if (hasSnList)
                             {
                                 if (!dh.CheckExist("makesnlist", "msl_sncode='" + code.Text + "' and  msl_makecode='" + ms_macode.Text + "' and msl_type='after'"))
                                 {
                                     //有序列号清单,输入的序列号却不在范围内
-                                    OperateResult.AppendText(">>SN号" + code.Text + "错误,不在工单设定的转换后序列号清单中\n", Color.Red, code);
+                                    OperateResult.AppendText("<<SN号" + code.Text + "错误,不在工单设定的转换后序列号清单中\n", Color.Red, code);
                                     return;
                                 }
                             }
-                            //判断转换后序列号的范围是否合法
-                            if (!checkStartAndEnd())
+                            else if (hasMakeRule)//判断工单防呆
                             {
-                                OperateResult.AppendText(">>SN号" + code.Text + "校验错误,不在工单防呆规则指定范围内!\n", Color.Red, code);
-                                return;
+                                if (!dh.CheckExist("makesnruledetail", "msd_sncode='" + code.Text + "' and  msd_makecode='" + ms_macode.Text + "' and msd_type='after'"))
+                                {
+                                    OperateResult.AppendText("<<SN号" + code.Text + "校验错误,不在工单防呆规则指定范围内!\n", Color.Red, code);
+                                    return;
+                                }
                             }
-                            //如果只是需要过站的序列号
-                            if (onlyPass)
+                            else//判断产品防呆
                             {
-                                if (TSN == code.Text)
+                                //判断用户是否锁定输入SN长度,
+                                if (!checkLengthOrPre(SNLength_checkBox, SNLength, "长度", "SN"))
                                 {
-                                    //写入日志
-                                    if (LogicHandler.SetStepResult(ms_macode.Text, User.UserSourceCode, code.Text, "序列转换", "序列转换成功", User.UserCode, out errorMessage))
-                                    {
-                                        //记录日志
-                                        LogicHandler.DoCommandLog(Tag.ToString(), User.UserCode, ms_macode.Text, User.UserLineCode, User.UserSourceCode, "序列转换", "转换成功", code.Text, "");
-                                        OperateResult.AppendText(">>转换成功\n", Color.Green, code);
-                                    }
-                                    else
-                                    {
-                                        OperateResult.AppendText(">>" + errorMessage + "\n", Color.Red, code);
-                                    }
-                                    if (errorMessage.Contains("AFTERSUCCESS"))
-                                        OperateResult.AppendText(">>" + errorMessage + "\n");
-                                    onlyPass = false;
-                                    show_sncode.Text = "";
-                                    ChangeResult.Enabled = true;
-                                    step = 0;
+                                    return;
                                 }
-                                else
+                                //判断用户是否锁定输入SN前缀,
+                                if (!checkLengthOrPre(SNPre_checkBox, SNPre, "前缀", "SN"))
                                 {
-                                    OperateResult.AppendText(">>输入一致才可过站\n", Color.Red, code);
+                                    return;
                                 }
-                                return;
                             }
                             //开始录入SN
                             if ((ChangeResult.Checked && dh.CheckExist("makeserial", " ms_id='" + oMsid + "' and  ms_sncode='" + code.Text + "'")) || !dh.CheckExist("makeserial", "ms_sncode='" + code.Text + "'") || (!ChangeResult.Checked && (TSN == code.Text)))
@@ -307,7 +259,7 @@ namespace UAS_MES.Make
                                 //开始进行校验规则
                                 if (ListA.Rows.Count > 0)
                                 {
-                                    OperateResult.AppendText("<<请输入" + ListA.Rows[0]["psr_type"] + "\n", Color.Green);
+                                    OperateResult.AppendText(">>请输入" + ListA.Rows[0]["psr_type"] + "\n", Color.Green);
 
                                     //实例化hashTable的值
                                     hs = new Hashtable();
@@ -320,7 +272,7 @@ namespace UAS_MES.Make
                             }
                             else
                             {
-                                OperateResult.AppendText(">>序列号" + code.Text + "已存在或无该转换后序列号\n", Color.Red);
+                                OperateResult.AppendText("<<序列号" + code.Text + "已存在或无该转换后序列号\n", Color.Red);
                                 OperateResult.AppendText(">>请输入SN\n", Color.Black, code);
                             }
                         }
@@ -341,7 +293,7 @@ namespace UAS_MES.Make
                 }
                 else
                 {
-                    OperateResult.AppendText(">>输入不能为空\n", Color.Red);
+                    OperateResult.AppendText("<<输入不能为空\n", Color.Red);
                 }
                 code.Text = "";
             }
@@ -359,7 +311,7 @@ namespace UAS_MES.Make
                 //如果勾选没有填值
                 if (textbox.Text == "")
                 {
-                    OperateResult.AppendText(">>勾选长度或者前缀需要填写内容\n", Color.Red);
+                    OperateResult.AppendText("<<勾选长度或者前缀需要填写内容\n", Color.Red);
                     return false;
                 }
                 if (type == "长度")
@@ -368,8 +320,8 @@ namespace UAS_MES.Make
                     if (code.Text.Trim().Length != int.Parse(textbox.Text))
                     {
                         //序列号校验错误,长度错误
-                        OperateResult.AppendText(">>" + TSNorSN + ":" + code.Text + "校验错误,长度错误\n", Color.Red, code);
-                        OperateResult.AppendText("<<请重新输入" + TSNorSN + "\n", Color.Black);
+                        OperateResult.AppendText("<<" + TSNorSN + ":" + code.Text + "校验错误,长度错误\n", Color.Red, code);
+                        OperateResult.AppendText(">>请重新输入" + TSNorSN + "\n", Color.Black);
                         return false;
                     }
                 }
@@ -390,8 +342,8 @@ namespace UAS_MES.Make
                     if (!f)
                     {
                         //序列号校验错误,前缀错误
-                        OperateResult.AppendText(">>" + TSNorSN + ":" + code.Text + "校验错误,前缀错误\n", Color.Red, code);
-                        OperateResult.AppendText("<<请重新输入" + TSNorSN + "\n", Color.Black);
+                        OperateResult.AppendText("<<" + TSNorSN + ":" + code.Text + "校验错误,前缀错误\n", Color.Red, code);
+                        OperateResult.AppendText(">>请重新输入" + TSNorSN + "\n", Color.Black);
                         return false;
                     }
                 }
@@ -432,7 +384,7 @@ namespace UAS_MES.Make
             //如果前缀和长度都满足的话
             if ((ListA.Rows[step - 2]["psr_length"].ToString() == "0" ? false : code.Text.Length != int.Parse(ListA.Rows[step - 2]["psr_length"].ToString())))
             {
-                OperateResult.AppendText(">>" + ListA.Rows[step - 2]["psr_type"] + "长度校验不通过,请重新输入\n", Color.Red);
+                OperateResult.AppendText("<<" + ListA.Rows[step - 2]["psr_type"] + "长度需为"+ ListA.Rows[step - 2]["psr_length"].ToString() + "校验不通过,请重新输入\n", Color.Red);
                 OperateResult.AppendText(">>请重新输入" + ListA.Rows[step - 2]["psr_type"] + "\n", Color.Black, code);
                 return false;
             }
@@ -451,7 +403,7 @@ namespace UAS_MES.Make
             }
             if (!isfit)
             {
-                OperateResult.AppendText(">>" + ListA.Rows[step - 2]["psr_type"] + "前缀校验不通过,请重新输入\n", Color.Red);
+                OperateResult.AppendText("<<" + ListA.Rows[step - 2]["psr_type"] + "前缀校验不通过,请重新输入\n", Color.Red);
                 OperateResult.AppendText(">>请重新输入" + ListA.Rows[step - 2]["psr_type"] + "\n", Color.Black, code);
                 return false;
             }
@@ -460,10 +412,9 @@ namespace UAS_MES.Make
                 case "IMEI1":
                 case "IMEI2":
                 case "IMEI3":
-                    if (!ChangeResult.Checked && checkExist("(ms_imei1='" + imeif + "' or ms_imei2 = '" + imeif + "' or ms_imei3 = '" + imeif + "') and  ms_status in (0,1,2,3)")
-                        || ChangeResult.Checked && checkExist("(ms_imei1='" + imeif + "' or ms_imei2 = '" + imeif + "' or ms_imei3 = '" + imeif + "') and  ms_status in (0,1,2,3)  and ms_id <> '" + oMsid + "'"))
+                    if (checkExist("(ms_imei1='" + imeif + "' or ms_imei2 = '" + imeif + "' or ms_imei3 = '" + imeif + "') and  ms_status in (0,1,2,3)  and ms_id <> '" + oMsid + "'"))
                     {
-                        OperateResult.AppendText(">>" + type + ":" + imeif + "错误,不允许重复\n", Color.Red);
+                        OperateResult.AppendText("<<" + type + ":" + imeif + "错误,不允许重复\n", Color.Red);
                         OperateResult.AppendText(">>请输入" + type + "\n", Color.Black, code);
                         return false;
                     }
@@ -471,14 +422,14 @@ namespace UAS_MES.Make
                     {   //校验sninfo中是否已经存在这个
                         if (dh.CheckExist("sninfo", "(si_imei1='" + imeif + "' or si_imei2 = '" + imeif + "' or si_imei3 = '" + imeif + "') and si_id <>'" + siid + "'"))
                         {
-                            OperateResult.AppendText(">>" + type + ":" + imeif + "错误,不允许重复\n", Color.Red);
+                            OperateResult.AppendText("<<" + type + ":" + imeif + "错误,不允许重复\n", Color.Red);
                             OperateResult.AppendText(">>请输入" + type + "\n", Color.Black, code);
                             return false;
                         }
                         //判断IMEI1,IMEI2,IMEI3中是否已经有这个号了
                         if (imei.ToString().Contains(imeif))
                         {
-                            OperateResult.AppendText(">>" + type + ":" + imeif + "已录,请重新输入\n", Color.Red);
+                            OperateResult.AppendText("<<" + type + ":" + imeif + "已录,请重新输入\n", Color.Red);
                             OperateResult.AppendText(">>请输入" + type + "\n", Color.Black, code);
                             return false;
                         }
@@ -495,15 +446,14 @@ namespace UAS_MES.Make
                     //验证是否符合合同防呆
                     if (!LogicHandler.checkMacOrBtRange(oMsid,macOrBt,type))
                     {
-                        OperateResult.AppendText(">>" + ListA.Rows[step - 2]["psr_type"].ToString() + ":" + code.Text + "错误,不在合同防呆范围内\n", Color.Red);
+                        OperateResult.AppendText("<<" + ListA.Rows[step - 2]["psr_type"].ToString() + ":" + code.Text + "错误,不在合同防呆范围内\n", Color.Red);
                         OperateResult.AppendText(">>请输入" + ListA.Rows[step - 2]["psr_type"].ToString() + "\n", Color.Black, code);
                         return false;
                     }
                     //验证是否已被使用
-                    if (!ChangeResult.Checked && checkExist("MS_" + type + "='" + macOrBt + "' and  ms_status in (0,1,2,3)")
-                        || ChangeResult.Checked && checkExist("MS_" + type + "='" + macOrBt + "' and  ms_status in (0,1,2,3) and ms_id <> '" + oMsid + "'"))
+                    if (checkExist("MS_" + type + "='" + macOrBt + "' and  ms_status in (0,1,2,3) and ms_id <> '" + oMsid + "'"))
                     {
-                        OperateResult.AppendText(">>" + ListA.Rows[step - 2]["psr_type"].ToString() + ":" + code.Text + "错误,不允许重复\n", Color.Red);
+                        OperateResult.AppendText("<<" + ListA.Rows[step - 2]["psr_type"].ToString() + ":" + code.Text + "错误,不允许重复\n", Color.Red);
                         OperateResult.AppendText(">>请输入" + ListA.Rows[step - 2]["psr_type"].ToString() + "\n", Color.Black, code);
                         return false;
                     }
@@ -512,7 +462,7 @@ namespace UAS_MES.Make
                         //校验在sninfo表中是否存在
                         if (dh.CheckExist("sninfo", "si_" + type + "='" + macOrBt + "' and si_id <>'" + siid + "'"))
                         {
-                            OperateResult.AppendText(">>" + ListA.Rows[step - 2]["psr_type"].ToString() + ":" + code.Text + "错误,不允许重复\n", Color.Red);
+                            OperateResult.AppendText("<<" + ListA.Rows[step - 2]["psr_type"].ToString() + ":" + code.Text + "错误,不允许重复\n", Color.Red);
                             OperateResult.AppendText(">>请输入" + ListA.Rows[step - 2]["psr_type"].ToString() + "\n", Color.Black, code);
                             return false;
                         }
@@ -524,10 +474,9 @@ namespace UAS_MES.Make
                     toSi.Append("si_" + type + " = '" + macOrBt + "',");
                     break;
                 case "NETCODE":
-                    if (!ChangeResult.Checked && checkExist("MS_" + type + "='" + imeif + "' and  ms_status in (0,1,2,3)")
-                        || ChangeResult.Checked && checkExist("MS_" + type + "='" + imeif + "' and  ms_status in (0,1,2,3) and ms_id <> '" + oMsid + "'"))
+                    if (checkExist("MS_" + type + "='" + imeif + "' and  ms_status in (0,1,2,3) and ms_id <> '" + oMsid + "'"))
                     {
-                        OperateResult.AppendText(">>" + ListA.Rows[step - 2]["psr_type"].ToString() + ":" + imeif + "错误,不允许重复\n", Color.Red);
+                        OperateResult.AppendText("<<" + ListA.Rows[step - 2]["psr_type"].ToString() + ":" + imeif + "错误,不允许重复\n", Color.Red);
                         OperateResult.AppendText(">>请输入" + ListA.Rows[step - 2]["psr_type"].ToString() + "\n", Color.Black, code);
                         return false;
                     }
@@ -536,7 +485,7 @@ namespace UAS_MES.Make
                         //校验在sninfo表中是否存在
                         if (dh.CheckExist("sninfo", "si_" + type + "='" + imeif + "' and si_id <>'" + siid + "'"))
                         {
-                            OperateResult.AppendText(">>" + ListA.Rows[step - 2]["psr_type"].ToString() + ":" + imeif + "错误,不允许重复\n", Color.Red);
+                            OperateResult.AppendText("<<" + ListA.Rows[step - 2]["psr_type"].ToString() + ":" + imeif + "错误,不允许重复\n", Color.Red);
                             OperateResult.AppendText(">>请输入" + ListA.Rows[step - 2]["psr_type"].ToString() + "\n", Color.Black, code);
                             return false;
                         }
@@ -568,11 +517,10 @@ namespace UAS_MES.Make
                     //遍历判断已采集的信息是否已存在
                     foreach (DictionaryEntry de in hs)
                     {
-                        if (!ChangeResult.Checked && dh.CheckExist("makeserial", "MS_" + (de.Key.ToString()) + "='" + de.Value + "' and  ms_status in (0,1,2,3)")
-                            || (ChangeResult.Checked && dh.CheckExist("makeserial", "MS_" + (de.Key.ToString()) + "='" + de.Value + "' and  ms_status in (0,1,2,3) and ms_id <> '" + oMsid + "'")))
+                        if (dh.CheckExist("makeserial", "MS_" + (de.Key.ToString()) + "='" + de.Value + "' and  ms_status in (0,1,2,3) and ms_id <> '" + oMsid + "'"))
                         {
                             flag = false;
-                            OperateResult.AppendText(">>" + de.Key + "已被使用,请重新输入TSN,重新转换\n", Color.Red);
+                            OperateResult.AppendText("<<" + de.Key + "已被使用,请重新输入TSN,重新转换\n", Color.Red);
                             //清空信息
                             clearInfo();
                             break;
@@ -583,7 +531,7 @@ namespace UAS_MES.Make
                             if (dh.CheckExist("sninfo", "si_" + (de.Key.ToString()) + "='" + de.Value + "' and si_id <>'" + siid + "'"))
                             {
                                 flag = false;
-                                OperateResult.AppendText(">>" + de.Key + "已被使用,请重新输入TSN,重新转换\n", Color.Red);
+                                OperateResult.AppendText("<<" + de.Key + "已被使用,请重新输入TSN,重新转换\n", Color.Red);
                                 //清空信息
                                 clearInfo();
                                 break;
@@ -617,7 +565,7 @@ namespace UAS_MES.Make
                         }
                         string insertSql = "insert into  makesnrelation (BEFORESN,SN,FIRSTSN,MAKECODE,msr_indate, msr_inman)values('" + TSN + "','" + SN + "','" + firstsn + "','" + ms_macode.Text + "', sysdate ,'" + User.UserCode + "')";
                         dh.ExecuteSQLTran(updateSql, insertSql);
-                        OperateResult.AppendText(">>序列号转换成功\n>>关联采集成功\n", Color.Green);
+                        OperateResult.AppendText("<<序列号转换成功\n<<关联采集成功\n", Color.Green);
                         //写入日志
                         LogManager.DoLog("修改序列号:" + TSN + "为" + SN + "成功!" + "操作人:" + User.UserCode);
                         //记录日志
@@ -626,11 +574,7 @@ namespace UAS_MES.Make
                         insert2Sninfo(SN);
                         //输出提示用户“>>序列号转换成功”,“>>关联采集成功”
                         //完成该道工序 setFinish
-                        if (LogicHandler.SetStepResult(ms_macode.Text, User.UserSourceCode, SN, "序列烧录转换", "序列烧录转换成功", User.UserCode, out errorMessage))
-                        {
-
-                        }
-                        else
+                        if (!LogicHandler.SetStepResult(ms_macode.Text, User.UserSourceCode, SN, "序列烧录转换", "序列烧录转换成功", User.UserCode, out errorMessage))
                         {
                             OperateResult.AppendText(">>" + errorMessage + "\n", Color.Red, code);
                         }
@@ -651,7 +595,7 @@ namespace UAS_MES.Make
                 }
                 else
                 {
-                    OperateResult.AppendText(">>序列号" + SN + "已存在\n", Color.Red);
+                    OperateResult.AppendText("<<序列号" + SN + "已存在\n", Color.Red);
                     OperateResult.AppendText(">>请重新输入TSN\n", Color.Black, code);
                     //清空信息
                     clearInfo();
@@ -661,7 +605,7 @@ namespace UAS_MES.Make
             }
             else
             {
-                OperateResult.AppendText("<<请输入" + ListA.Rows[step - 1]["psr_type"] + "\n", Color.Green, code);
+                OperateResult.AppendText(">>请输入" + ListA.Rows[step - 1]["psr_type"] + "\n", Color.Green, code);
                 return true;
             }
         }
@@ -672,6 +616,8 @@ namespace UAS_MES.Make
         /// <param name="e"></param>
         private void ms_macode_TextChanged(object sender, EventArgs e)
         {
+            hasSnList = false;
+            hasMakeRule = false;
             //清空
             TSNPre.Text = "";
             TSNLength.Text = "";
@@ -697,82 +643,14 @@ namespace UAS_MES.Make
             //判断工单是否导入了序列号清单
             if (dh.CheckExist("makesnlist", "msl_makecode='" + ms_macode.Text + "' and msl_type='after'"))
             {
+                hasSnList = true;
                 return;
             }
             //查询表工单序列号防呆规则表
             rules = (DataTable)dh.ExecuteSql("select msr_startno,msr_endno,msr_system,msr_type, msr_prefix ,msr_length from makesnrule where msr_makecode='" + ms_macode.Text + "'", "select");
             if (rules.Rows.Count > 0)
             {
-                foreach (DataRow dr in rules.Rows)
-                {
-                    //如果有值,则这个字段自动勾选,并且不可编辑
-                    if (dr["msr_type"].ToString().ToLower() == "before")
-                    {
-                        //msr_type=before 的值赋值到转换前
-
-                        //临时变量记录
-                        string length = dr["msr_length"].ToString();
-                        string prefix = dr["msr_prefix"].ToString();
-                        //不为空
-                        if (prefix != "" && prefix != null)
-                        {
-                            //则赋值
-                            TSNPre.Text = prefix;
-                            //设置不可编辑
-                            TSNPre.Enabled = false;
-                            //勾选
-                            TSNPre_checkBox.Checked = true;
-                            TSNPre_checkBox.Enabled = false;
-                        }
-                        if (length != "" && length != null)
-                        {
-                            //赋值
-                            TSNLength.Text = length;
-                            //设置不可编辑
-                            TSNLength.Enabled = false;
-                            //勾选
-                            TSNLength_checkBox.Checked = true;
-                            TSNLength_checkBox.Enabled = false;
-                        }
-                    }
-                    else if (dr["msr_type"].ToString().ToLower() == "after")
-                    {
-                        //msr_type=after 的值赋值到转换后
-
-                        //临时变量记录
-                        string length = dr["msr_length"].ToString();
-                        string prefix = dr["msr_prefix"].ToString();
-                        //记录进制
-                        system = dr["msr_system"].ToString();
-                        //不为空
-                        if (prefix != "" && prefix != null)
-                        {
-                            //则赋值
-                            SNPre.Text = prefix;
-                            //设置不可编辑
-                            SNPre.Enabled = false;
-                            //勾选
-                            SNPre_checkBox.Checked = true;
-                            SNPre_checkBox.Enabled = false;
-                        }
-                        if (dr["msr_startno"].ToString() != "" && dr["msr_endno"].ToString() != "")
-                        {
-                            //记录起止序列号
-                            startNo = dr["msr_startno"].ToString().Substring(prefix.Length);
-                            endNo = dr["msr_endno"].ToString().Substring(prefix.Length);
-                        }
-                        if (length != "" && length != null)
-                        {
-                            //赋值
-                            SNLength.Text = length;
-                            //设置不可编辑
-                            SNLength.Enabled = false;
-                            //勾选
-                            SNLength_checkBox.Checked = true;
-                            SNLength_checkBox.Enabled = false;
-                        }
-                    }
-                }
+                hasMakeRule = true;
             }
             else
             {
@@ -799,36 +677,6 @@ namespace UAS_MES.Make
                 }
             }
         }
-        /// <summary>
-        /// 检测转换后的序列号是否满足起止序列号范围
-        /// </summary>
-        /// <returns></returns>
-        private bool checkStartAndEnd()
-        {
-            if (system == "")
-            {
-                return true;
-            }
-            if (system == "decimal")
-            {
-                //十进制
-                if (int.Parse(code.Text.Substring(SNPre.Text.Length)) >= int.Parse(startNo) && int.Parse(code.Text.Substring(SNPre.Text.Length)) <= int.Parse(endNo))
-                {
-                    //满足
-                    return true;
-                }
-            }
-            else
-            {
-                //十六进制
-                if (int.Parse(code.Text.Substring(SNPre.Text.Length), System.Globalization.NumberStyles.HexNumber) >= int.Parse(startNo, System.Globalization.NumberStyles.HexNumber) && int.Parse(code.Text.Substring(SNPre.Text.Length), System.Globalization.NumberStyles.HexNumber) <= int.Parse(endNo, System.Globalization.NumberStyles.HexNumber))
-                {
-                    //满足
-                    return true;
-                }
-            }
-            return false;
-        }
         private bool checkExist(string fields)
         {
             //不存在
@@ -856,7 +704,6 @@ namespace UAS_MES.Make
             s1.Clear();
             show_sncode.Text = "";
             ChangeResult.Enabled = true;
-            onlyPass = false;
         }
 
         private void cancel_Click(object sender, EventArgs e)
@@ -864,22 +711,7 @@ namespace UAS_MES.Make
             //清除已经采集的所有信息
             clearInfo();
             //提示用户输入TSN
-            OperateResult.AppendText("<<请输入TSN\n", Color.Green);
-        }
-        private bool GetMakeInfo(string iSnCode, out string oMakeCode, out string oErrorMessage)
-        {
-            //取MakeProcess表中的执行记录ID最大的一个工单的号码
-            oMakeCode = "";
-            oErrorMessage = "";
-            string ms_id = dh.getFieldDataByCondition("MakeSerial", "max(ms_id) ms_id", "ms_sncode='" + iSnCode + "' or ms_firstsn in (select firstsn from makesnrelation where beforesn='" + iSnCode + "')").ToString();
-            oMakeCode = dh.getFieldDataByCondition("MakeSerial", "ms_makecode", "ms_id='" + ms_id + "'").ToString();
-            if (oMakeCode != "")
-                return true;
-            else
-            {
-                oErrorMessage = "序列号:" + iSnCode + " 未归属工单";
-                return false;
-            }
+            OperateResult.AppendText(">>请输入TSN\n", Color.Green);
         }
 
         private void ChangeResult_CheckedChanged(object sender, EventArgs e)
@@ -887,7 +719,7 @@ namespace UAS_MES.Make
             if (ChangeResult.Checked)
             {
                 //勾选的时候提示输入TSN
-                OperateResult.AppendText("<<请输入TSN号\n", Color.Black);
+                OperateResult.AppendText(">>请输入TSN号\n", Color.Black);
             }
         }
         private void insert2Sninfo(string sn)

+ 51 - 209
UAS-MES/FunctionCode/Make/Make_SeqTransform.cs

@@ -25,30 +25,23 @@ namespace UAS_MES.Make
 
         string errorMessage = "";
 
-        string startNo = "";//起始序列
-
-        string endNo = "";//终止序列
-
-        string system = "";//进制
-
-        bool flag = false;//标识是否只是过站
-
         DataTable ListA;
         //存放工单中数量
         int ma_qty;
+
         string oMakeCode = "";
+
         string oMsId = "";
+
+        bool hasSnList = false;//记录是否有转换后SN清单
+
+        bool hasMakeRule = false;//记录是否有工单防呆规则
+
         public Make_SeqTransform()
         {
             InitializeComponent();
         }
         
-        //private void Ma_code_DbChange(object sender, EventArgs e)
-        //{
-        //    Dbfind = ma_code.ReturnData;
-        //    BaseUtil.SetFormValue(this.Controls, Dbfind);
-        //}
-
         private void sncode_KeyDown(object sender, KeyEventArgs e)
         {
             if (e.KeyCode == Keys.Enter)
@@ -68,7 +61,7 @@ namespace UAS_MES.Make
                                 //用户填写了工单号,那么序列号必须要是该工单的,否则提示错误
                                 if (!LogicHandler.CheckStepSNAndMacode("", User.UserSourceCode, sncode.Text, User.UserCode, out oMakeCode, out oMsId, out errorMessage))
                                 {
-                                    OperateResult.AppendText(">>" + errorMessage + "\n", Color.Red, sncode);
+                                    OperateResult.AppendText("<<" + errorMessage + "\n", Color.Red, sncode);
                                     return;
                                 }
                             }
@@ -77,20 +70,17 @@ namespace UAS_MES.Make
                                 oMsId = dh.getFieldDataByCondition("makeserial", "max(ms_id)", "ms_sncode in (select '" + sncode.Text + "' from dual union select sn from makesnrelation where beforesn='" + sncode.Text + "' and sn<>' ' union select beforesn from makesnrelation where sn='" + sncode.Text + "' and beforesn<>' ')").ToString();
                                 if (oMsId == "")
                                 {
-                                    OperateResult.AppendText(">>TSN号错误\n", Color.Red, sncode);
+                                    OperateResult.AppendText("<<TSN号错误\n", Color.Red, sncode);
                                     return;
                                 }
                                 //根据ms_id查询
                                 sql.Clear();
-                                sql.Append("select 1 from makeserial where ms_id='" + oMsId + "' and ms_beforesn='" + sncode.Text + "' and ms_nextmacode is null and ms_outboxcode is null");
+                                sql.Append("select ms_stepcode from makeserial where ms_id='" + oMsId + "' and ms_beforesn='" + sncode.Text + "' and ms_nextmacode is null and ms_outboxcode is null");
                                 dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
                                 //如果行数大于0则允许转号
                                 if (dt.Rows.Count > 0)
                                 {
-                                    sql.Clear();
-                                    sql.Append("select 1 from makeserial where ms_id='" + oMsId + "' and ms_stepcode='" + User.CurrentStepCode + "'");
-                                    dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
-                                    if (dt.Rows.Count > 0)
+                                    if (dt.Rows[0]["ms_stepcode"].ToString()==User.CurrentStepCode)
                                     {
                                         bsncode = sncode.Text;
                                         //显示序列号
@@ -99,13 +89,13 @@ namespace UAS_MES.Make
                                     }
                                     else
                                     {
-                                        OperateResult.AppendText(">>当前工序不允许重新转号\n", Color.Red, sncode);
+                                        OperateResult.AppendText("<<当前工序不允许重新转号\n", Color.Red, sncode);
                                         return;
                                     }
                                 }
                                 else
                                 {
-                                    OperateResult.AppendText(">>TSN号" + sncode.Text + "当前状态不允许重新转号\n", Color.Red, sncode);
+                                    OperateResult.AppendText("<<TSN号" + sncode.Text + "当前状态不允许重新转号\n", Color.Red, sncode);
                                     return;
                                 }
                             }
@@ -123,7 +113,6 @@ namespace UAS_MES.Make
                                     //记录数量
                                     ma_qty = int.Parse(dt.Rows[0]["ma_qty"].ToString());
                                     BaseUtil.SetFormValue(this.Controls, dt);
-                                    //ms_makecode_lock.Checked = true;
                                 }
                             }
                             //获取需要关联采集的信息,以及校验规则
@@ -131,38 +120,24 @@ namespace UAS_MES.Make
                             //没有获取到就提示错误请维护产品对应的关联采集信息
                             if (ListA.Rows.Count > 0)
                             {
-                                OperateResult.AppendText(">>产品已维护关联采集信息,不允许只做转号\n", Color.Red, sncode);
-                                OperateResult.AppendText("<<请输入TSN\n", Color.Black);
+                                OperateResult.AppendText("<<产品已维护关联采集信息,不允许只做转号\n", Color.Red, sncode);
+                                OperateResult.AppendText(">>请输入TSN\n", Color.Black);
                                 if (ChangeResult.Checked)
                                 {
                                     bsncode = "";
                                     ChangeResult.Enabled = true;
-                                    flag = false;
                                     show_sncode.Text = "";
                                 }
                                 return;
                             }
                             if (ChangeResult.Checked)
                             {
-                                OperateResult.AppendText("<<请输入SN号\n", Color.Green, sncode);
+                                OperateResult.AppendText(">>请输入SN号\n", Color.Green, sncode);
                             }
                             switch (ChangeResult.CheckState)
                             {
                                 //勾选是修改已转换的序列,矫正修改错了的序列号
                                 case CheckState.Checked:
-                                    //if (dh.CheckExist("MakeSerial", "ms_beforesn='" + sncode.Text + "' and ms_id='" + oMsId + "'"))
-                                    //{
-                                    //    bsncode = sncode.Text;
-                                    //    //显示序列号
-                                    //    show_sncode.Text = bsncode;
-                                    //    OperateResult.AppendText("<<请输入SN号\n", Color.Green, sncode);
-                                    //    ChangeResult.Enabled = false;
-                                    //}
-                                    //else
-                                    //{
-                                    //    OperateResult.AppendText(">>不存在该已转序列号:" + sncode.Text + "\n", Color.Red, sncode);
-                                    //    OperateResult.AppendText("<<请重新输入TSN号\n", Color.Black);
-                                    //}
                                     break;
                                 case CheckState.Unchecked:
 
@@ -174,7 +149,7 @@ namespace UAS_MES.Make
                                         bsncode = sncode.Text;
                                         //显示序列号
                                         show_sncode.Text = bsncode;
-                                        OperateResult.AppendText("<<请输入SN号\n", Color.Green, sncode);
+                                        OperateResult.AppendText(">>请输入SN号\n", Color.Green, sncode);
                                         ChangeResult.Enabled = false;
                                     }
                                     else
@@ -186,14 +161,13 @@ namespace UAS_MES.Make
                                             bsncode = sncode.Text;
                                             //显示序列号
                                             show_sncode.Text = bsncode;
-                                            OperateResult.AppendText("<<请输入SN号\n", Color.Green, sncode);
+                                            OperateResult.AppendText(">>请输入SN号\n", Color.Green, sncode);
                                             ChangeResult.Enabled = false;
-                                            flag = true;
                                         }
                                         else
                                         {
-                                            OperateResult.AppendText(">>序列号:" + sncode.Text + "已转换过\n", Color.Red, sncode);
-                                            OperateResult.AppendText("<<请重新输入TSN号\n", Color.Black);
+                                            OperateResult.AppendText("<<序列号:" + sncode.Text + "已转换过\n", Color.Red, sncode);
+                                            OperateResult.AppendText(">>请重新输入TSN号\n", Color.Black);
                                         }
                                     }
                                     break;
@@ -204,60 +178,34 @@ namespace UAS_MES.Make
                         //bsncode不为空,说明输入的是转换后的序列号
                         else
                         {
-                            //判断用户是否锁定输入转换后序列号长度,
-                            if (!checkLengthOrPre(afterTransSNLength_checkBox, afterTransSNLength, "长度"))
-                                return;
-                            //判断用户是否锁定输入转换后序列号前缀,
-                            if (!checkLengthOrPre(afterTransSNPre_checkBox, afterTransSNPre, "前缀"))
-                                return;
                             //判断工单是否导入了序列号清单
-                            if (dh.CheckExist("makesnlist", "msl_makecode='" + ma_code.Text + "' and msl_type='after'"))
+                            if (hasSnList)
                             {
                                 if (!dh.CheckExist("makesnlist", "msl_sncode='" + sncode.Text + "' and msl_makecode='" + ma_code.Text + "' and msl_type='after'"))
                                 {
                                     //有序列号清单,输入的序列号却不在范围内
-                                    OperateResult.AppendText(">>SN号" + sncode.Text + "错误,不在工单设定的转换后序列号清单中\n", Color.Red, sncode);
+                                    OperateResult.AppendText("<<SN号" + sncode.Text + "错误,不在工单设定的转换后序列号清单中\n", Color.Red, sncode);
                                     return;
                                 }
                             }
-                            //判断输入的转换后序列号是否符合起始终止
-                            if (!checkStartAndEnd())
+                            else if (hasMakeRule)//判断工单防呆
                             {
-                                OperateResult.AppendText(">>SN号" + sncode.Text + "校验错误,不在工单防呆规则指定范围内!\n", Color.Red, sncode);
-                                return;
-                            }
-                            //如果只是需要过站的序列号
-                            if (flag)
-                            {
-                                if (bsncode == sncode.Text)
-                                {
-                                    //写入日志
-                                    if (LogicHandler.SetStepResult(ma_code.Text, User.UserSourceCode, sncode.Text, "序列转换", "序列转换成功", User.UserCode, out errorMessage))
-                                    {
-                                        //记录日志
-                                        LogicHandler.DoCommandLog(Tag.ToString(), User.UserCode, ma_code.Text, User.UserLineCode, User.UserSourceCode, "序列转换", "转换成功", sncode.Text, "");
-                                        OperateResult.AppendText(">>转换成功\n", Color.Green, sncode);
-                                    }
-                                    else
-                                    {
-                                        OperateResult.AppendText(">>" + errorMessage + "\n", Color.Red, sncode);
-                                    }
-                                    if (errorMessage.Contains("AFTERSUCCESS"))
-                                        OperateResult.AppendText(">>" + errorMessage + "\n");
-                                    flag = false;
-                                    ChangeResult.Enabled = true;
-                                    show_sncode.Text = "";
-                                    bsncode = "";
-                                }
-                                else
+                                if (!dh.CheckExist("makesnruledetail", "msd_sncode='" + sncode.Text + "' and  msd_makecode='" + ma_code.Text + "' and msd_type='after'"))
                                 {
-                                    OperateResult.AppendText(">>输入一致才可过站\n", Color.Red, sncode);
+                                    OperateResult.AppendText("<<SN号" + sncode.Text + "校验错误,不在工单防呆规则指定范围内!\n", Color.Red, sncode);
+                                    return;
                                 }
-                                return;
                             }
-                            //如果两次输入的序列号相同进行提示,不相同则进行下一步
-                            //if (bsncode != sncode.Text)
-                            //{
+                            else//判断产品防呆
+                            {
+                                //判断用户是否锁定输入转换后序列号长度,
+                                if (!checkLengthOrPre(afterTransSNLength_checkBox, afterTransSNLength, "长度"))
+                                    return;
+                                //判断用户是否锁定输入转换后序列号前缀,
+                                if (!checkLengthOrPre(afterTransSNPre_checkBox, afterTransSNPre, "前缀"))
+                                    return;
+                            }
+                            //防呆验证完成
                             if ((ChangeResult.Checked && dh.CheckExist("makeserial", "ms_id='" + oMsId + "' and ms_sncode='" + sncode.Text + "'")) || !dh.CheckExist("makeserial", "ms_sncode='" + sncode.Text + "'") || (!ChangeResult.Checked && (bsncode == sncode.Text)))
                             {
                                 string firstsn = "";
@@ -282,16 +230,12 @@ namespace UAS_MES.Make
                                 }
                                 string insertSql = "insert into  makesnrelation (BEFORESN,SN,FIRSTSN,MAKECODE,msr_indate, msr_inman)values('" + bsncode + "','" + sncode.Text + "','" + firstsn + "','" + ma_code.Text + "', sysdate ,'" + User.UserCode + "')";
                                 dh.ExecuteSQLTran(updateSql, insertSql);
-                                OperateResult.AppendText(">>转换成功\n", Color.Green);
+                                OperateResult.AppendText("<<转换成功\n", Color.Green);
                                 //记录日志
                                 LogicHandler.DoCommandLog(Tag.ToString(), User.UserCode, ma_code.Text, User.UserLineCode, User.UserSourceCode, "序列转换", "转换成功", sncode.Text, "");
                                 LogManager.DoLog("修改序列号:" + bsncode + "为" + sncode.Text + "成功!" + "操作人:" + User.UserCode);
                                 //写入日志
-                                if (LogicHandler.SetStepResult(ma_code.Text, User.UserSourceCode, sncode.Text, "序列转换", "序列转换成功", User.UserCode, out errorMessage))
-                                {
-
-                                }
-                                else
+                                if (!LogicHandler.SetStepResult(ma_code.Text, User.UserSourceCode, sncode.Text, "序列转换", "序列转换成功", User.UserCode, out errorMessage))
                                 {
                                     OperateResult.AppendText(">>" + errorMessage + "\n", Color.Red, sncode);
                                 }
@@ -312,23 +256,18 @@ namespace UAS_MES.Make
                                 ChangeResult.Enabled = true;
                             }
                             else
-                                OperateResult.AppendText(">>序列号" + sncode.Text + "已存在,请输入其他序列号\n", Color.Red);
-                            //}
-                            //else
-                            //{
-                            //    OperateResult.AppendText(">>相同序列号不能进行转换\n", Color.Red);
-                            //}
+                                OperateResult.AppendText("<<序列号" + sncode.Text + "已存在,请输入其他序列号\n", Color.Red);
                             sncode.Text = "";
                         }
                     }
                     else
                     {
-                        OperateResult.AppendText(">>" + errorMessage + "\n", Color.Red, sncode);
+                        OperateResult.AppendText("<<" + errorMessage + "\n", Color.Red, sncode);
                     }
                 }
                 else
                 {
-                    OperateResult.AppendText(">>序列号不能为空\n", Color.Red);
+                    OperateResult.AppendText("<<序列号不能为空\n", Color.Red);
                 }
                 sncode.Text = "";
             }
@@ -345,7 +284,6 @@ namespace UAS_MES.Make
             bsncode = "";
             OperateResult.AppendText(">>请输入TSN号\n", Color.Green, show_sncode);
             ChangeResult.Enabled = true;
-            flag = false;
         }
         /// <summary>
         /// 工单号keydown
@@ -364,6 +302,8 @@ namespace UAS_MES.Make
         /// <param name="e"></param>
         private void ms_makecode_UserControlTextChanged(object sender, EventArgs e)
         {
+            hasSnList = false;
+            hasMakeRule = false;
             //清空
             beforeTransSNPre.Text = "";
             beforeTransSNLength.Text = "";
@@ -389,82 +329,14 @@ namespace UAS_MES.Make
             //判断工单是否导入了序列号清单
             if (dh.CheckExist("makesnlist", "msl_makecode='" + ma_code.Text + "' and msl_type='after'"))
             {
+                hasSnList = true;
                 return;
             }
             //查询表工单序列号防呆规则表
             rules = (DataTable)dh.ExecuteSql("select msr_startno,msr_endno,msr_system,msr_type, msr_prefix ,msr_length from makesnrule where msr_makecode='" + ma_code.Text + "'", "select");
             if (rules.Rows.Count > 0)
             {
-                foreach (DataRow dr in rules.Rows)
-                {
-                    //如果有值,则这个字段自动勾选,并且不可编辑
-                    if (dr["msr_type"].ToString().ToLower() == "before")
-                    {
-                        //msr_type=before 的值赋值到转换前
-
-                        //临时变量记录
-                        string length = dr["msr_length"].ToString();
-                        string prefix = dr["msr_prefix"].ToString();
-                        //不为空
-                        if (prefix != "" && prefix != null)
-                        {
-                            //则赋值
-                            beforeTransSNPre.Text = prefix;
-                            //设置不可编辑
-                            beforeTransSNPre.Enabled = false;
-                            //勾选
-                            beforeTransSNPre_checkBox.Checked = true;
-                            beforeTransSNPre_checkBox.Enabled = false;
-                        }
-                        if (length != "" && length != null)
-                        {
-                            //赋值
-                            beforeTransSNLength.Text = length;
-                            //设置不可编辑
-                            beforeTransSNLength.Enabled = false;
-                            //勾选
-                            beforeTransSNLength_checkBox.Checked = true;
-                            beforeTransSNLength_checkBox.Enabled = false;
-                        }
-                    }
-                    else if (dr["msr_type"].ToString().ToLower() == "after")
-                    {
-                        //msr_type=after 的值赋值到转换后
-
-                        //临时变量记录
-                        string length = dr["msr_length"].ToString();
-                        string prefix = dr["msr_prefix"].ToString();
-                        //记录进制
-                        system = dr["msr_system"].ToString();
-                        //不为空
-                        if (prefix != "" && prefix != null)
-                        {
-                            //则赋值
-                            afterTransSNPre.Text = prefix;
-                            //设置不可编辑
-                            afterTransSNPre.Enabled = false;
-                            //勾选
-                            afterTransSNPre_checkBox.Checked = true;
-                            afterTransSNPre_checkBox.Enabled = false;
-                        }
-                        if (dr["msr_startno"].ToString() != "" && dr["msr_endno"].ToString() != "")
-                        {
-                            //记录起止序列号
-                            startNo = dr["msr_startno"].ToString().Substring(afterTransSNPre.Text.Length);
-                            endNo = dr["msr_endno"].ToString().Substring(afterTransSNPre.Text.Length);
-                        }
-                        if (length != "" && length != null)
-                        {
-                            //赋值
-                            afterTransSNLength.Text = length;
-                            //设置不可编辑
-                            afterTransSNLength.Enabled = false;
-                            //勾选
-                            afterTransSNLength_checkBox.Checked = true;
-                            afterTransSNLength_checkBox.Enabled = false;
-                        }
-                    }
-                }
+                hasMakeRule = true;
             }
             else
             {
@@ -504,7 +376,7 @@ namespace UAS_MES.Make
                 //如果勾选没有填值
                 if (textbox.Text == "")
                 {
-                    OperateResult.AppendText(">>勾选长度或者前缀需要填写内容\n", Color.Red);
+                    OperateResult.AppendText("<<勾选长度或者前缀需要填写内容\n", Color.Red);
                     return false;
                 }
                 if (type == "长度")
@@ -513,8 +385,8 @@ namespace UAS_MES.Make
                     if (sncode.Text.Trim().Length != int.Parse(textbox.Text))
                     {
                         //序列号校验错误,长度错误
-                        OperateResult.AppendText(">>序列号" + sncode.Text + "校验错误,长度错误\n", Color.Red, sncode);
-                        OperateResult.AppendText("<<请重新输入SN号\n", Color.Black);
+                        OperateResult.AppendText("<<序列号" + sncode.Text + "校验错误,长度错误\n", Color.Red, sncode);
+                        OperateResult.AppendText(">>请重新输入SN号\n", Color.Black);
                         return false;
                     }
                 }
@@ -535,8 +407,8 @@ namespace UAS_MES.Make
                     if (!f)
                     {
                         //序列号校验错误,前缀错误
-                        OperateResult.AppendText(">>序列号" + sncode.Text + "校验错误,前缀错误\n", Color.Red, sncode);
-                        OperateResult.AppendText("<<请重新输入SN号\n", Color.Black);
+                        OperateResult.AppendText("<<序列号" + sncode.Text + "校验错误,前缀错误\n", Color.Red, sncode);
+                        OperateResult.AppendText(">>请重新输入SN号\n", Color.Black);
                         return false;
                     }
                 }
@@ -544,43 +416,13 @@ namespace UAS_MES.Make
             }
             return true;
         }
-        /// <summary>
-        /// 检测转换后的序列号是否满足起止序列号范围
-        /// </summary>
-        /// <returns></returns>
-        private bool checkStartAndEnd()
-        {
-            if (system == "")
-            {
-                return true;
-            }
-            if (system == "decimal")
-            {
-                //十进制
-                if (int.Parse(sncode.Text.Substring(afterTransSNPre.Text.Length)) >= int.Parse(startNo) && int.Parse(sncode.Text.Substring(afterTransSNPre.Text.Length)) <= int.Parse(endNo))
-                {
-                    //满足
-                    return true;
-                }
-            }
-            else
-            {
-                //十六进制
-                if (int.Parse(sncode.Text.Substring(afterTransSNPre.Text.Length), System.Globalization.NumberStyles.HexNumber) >= int.Parse(startNo, System.Globalization.NumberStyles.HexNumber) && int.Parse(sncode.Text.Substring(afterTransSNPre.Text.Length), System.Globalization.NumberStyles.HexNumber) <= int.Parse(endNo, System.Globalization.NumberStyles.HexNumber))
-                {
-                    //满足
-                    return true;
-                }
-            }
-            return false;
-        }
 
         private void ChangeResult_CheckedChanged(object sender, EventArgs e)
         {
             if (ChangeResult.Checked)
             {
                 //勾选的时候提示输入TSN
-                OperateResult.AppendText("<<请输入TSN号\n", Color.Black);
+                OperateResult.AppendText(">>请输入TSN号\n", Color.Black);
             }
         }
 

+ 1 - 2
UAS-MES/FunctionCode/Make/Make_TestCollection.cs

@@ -290,7 +290,6 @@ namespace UAS_MES.Make
         /// </summary>
         private void LoadBadCodeListView()
         {
-            Console.WriteLine(bc_groupcode.SelectedValue);
             object bg_code = bc_groupcode.SelectedValue;
             sql.Clear();
             sql.Append("select bg_code||':'||bg_name bg_code,bc_code,bc_name,'' bc_remark from badgroupdetail ");
@@ -508,7 +507,7 @@ namespace UAS_MES.Make
                             //获取不良名称
                             bcname[i] = ChoosedRejectList.Items[i].SubItems[3].Text;
                             //获取所有的不良备注
-                            bcremark[i] = ChoosedRejectList.Items[i].SubItems[4].Text;
+                            bcremark[i] = bc_remark.Text;
                         }
                     }
                 }

+ 52 - 42
UAS-MES/FunctionCode/OQC/OQC_SamplingDataCollection.Designer.cs

@@ -30,7 +30,7 @@
         {
             this.components = new System.ComponentModel.Container();
             System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(OQC_SamplingDataCollection));
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
             this.ob_checkno_label = new System.Windows.Forms.Label();
             this.obd_outboxcode_label = new System.Windows.Forms.Label();
             this.ms_sncode_label = new System.Windows.Forms.Label();
@@ -57,10 +57,6 @@
             this.ob_prodcode = new UAS_MES.CustomControl.TextBoxWithIcon.EnterTextBox();
             this.ob_makecode = new UAS_MES.CustomControl.TextBoxWithIcon.EnterTextBox();
             this.ChoosedDGV = new UAS_MES.CustomControl.DataGrid_View.DataGridViewExpand();
-            this.or_id = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.bg_code1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.bc_code1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.bc_name1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.WaitChooseDGV = new UAS_MES.CustomControl.DataGrid_View.DataGridViewWithCheckBox();
             this.ChooseAll = new System.Windows.Forms.DataGridViewCheckBoxColumn();
             this.bg_code = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -99,6 +95,11 @@
             this.Filter = new UAS_MES.CustomControl.TextBoxWithIcon.TextBoxWithPlaceHolder();
             this.BadInfoSource = new System.Windows.Forms.BindingSource(this.components);
             this.label2 = new System.Windows.Forms.Label();
+            this.choose1 = new System.Windows.Forms.DataGridViewCheckBoxColumn();
+            this.or_id = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.bg_code1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.bc_code1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.bc_name1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             ((System.ComponentModel.ISupportInitialize)(this.ChoosedDGV)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.WaitChooseDGV)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.CheckTypeDGV)).BeginInit();
@@ -449,6 +450,7 @@
             this.ChoosedDGV.AllowUserToAddRows = false;
             this.ChoosedDGV.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
             this.ChoosedDGV.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.choose1,
             this.or_id,
             this.bg_code1,
             this.bc_code1,
@@ -461,37 +463,6 @@
             this.ChoosedDGV.Size = new System.Drawing.Size(325, 321);
             this.ChoosedDGV.TabIndex = 205;
             // 
-            // or_id
-            // 
-            this.or_id.DataPropertyName = "or_id";
-            this.or_id.HeaderText = "or_id";
-            this.or_id.Name = "or_id";
-            this.or_id.Visible = false;
-            // 
-            // bg_code1
-            // 
-            this.bg_code1.DataPropertyName = "bg_code";
-            this.bg_code1.HeaderText = "不良组别编号";
-            this.bg_code1.Name = "bg_code1";
-            this.bg_code1.Visible = false;
-            // 
-            // bc_code1
-            // 
-            this.bc_code1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
-            this.bc_code1.DataPropertyName = "bc_code";
-            this.bc_code1.HeaderText = "不良代码";
-            this.bc_code1.Name = "bc_code1";
-            this.bc_code1.ReadOnly = true;
-            this.bc_code1.Width = 140;
-            // 
-            // bc_name1
-            // 
-            this.bc_name1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
-            this.bc_name1.DataPropertyName = "bc_name";
-            this.bc_name1.HeaderText = "不良名称 ";
-            this.bc_name1.Name = "bc_name1";
-            this.bc_name1.ReadOnly = true;
-            // 
             // WaitChooseDGV
             // 
             this.WaitChooseDGV.AllowUserToAddRows = false;
@@ -619,8 +590,8 @@
             // 
             this.ci_name.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
             this.ci_name.DataPropertyName = "ci_name";
-            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.ci_name.DefaultCellStyle = dataGridViewCellStyle3;
+            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.ci_name.DefaultCellStyle = dataGridViewCellStyle1;
             this.ci_name.HeaderText = "项目名称";
             this.ci_name.Name = "ci_name";
             this.ci_name.ReadOnly = true;
@@ -956,6 +927,44 @@
             this.label2.TabIndex = 221;
             this.label2.Text = "搜索";
             // 
+            // choose1
+            // 
+            this.choose1.HeaderText = "勾选";
+            this.choose1.MinimumWidth = 50;
+            this.choose1.Name = "choose1";
+            this.choose1.Width = 50;
+            // 
+            // or_id
+            // 
+            this.or_id.DataPropertyName = "or_id";
+            this.or_id.HeaderText = "or_id";
+            this.or_id.Name = "or_id";
+            this.or_id.Visible = false;
+            // 
+            // bg_code1
+            // 
+            this.bg_code1.DataPropertyName = "bg_code";
+            this.bg_code1.HeaderText = "不良组别编号";
+            this.bg_code1.Name = "bg_code1";
+            this.bg_code1.Visible = false;
+            // 
+            // bc_code1
+            // 
+            this.bc_code1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
+            this.bc_code1.DataPropertyName = "bc_code";
+            this.bc_code1.HeaderText = "不良代码";
+            this.bc_code1.Name = "bc_code1";
+            this.bc_code1.ReadOnly = true;
+            this.bc_code1.Width = 140;
+            // 
+            // bc_name1
+            // 
+            this.bc_name1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+            this.bc_name1.DataPropertyName = "bc_name";
+            this.bc_name1.HeaderText = "不良名称 ";
+            this.bc_name1.Name = "bc_name1";
+            this.bc_name1.ReadOnly = true;
+            // 
             // OQC_SamplingDataCollection
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 15F);
@@ -1018,7 +1027,7 @@
             ((System.ComponentModel.ISupportInitialize)(this.WaitChooseDGV)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.CheckTypeDGV)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.BadInfoSource)).EndInit();
-            this.ResumeLayout(false);
+            this.ResumeLayout(true);
             this.PerformLayout();
 
         }
@@ -1086,12 +1095,13 @@
         private System.Windows.Forms.DataGridViewComboBoxColumn oi_leveldefect;
         private System.Windows.Forms.DataGridViewTextBoxColumn ois_remark;
         private System.Windows.Forms.DataGridViewTextBoxColumn ois_status;
+        private CustomControl.TextBoxWithIcon.TextBoxWithPlaceHolder Filter;
+        private System.Windows.Forms.BindingSource BadInfoSource;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.DataGridViewCheckBoxColumn choose1;
         private System.Windows.Forms.DataGridViewTextBoxColumn or_id;
         private System.Windows.Forms.DataGridViewTextBoxColumn bg_code1;
         private System.Windows.Forms.DataGridViewTextBoxColumn bc_code1;
         private System.Windows.Forms.DataGridViewTextBoxColumn bc_name1;
-        private CustomControl.TextBoxWithIcon.TextBoxWithPlaceHolder Filter;
-        private System.Windows.Forms.BindingSource BadInfoSource;
-        private System.Windows.Forms.Label label2;
     }
 }

+ 13 - 2
UAS-MES/FunctionCode/OQC/OQC_SamplingDataCollection.cs

@@ -404,7 +404,14 @@ namespace UAS_MES.OQC
 
         private void WaitReject_Click(object sender, EventArgs e)
         {
-            BaseUtil.CleanDGVData(ChoosedDGV);
+            for (int i = ChoosedDGV.Rows.Count - 1; i >= 0; i--)
+            {
+                if (ChoosedDGV.Rows[i].Cells["choose1"].FormattedValue.ToString() == "True")
+                {
+                    ChoosedDGV.Rows.RemoveAt(i);
+                }
+            }
+            (ChoosedDGV.DataSource as DataTable).AcceptChanges();
         }
 
         private void ChooseedReject_Click(object sender, EventArgs e)
@@ -419,7 +426,7 @@ namespace UAS_MES.OQC
             if (wait.Rows.Count > 0)
             {
                 for (int i = 0; i < wait.Rows.Count; i++)
-                {
+                {                   
                     if (!Chooseed.Contains(wait.Rows[i]["bc_code"].ToString()))
                     {
                         DataRow dr1 = choose.NewRow();
@@ -429,6 +436,10 @@ namespace UAS_MES.OQC
                         choose.Rows.Add(dr1);
                     }
                 }
+                for (int i = 0; i < WaitChooseDGV.Rows.Count; i++)
+                {
+                    ((DataTable)WaitChooseDGV.DataSource).Rows[i]["ChooseAll"] = 0;
+                }
             }
             else OperateResult.AppendText(">>请勾选不良明细\n", Color.Red);
         }

+ 1 - 49
UAS-MES/FunctionCode/OQC/OQC_SamplingDataCollection.resx

@@ -249,16 +249,7 @@
         ROJSU3qXjMKwG/vjzEz/skOI3Zqgv7AAAAAASUVORK5CYII=
 </value>
   </data>
-  <metadata name="or_id.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="bg_code1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="bc_code1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="bc_name1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+  <metadata name="choose1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
   <metadata name="or_id.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
@@ -285,45 +276,6 @@
   <metadata name="bc_name.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
-  <metadata name="ChooseAll.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="bg_code.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="bc_code.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="bc_name.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="choose.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="oi_itemcode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="ci_name.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="oi_sampleqty.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="oi_checkqty.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="oi_ng.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="oi_leveldefect.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="ois_remark.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="ois_status.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
   <metadata name="choose.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>

+ 6 - 1
UAS-MES/PublicMethod/BaseUtil.cs

@@ -128,7 +128,7 @@ namespace UAS_MES.PublicMethod
                     string controlName = collection[i].Name;
                     string controlsTag = collection[i].Tag == null ? "" : collection[i].Tag.ToString();
                     //默认给TextBox和Label赋值
-                    if (collection[i] is TextBox || collection[i] is Label || collection[i] is SearchTextBox || collection[i] is MaCodeSearchTextBox || collection[i] is EnterTextBox || collection[i] is TextBoxGeneratePaCode || collection[i] is NumericUpDown||collection[i] is TextBoxWithTextArea)
+                    if (collection[i] is TextBox || collection[i] is Label || collection[i] is SearchTextBox || collection[i] is MaCodeSearchTextBox || collection[i] is EnterTextBox || collection[i] is TextBoxGeneratePaCode || collection[i] is NumericUpDown || collection[i] is TextBoxWithTextArea)
                     {
                         for (int j = 0; j < dt.Columns.Count; j++)
                         {
@@ -603,6 +603,11 @@ namespace UAS_MES.PublicMethod
             {
                 dgv.Rows.RemoveAt(i);
             }
+            DataTable dt = dgv.DataSource as DataTable;
+            if (dt != null)
+            {
+                dt.AcceptChanges();
+            }
         }
 
         public static void CleanForm(Form Form)

+ 11 - 2
UAS_AutoPass/AutoAnalysisXml.cs

@@ -13,7 +13,7 @@ using System.Text;
 namespace UAS_AutoPass
 {
     public partial class AutoAnalysisXml : Form
-    {
+    {         
 
         DataHelper dh;
 
@@ -31,6 +31,8 @@ namespace UAS_AutoPass
         /// </summary>
         string isource;
 
+        Tip tipform ;
+
         Thread InitDB;
         /// <summary>
         /// 线别
@@ -60,12 +62,14 @@ namespace UAS_AutoPass
 
         public AutoAnalysisXml()
         {
+            tipform = new Tip();
             InitializeComponent();
             StartPosition = FormStartPosition.CenterScreen;
         }
 
         public AutoAnalysisXml(string iUserName, string iSource)
         {
+            tipform = new Tip();
             InitializeComponent();
             iusercode = iUserName;
             isource = iSource;
@@ -74,6 +78,7 @@ namespace UAS_AutoPass
 
         private void Form1_Load(object sender, EventArgs e)
         {
+            tipform.Show(); 
             CheckForIllegalCrossThreadCalls = false;
             FormBorderStyle = FormBorderStyle.FixedSingle;
             InitDB = new Thread(ConnectDB);
@@ -332,8 +337,10 @@ namespace UAS_AutoPass
                                 if (!LogicHandler.SetStepResult(makecode, isource, sncode, "自动过站采集", test_result, iusercode, out oErrMessage))
                                 {
                                     OperateResult.AppendText(oErrMessage + "\n");
+                                    tipform.startthread(oErrMessage, test_result);
                                     return;
                                 }
+                                tipform.startthread("序列号 " + sncode + "通过检测", test_result);
                                 break;
                             case "NG":
                                 RecordBadInfo(sncode, makecode, e.Name, "", badcode.ToArray(), badlocation.ToArray());
@@ -341,8 +348,10 @@ namespace UAS_AutoPass
                                 if (!LogicHandler.SetTestNGDetail(sncode, makecode, iusercode, isource, test_result, out oErrMessage))
                                 {
                                     OperateResult.AppendText(oErrMessage + "\n");
+                                    tipform.startthread(oErrMessage, test_result);
                                     return;
                                 }
+                                tipform.startthread("序列号 " + sncode + "未通过检测", test_result);
                                 break;
                             default:
                                 break;
@@ -366,7 +375,7 @@ namespace UAS_AutoPass
                         if (!File.Exists(BackUpFolderPath.Text + @"\" + e.Name))
                         {
                             file.MoveTo(BackUpFolderPath.Text + @"\" + e.Name);
-                            OperateResult.AppendText("成功解析文件" + e.Name + "\n");
+                            OperateResult.AppendText("成功解析文件" + e.Name + "\n"); 
                             break;
                         }
                         else if (!File.Exists(BackUpFolderPath.Text + @"\" + e.Name.Split('.')[0] + "(" + i + ")" + "." + e.Name.Split('.')[1]))

+ 69 - 0
UAS_AutoPass/Form2.Designer.cs

@@ -0,0 +1,69 @@
+namespace UAS_AutoPass
+{
+    partial class Tip
+    {
+        /// <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.label1 = new System.Windows.Forms.Label();
+            this.SuspendLayout();
+            // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            this.label1.BackColor = System.Drawing.SystemColors.Menu;
+            this.label1.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label1.ForeColor = System.Drawing.Color.Black;
+            this.label1.Location = new System.Drawing.Point(75, 18);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(0, 21);
+            this.label1.TabIndex = 0;
+            // 
+            // Tip
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.BackColor = System.Drawing.SystemColors.Menu;
+            this.ClientSize = new System.Drawing.Size(312, 59);
+            this.Controls.Add(this.label1);
+            this.ForeColor = System.Drawing.Color.White;
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
+            this.Name = "Tip";
+            this.Text = "Form2";
+            this.TopMost = true;
+            this.Load += new System.EventHandler(this.Form2_Load);
+            this.MouseEnter += new System.EventHandler(this.Form2_MouseEnter);
+            this.MouseLeave += new System.EventHandler(this.Form2_MouseLeave);
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Label label1;
+    }
+}

+ 114 - 0
UAS_AutoPass/Form2.cs

@@ -0,0 +1,114 @@
+using System;
+using System.ComponentModel;
+using System.Threading;
+using System.Windows.Forms;
+
+namespace UAS_AutoPass
+{
+    public partial class Tip : Form
+    {
+        int state;
+
+        private DoWorkEventArgs e;
+
+        public Tip()
+        {
+            InitializeComponent();
+        }
+        private void Form2_Load(object sender, EventArgs e)
+        {
+            this.ShowInTaskbar = false;
+            this.Left = Screen.PrimaryScreen.WorkingArea.Width - this.Width;
+            this.Top = this.Height;
+            state = 0;
+            label1.Text = DateTime.Now.ToString();
+        }
+
+        public void startthread(string filename,string type)
+        {
+            label1.Text = filename;
+            if(type  == "OK")
+            label1.ForeColor = System.Drawing.Color.Green;
+            if(type == "NG")
+            label1.ForeColor = System.Drawing.Color.Red;
+                  
+            //thread.Start();
+            using (BackgroundWorker bw = new BackgroundWorker())
+            {
+                bw.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bw_RunWorkerCompleted);
+                bw.DoWork += new DoWorkEventHandler(bw_DoWork);
+                bw.RunWorkerAsync("Tank");
+            }
+        }
+
+        private void bw_DoWork(object sender, DoWorkEventArgs e)
+        {
+
+        }
+        private void bw_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
+        {
+            aa();
+            Thread.Sleep(2000);
+            bb();
+        }
+        public void aa()
+        {
+            if (state == 0)
+            {
+                state = 1;
+                int t = this.Left;
+                for (int i = t; i >= Screen.PrimaryScreen.WorkingArea.Width - this.Width; i--)
+                {
+                    this.Left = i;
+                    Application.DoEvents();
+                }
+                state = 0;
+            }
+        }
+
+        public void bb()
+        {
+            if (this.Left <= Screen.PrimaryScreen.WorkingArea.Width - 10 && state == 0)
+            {
+                state = 1;
+                int t = this.Left;
+                for (int i = t; i < Screen.PrimaryScreen.WorkingArea.Width - 10; i++)
+                {
+                    this.Left = i;
+                    Application.DoEvents();
+                }
+                state = 0;
+            }
+        }
+
+        private void Form2_MouseEnter(object sender, EventArgs e)
+        {
+            if (state == 0)
+            {
+                state = 1;
+                int t = this.Left;
+                for (int i = t; i >= Screen.PrimaryScreen.WorkingArea.Width - this.Width; i=i-2)
+                {
+                    this.Left = i;
+                    Application.DoEvents();
+                }
+                state = 0;
+            }
+        }
+
+        private void Form2_MouseLeave(object sender, EventArgs e)
+        {
+            if (this.Left <= Screen.PrimaryScreen.WorkingArea.Width - 10 && state == 0)
+            {
+                state = 1;
+                int t = this.Left;
+                for (int i = t; i < Screen.PrimaryScreen.WorkingArea.Width - 10; i=i+2)
+                {
+                    this.Left = i;
+                    Application.DoEvents();
+                }
+                state = 0;
+            }
+        }
+    }
+}

+ 120 - 0
UAS_AutoPass/Form2.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>