Переглянути джерело

Merge repos.ubtob.net:usoft/mes-client

callm 5 днів тому
батько
коміт
fd5662b5a7

+ 609 - 0
UAS_MES_YTDZ/FunctionCode/Make/Make_HandFeedQualityConfirm.Designer.cs

@@ -0,0 +1,609 @@
+namespace UAS_MES_NEW.Make
+{
+    partial class Make_HandFeedQualityConfirm
+    {
+        /// <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.containerBox = new System.Windows.Forms.Panel();
+            this.dgv = new System.Windows.Forms.DataGridView();
+            this.executeBox = new System.Windows.Forms.Panel();
+            this.LockMakeCode = new UAS_MES_NEW.CustomControl.CustomCheckBox.LockCheckBox();
+            this.ma_code = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.MaCodeSearchTextBox();
+            this.makeLab = new System.Windows.Forms.Label();
+            this.submit = new System.Windows.Forms.Button();
+            this.snVal = new System.Windows.Forms.TextBox();
+            this.snLab = new System.Windows.Forms.Label();
+            this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn10 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.SNDetails = new UAS_MES_NEW.CustomControl.GroupBoxWithBorder.GroupBoxWithBorder();
+            this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
+            this.productName = new System.Windows.Forms.Label();
+            this.productCode = new System.Windows.Forms.Label();
+            this.workOrder = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.label1 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.serialNumber = new System.Windows.Forms.Label();
+            this.dataGridViewCheckBoxColumn1 = new System.Windows.Forms.DataGridViewCheckBoxColumn();
+            this.dataGridViewTextBoxColumn11 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn12 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.rn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ms_sncode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ps_linecode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ps_table = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.psl_location = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.psl_devlocation = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.psl_prodcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.psl_baseqty = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ReelRemark = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ReelNum = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.containerBox.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgv)).BeginInit();
+            this.executeBox.SuspendLayout();
+            this.SNDetails.SuspendLayout();
+            this.tableLayoutPanel1.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // containerBox
+            // 
+            this.containerBox.Controls.Add(this.dgv);
+            this.containerBox.Controls.Add(this.executeBox);
+            this.containerBox.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.containerBox.Location = new System.Drawing.Point(0, 123);
+            this.containerBox.Name = "containerBox";
+            this.containerBox.Size = new System.Drawing.Size(1280, 597);
+            this.containerBox.TabIndex = 28;
+            // 
+            // dgv
+            // 
+            this.dgv.AllowUserToAddRows = false;
+            this.dgv.AllowUserToDeleteRows = false;
+            this.dgv.AllowUserToResizeRows = false;
+            this.dgv.BackgroundColor = System.Drawing.SystemColors.Control;
+            this.dgv.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dgv.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.rn,
+            this.ms_sncode,
+            this.ps_linecode,
+            this.ps_table,
+            this.psl_location,
+            this.psl_devlocation,
+            this.psl_prodcode,
+            this.psl_baseqty,
+            this.ReelRemark,
+            this.ReelNum});
+            this.dgv.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.dgv.Location = new System.Drawing.Point(0, 0);
+            this.dgv.Name = "dgv";
+            this.dgv.RowHeadersVisible = false;
+            this.dgv.RowHeadersWidth = 62;
+            this.dgv.RowTemplate.Height = 30;
+            this.dgv.Size = new System.Drawing.Size(1280, 467);
+            this.dgv.TabIndex = 1;
+            // 
+            // executeBox
+            // 
+            this.executeBox.Controls.Add(this.LockMakeCode);
+            this.executeBox.Controls.Add(this.ma_code);
+            this.executeBox.Controls.Add(this.makeLab);
+            this.executeBox.Controls.Add(this.submit);
+            this.executeBox.Controls.Add(this.snVal);
+            this.executeBox.Controls.Add(this.snLab);
+            this.executeBox.Dock = System.Windows.Forms.DockStyle.Bottom;
+            this.executeBox.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.executeBox.Location = new System.Drawing.Point(0, 467);
+            this.executeBox.Name = "executeBox";
+            this.executeBox.Size = new System.Drawing.Size(1280, 130);
+            this.executeBox.TabIndex = 0;
+            // 
+            // LockMakeCode
+            // 
+            this.LockMakeCode.AutoSize = true;
+            this.LockMakeCode.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.LockMakeCode.LeaveEvent = false;
+            this.LockMakeCode.Location = new System.Drawing.Point(404, 18);
+            this.LockMakeCode.Name = "LockMakeCode";
+            this.LockMakeCode.Size = new System.Drawing.Size(72, 31);
+            this.LockMakeCode.TabIndex = 8;
+            this.LockMakeCode.Text = "锁定";
+            this.LockMakeCode.UseVisualStyleBackColor = true;
+            // 
+            // ma_code
+            // 
+            this.ma_code.AllPower = null;
+            this.ma_code.Caller = null;
+            this.ma_code.Condition = null;
+            this.ma_code.DBTitle = null;
+            this.ma_code.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.ma_code.FormName = null;
+            this.ma_code.Location = new System.Drawing.Point(114, 14);
+            this.ma_code.Margin = new System.Windows.Forms.Padding(4);
+            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(280, 36);
+            this.ma_code.TabIndex = 7;
+            this.ma_code.TableName = null;
+            this.ma_code.Tag = "ma_code";
+            this.ma_code.TextBoxEnable = true;
+            this.ma_code.DbChange += new UAS_MES_NEW.CustomControl.TextBoxWithIcon.MaCodeSearchTextBox.DBSourceChange(this.ma_code_DbChange);
+            // 
+            // makeLab
+            // 
+            this.makeLab.AutoSize = true;
+            this.makeLab.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.makeLab.Location = new System.Drawing.Point(38, 20);
+            this.makeLab.Name = "makeLab";
+            this.makeLab.Size = new System.Drawing.Size(59, 28);
+            this.makeLab.TabIndex = 6;
+            this.makeLab.Text = "工单:";
+            // 
+            // submit
+            // 
+            this.submit.Cursor = System.Windows.Forms.Cursors.Hand;
+            this.submit.Location = new System.Drawing.Point(414, 70);
+            this.submit.Name = "submit";
+            this.submit.Size = new System.Drawing.Size(140, 32);
+            this.submit.TabIndex = 5;
+            this.submit.Text = "品质确认";
+            this.submit.UseVisualStyleBackColor = true;
+            this.submit.Click += new System.EventHandler(this.submit_Click);
+            // 
+            // snVal
+            // 
+            this.snVal.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.snVal.Location = new System.Drawing.Point(114, 72);
+            this.snVal.Name = "snVal";
+            this.snVal.Size = new System.Drawing.Size(263, 31);
+            this.snVal.TabIndex = 1;
+            this.snVal.KeyDown += new System.Windows.Forms.KeyEventHandler(this.snVal_KeyDown);
+            // 
+            // snLab
+            // 
+            this.snLab.AutoSize = true;
+            this.snLab.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.snLab.Location = new System.Drawing.Point(38, 74);
+            this.snLab.Name = "snLab";
+            this.snLab.Size = new System.Drawing.Size(80, 28);
+            this.snLab.TabIndex = 0;
+            this.snLab.Text = "序列号:";
+            // 
+            // dataGridViewTextBoxColumn1
+            // 
+            this.dataGridViewTextBoxColumn1.DataPropertyName = "rn";
+            this.dataGridViewTextBoxColumn1.HeaderText = "序号";
+            this.dataGridViewTextBoxColumn1.MinimumWidth = 8;
+            this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
+            this.dataGridViewTextBoxColumn1.ReadOnly = true;
+            this.dataGridViewTextBoxColumn1.Width = 60;
+            // 
+            // dataGridViewTextBoxColumn2
+            // 
+            this.dataGridViewTextBoxColumn2.DataPropertyName = "ms_sncode";
+            this.dataGridViewTextBoxColumn2.HeaderText = "序列号";
+            this.dataGridViewTextBoxColumn2.MinimumWidth = 8;
+            this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2";
+            this.dataGridViewTextBoxColumn2.ReadOnly = true;
+            this.dataGridViewTextBoxColumn2.Width = 130;
+            // 
+            // dataGridViewTextBoxColumn3
+            // 
+            this.dataGridViewTextBoxColumn3.DataPropertyName = "ps_linecode";
+            this.dataGridViewTextBoxColumn3.HeaderText = "线体";
+            this.dataGridViewTextBoxColumn3.MinimumWidth = 8;
+            this.dataGridViewTextBoxColumn3.Name = "dataGridViewTextBoxColumn3";
+            this.dataGridViewTextBoxColumn3.ReadOnly = true;
+            this.dataGridViewTextBoxColumn3.Width = 150;
+            // 
+            // dataGridViewTextBoxColumn4
+            // 
+            this.dataGridViewTextBoxColumn4.DataPropertyName = "ps_processcode";
+            this.dataGridViewTextBoxColumn4.HeaderText = "机台名称";
+            this.dataGridViewTextBoxColumn4.MinimumWidth = 8;
+            this.dataGridViewTextBoxColumn4.Name = "dataGridViewTextBoxColumn4";
+            this.dataGridViewTextBoxColumn4.ReadOnly = true;
+            this.dataGridViewTextBoxColumn4.Visible = false;
+            this.dataGridViewTextBoxColumn4.Width = 190;
+            // 
+            // dataGridViewTextBoxColumn5
+            // 
+            this.dataGridViewTextBoxColumn5.DataPropertyName = "ps_table";
+            this.dataGridViewTextBoxColumn5.HeaderText = "面别";
+            this.dataGridViewTextBoxColumn5.MinimumWidth = 8;
+            this.dataGridViewTextBoxColumn5.Name = "dataGridViewTextBoxColumn5";
+            this.dataGridViewTextBoxColumn5.ReadOnly = true;
+            this.dataGridViewTextBoxColumn5.Width = 80;
+            // 
+            // dataGridViewTextBoxColumn6
+            // 
+            this.dataGridViewTextBoxColumn6.DataPropertyName = "psl_location";
+            this.dataGridViewTextBoxColumn6.HeaderText = "站位编号";
+            this.dataGridViewTextBoxColumn6.MinimumWidth = 8;
+            this.dataGridViewTextBoxColumn6.Name = "dataGridViewTextBoxColumn6";
+            this.dataGridViewTextBoxColumn6.ReadOnly = true;
+            this.dataGridViewTextBoxColumn6.Width = 90;
+            // 
+            // dataGridViewTextBoxColumn7
+            // 
+            this.dataGridViewTextBoxColumn7.DataPropertyName = "psl_bomlocation";
+            this.dataGridViewTextBoxColumn7.HeaderText = "元件位置";
+            this.dataGridViewTextBoxColumn7.MinimumWidth = 8;
+            this.dataGridViewTextBoxColumn7.Name = "dataGridViewTextBoxColumn7";
+            this.dataGridViewTextBoxColumn7.ReadOnly = true;
+            this.dataGridViewTextBoxColumn7.Width = 210;
+            // 
+            // dataGridViewTextBoxColumn8
+            // 
+            this.dataGridViewTextBoxColumn8.DataPropertyName = "psl_prodcode";
+            this.dataGridViewTextBoxColumn8.HeaderText = "物料编号";
+            this.dataGridViewTextBoxColumn8.MinimumWidth = 8;
+            this.dataGridViewTextBoxColumn8.Name = "dataGridViewTextBoxColumn8";
+            this.dataGridViewTextBoxColumn8.ReadOnly = true;
+            this.dataGridViewTextBoxColumn8.Width = 140;
+            // 
+            // dataGridViewTextBoxColumn9
+            // 
+            this.dataGridViewTextBoxColumn9.DataPropertyName = "psl_baseqty";
+            this.dataGridViewTextBoxColumn9.HeaderText = "单位用量";
+            this.dataGridViewTextBoxColumn9.MinimumWidth = 8;
+            this.dataGridViewTextBoxColumn9.Name = "dataGridViewTextBoxColumn9";
+            this.dataGridViewTextBoxColumn9.ReadOnly = true;
+            this.dataGridViewTextBoxColumn9.Width = 80;
+            // 
+            // dataGridViewTextBoxColumn10
+            // 
+            this.dataGridViewTextBoxColumn10.DataPropertyName = "ReelRemark";
+            this.dataGridViewTextBoxColumn10.HeaderText = "元件信息备注";
+            this.dataGridViewTextBoxColumn10.MinimumWidth = 8;
+            this.dataGridViewTextBoxColumn10.Name = "dataGridViewTextBoxColumn10";
+            this.dataGridViewTextBoxColumn10.ReadOnly = true;
+            this.dataGridViewTextBoxColumn10.Width = 150;
+            // 
+            // SNDetails
+            // 
+            this.SNDetails.BorderColor = System.Drawing.Color.Black;
+            this.SNDetails.Controls.Add(this.tableLayoutPanel1);
+            this.SNDetails.Dock = System.Windows.Forms.DockStyle.Top;
+            this.SNDetails.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.SNDetails.Location = new System.Drawing.Point(0, 0);
+            this.SNDetails.Name = "SNDetails";
+            this.SNDetails.Size = new System.Drawing.Size(1280, 123);
+            this.SNDetails.TabIndex = 27;
+            this.SNDetails.TabStop = false;
+            this.SNDetails.Text = "产品序列信息";
+            this.SNDetails.TextColor = System.Drawing.Color.Black;
+            // 
+            // tableLayoutPanel1
+            // 
+            this.tableLayoutPanel1.ColumnCount = 8;
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 6.451613F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 12.09677F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 6.451613F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 12.09677F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 6.451613F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 13.19F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 6.451613F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 36.81F));
+            this.tableLayoutPanel1.Controls.Add(this.productName, 7, 0);
+            this.tableLayoutPanel1.Controls.Add(this.productCode, 5, 0);
+            this.tableLayoutPanel1.Controls.Add(this.workOrder, 3, 0);
+            this.tableLayoutPanel1.Controls.Add(this.label4, 6, 0);
+            this.tableLayoutPanel1.Controls.Add(this.label1, 0, 0);
+            this.tableLayoutPanel1.Controls.Add(this.label3, 4, 0);
+            this.tableLayoutPanel1.Controls.Add(this.label2, 2, 0);
+            this.tableLayoutPanel1.Controls.Add(this.serialNumber, 1, 0);
+            this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Bottom;
+            this.tableLayoutPanel1.Location = new System.Drawing.Point(3, 37);
+            this.tableLayoutPanel1.Name = "tableLayoutPanel1";
+            this.tableLayoutPanel1.RowCount = 1;
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 83F));
+            this.tableLayoutPanel1.Size = new System.Drawing.Size(1274, 83);
+            this.tableLayoutPanel1.TabIndex = 0;
+            // 
+            // productName
+            // 
+            this.productName.AutoSize = true;
+            this.productName.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.productName.Location = new System.Drawing.Point(807, 0);
+            this.productName.Name = "productName";
+            this.productName.Size = new System.Drawing.Size(464, 83);
+            this.productName.TabIndex = 7;
+            this.productName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // productCode
+            // 
+            this.productCode.AutoSize = true;
+            this.productCode.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.productCode.Location = new System.Drawing.Point(557, 0);
+            this.productCode.Name = "productCode";
+            this.productCode.Size = new System.Drawing.Size(162, 83);
+            this.productCode.TabIndex = 6;
+            this.productCode.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // workOrder
+            // 
+            this.workOrder.AutoSize = true;
+            this.workOrder.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.workOrder.Location = new System.Drawing.Point(321, 0);
+            this.workOrder.Name = "workOrder";
+            this.workOrder.Size = new System.Drawing.Size(148, 83);
+            this.workOrder.TabIndex = 5;
+            this.workOrder.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label4
+            // 
+            this.label4.AutoSize = true;
+            this.label4.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label4.Location = new System.Drawing.Point(725, 0);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(76, 83);
+            this.label4.TabIndex = 3;
+            this.label4.Text = "产品名称: ";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            this.label1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label1.Location = new System.Drawing.Point(3, 0);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(76, 83);
+            this.label1.TabIndex = 0;
+            this.label1.Text = "序列号: ";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label3.Location = new System.Drawing.Point(475, 0);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(76, 83);
+            this.label3.TabIndex = 2;
+            this.label3.Text = "产品编号: ";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label2
+            // 
+            this.label2.AutoSize = true;
+            this.label2.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label2.Location = new System.Drawing.Point(239, 0);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(76, 83);
+            this.label2.TabIndex = 1;
+            this.label2.Text = "工单: ";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // serialNumber
+            // 
+            this.serialNumber.AutoSize = true;
+            this.serialNumber.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.serialNumber.Location = new System.Drawing.Point(85, 0);
+            this.serialNumber.Name = "serialNumber";
+            this.serialNumber.Size = new System.Drawing.Size(148, 83);
+            this.serialNumber.TabIndex = 4;
+            this.serialNumber.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // dataGridViewCheckBoxColumn1
+            // 
+            this.dataGridViewCheckBoxColumn1.HeaderText = "是否手补料";
+            this.dataGridViewCheckBoxColumn1.MinimumWidth = 8;
+            this.dataGridViewCheckBoxColumn1.Name = "dataGridViewCheckBoxColumn1";
+            this.dataGridViewCheckBoxColumn1.Width = 80;
+            // 
+            // dataGridViewTextBoxColumn11
+            // 
+            this.dataGridViewTextBoxColumn11.DataPropertyName = "ReelNum";
+            this.dataGridViewTextBoxColumn11.HeaderText = "补料数量";
+            this.dataGridViewTextBoxColumn11.MinimumWidth = 8;
+            this.dataGridViewTextBoxColumn11.Name = "dataGridViewTextBoxColumn11";
+            this.dataGridViewTextBoxColumn11.Visible = false;
+            this.dataGridViewTextBoxColumn11.Width = 80;
+            // 
+            // dataGridViewTextBoxColumn12
+            // 
+            this.dataGridViewTextBoxColumn12.DataPropertyName = "ReelNum";
+            this.dataGridViewTextBoxColumn12.HeaderText = "补料数量";
+            this.dataGridViewTextBoxColumn12.MinimumWidth = 8;
+            this.dataGridViewTextBoxColumn12.Name = "dataGridViewTextBoxColumn12";
+            this.dataGridViewTextBoxColumn12.Visible = false;
+            this.dataGridViewTextBoxColumn12.Width = 80;
+            // 
+            // rn
+            // 
+            this.rn.DataPropertyName = "rn";
+            this.rn.HeaderText = "序号";
+            this.rn.MinimumWidth = 8;
+            this.rn.Name = "rn";
+            this.rn.ReadOnly = true;
+            this.rn.Width = 50;
+            // 
+            // ms_sncode
+            // 
+            this.ms_sncode.DataPropertyName = "ms_sncode";
+            this.ms_sncode.HeaderText = "序列号";
+            this.ms_sncode.MinimumWidth = 8;
+            this.ms_sncode.Name = "ms_sncode";
+            this.ms_sncode.ReadOnly = true;
+            this.ms_sncode.Width = 180;
+            // 
+            // ps_linecode
+            // 
+            this.ps_linecode.DataPropertyName = "line_name";
+            this.ps_linecode.HeaderText = "线体";
+            this.ps_linecode.MinimumWidth = 8;
+            this.ps_linecode.Name = "ps_linecode";
+            this.ps_linecode.ReadOnly = true;
+            this.ps_linecode.Width = 70;
+            // 
+            // ps_table
+            // 
+            this.ps_table.DataPropertyName = "side";
+            this.ps_table.HeaderText = "面别";
+            this.ps_table.MinimumWidth = 8;
+            this.ps_table.Name = "ps_table";
+            this.ps_table.ReadOnly = true;
+            this.ps_table.Width = 70;
+            // 
+            // psl_location
+            // 
+            this.psl_location.DataPropertyName = "position";
+            this.psl_location.HeaderText = "站位编号";
+            this.psl_location.MinimumWidth = 8;
+            this.psl_location.Name = "psl_location";
+            this.psl_location.ReadOnly = true;
+            this.psl_location.Width = 120;
+            // 
+            // psl_devlocation
+            // 
+            this.psl_devlocation.DataPropertyName = "reel_position";
+            this.psl_devlocation.HeaderText = "元件位置";
+            this.psl_devlocation.MinimumWidth = 8;
+            this.psl_devlocation.Name = "psl_devlocation";
+            this.psl_devlocation.ReadOnly = true;
+            this.psl_devlocation.Width = 220;
+            // 
+            // psl_prodcode
+            // 
+            this.psl_prodcode.DataPropertyName = "part_no";
+            this.psl_prodcode.HeaderText = "物料编号";
+            this.psl_prodcode.MinimumWidth = 8;
+            this.psl_prodcode.Name = "psl_prodcode";
+            this.psl_prodcode.ReadOnly = true;
+            this.psl_prodcode.Width = 140;
+            // 
+            // psl_baseqty
+            // 
+            this.psl_baseqty.DataPropertyName = "reel_qty";
+            this.psl_baseqty.HeaderText = "用量";
+            this.psl_baseqty.MinimumWidth = 8;
+            this.psl_baseqty.Name = "psl_baseqty";
+            this.psl_baseqty.ReadOnly = true;
+            this.psl_baseqty.Width = 60;
+            // 
+            // ReelRemark
+            // 
+            this.ReelRemark.DataPropertyName = "reelremark";
+            this.ReelRemark.HeaderText = "元件信息备注";
+            this.ReelRemark.MinimumWidth = 8;
+            this.ReelRemark.Name = "ReelRemark";
+            this.ReelRemark.ReadOnly = true;
+            this.ReelRemark.Width = 150;
+            // 
+            // ReelNum
+            // 
+            this.ReelNum.DataPropertyName = "reelnum";
+            this.ReelNum.HeaderText = "补料数量";
+            this.ReelNum.MinimumWidth = 8;
+            this.ReelNum.Name = "ReelNum";
+            this.ReelNum.ReadOnly = true;
+            this.ReelNum.Width = 70;
+            // 
+            // Make_HandFeedQualityConfirm
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(11F, 24F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(1280, 720);
+            this.Controls.Add(this.containerBox);
+            this.Controls.Add(this.SNDetails);
+            this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
+            this.Margin = new System.Windows.Forms.Padding(4);
+            this.Name = "Make_HandFeedQualityConfirm";
+            this.Text = "手补料品质确认";
+            this.Load += new System.EventHandler(this.Make_HandFeedQualityConfirm_Load);
+            this.containerBox.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dgv)).EndInit();
+            this.executeBox.ResumeLayout(false);
+            this.executeBox.PerformLayout();
+            this.SNDetails.ResumeLayout(false);
+            this.tableLayoutPanel1.ResumeLayout(false);
+            this.tableLayoutPanel1.PerformLayout();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private CustomControl.GroupBoxWithBorder.GroupBoxWithBorder SNDetails;
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
+        private System.Windows.Forms.Label productName;
+        private System.Windows.Forms.Label productCode;
+        private System.Windows.Forms.Label workOrder;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label serialNumber;
+        private System.Windows.Forms.Panel containerBox;
+        private System.Windows.Forms.DataGridView dgv;
+        private System.Windows.Forms.Panel executeBox;
+        private System.Windows.Forms.Label snLab;
+        private System.Windows.Forms.TextBox snVal;
+        private System.Windows.Forms.Label makeLab;
+        private CustomControl.TextBoxWithIcon.MaCodeSearchTextBox ma_code;
+        private CustomControl.CustomCheckBox.LockCheckBox LockMakeCode;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1;
+        private System.Windows.Forms.DataGridViewCheckBoxColumn dataGridViewCheckBoxColumn1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn7;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn8;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn9;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn10;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn11;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn12;
+        private System.Windows.Forms.DataGridViewTextBoxColumn qa_emp;
+        private System.Windows.Forms.DataGridViewTextBoxColumn qa_date;
+        private System.Windows.Forms.Button submit;
+        private System.Windows.Forms.DataGridViewTextBoxColumn rn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ms_sncode;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ps_linecode;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ps_table;
+        private System.Windows.Forms.DataGridViewTextBoxColumn psl_location;
+        private System.Windows.Forms.DataGridViewTextBoxColumn psl_devlocation;
+        private System.Windows.Forms.DataGridViewTextBoxColumn psl_prodcode;
+        private System.Windows.Forms.DataGridViewTextBoxColumn psl_baseqty;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ReelRemark;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ReelNum;
+    }
+}

+ 275 - 0
UAS_MES_YTDZ/FunctionCode/Make/Make_HandFeedQualityConfirm.cs

@@ -0,0 +1,275 @@
+using DevComponents.DotNetBar.Controls;
+using NPOI.SS.Formula.Eval;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Data.SqlClient;
+using System.Drawing;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using UAS_MES_NEW.DataOperate;
+using UAS_MES_NEW.Entity;
+using UAS_MES_NEW.PublicMethod;
+
+namespace UAS_MES_NEW.Make
+{
+    public partial class Make_HandFeedQualityConfirm : Form
+    {
+        public Make_HandFeedQualityConfirm()
+        {
+            InitializeComponent();
+        }
+
+        StringBuilder SQL = new StringBuilder();
+        DataTable dt, data;
+        DataHelper dh;
+
+        private void Make_HandFeedQualityConfirm_Load(object sender, EventArgs e)
+        {
+            dh = SystemInf.dh;
+            dgv.AutoGenerateColumns = false;
+
+            data = new DataTable();
+            data.Columns.Add("isScan", typeof(bool));
+            data.Columns.Add("rn", typeof(int));
+            data.Columns.Add("ms_sncode", typeof(string));
+            data.Columns.Add("line_name", typeof(string));
+            data.Columns.Add("side", typeof(string));
+            data.Columns.Add("position", typeof(string));
+            data.Columns.Add("reel_position", typeof(string));
+            data.Columns.Add("part_no", typeof(string));
+            data.Columns.Add("reel_qty", typeof(string));
+            data.Columns.Add("reelremark", typeof(string));
+            data.Columns.Add("reelnum", typeof(string));
+            data.Columns.Add("qa_emp", typeof(string));
+            data.Columns.Add("qa_date", typeof(string));
+            dgv.DataSource = data;
+
+            submit.Enabled = false;
+            LockMakeCode.GetMakeCodeCtl(ma_code);
+            ma_code.SetLockCheckBox(LockMakeCode);
+            ma_code.TableName = "make left join product on ma_prodcode=pr_code";
+            ma_code.SelectField = "ma_code # 工单号,ma_prodcode # 产品编号,ma_qty # 工单数量,pr_spec # 产品规格,ma_softversion # 软件版本,ma_salecode # 销售单号,pr_sendchecktype # 产品送检方式,pr_pcbacount # 拼版数";
+            ma_code.FormName = Name;
+            ma_code.SetValueField = new string[] { "ma_code", "ma_prodcode", "ma_qty", "pr_spec", "ma_softversion", "ma_salecode", "nvl(pr_sendchecktype,'LineCode')pr_sendchecktype", "pr_pcbacount" };
+            ma_code.Condition = "ma_statuscode='STARTED'";
+            ma_code.Focus();
+        }
+
+        private void ma_code_DbChange(object sender, EventArgs e)
+        {
+            BaseUtil.SetFormValue(this.Controls, ma_code.ReturnData);
+            LoadHandReel();
+        }
+
+        private void LoadHandReel()
+        {
+            string makeCode = ma_code.Text.Trim();
+            if (string.IsNullOrEmpty(makeCode))
+            {
+                MessageBox.Show("请输入工单", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                ma_code.Focus();
+                return;
+            }
+
+            string makeSql = makeCode.Replace("'", "''");
+            SQL.Clear();
+            SQL.Append($@"SELECT m.ms_sncode, h.line_name, h.side,
+                    h.position, h.reel_position, h.part_no, h.reel_qty, h.reelremark, h.reelnum,
+                    h.qa_emp, to_char(h.qa_date,'yyyy-mm-dd hh24:mi:ss') qa_date
+                    FROM makeserial m, smt_handreel_log h
+                    WHERE h.serial_number = m.ms_sncode AND m.ms_makecode = '{makeSql}'
+                    ORDER BY m.ms_sncode, h.handreel_id");
+            dt = (DataTable)dh.ExecuteSql(SQL.ToString(), "select");
+
+            data.Rows.Clear();
+            if (dt.Rows.Count == 0)
+            {
+                submit.Enabled = false;
+                MessageBox.Show("该工单没有手补料序列号", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                ma_code.Focus();
+                return;
+            }
+
+            for (int i = 0; i < dt.Rows.Count; i++)
+            {
+                DataRow src = dt.Rows[i];
+                data.Rows.Add(false, i + 1,
+                    src["ms_sncode"].ToString(),
+                    src["line_name"].ToString(),
+                    src["side"].ToString(),
+                    src["position"].ToString(),
+                    src["reel_position"].ToString(),
+                    src["part_no"].ToString(),
+                    src["reel_qty"].ToString(),
+                    src["reelremark"].ToString(),
+                    src["reelnum"].ToString(),
+                    src["qa_emp"].ToString(),
+                    src["qa_date"].ToString());
+            }
+
+            submit.Enabled = true;
+            snVal.Text = "";
+            snVal.Focus();
+        }
+
+        private void snVal_KeyDown(object sender, KeyEventArgs e)
+        {
+            if (e.KeyCode != Keys.Enter) return;
+
+            e.Handled = true;
+            e.SuppressKeyPress = true;
+
+            string scanSn = snVal.Text.Replace(";", ";").Trim();
+            snVal.Text = scanSn;
+            if (string.IsNullOrEmpty(scanSn))
+            {
+                MessageBox.Show("请扫描序列号", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                snVal.Focus();
+                return;
+            }
+
+            if (data.Rows.Count == 0)
+            {
+                MessageBox.Show("请先输入工单", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                ma_code.Focus();
+                return;
+            }
+
+            bool found = false;
+            bool already = true;
+            int firstRow = -1;
+            for (int i = 0; i < data.Rows.Count; i++)
+            {
+                if (!string.Equals(data.Rows[i]["ms_sncode"].ToString(), scanSn, StringComparison.OrdinalIgnoreCase))
+                    continue;
+
+                found = true;
+                if (firstRow < 0)
+                    firstRow = i;
+                if (data.Rows[i]["isScan"] == DBNull.Value || !Convert.ToBoolean(data.Rows[i]["isScan"]))
+                {
+                    data.Rows[i]["isScan"] = true;
+                    already = false;
+                }
+                dgv.Rows[i].DefaultCellStyle.BackColor = Color.Green;
+                dgv.Rows[i].DefaultCellStyle.ForeColor = Color.Black;
+            }
+
+            if (!found)
+            {
+                UpdateSN("C");
+                MessageBox.Show("该序列号不在当前工单手补料记录中", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+            }
+            else
+            {
+                UpdateSN("L", scanSn);
+                if (already)
+                    MessageBox.Show("序列号已标记", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
+                else if (firstRow >= 0)
+                    dgv.FirstDisplayedScrollingRowIndex = firstRow;
+            }
+
+            snVal.Focus();
+            snVal.SelectAll();
+        }
+
+        private void submit_Click(object sender, EventArgs e)
+        {
+            if (data.Rows.Count == 0)
+            {
+                MessageBox.Show("请先输入工单", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                ma_code.Focus();
+                return;
+            }
+
+            List<string> snList = new List<string>();
+            foreach (DataRow row in data.Rows)
+            {
+                bool scanned = row["isScan"] != DBNull.Value && Convert.ToBoolean(row["isScan"]);
+                string sn = row["ms_sncode"].ToString();
+                if (scanned && !snList.Contains(sn))
+                    snList.Add(sn);
+            }
+
+            if (snList.Count == 0)
+            {
+                MessageBox.Show("请先扫描序列号", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                snVal.Focus();
+                return;
+            }
+
+            string emp = User.UserName ?? "";
+            if (emp.Length > 20)
+                emp = emp.Substring(0, 20);
+            string empSql = emp.Replace("'", "''");
+            string makeSql = ma_code.Text.Trim().Replace("'", "''");
+            string confirmTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
+
+            try
+            {
+                foreach (string sn in snList)
+                {
+                    string snSql = sn.Replace("'", "''");
+                    SQL.Clear();
+                    SQL.Append($@"UPDATE smt_handreel_log SET qa_emp = '{empSql}', qa_date = sysdate
+                        WHERE serial_number = '{snSql}'
+                        AND serial_number IN (SELECT ms_sncode FROM makeserial WHERE ms_makecode = '{makeSql}' AND ms_sncode = '{snSql}')");
+                    dh.ExecuteSql(SQL.ToString(), "update");
+                }
+            }
+            catch (Exception ex)
+            {
+                MessageBox.Show("品质确认失败:" + ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                return;
+            }
+
+            foreach (DataRow row in data.Rows)
+            {
+                if (row["isScan"] == DBNull.Value || !Convert.ToBoolean(row["isScan"]))
+                    continue;
+                row["qa_emp"] = emp;
+                row["qa_date"] = confirmTime;
+            }
+
+            MessageBox.Show($"已确认{snList.Count}个序列号:{string.Join("、", snList)}", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
+            snVal.Focus();
+            snVal.SelectAll();
+            snVal.Text = "";
+        }
+
+        private void UpdateSN(string type, string sn = "")
+        {
+            if (type == "C")
+            {
+                serialNumber.Text = "";
+                workOrder.Text = "";
+                productCode.Text = "";
+                productName.Text = "";
+            }
+            else if (type == "L")
+            {
+                string snSql = sn.Replace("'", "''");
+                SQL.Clear();
+                SQL.Append($@"SELECT ms_sncode,ma_code,pr_code,pr_spec FROM makeserial,make,product
+                        WHERE ms_sncode = '{snSql}' AND ms_makecode = ma_code AND ms_prodcode = pr_code");
+                dt = (DataTable)dh.ExecuteSql(SQL.ToString(), "select");
+                if (dt.Rows.Count > 0)
+                {
+                    serialNumber.Text = dt.Rows[0]["ms_sncode"].ToString();
+                    workOrder.Text = dt.Rows[0]["ma_code"].ToString();
+                    productCode.Text = dt.Rows[0]["pr_code"].ToString();
+                    productName.Text = dt.Rows[0]["pr_spec"].ToString();
+                }
+                else
+                {
+                    UpdateSN("C");
+                }
+            }
+        }
+    }
+}

+ 150 - 0
UAS_MES_YTDZ/FunctionCode/Make/Make_HandFeedQualityConfirm.resx

@@ -0,0 +1,150 @@
+<?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>
+  <metadata name="rn.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ms_sncode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ps_linecode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ps_table.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="psl_location.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="psl_devlocation.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="psl_prodcode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="psl_baseqty.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ReelRemark.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ReelNum.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+</root>

+ 45 - 5
UAS_MES_YTDZ/FunctionCode/Make/Make_ShipmentVerify.Designer.cs

@@ -33,9 +33,12 @@
             this.tableLayoutPanel3 = new System.Windows.Forms.TableLayoutPanel();
             this.Msg1 = new UAS_MES_NEW.CustomControl.RichText.RichTextAutoBottom();
             this.panel1 = new System.Windows.Forms.Panel();
+            this.boxResetBtn = new System.Windows.Forms.Button();
             this.claerBtn = new System.Windows.Forms.Button();
             this.Delete = new System.Windows.Forms.Button();
             this.Confirm = new System.Windows.Forms.Button();
+            this.BoxQtyVal = new System.Windows.Forms.TextBox();
+            this.BoxQtyLab = new System.Windows.Forms.Label();
             this.PanelQtyVal = new System.Windows.Forms.TextBox();
             this.PanelQtyLab = new System.Windows.Forms.Label();
             this.snLab = new System.Windows.Forms.Label();
@@ -132,9 +135,12 @@
             // 
             // panel1
             // 
+            this.panel1.Controls.Add(this.boxResetBtn);
             this.panel1.Controls.Add(this.claerBtn);
             this.panel1.Controls.Add(this.Delete);
             this.panel1.Controls.Add(this.Confirm);
+            this.panel1.Controls.Add(this.BoxQtyVal);
+            this.panel1.Controls.Add(this.BoxQtyLab);
             this.panel1.Controls.Add(this.PanelQtyVal);
             this.panel1.Controls.Add(this.PanelQtyLab);
             this.panel1.Controls.Add(this.snLab);
@@ -145,13 +151,25 @@
             this.panel1.Size = new System.Drawing.Size(500, 230);
             this.panel1.TabIndex = 1;
             // 
+            // boxResetBtn
+            // 
+            this.boxResetBtn.Cursor = System.Windows.Forms.Cursors.Hand;
+            this.boxResetBtn.Font = new System.Drawing.Font("微软雅黑", 9F);
+            this.boxResetBtn.Location = new System.Drawing.Point(364, 182);
+            this.boxResetBtn.Name = "boxResetBtn";
+            this.boxResetBtn.Size = new System.Drawing.Size(120, 35);
+            this.boxResetBtn.TabIndex = 23;
+            this.boxResetBtn.Text = "容量归零";
+            this.boxResetBtn.UseVisualStyleBackColor = true;
+            this.boxResetBtn.Click += new System.EventHandler(this.boxResetBtn_Click);
+            // 
             // claerBtn
             // 
             this.claerBtn.Cursor = System.Windows.Forms.Cursors.Hand;
             this.claerBtn.Font = new System.Drawing.Font("微软雅黑", 9F);
-            this.claerBtn.Location = new System.Drawing.Point(363, 182);
+            this.claerBtn.Location = new System.Drawing.Point(246, 182);
             this.claerBtn.Name = "claerBtn";
-            this.claerBtn.Size = new System.Drawing.Size(120, 35);
+            this.claerBtn.Size = new System.Drawing.Size(110, 35);
             this.claerBtn.TabIndex = 21;
             this.claerBtn.Text = "清除提示";
             this.claerBtn.UseVisualStyleBackColor = true;
@@ -160,9 +178,9 @@
             // Delete
             // 
             this.Delete.Cursor = System.Windows.Forms.Cursors.Hand;
-            this.Delete.Location = new System.Drawing.Point(227, 182);
+            this.Delete.Location = new System.Drawing.Point(174, 182);
             this.Delete.Name = "Delete";
-            this.Delete.Size = new System.Drawing.Size(80, 32);
+            this.Delete.Size = new System.Drawing.Size(64, 32);
             this.Delete.TabIndex = 20;
             this.Delete.Text = "删除";
             this.Delete.UseVisualStyleBackColor = true;
@@ -173,7 +191,7 @@
             this.Confirm.Cursor = System.Windows.Forms.Cursors.Hand;
             this.Confirm.Location = new System.Drawing.Point(90, 182);
             this.Confirm.Name = "Confirm";
-            this.Confirm.Size = new System.Drawing.Size(80, 32);
+            this.Confirm.Size = new System.Drawing.Size(76, 32);
             this.Confirm.TabIndex = 19;
             this.Confirm.Text = "确认";
             this.Confirm.UseVisualStyleBackColor = true;
@@ -187,6 +205,25 @@
             this.PanelQtyVal.Size = new System.Drawing.Size(64, 31);
             this.PanelQtyVal.TabIndex = 18;
             // 
+            // BoxQtyLab
+            // 
+            this.BoxQtyLab.AutoSize = true;
+            this.BoxQtyLab.Font = new System.Drawing.Font("微软雅黑", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.BoxQtyLab.Location = new System.Drawing.Point(168, 30);
+            this.BoxQtyLab.Name = "BoxQtyLab";
+            this.BoxQtyLab.Size = new System.Drawing.Size(128, 27);
+            this.BoxQtyLab.TabIndex = 22;
+            this.BoxQtyLab.Text = "当前箱容量:";
+            // 
+            // BoxQtyVal
+            // 
+            this.BoxQtyVal.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.BoxQtyVal.Location = new System.Drawing.Point(300, 30);
+            this.BoxQtyVal.Name = "BoxQtyVal";
+            this.BoxQtyVal.Size = new System.Drawing.Size(64, 31);
+            this.BoxQtyVal.TabIndex = 23;
+            this.BoxQtyVal.Text = "0";
+            // 
             // PanelQtyLab
             // 
             this.PanelQtyLab.AutoSize = true;
@@ -591,7 +628,10 @@
         private CustomControl.RichText.RichTextAutoBottom Msg1;
         private System.Windows.Forms.Label PanelQtyLab;
         private System.Windows.Forms.TextBox PanelQtyVal;
+        private System.Windows.Forms.Label BoxQtyLab;
+        private System.Windows.Forms.TextBox BoxQtyVal;
         private System.Windows.Forms.Button Confirm;
+        private System.Windows.Forms.Button boxResetBtn;
         private System.Windows.Forms.Button Delete;
         private System.Windows.Forms.Button claerBtn;
         private System.Windows.Forms.DataGridViewCheckBoxColumn isDel;

+ 30 - 1
UAS_MES_YTDZ/FunctionCode/Make/Make_ShipmentVerify.cs

@@ -44,6 +44,8 @@ namespace UAS_MES_NEW.Make
             dgv.DataSource = data;
 
             snVal.Enabled = false;
+            if (string.IsNullOrEmpty(BoxQtyVal.Text))
+                BoxQtyVal.Text = "0";
             PanelQtyVal.Focus();
         }
 
@@ -67,9 +69,19 @@ namespace UAS_MES_NEW.Make
                     return;
                 }
 
+                if (!int.TryParse(BoxQtyVal.Text.Trim(), out int boxQty) || boxQty < 0)
+                {
+                    ShowMsg(Msg1, 0, "当前箱容量请输入非负整数");
+                    BoxQtyVal.Focus();
+                    BoxQtyVal.SelectAll();
+                    return;
+                }
+
                 panelQty = qty;
+                BoxQtyVal.Text = boxQty.ToString();
                 Confirm.Text = "取消";
                 PanelQtyVal.Enabled = false;
+                BoxQtyVal.Enabled = false;
                 snVal.Enabled = true;
                 snVal.Focus();
                 snVal.SelectAll();
@@ -79,6 +91,7 @@ namespace UAS_MES_NEW.Make
                 Confirm.Text = "确认";
                 panelQty = 0;
                 PanelQtyVal.Enabled = true;
+                BoxQtyVal.Enabled = true;
                 snVal.Enabled = false;
                 snVal.Text = "";
                 data.Rows.Clear();
@@ -290,8 +303,18 @@ namespace UAS_MES_NEW.Make
             for (int i = 0; i < data.Rows.Count; i++)
                 data.Rows[i]["rn"] = i + 1;
 
-            if (successList.Count > 0)
+            if (successList.Count > 0 && failList.Count == 0)
+            {
+                int boxQty = 0;
+                int.TryParse(BoxQtyVal.Text.Trim(), out boxQty);
+                boxQty += successList.Count;
+                BoxQtyVal.Text = boxQty.ToString();
+                ShowMsg(Msg1, 1, $"过站成功{successList.Count}条,序列号:{string.Join("、", successList)},当前箱容量:{boxQty}");
+            }
+            else if (successList.Count > 0)
+            {
                 ShowMsg(Msg1, 1, $"过站成功{successList.Count}条,序列号:{string.Join("、", successList)}");
+            }
             foreach (string afterMsg in afterList)
                 ShowMsg(Msg1, 2, afterMsg);
             if (failList.Count > 0)
@@ -475,6 +498,12 @@ namespace UAS_MES_NEW.Make
             Msg1.Clear();
         }
 
+        private void boxResetBtn_Click(object sender, EventArgs e)
+        {
+            BoxQtyVal.Text = "0";
+            ShowMsg(Msg1, 1, "当前箱容量已归零");
+        }
+
         private void ShowMsg(RichTextAutoBottom msgBox, int type, string msg)
         {
             msg = msg.Replace("\r", "").Replace("\n", "");

+ 9 - 0
UAS_MES_YTDZ/UAS_MES_YTDZ.csproj

@@ -583,6 +583,12 @@
     <Compile Include="FunctionCode\Make\Make_HandFeedRegistration.Designer.cs">
       <DependentUpon>Make_HandFeedRegistration.cs</DependentUpon>
     </Compile>
+    <Compile Include="FunctionCode\Make\Make_HandFeedQualityConfirm.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="FunctionCode\Make\Make_HandFeedQualityConfirm.Designer.cs">
+      <DependentUpon>Make_HandFeedQualityConfirm.cs</DependentUpon>
+    </Compile>
     <Compile Include="FunctionCode\Make\Make_Humiture.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -1403,6 +1409,9 @@
     <EmbeddedResource Include="FunctionCode\Make\Make_HandFeedRegistration.resx">
       <DependentUpon>Make_HandFeedRegistration.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="FunctionCode\Make\Make_HandFeedQualityConfirm.resx">
+      <DependentUpon>Make_HandFeedQualityConfirm.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="FunctionCode\Make\Make_Humiture.resx">
       <DependentUpon>Make_Humiture.cs</DependentUpon>
     </EmbeddedResource>