Browse Source

Merge branch 'master' of repos.ubtob.net:usoft/mes-client

caosy 3 years ago
parent
commit
66f99ab065

+ 35 - 4
UAS_MES_MAXMADE/FunctionCode/SystemSetting/SystemSetting_PrinterTest.Designer.cs

@@ -44,6 +44,9 @@
             this.Export = new UAS_MES_NEW.CustomControl.ButtonUtil.NormalButton();
             this.ma_code = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.EnterTextBox();
             this.label4 = new System.Windows.Forms.Label();
+            this.label6 = new System.Windows.Forms.Label();
+            this.numericUpDown1 = new System.Windows.Forms.NumericUpDown();
+            ((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).BeginInit();
             this.SuspendLayout();
             // 
             // ma_salecode_label
@@ -113,7 +116,7 @@
             // 
             this.label3.AutoSize = true;
             this.label3.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.label3.Location = new System.Drawing.Point(211, 616);
+            this.label3.Location = new System.Drawing.Point(211, 648);
             this.label3.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
             this.label3.Name = "label3";
             this.label3.Size = new System.Drawing.Size(82, 41);
@@ -125,7 +128,7 @@
             this.Rn.AllPower = null;
             this.Rn.BackColor = System.Drawing.Color.White;
             this.Rn.ID = null;
-            this.Rn.Location = new System.Drawing.Point(356, 622);
+            this.Rn.Location = new System.Drawing.Point(356, 654);
             this.Rn.Margin = new System.Windows.Forms.Padding(6);
             this.Rn.Name = "Rn";
             this.Rn.Power = null;
@@ -151,7 +154,7 @@
             // 
             this.label1.AutoSize = true;
             this.label1.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.label1.Location = new System.Drawing.Point(211, 509);
+            this.label1.Location = new System.Drawing.Point(211, 489);
             this.label1.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
             this.label1.Name = "label1";
             this.label1.Size = new System.Drawing.Size(82, 41);
@@ -163,7 +166,7 @@
             this.Num.AllPower = null;
             this.Num.BackColor = System.Drawing.Color.White;
             this.Num.ID = null;
-            this.Num.Location = new System.Drawing.Point(356, 515);
+            this.Num.Location = new System.Drawing.Point(356, 495);
             this.Num.Margin = new System.Windows.Forms.Padding(6);
             this.Num.Name = "Num";
             this.Num.Power = null;
@@ -251,11 +254,36 @@
             this.label4.TabIndex = 33;
             this.label4.Text = "工单号";
             // 
+            // label6
+            // 
+            this.label6.AutoSize = true;
+            this.label6.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label6.Location = new System.Drawing.Point(211, 583);
+            this.label6.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label6.Name = "label6";
+            this.label6.Size = new System.Drawing.Size(146, 41);
+            this.label6.TabIndex = 36;
+            this.label6.Text = "流水长度";
+            // 
+            // numericUpDown1
+            // 
+            this.numericUpDown1.Location = new System.Drawing.Point(356, 583);
+            this.numericUpDown1.Name = "numericUpDown1";
+            this.numericUpDown1.Size = new System.Drawing.Size(120, 35);
+            this.numericUpDown1.TabIndex = 37;
+            this.numericUpDown1.Value = new decimal(new int[] {
+            4,
+            0,
+            0,
+            0});
+            // 
             // SystemSetting_PrinterTest
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(12F, 24F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
             this.ClientSize = new System.Drawing.Size(2034, 1118);
+            this.Controls.Add(this.numericUpDown1);
+            this.Controls.Add(this.label6);
             this.Controls.Add(this.ma_code);
             this.Controls.Add(this.label4);
             this.Controls.Add(this.Export);
@@ -277,6 +305,7 @@
             this.Tag = "Setup!PrinterTest";
             this.Text = "打印机调试";
             this.Load += new System.EventHandler(this.SystemSetting_PrinterTest_Load);
+            ((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).EndInit();
             this.ResumeLayout(false);
             this.PerformLayout();
 
@@ -298,5 +327,7 @@
         private CustomControl.ButtonUtil.NormalButton Export;
         private CustomControl.TextBoxWithIcon.EnterTextBox ma_code;
         private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label label6;
+        private System.Windows.Forms.NumericUpDown numericUpDown1;
     }
 }

+ 15 - 5
UAS_MES_MAXMADE/FunctionCode/SystemSetting/SystemSetting_PrinterTest.cs

@@ -60,6 +60,16 @@ namespace UAS_MES_NEW.SystemSetting
                 MessageBox.Show("工单号不存在");
                 return;
             }
+            /*DataTable dt = (DataTable)dh.ExecuteSql("select pr_machinetype from make left join  product on ma_prodcode=pr_code where ma_code='" + ma_code.Text + "'", "select");
+            if (dt.Rows.Count > 0)
+            {
+                string pr_machinetype = dt.Rows[0]["pr_machinetype"].ToString();
+                if (pr_machinetype != Prefix.Text)
+                {
+                    MessageBox.Show("前缀和产品机型" + pr_machinetype + "不匹配");
+                    return;
+                }
+            }*/
             for (int i = int.Parse(Rn.Text); i < (int.Parse(Num.Text) + int.Parse(Rn.Text)); i = i + 4)
             {
                 int temp = i;
@@ -68,21 +78,21 @@ namespace UAS_MES_NEW.SystemSetting
                     switch (format.SubStrings[j].Name)
                     {
                         case "RN1":
-                            format.SubStrings[j].Value = (Prefix.Text + Date.Value.ToString("yyMMdd") + lpad(4, (temp).ToString()));
-                            dh.ExecuteSql("insert into makesnlist(msl_id,msl_indate,msl_makecode,msl_sncode,msl_type)values(makesnlist_seq.nextval,sysdate,'"+ma_code.Text+"','"+ format.SubStrings[j].Value + "','before')", "insert");
+                            format.SubStrings[j].Value = (Prefix.Text + Date.Value.ToString("yyMMdd") + lpad(int.Parse(numericUpDown1.Value.ToString()), (temp).ToString()));
+                            dh.ExecuteSql("insert into makesnlist(msl_id,msl_indate,msl_makecode,msl_sncode,msl_type)values(makesnlist_seq.nextval,sysdate,'" + ma_code.Text + "','" + format.SubStrings[j].Value + "','before')", "insert");
                             break;
                         case "RN2":
-                            format.SubStrings[j].Value = (Prefix.Text + Date.Value.ToString("yyMMdd") + lpad(4, (temp + 1).ToString()));
+                            format.SubStrings[j].Value = (Prefix.Text + Date.Value.ToString("yyMMdd") + lpad(int.Parse(numericUpDown1.Value.ToString()), (temp + 1).ToString()));
                             dh.ExecuteSql("insert into makesnlist(msl_id,msl_indate,msl_makecode,msl_sncode,msl_type)values(makesnlist_seq.nextval,sysdate,'" + ma_code.Text + "','" + format.SubStrings[j].Value + "','before')", "insert");
 
                             break;
                         case "RN3":
-                            format.SubStrings[j].Value = (Prefix.Text + Date.Value.ToString("yyMMdd") + lpad(4, (temp + 2).ToString()));
+                            format.SubStrings[j].Value = (Prefix.Text + Date.Value.ToString("yyMMdd") + lpad(int.Parse(numericUpDown1.Value.ToString()), (temp + 2).ToString()));
                             dh.ExecuteSql("insert into makesnlist(msl_id,msl_indate,msl_makecode,msl_sncode,msl_type)values(makesnlist_seq.nextval,sysdate,'" + ma_code.Text + "','" + format.SubStrings[j].Value + "','before')", "insert");
 
                             break;
                         case "RN4":
-                            format.SubStrings[j].Value = (Prefix.Text + Date.Value.ToString("yyMMdd") + lpad(4, (temp + 3).ToString()));
+                            format.SubStrings[j].Value = (Prefix.Text + Date.Value.ToString("yyMMdd") + lpad(int.Parse(numericUpDown1.Value.ToString()), (temp + 3).ToString()));
                             dh.ExecuteSql("insert into makesnlist(msl_id,msl_indate,msl_makecode,msl_sncode,msl_type)values(makesnlist_seq.nextval,sysdate,'" + ma_code.Text + "','" + format.SubStrings[j].Value + "','before')", "insert");
 
                             break;

+ 88 - 0
UAS_MES_ODLF/CustomControl/TextBoxWithIcon/MultBlurSearch.Designer.cs

@@ -0,0 +1,88 @@
+namespace UAS_MES_NEW.CustomControl.TextBoxWithIcon
+{
+    partial class MultBlurSearch
+    {
+        /// <summary> 
+        /// 必需的设计器变量。
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary> 
+        /// 清理所有正在使用的资源。
+        /// </summary>
+        /// <param name="disposing">如果应释放托管资源,为 true;否则为 false。</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region 组件设计器生成的代码
+
+        /// <summary> 
+        /// 设计器支持所需的方法 - 不要修改
+        /// 使用代码编辑器修改此方法的内容。
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.ListBox = new System.Windows.Forms.ListBox();
+            this.EnterTextBox = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.SnCollectionBox();
+            this.SuspendLayout();
+            // 
+            // ListBox
+            // 
+            this.ListBox.Dock = System.Windows.Forms.DockStyle.Bottom;
+            this.ListBox.FormattingEnabled = true;
+            this.ListBox.ItemHeight = 12;
+            this.ListBox.Location = new System.Drawing.Point(0, 20);
+            this.ListBox.Margin = new System.Windows.Forms.Padding(2);
+            this.ListBox.Name = "ListBox";
+            this.ListBox.Size = new System.Drawing.Size(154, 100);
+            this.ListBox.TabIndex = 1;
+            this.ListBox.Click += new System.EventHandler(this.ListBox_Click);
+            // 
+            // EnterTextBox
+            // 
+            this.EnterTextBox.AllPower = null;
+            this.EnterTextBox.BackColor = System.Drawing.Color.White;
+            this.EnterTextBox.Dock = System.Windows.Forms.DockStyle.Top;
+            this.EnterTextBox.ID = null;
+            this.EnterTextBox.Location = new System.Drawing.Point(0, 0);
+            this.EnterTextBox.Margin = new System.Windows.Forms.Padding(2);
+            this.EnterTextBox.Name = "EnterTextBox";
+            this.EnterTextBox.Power = null;
+            this.EnterTextBox.Size = new System.Drawing.Size(154, 21);
+            this.EnterTextBox.Str = null;
+            this.EnterTextBox.Str1 = null;
+            this.EnterTextBox.Str2 = null;
+            this.EnterTextBox.TabIndex = 2;
+            this.EnterTextBox.TextChanged += new System.EventHandler(this.EnterTextBox_TextChanged);
+            this.EnterTextBox.Enter += new System.EventHandler(this.EnterTextBox_Enter);
+            this.EnterTextBox.KeyDown += new System.Windows.Forms.KeyEventHandler(this.EnterTextBox_KeyDown);
+            this.EnterTextBox.Leave += new System.EventHandler(this.EnterTextBox_Leave);
+            // 
+            // BlurSearch
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.Controls.Add(this.EnterTextBox);
+            this.Controls.Add(this.ListBox);
+            this.Margin = new System.Windows.Forms.Padding(2);
+            this.Name = "BlurSearch";
+            this.Size = new System.Drawing.Size(154, 120);
+            this.Load += new System.EventHandler(this.BlurSearch_Load);
+            this.Leave += new System.EventHandler(this.BlurSearch_Leave);
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.ListBox ListBox;
+        private SnCollectionBox EnterTextBox;
+    }
+}

+ 245 - 0
UAS_MES_ODLF/CustomControl/TextBoxWithIcon/MultBlurSearch.cs

@@ -0,0 +1,245 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Drawing;
+using System.Data;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+using UAS_MES_NEW.DataOperate;
+using UAS_MES_NEW.Entity;
+
+namespace UAS_MES_NEW.CustomControl.TextBoxWithIcon
+{
+    public partial class MultBlurSearch : UserControl
+    {
+        DataHelper dh = SystemInf.dh;
+
+        public delegate void OnTextChange(object sender, EventArgs e);
+
+        public event OnTextChange UserControlTextChanged;
+
+        string TableName1;
+
+        string Field1;
+
+        int ItemSelectIndex = 0;
+        DataTable dt;
+
+        public override string Text
+        {
+            get
+            {
+                return EnterTextBox.Text;
+            }
+
+            set
+            {
+                EnterTextBox.Text = value;
+            }
+        }
+
+        public MultBlurSearch()
+        {
+            InitializeComponent();
+        }
+
+        public string TableName
+        {
+            get
+            {
+                return TableName1;
+            }
+
+            set
+            {
+                TableName1 = value;
+            }
+        }
+
+        private string value;
+
+        public string Field
+        {
+            get
+            {
+                return Field1;
+            }
+
+            set
+            {
+                Field1 = value;
+            }
+        }
+
+        public string Condition
+        {
+            get
+            {
+                return condition;
+            }
+
+            set
+            {
+                condition = value;
+            }
+        }
+
+        public string ValueField
+        {
+            get
+            {
+                return valueField;
+            }
+
+            set
+            {
+                valueField = value;
+            }
+        }
+
+        public string Value
+        {
+            get
+            {
+                return value;
+            }
+
+            set
+            {
+                this.value = value;
+            }
+        }
+
+        private string valueField;
+
+        private string condition;
+
+        private void TextBox_Leave(object sender, EventArgs e)
+        {
+            Height = EnterTextBox.Height;
+            ListBox.Visible = false;
+        }
+
+        private void BlurSearch_Load(object sender, EventArgs e)
+        {
+            Height = EnterTextBox.Height;
+            ListBox.Visible = false;
+        }
+
+        private void EnterTextBox_TextChanged(object sender, EventArgs e)
+        {
+            if (TableName1 != null && EnterTextBox.Focused)
+            {
+                string con = Field1 + " like '%" + EnterTextBox.Text + "%'  ";
+                if (condition != "" && condition != null)
+                {
+                    con = Field1 + " like '%" + EnterTextBox.Text + "%' and " + condition;
+                }
+                dt = dh.getFieldsDatasByCondition(TableName1, new string[] { Field1, valueField, "rownum" }, con.ToUpper());
+                if (dt.Rows.Count > 0)
+                {
+                    ListBox.Items.Clear();
+                    for (int i = 0; i < dt.Rows.Count; i++)
+                    {
+                        ListBox.Items.Add(dt.Rows[i][Field1]);
+                    }
+                    //每次数据查询之后将索引重置
+                    ItemSelectIndex = 0;
+                    ListBox.Height = ListBox.ItemHeight  *10;
+                    ListBox.Visible = true;
+                    Height = ListBox.Height + EnterTextBox.Height;
+                }
+                if (dt.Rows.Count == 1)
+                {
+                    value = dt.Rows[0][valueField].ToString();
+                }
+            }
+            else
+            {
+                ListBox.Visible = false;
+                Height = EnterTextBox.Height;
+            }
+            UserControlTextChanged?.Invoke(sender, new EventArgs());
+        }
+
+        private void ListBox_Click(object sender, EventArgs e)
+        {
+            value = dt.Select("rownum=" + (ListBox.SelectedIndex + 1))[0][1].ToString();
+            EnterTextBox.Text = EnterTextBox.Text==""?ListBox.SelectedItem.ToString(): EnterTextBox.Text+","+ ListBox.SelectedItem.ToString();
+            ListBox.Visible = false;
+            Height = EnterTextBox.Height;
+        }
+
+        private void EnterTextBox_KeyDown(object sender, KeyEventArgs e)
+        {
+            if (ListBox.Items.Count > 0)
+            {
+                if (e.KeyCode == Keys.Down || e.KeyCode == Keys.Up)
+                {
+                    switch (e.KeyCode)
+                    {
+                        case Keys.Down:
+                            if (ListBox.Items.Count > ItemSelectIndex + 1)
+                                ItemSelectIndex = ItemSelectIndex + 1;
+                            break;
+                        case Keys.Up:
+                            if (ItemSelectIndex - 1 >= 0)
+                                ItemSelectIndex = ItemSelectIndex - 1;
+                            break;
+                        default:
+                            break;
+                    }
+                    ListBox.SelectedIndex = ItemSelectIndex;
+                }
+                if (e.KeyCode == Keys.Enter)
+                {
+                    try
+                    {
+                        EnterTextBox.Text = EnterTextBox.Text == "" ? ListBox.SelectedItem.ToString() : EnterTextBox.Text + "," + ListBox.SelectedItem.ToString();
+                        ListBox.Visible = false;
+                        Height = EnterTextBox.Height;
+                    }
+                    catch (Exception)
+                    {
+                    }
+                }
+            }
+        }
+
+        private void EnterTextBox_Enter(object sender, EventArgs e)
+        {
+            string con = Field1 + " like '%" + EnterTextBox.Text + "%' ";
+            if (condition != "" && condition != null)
+            {
+                con = Field1 + " like '%" + EnterTextBox.Text + "%' and " + condition;
+            }
+            dt = dh.getFieldsDatasByCondition(TableName1, new string[] { Field1, valueField, "rownum" }, con.ToUpper());
+            if (dt.Rows.Count > 0)
+            {
+                ListBox.Items.Clear();
+                for (int i = 0; i < dt.Rows.Count; i++)
+                {
+                    ListBox.Items.Add(dt.Rows[i][Field1]);
+                }
+                //每次数据查询之后将索引重置
+                ItemSelectIndex = 0;
+                ListBox.Height = ListBox.ItemHeight * 10;
+                ListBox.Visible = true;
+                Height = ListBox.Height + EnterTextBox.Height;
+            }
+        }
+
+        private void EnterTextBox_Leave(object sender, EventArgs e)
+        {
+            //ListBox.Visible = false;
+        }
+
+        private void BlurSearch_Leave(object sender, EventArgs e)
+        {
+            ListBox.Height = 0;
+            ListBox.Visible = false;
+            Height = ListBox.Height + EnterTextBox.Height;
+        }
+    }
+}

+ 120 - 0
UAS_MES_ODLF/CustomControl/TextBoxWithIcon/MultBlurSearch.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>

+ 2 - 0
UAS_MES_ODLF/FunctionCode/Make/Make_FuselageLabelPrint.cs

@@ -121,6 +121,8 @@ namespace UAS_MES_NEW.Make
                     //调用公共方法CheckStepSNAndMacode判断工序是否正确
                     string status = "";
                     LogicHandler.GetMakeInfo(sncode.Text, out oMakeCode, out status, out oErrorMessage);
+                    if (oMakeCode == ""||oMakeCode==null)
+                        oMakeCode = ma_code.Text;
                     if (LogicHandler.CheckStepSNAndMacode(oMakeCode, User.UserSourceCode, sncode.Text, User.UserCode, out oMakeCode, out oMsId, out oErrorMessage))
                     {
                         //IF (如果ma_code 为空)THEN

+ 1 - 5
UAS_MES_ODLF/FunctionCode/Make/Make_GetReMakeSN.cs

@@ -30,10 +30,6 @@ namespace UAS_MES_NEW.Make
 
         DataTable dt;
 
-        Document doc;
-
-        private System.DateTime[] indate;
-
         string ErrMessage;
 
         public Make_GetReMakeSN()
@@ -48,7 +44,7 @@ namespace UAS_MES_NEW.Make
                 lbl = new ApplicationClass();
                 BaseUtil.WriteLbl();
             }
-            catch (Exception ex)
+            catch (Exception )
             {
                 OperateResult.AppendText("未正确安装CodeSoft软件\n", Color.Red);
             }

+ 886 - 0
UAS_MES_ODLF/FunctionCode/Special/Special_Repair.Designer.cs

@@ -0,0 +1,886 @@
+using UAS_MES_NEW.CustomControl.ComBoxWithFocus;
+using UAS_MES_NEW.CustomControl.TextBoxWithIcon;
+
+namespace UAS_MES_NEW.Special
+{
+    partial class Special_Repair
+    {
+        /// <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.components = new System.ComponentModel.Container();
+            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Special_Repair));
+            this.GetSNCode_Label = new System.Windows.Forms.Label();
+            this.LocationSource = new System.Windows.Forms.BindingSource(this.components);
+            this.ComponentSource = new System.Windows.Forms.BindingSource(this.components);
+            this.bc_code = new System.Windows.Forms.Label();
+            this.Save = new UAS_MES_NEW.CustomControl.ButtonUtil.NormalButton();
+            this.groupBoxWithBorder1 = new UAS_MES_NEW.CustomControl.GroupBoxWithBorder.GroupBoxWithBorder();
+            this.AS_BADCODE = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.SnCollectionBox();
+            this.as_sku = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.SnCollectionBox();
+            this.nr_code = new System.Windows.Forms.Label();
+            this.label7 = new System.Windows.Forms.Label();
+            this.AS_DESCRIPTION = new UAS_MES_NEW.CustomControl.RichText.RichTextAutoBottom();
+            this.AS_DUTY = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.SnCollectionBox();
+            this.AS_BADCODE_label = new System.Windows.Forms.Label();
+            this.AS_FACTORY = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.SnCollectionBox();
+            this.AS_WAY = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.SnCollectionBox();
+            this.nrg_code = new System.Windows.Forms.Label();
+            this.AS_CHARGER = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.SnCollectionBox();
+            this.as_id = new System.Windows.Forms.Label();
+            this.AS_SHELL = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.SnCollectionBox();
+            this.AS_LCD = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.SnCollectionBox();
+            this.AS_DESCRIPTION_label = new System.Windows.Forms.Label();
+            this.label6 = new System.Windows.Forms.Label();
+            this.label1 = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.GetSNCode = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.SnCollectionBox();
+            this.OperatResult = new UAS_MES_NEW.CustomControl.RichText.RichTextAutoBottom();
+            this.Clean = new UAS_MES_NEW.CustomControl.ButtonUtil.NormalButton();
+            this.as_lcdconfirm = new DevExpress.XtraEditors.CheckedComboBoxEdit();
+            this.as_shellconfirm = new DevExpress.XtraEditors.ComboBoxEdit();
+            this.as_duty2 = new DevExpress.XtraEditors.ComboBoxEdit();
+            this.as_changerconfirm = new DevExpress.XtraEditors.CheckedComboBoxEdit();
+            this.label14 = new System.Windows.Forms.Label();
+            this.label13 = new System.Windows.Forms.Label();
+            this.label12 = new System.Windows.Forms.Label();
+            this.label11 = new System.Windows.Forms.Label();
+            this.label10 = new System.Windows.Forms.Label();
+            this.as_recheck = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.MultBlurSearch();
+            this.label8 = new System.Windows.Forms.Label();
+            this.as_method = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.MultBlurSearch();
+            this.as_badpro = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.MultBlurSearch();
+            this.as_reason = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.MultBlurSearch();
+            this.as_process = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.SnCollectionBox();
+            this.label21 = new System.Windows.Forms.Label();
+            this.label20 = new System.Windows.Forms.Label();
+            this.label18 = new System.Windows.Forms.Label();
+            this.label19 = new System.Windows.Forms.Label();
+            this.label9 = new System.Windows.Forms.Label();
+            ((System.ComponentModel.ISupportInitialize)(this.LocationSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.ComponentSource)).BeginInit();
+            this.groupBoxWithBorder1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.as_lcdconfirm.Properties)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.as_shellconfirm.Properties)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.as_duty2.Properties)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.as_changerconfirm.Properties)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // GetSNCode_Label
+            // 
+            this.GetSNCode_Label.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.GetSNCode_Label.AutoSize = true;
+            this.GetSNCode_Label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.GetSNCode_Label.Location = new System.Drawing.Point(26, 1072);
+            this.GetSNCode_Label.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.GetSNCode_Label.Name = "GetSNCode_Label";
+            this.GetSNCode_Label.Size = new System.Drawing.Size(114, 41);
+            this.GetSNCode_Label.TabIndex = 113;
+            this.GetSNCode_Label.Text = "序列号";
+            // 
+            // bc_code
+            // 
+            this.bc_code.AutoSize = true;
+            this.bc_code.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.bc_code.ForeColor = System.Drawing.Color.Black;
+            this.bc_code.Location = new System.Drawing.Point(1724, 450);
+            this.bc_code.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.bc_code.Name = "bc_code";
+            this.bc_code.Size = new System.Drawing.Size(0, 41);
+            this.bc_code.TabIndex = 122;
+            this.bc_code.Visible = false;
+            // 
+            // Save
+            // 
+            this.Save.AllPower = null;
+            this.Save.BackColor = System.Drawing.Color.Transparent;
+            this.Save.DownImage = ((System.Drawing.Image)(resources.GetObject("Save.DownImage")));
+            this.Save.Image = null;
+            this.Save.IsShowBorder = true;
+            this.Save.Location = new System.Drawing.Point(610, 1078);
+            this.Save.Margin = new System.Windows.Forms.Padding(6);
+            this.Save.MoveImage = ((System.Drawing.Image)(resources.GetObject("Save.MoveImage")));
+            this.Save.Name = "Save";
+            this.Save.NormalImage = ((System.Drawing.Image)(resources.GetObject("Save.NormalImage")));
+            this.Save.Power = null;
+            this.Save.Size = new System.Drawing.Size(120, 48);
+            this.Save.TabIndex = 164;
+            this.Save.Tag = "IfRead";
+            this.Save.Text = "保存";
+            this.Save.UseVisualStyleBackColor = true;
+            this.Save.Click += new System.EventHandler(this.Save_Click);
+            // 
+            // groupBoxWithBorder1
+            // 
+            this.groupBoxWithBorder1.BorderColor = System.Drawing.Color.Black;
+            this.groupBoxWithBorder1.Controls.Add(this.AS_BADCODE);
+            this.groupBoxWithBorder1.Controls.Add(this.as_sku);
+            this.groupBoxWithBorder1.Controls.Add(this.nr_code);
+            this.groupBoxWithBorder1.Controls.Add(this.label7);
+            this.groupBoxWithBorder1.Controls.Add(this.AS_DESCRIPTION);
+            this.groupBoxWithBorder1.Controls.Add(this.AS_DUTY);
+            this.groupBoxWithBorder1.Controls.Add(this.AS_BADCODE_label);
+            this.groupBoxWithBorder1.Controls.Add(this.AS_FACTORY);
+            this.groupBoxWithBorder1.Controls.Add(this.AS_WAY);
+            this.groupBoxWithBorder1.Controls.Add(this.nrg_code);
+            this.groupBoxWithBorder1.Controls.Add(this.AS_CHARGER);
+            this.groupBoxWithBorder1.Controls.Add(this.as_id);
+            this.groupBoxWithBorder1.Controls.Add(this.AS_SHELL);
+            this.groupBoxWithBorder1.Controls.Add(this.AS_LCD);
+            this.groupBoxWithBorder1.Controls.Add(this.AS_DESCRIPTION_label);
+            this.groupBoxWithBorder1.Controls.Add(this.label6);
+            this.groupBoxWithBorder1.Controls.Add(this.label1);
+            this.groupBoxWithBorder1.Controls.Add(this.label5);
+            this.groupBoxWithBorder1.Controls.Add(this.label2);
+            this.groupBoxWithBorder1.Controls.Add(this.label4);
+            this.groupBoxWithBorder1.Controls.Add(this.label3);
+            this.groupBoxWithBorder1.Font = new System.Drawing.Font("微软雅黑", 12F);
+            this.groupBoxWithBorder1.Location = new System.Drawing.Point(18, 12);
+            this.groupBoxWithBorder1.Margin = new System.Windows.Forms.Padding(4);
+            this.groupBoxWithBorder1.Name = "groupBoxWithBorder1";
+            this.groupBoxWithBorder1.Padding = new System.Windows.Forms.Padding(4);
+            this.groupBoxWithBorder1.Size = new System.Drawing.Size(1760, 415);
+            this.groupBoxWithBorder1.TabIndex = 130;
+            this.groupBoxWithBorder1.TabStop = false;
+            this.groupBoxWithBorder1.Text = "小度提供信息";
+            this.groupBoxWithBorder1.TextColor = System.Drawing.Color.Black;
+            // 
+            // AS_BADCODE
+            // 
+            this.AS_BADCODE.AllPower = null;
+            this.AS_BADCODE.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.AS_BADCODE.BackColor = System.Drawing.Color.White;
+            this.AS_BADCODE.Enabled = false;
+            this.AS_BADCODE.Font = new System.Drawing.Font("微软雅黑", 9F);
+            this.AS_BADCODE.ID = null;
+            this.AS_BADCODE.Location = new System.Drawing.Point(1289, 67);
+            this.AS_BADCODE.Margin = new System.Windows.Forms.Padding(6);
+            this.AS_BADCODE.Name = "AS_BADCODE";
+            this.AS_BADCODE.Power = null;
+            this.AS_BADCODE.Size = new System.Drawing.Size(432, 39);
+            this.AS_BADCODE.Str = null;
+            this.AS_BADCODE.Str1 = null;
+            this.AS_BADCODE.Str2 = null;
+            this.AS_BADCODE.TabIndex = 162;
+            this.AS_BADCODE.Tag = "Read";
+            // 
+            // as_sku
+            // 
+            this.as_sku.AllPower = null;
+            this.as_sku.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.as_sku.BackColor = System.Drawing.Color.White;
+            this.as_sku.Enabled = false;
+            this.as_sku.Font = new System.Drawing.Font("微软雅黑", 9F);
+            this.as_sku.ID = null;
+            this.as_sku.Location = new System.Drawing.Point(1289, 137);
+            this.as_sku.Margin = new System.Windows.Forms.Padding(6);
+            this.as_sku.Name = "as_sku";
+            this.as_sku.Power = null;
+            this.as_sku.Size = new System.Drawing.Size(350, 39);
+            this.as_sku.Str = null;
+            this.as_sku.Str1 = null;
+            this.as_sku.Str2 = null;
+            this.as_sku.TabIndex = 161;
+            this.as_sku.Tag = "Read";
+            // 
+            // nr_code
+            // 
+            this.nr_code.AutoSize = true;
+            this.nr_code.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.nr_code.ForeColor = System.Drawing.Color.Black;
+            this.nr_code.Location = new System.Drawing.Point(1692, 456);
+            this.nr_code.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.nr_code.Name = "nr_code";
+            this.nr_code.Size = new System.Drawing.Size(0, 41);
+            this.nr_code.TabIndex = 125;
+            // 
+            // label7
+            // 
+            this.label7.AutoSize = true;
+            this.label7.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label7.Location = new System.Drawing.Point(1131, 131);
+            this.label7.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(80, 41);
+            this.label7.TabIndex = 160;
+            this.label7.Text = "SKU";
+            // 
+            // AS_DESCRIPTION
+            // 
+            this.AS_DESCRIPTION.Enabled = false;
+            this.AS_DESCRIPTION.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.AS_DESCRIPTION.Location = new System.Drawing.Point(247, 46);
+            this.AS_DESCRIPTION.Margin = new System.Windows.Forms.Padding(6);
+            this.AS_DESCRIPTION.Name = "AS_DESCRIPTION";
+            this.AS_DESCRIPTION.Size = new System.Drawing.Size(846, 234);
+            this.AS_DESCRIPTION.TabIndex = 140;
+            this.AS_DESCRIPTION.Text = "";
+            // 
+            // AS_DUTY
+            // 
+            this.AS_DUTY.AllPower = null;
+            this.AS_DUTY.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.AS_DUTY.BackColor = System.Drawing.Color.White;
+            this.AS_DUTY.Enabled = false;
+            this.AS_DUTY.Font = new System.Drawing.Font("微软雅黑", 9F);
+            this.AS_DUTY.ID = null;
+            this.AS_DUTY.Location = new System.Drawing.Point(1328, 376);
+            this.AS_DUTY.Margin = new System.Windows.Forms.Padding(6);
+            this.AS_DUTY.Name = "AS_DUTY";
+            this.AS_DUTY.Power = null;
+            this.AS_DUTY.Size = new System.Drawing.Size(311, 39);
+            this.AS_DUTY.Str = null;
+            this.AS_DUTY.Str1 = null;
+            this.AS_DUTY.Str2 = null;
+            this.AS_DUTY.TabIndex = 159;
+            this.AS_DUTY.Tag = "Read";
+            // 
+            // AS_BADCODE_label
+            // 
+            this.AS_BADCODE_label.AutoSize = true;
+            this.AS_BADCODE_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.AS_BADCODE_label.Location = new System.Drawing.Point(1131, 62);
+            this.AS_BADCODE_label.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.AS_BADCODE_label.Name = "AS_BADCODE_label";
+            this.AS_BADCODE_label.Size = new System.Drawing.Size(146, 41);
+            this.AS_BADCODE_label.TabIndex = 46;
+            this.AS_BADCODE_label.Text = "检测故障";
+            // 
+            // AS_FACTORY
+            // 
+            this.AS_FACTORY.AllPower = null;
+            this.AS_FACTORY.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.AS_FACTORY.BackColor = System.Drawing.Color.White;
+            this.AS_FACTORY.Enabled = false;
+            this.AS_FACTORY.Font = new System.Drawing.Font("微软雅黑", 9F);
+            this.AS_FACTORY.ID = null;
+            this.AS_FACTORY.Location = new System.Drawing.Point(810, 373);
+            this.AS_FACTORY.Margin = new System.Windows.Forms.Padding(6);
+            this.AS_FACTORY.Name = "AS_FACTORY";
+            this.AS_FACTORY.Power = null;
+            this.AS_FACTORY.Size = new System.Drawing.Size(311, 39);
+            this.AS_FACTORY.Str = null;
+            this.AS_FACTORY.Str1 = null;
+            this.AS_FACTORY.Str2 = null;
+            this.AS_FACTORY.TabIndex = 158;
+            this.AS_FACTORY.Tag = "Read";
+            // 
+            // AS_WAY
+            // 
+            this.AS_WAY.AllPower = null;
+            this.AS_WAY.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.AS_WAY.BackColor = System.Drawing.Color.White;
+            this.AS_WAY.Enabled = false;
+            this.AS_WAY.Font = new System.Drawing.Font("微软雅黑", 9F);
+            this.AS_WAY.ID = null;
+            this.AS_WAY.Location = new System.Drawing.Point(261, 373);
+            this.AS_WAY.Margin = new System.Windows.Forms.Padding(6);
+            this.AS_WAY.Name = "AS_WAY";
+            this.AS_WAY.Power = null;
+            this.AS_WAY.Size = new System.Drawing.Size(311, 39);
+            this.AS_WAY.Str = null;
+            this.AS_WAY.Str1 = null;
+            this.AS_WAY.Str2 = null;
+            this.AS_WAY.TabIndex = 157;
+            this.AS_WAY.Tag = "Read";
+            // 
+            // nrg_code
+            // 
+            this.nrg_code.AutoSize = true;
+            this.nrg_code.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.nrg_code.ForeColor = System.Drawing.Color.Black;
+            this.nrg_code.Location = new System.Drawing.Point(1622, 347);
+            this.nrg_code.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.nrg_code.Name = "nrg_code";
+            this.nrg_code.Size = new System.Drawing.Size(0, 41);
+            this.nrg_code.TabIndex = 136;
+            this.nrg_code.Visible = false;
+            // 
+            // AS_CHARGER
+            // 
+            this.AS_CHARGER.AllPower = null;
+            this.AS_CHARGER.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.AS_CHARGER.BackColor = System.Drawing.Color.White;
+            this.AS_CHARGER.Enabled = false;
+            this.AS_CHARGER.Font = new System.Drawing.Font("微软雅黑", 9F);
+            this.AS_CHARGER.ID = null;
+            this.AS_CHARGER.Location = new System.Drawing.Point(1328, 306);
+            this.AS_CHARGER.Margin = new System.Windows.Forms.Padding(6);
+            this.AS_CHARGER.Name = "AS_CHARGER";
+            this.AS_CHARGER.Power = null;
+            this.AS_CHARGER.Size = new System.Drawing.Size(432, 39);
+            this.AS_CHARGER.Str = null;
+            this.AS_CHARGER.Str1 = null;
+            this.AS_CHARGER.Str2 = null;
+            this.AS_CHARGER.TabIndex = 156;
+            this.AS_CHARGER.Tag = "Read";
+            // 
+            // as_id
+            // 
+            this.as_id.AutoSize = true;
+            this.as_id.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.as_id.ForeColor = System.Drawing.Color.Black;
+            this.as_id.Location = new System.Drawing.Point(1664, 353);
+            this.as_id.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.as_id.Name = "as_id";
+            this.as_id.Size = new System.Drawing.Size(0, 41);
+            this.as_id.TabIndex = 137;
+            this.as_id.Visible = false;
+            // 
+            // AS_SHELL
+            // 
+            this.AS_SHELL.AllPower = null;
+            this.AS_SHELL.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.AS_SHELL.BackColor = System.Drawing.Color.White;
+            this.AS_SHELL.Enabled = false;
+            this.AS_SHELL.Font = new System.Drawing.Font("微软雅黑", 9F);
+            this.AS_SHELL.ID = null;
+            this.AS_SHELL.Location = new System.Drawing.Point(810, 306);
+            this.AS_SHELL.Margin = new System.Windows.Forms.Padding(6);
+            this.AS_SHELL.Name = "AS_SHELL";
+            this.AS_SHELL.Power = null;
+            this.AS_SHELL.Size = new System.Drawing.Size(311, 39);
+            this.AS_SHELL.Str = null;
+            this.AS_SHELL.Str1 = null;
+            this.AS_SHELL.Str2 = null;
+            this.AS_SHELL.TabIndex = 155;
+            this.AS_SHELL.Tag = "Read";
+            // 
+            // AS_LCD
+            // 
+            this.AS_LCD.AllPower = null;
+            this.AS_LCD.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.AS_LCD.BackColor = System.Drawing.Color.White;
+            this.AS_LCD.Enabled = false;
+            this.AS_LCD.Font = new System.Drawing.Font("微软雅黑", 9F);
+            this.AS_LCD.ID = null;
+            this.AS_LCD.Location = new System.Drawing.Point(261, 306);
+            this.AS_LCD.Margin = new System.Windows.Forms.Padding(6);
+            this.AS_LCD.Name = "AS_LCD";
+            this.AS_LCD.Power = null;
+            this.AS_LCD.Size = new System.Drawing.Size(311, 39);
+            this.AS_LCD.Str = null;
+            this.AS_LCD.Str1 = null;
+            this.AS_LCD.Str2 = null;
+            this.AS_LCD.TabIndex = 154;
+            this.AS_LCD.Tag = "Read";
+            // 
+            // AS_DESCRIPTION_label
+            // 
+            this.AS_DESCRIPTION_label.AutoSize = true;
+            this.AS_DESCRIPTION_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.AS_DESCRIPTION_label.ForeColor = System.Drawing.Color.Black;
+            this.AS_DESCRIPTION_label.Location = new System.Drawing.Point(39, 60);
+            this.AS_DESCRIPTION_label.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.AS_DESCRIPTION_label.Name = "AS_DESCRIPTION_label";
+            this.AS_DESCRIPTION_label.Size = new System.Drawing.Size(210, 41);
+            this.AS_DESCRIPTION_label.TabIndex = 141;
+            this.AS_DESCRIPTION_label.Text = "客户故障描述";
+            // 
+            // label6
+            // 
+            this.label6.AutoSize = true;
+            this.label6.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label6.ForeColor = System.Drawing.Color.Black;
+            this.label6.Location = new System.Drawing.Point(1148, 371);
+            this.label6.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label6.Name = "label6";
+            this.label6.Size = new System.Drawing.Size(165, 41);
+            this.label6.TabIndex = 152;
+            this.label6.Text = "责任归属1";
+            // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            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(31, 309);
+            this.label1.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(232, 41);
+            this.label1.TabIndex = 142;
+            this.label1.Text = "屏幕有(无)划伤";
+            // 
+            // label5
+            // 
+            this.label5.AutoSize = true;
+            this.label5.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label5.ForeColor = System.Drawing.Color.Black;
+            this.label5.Location = new System.Drawing.Point(571, 371);
+            this.label5.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(82, 41);
+            this.label5.TabIndex = 150;
+            this.label5.Text = "工厂";
+            // 
+            // label2
+            // 
+            this.label2.AutoSize = true;
+            this.label2.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label2.ForeColor = System.Drawing.Color.Black;
+            this.label2.Location = new System.Drawing.Point(571, 309);
+            this.label2.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(232, 41);
+            this.label2.TabIndex = 144;
+            this.label2.Text = "壳体有(无)划伤";
+            // 
+            // label4
+            // 
+            this.label4.AutoSize = true;
+            this.label4.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label4.ForeColor = System.Drawing.Color.Black;
+            this.label4.Location = new System.Drawing.Point(31, 371);
+            this.label4.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(82, 41);
+            this.label4.TabIndex = 148;
+            this.label4.Text = "渠道";
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label3.ForeColor = System.Drawing.Color.Black;
+            this.label3.Location = new System.Drawing.Point(1148, 309);
+            this.label3.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(168, 41);
+            this.label3.TabIndex = 146;
+            this.label3.Text = "有(无)配件";
+            // 
+            // GetSNCode
+            // 
+            this.GetSNCode.AllPower = null;
+            this.GetSNCode.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.GetSNCode.BackColor = System.Drawing.Color.White;
+            this.GetSNCode.ID = null;
+            this.GetSNCode.Location = new System.Drawing.Point(173, 1078);
+            this.GetSNCode.Margin = new System.Windows.Forms.Padding(6);
+            this.GetSNCode.Name = "GetSNCode";
+            this.GetSNCode.Power = null;
+            this.GetSNCode.Size = new System.Drawing.Size(372, 35);
+            this.GetSNCode.Str = null;
+            this.GetSNCode.Str1 = null;
+            this.GetSNCode.Str2 = null;
+            this.GetSNCode.TabIndex = 114;
+            this.GetSNCode.Tag = "Read";
+            this.GetSNCode.KeyDown += new System.Windows.Forms.KeyEventHandler(this.GetSNCode_KeyDown);
+            // 
+            // OperatResult
+            // 
+            this.OperatResult.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.OperatResult.Location = new System.Drawing.Point(1357, 437);
+            this.OperatResult.Margin = new System.Windows.Forms.Padding(6);
+            this.OperatResult.Name = "OperatResult";
+            this.OperatResult.Size = new System.Drawing.Size(421, 596);
+            this.OperatResult.TabIndex = 87;
+            this.OperatResult.Text = "";
+            // 
+            // Clean
+            // 
+            this.Clean.AllPower = null;
+            this.Clean.BackColor = System.Drawing.Color.Transparent;
+            this.Clean.DownImage = ((System.Drawing.Image)(resources.GetObject("Clean.DownImage")));
+            this.Clean.Image = null;
+            this.Clean.IsShowBorder = true;
+            this.Clean.Location = new System.Drawing.Point(1506, 1065);
+            this.Clean.Margin = new System.Windows.Forms.Padding(6);
+            this.Clean.MoveImage = ((System.Drawing.Image)(resources.GetObject("Clean.MoveImage")));
+            this.Clean.Name = "Clean";
+            this.Clean.NormalImage = ((System.Drawing.Image)(resources.GetObject("Clean.NormalImage")));
+            this.Clean.Power = null;
+            this.Clean.Size = new System.Drawing.Size(120, 48);
+            this.Clean.TabIndex = 81;
+            this.Clean.Tag = "IfRead";
+            this.Clean.Text = "清除";
+            this.Clean.UseVisualStyleBackColor = true;
+            this.Clean.Click += new System.EventHandler(this.Clean_Click);
+            // 
+            // as_lcdconfirm
+            // 
+            this.as_lcdconfirm.EditValue = "";
+            this.as_lcdconfirm.Location = new System.Drawing.Point(851, 502);
+            this.as_lcdconfirm.Name = "as_lcdconfirm";
+            this.as_lcdconfirm.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
+            new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
+            this.as_lcdconfirm.Size = new System.Drawing.Size(306, 36);
+            this.as_lcdconfirm.TabIndex = 206;
+            // 
+            // as_shellconfirm
+            // 
+            this.as_shellconfirm.Location = new System.Drawing.Point(265, 566);
+            this.as_shellconfirm.Name = "as_shellconfirm";
+            this.as_shellconfirm.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
+            new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
+            this.as_shellconfirm.Size = new System.Drawing.Size(306, 36);
+            this.as_shellconfirm.TabIndex = 205;
+            // 
+            // as_duty2
+            // 
+            this.as_duty2.Location = new System.Drawing.Point(265, 641);
+            this.as_duty2.Name = "as_duty2";
+            this.as_duty2.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
+            new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
+            this.as_duty2.Size = new System.Drawing.Size(306, 36);
+            this.as_duty2.TabIndex = 204;
+            // 
+            // as_changerconfirm
+            // 
+            this.as_changerconfirm.EditValue = "";
+            this.as_changerconfirm.Location = new System.Drawing.Point(847, 566);
+            this.as_changerconfirm.Name = "as_changerconfirm";
+            this.as_changerconfirm.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
+            new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
+            this.as_changerconfirm.Size = new System.Drawing.Size(306, 36);
+            this.as_changerconfirm.TabIndex = 202;
+            // 
+            // label14
+            // 
+            this.label14.AutoSize = true;
+            this.label14.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label14.ForeColor = System.Drawing.Color.Black;
+            this.label14.Location = new System.Drawing.Point(38, 641);
+            this.label14.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label14.Name = "label14";
+            this.label14.Size = new System.Drawing.Size(165, 41);
+            this.label14.TabIndex = 201;
+            this.label14.Text = "责任归属2";
+            // 
+            // label13
+            // 
+            this.label13.AutoSize = true;
+            this.label13.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label13.ForeColor = System.Drawing.Color.Black;
+            this.label13.Location = new System.Drawing.Point(632, 569);
+            this.label13.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label13.Name = "label13";
+            this.label13.Size = new System.Drawing.Size(146, 41);
+            this.label13.TabIndex = 200;
+            this.label13.Text = "配件确认";
+            // 
+            // label12
+            // 
+            this.label12.AutoSize = true;
+            this.label12.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label12.ForeColor = System.Drawing.Color.Black;
+            this.label12.Location = new System.Drawing.Point(38, 570);
+            this.label12.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label12.Name = "label12";
+            this.label12.Size = new System.Drawing.Size(210, 41);
+            this.label12.TabIndex = 199;
+            this.label12.Text = "壳体外观确认";
+            // 
+            // label11
+            // 
+            this.label11.AutoSize = true;
+            this.label11.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label11.ForeColor = System.Drawing.Color.Black;
+            this.label11.Location = new System.Drawing.Point(632, 497);
+            this.label11.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label11.Name = "label11";
+            this.label11.Size = new System.Drawing.Size(210, 41);
+            this.label11.TabIndex = 198;
+            this.label11.Text = "屏幕外观确认";
+            // 
+            // label10
+            // 
+            this.label10.AutoSize = true;
+            this.label10.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label10.ForeColor = System.Drawing.Color.Black;
+            this.label10.Location = new System.Drawing.Point(38, 498);
+            this.label10.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label10.Name = "label10";
+            this.label10.Size = new System.Drawing.Size(210, 41);
+            this.label10.TabIndex = 197;
+            this.label10.Text = "工厂复测确认";
+            // 
+            // as_recheck
+            // 
+            this.as_recheck.Condition = null;
+            this.as_recheck.Field = null;
+            this.as_recheck.Font = new System.Drawing.Font("微软雅黑", 9F);
+            this.as_recheck.Location = new System.Drawing.Point(265, 493);
+            this.as_recheck.Margin = new System.Windows.Forms.Padding(4);
+            this.as_recheck.Name = "as_recheck";
+            this.as_recheck.Size = new System.Drawing.Size(306, 39);
+            this.as_recheck.TabIndex = 203;
+            this.as_recheck.TableName = null;
+            this.as_recheck.Value = null;
+            this.as_recheck.ValueField = null;
+            // 
+            // label8
+            // 
+            this.label8.AutoSize = true;
+            this.label8.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label8.ForeColor = System.Drawing.Color.Black;
+            this.label8.Location = new System.Drawing.Point(9, 437);
+            this.label8.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label8.Name = "label8";
+            this.label8.Size = new System.Drawing.Size(210, 41);
+            this.label8.TabIndex = 163;
+            this.label8.Text = "工厂复测信息";
+            // 
+            // as_method
+            // 
+            this.as_method.Condition = null;
+            this.as_method.Field = null;
+            this.as_method.Font = new System.Drawing.Font("微软雅黑", 9F);
+            this.as_method.Location = new System.Drawing.Point(265, 911);
+            this.as_method.Margin = new System.Windows.Forms.Padding(4);
+            this.as_method.Name = "as_method";
+            this.as_method.Size = new System.Drawing.Size(306, 39);
+            this.as_method.TabIndex = 214;
+            this.as_method.TableName = null;
+            this.as_method.Value = null;
+            this.as_method.ValueField = null;
+            // 
+            // as_badpro
+            // 
+            this.as_badpro.Condition = null;
+            this.as_badpro.Field = null;
+            this.as_badpro.Font = new System.Drawing.Font("微软雅黑", 9F);
+            this.as_badpro.Location = new System.Drawing.Point(847, 911);
+            this.as_badpro.Margin = new System.Windows.Forms.Padding(4);
+            this.as_badpro.Name = "as_badpro";
+            this.as_badpro.Size = new System.Drawing.Size(306, 39);
+            this.as_badpro.TabIndex = 213;
+            this.as_badpro.TableName = null;
+            this.as_badpro.Value = null;
+            this.as_badpro.ValueField = null;
+            // 
+            // as_reason
+            // 
+            this.as_reason.Condition = null;
+            this.as_reason.Field = null;
+            this.as_reason.Font = new System.Drawing.Font("微软雅黑", 9F);
+            this.as_reason.Location = new System.Drawing.Point(847, 828);
+            this.as_reason.Margin = new System.Windows.Forms.Padding(4);
+            this.as_reason.Name = "as_reason";
+            this.as_reason.Size = new System.Drawing.Size(306, 39);
+            this.as_reason.TabIndex = 212;
+            this.as_reason.TableName = null;
+            this.as_reason.Value = null;
+            this.as_reason.ValueField = null;
+            // 
+            // as_process
+            // 
+            this.as_process.AllPower = null;
+            this.as_process.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.as_process.BackColor = System.Drawing.Color.White;
+            this.as_process.Font = new System.Drawing.Font("微软雅黑", 9F);
+            this.as_process.ID = null;
+            this.as_process.Location = new System.Drawing.Point(265, 826);
+            this.as_process.Margin = new System.Windows.Forms.Padding(6);
+            this.as_process.Name = "as_process";
+            this.as_process.Power = null;
+            this.as_process.Size = new System.Drawing.Size(306, 39);
+            this.as_process.Str = null;
+            this.as_process.Str1 = null;
+            this.as_process.Str2 = null;
+            this.as_process.TabIndex = 207;
+            this.as_process.Tag = "Read";
+            // 
+            // label21
+            // 
+            this.label21.AutoSize = true;
+            this.label21.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label21.ForeColor = System.Drawing.Color.Black;
+            this.label21.Location = new System.Drawing.Point(38, 821);
+            this.label21.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label21.Name = "label21";
+            this.label21.Size = new System.Drawing.Size(146, 41);
+            this.label21.TabIndex = 208;
+            this.label21.Text = "分析过程";
+            // 
+            // label20
+            // 
+            this.label20.AutoSize = true;
+            this.label20.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label20.ForeColor = System.Drawing.Color.Black;
+            this.label20.Location = new System.Drawing.Point(632, 828);
+            this.label20.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label20.Name = "label20";
+            this.label20.Size = new System.Drawing.Size(146, 41);
+            this.label20.TabIndex = 209;
+            this.label20.Text = "原因分析";
+            // 
+            // label18
+            // 
+            this.label18.AutoSize = true;
+            this.label18.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label18.ForeColor = System.Drawing.Color.Black;
+            this.label18.Location = new System.Drawing.Point(636, 911);
+            this.label18.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label18.Name = "label18";
+            this.label18.Size = new System.Drawing.Size(146, 41);
+            this.label18.TabIndex = 211;
+            this.label18.Text = "不良属性";
+            // 
+            // label19
+            // 
+            this.label19.AutoSize = true;
+            this.label19.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label19.ForeColor = System.Drawing.Color.Black;
+            this.label19.Location = new System.Drawing.Point(38, 911);
+            this.label19.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label19.Name = "label19";
+            this.label19.Size = new System.Drawing.Size(146, 41);
+            this.label19.TabIndex = 210;
+            this.label19.Text = "处理方法";
+            // 
+            // label9
+            // 
+            this.label9.AutoSize = true;
+            this.label9.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label9.ForeColor = System.Drawing.Color.Black;
+            this.label9.Location = new System.Drawing.Point(9, 741);
+            this.label9.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label9.Name = "label9";
+            this.label9.Size = new System.Drawing.Size(306, 41);
+            this.label9.TabIndex = 215;
+            this.label9.Text = "工厂翻新及交付信息";
+            // 
+            // Special_Repair
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(12F, 24F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(1800, 1158);
+            this.Controls.Add(this.label9);
+            this.Controls.Add(this.as_method);
+            this.Controls.Add(this.as_badpro);
+            this.Controls.Add(this.as_reason);
+            this.Controls.Add(this.as_process);
+            this.Controls.Add(this.label21);
+            this.Controls.Add(this.label20);
+            this.Controls.Add(this.label18);
+            this.Controls.Add(this.label19);
+            this.Controls.Add(this.label8);
+            this.Controls.Add(this.as_lcdconfirm);
+            this.Controls.Add(this.as_shellconfirm);
+            this.Controls.Add(this.as_duty2);
+            this.Controls.Add(this.as_changerconfirm);
+            this.Controls.Add(this.label14);
+            this.Controls.Add(this.label13);
+            this.Controls.Add(this.label12);
+            this.Controls.Add(this.label11);
+            this.Controls.Add(this.label10);
+            this.Controls.Add(this.as_recheck);
+            this.Controls.Add(this.Save);
+            this.Controls.Add(this.groupBoxWithBorder1);
+            this.Controls.Add(this.bc_code);
+            this.Controls.Add(this.GetSNCode);
+            this.Controls.Add(this.GetSNCode_Label);
+            this.Controls.Add(this.OperatResult);
+            this.Controls.Add(this.Clean);
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
+            this.Margin = new System.Windows.Forms.Padding(6);
+            this.Name = "Special_Repair";
+            this.Tag = "Make!Repair";
+            this.Text = "维修作业";
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Make_Repair_FormClosing);
+            this.Load += new System.EventHandler(this.Make_Repair_Load);
+            this.SizeChanged += new System.EventHandler(this.Make_Repair_SizeChanged);
+            ((System.ComponentModel.ISupportInitialize)(this.LocationSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.ComponentSource)).EndInit();
+            this.groupBoxWithBorder1.ResumeLayout(true);
+            this.groupBoxWithBorder1.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.as_lcdconfirm.Properties)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.as_shellconfirm.Properties)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.as_duty2.Properties)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.as_changerconfirm.Properties)).EndInit();
+            this.ResumeLayout(true);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+        private System.Windows.Forms.Label AS_BADCODE_label;
+        private CustomControl.ButtonUtil.NormalButton Clean;
+        private CustomControl.TextBoxWithIcon.SnCollectionBox GetSNCode;
+        private System.Windows.Forms.Label GetSNCode_Label;
+        private System.Windows.Forms.BindingSource LocationSource;
+        private System.Windows.Forms.BindingSource ComponentSource;
+        private System.Windows.Forms.Label bc_code;
+        private System.Windows.Forms.Label nr_code;
+        private CustomControl.GroupBoxWithBorder.GroupBoxWithBorder groupBoxWithBorder1;
+        private System.Windows.Forms.Label nrg_code;
+        private System.Windows.Forms.Label as_id;
+        private CustomControl.RichText.RichTextAutoBottom AS_DESCRIPTION;
+        private System.Windows.Forms.Label AS_DESCRIPTION_label;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.Label label6;
+        private CustomControl.TextBoxWithIcon.SnCollectionBox AS_LCD;
+        private CustomControl.TextBoxWithIcon.SnCollectionBox AS_SHELL;
+        private CustomControl.TextBoxWithIcon.SnCollectionBox AS_CHARGER;
+        private CustomControl.TextBoxWithIcon.SnCollectionBox AS_WAY;
+        private CustomControl.TextBoxWithIcon.SnCollectionBox AS_FACTORY;
+        private CustomControl.TextBoxWithIcon.SnCollectionBox AS_DUTY;
+        private System.Windows.Forms.Label label7;
+        private CustomControl.TextBoxWithIcon.SnCollectionBox as_sku;
+        private CustomControl.TextBoxWithIcon.SnCollectionBox AS_BADCODE;
+        private CustomControl.ButtonUtil.NormalButton Save;
+        private CustomControl.RichText.RichTextAutoBottom OperatResult;
+        private DevExpress.XtraEditors.CheckedComboBoxEdit as_lcdconfirm;
+        private DevExpress.XtraEditors.ComboBoxEdit as_shellconfirm;
+        private DevExpress.XtraEditors.ComboBoxEdit as_duty2;
+        private DevExpress.XtraEditors.CheckedComboBoxEdit as_changerconfirm;
+        private System.Windows.Forms.Label label14;
+        private System.Windows.Forms.Label label13;
+        private System.Windows.Forms.Label label12;
+        private System.Windows.Forms.Label label11;
+        private System.Windows.Forms.Label label10;
+        private MultBlurSearch as_recheck;
+        private System.Windows.Forms.Label label8;
+        private MultBlurSearch as_method;
+        private MultBlurSearch as_badpro;
+        private MultBlurSearch as_reason;
+        private SnCollectionBox as_process;
+        private System.Windows.Forms.Label label21;
+        private System.Windows.Forms.Label label20;
+        private System.Windows.Forms.Label label18;
+        private System.Windows.Forms.Label label19;
+        private System.Windows.Forms.Label label9;
+    }
+}

+ 211 - 0
UAS_MES_ODLF/FunctionCode/Special/Special_Repair.cs

@@ -0,0 +1,211 @@
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Drawing;
+using System.Windows.Forms;
+using UAS_MES_NEW.DataOperate;
+using UAS_MES_NEW.Entity;
+using UAS_MES_NEW.PublicMethod;
+
+namespace UAS_MES_NEW.Special
+{
+    public partial class Special_Repair : Form
+    {
+        DataHelper dh = null;
+
+        LogStringBuilder sql = new LogStringBuilder();
+
+        List<string> sqls = new List<string>();
+
+        DataTable dt = null;
+
+        AutoSizeFormClass asc = new AutoSizeFormClass();
+
+        public Special_Repair()
+        {
+            InitializeComponent();
+        }
+
+        private void Make_Repair_Load(object sender, EventArgs e)
+        {
+            dh = SystemInf.dh;
+            GetSNCode.Focus();
+            //工厂复测确认
+
+        
+            as_recheck.TableName = "aftersaleinf";
+            as_recheck.Field = "ASI_VALUES";
+            as_recheck.ValueField = "ASI_VALUES";
+            as_recheck.Condition = " asi_type='工厂复测确认' ";
+
+            as_badpro.TableName = "aftersaleinf";
+            as_badpro.Field = "ASI_VALUES";
+            as_badpro.ValueField = "ASI_VALUES";
+            as_badpro.Condition = " asi_type='不良属性' ";
+
+            as_method.TableName = "aftersaleinf";
+            as_method.Field = "ASI_VALUES";
+            as_method.ValueField = "ASI_VALUES";
+            as_method.Condition = " asi_type='处理方法' ";
+
+            as_reason.TableName = "aftersaleinf";
+            as_reason.Field = "ASI_VALUES";
+            as_reason.ValueField = "ASI_VALUES";
+            as_reason.Condition = " asi_type='原因分析' ";
+          
+            //屏幕外观确认
+            as_lcdconfirm.Properties.Items.Add("有");
+            as_lcdconfirm.Properties.Items.Add("无");
+            //壳体外观确认
+            as_shellconfirm.Properties.Items.Add("有");
+            as_shellconfirm.Properties.Items.Add("无");
+
+            //配件确认
+            dt = (DataTable)dh.ExecuteSql("select ASI_VALUES from aftersaleinf where asi_type='配件确认'", "select");
+            for (int i = 0; i < dt.Rows.Count; i++)
+            {
+                as_changerconfirm.Properties.Items.Add(dt.Rows[i][0].ToString());
+            }
+
+            //责任归属2
+            as_duty2.Properties.Items.Add("小度");
+            as_duty2.Properties.Items.Add("欧度利方");
+            asc.controllInitializeSize(this);
+            as_reason.SendToBack();
+            as_badpro.SendToBack();
+            as_method.SendToBack();
+            as_recheck.SendToBack();
+            as_lcdconfirm.SendToBack();
+            as_shellconfirm.SendToBack();
+            as_changerconfirm.SendToBack();
+            AS_DUTY.SendToBack();
+            as_duty2.SendToBack();
+            GetSNCode.SendToBack();
+        }
+
+        private void GetSNCode_KeyDown(object sender, KeyEventArgs e)
+        {
+            if (e.KeyCode == Keys.Enter)
+            {
+                if (GetSNCode.Text == "")
+                {
+                    OperatResult.AppendText(">>序列号不允许为空\n", Color.Red);
+                    BaseUtil.CleanForm(this);
+                    return;
+                }
+                sql.Clear();
+                sql.Append("select * from aftersale left join makeserial on as_sn=ms_sncode left join make ");
+                sql.Append("on ms_makecode=ma_code where as_sn = '" + GetSNCode.Text + "' order by as_id desc");
+                DataTable dt_ = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                if (dt_.Rows.Count == 0)
+                {
+                    OperatResult.AppendText(">>序列号:" + GetSNCode.Text + "不存在导入清单中\n", Color.Red);
+                    BaseUtil.CleanForm(this);
+                    return;
+                }
+
+                dt = (DataTable)dh.ExecuteSql("select * from prodiomac where pim_mac='" + GetSNCode.Text + "' and PIM_INOROUT='OUT' and sysdate-547<PIM_INDATE ", "select");
+                if (dt.Rows.Count == 0)
+                {
+                    OperatResult.AppendText(">>序列号:" + GetSNCode.Text + "出货已超过180天\n", Color.Red);
+                    BaseUtil.CleanForm(this);
+                    return;
+                }
+
+                BaseUtil.SetFormValue(this.Controls, dt_);
+
+            }
+        }
+
+        private void Make_Repair_SizeChanged(object sender, EventArgs e)
+        {
+            asc.controlAutoSize(this);
+        }
+
+        private void Clean_Click(object sender, EventArgs e)
+        {
+            OperatResult.Clear();
+        }
+
+        private void Make_Repair_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            dh.Dispose();
+        }
+
+        public void RefreshData()
+        {
+            GetSNCode_KeyDown(new object(), new KeyEventArgs(Keys.Enter));
+        }
+
+        private void Save_Click(object sender, EventArgs e)
+        {
+            sql.Clear();
+            sql.Append("update aftersale set ");
+            if (as_recheck.Text != "")
+            {
+                sql.Append("as_recheck='" + as_recheck.Text + "',");
+            }
+            if (as_lcdconfirm.Text != "")
+            {
+                sql.Append("as_lcdconfirm='" + as_lcdconfirm.Text + "',");
+            }
+            if (as_shellconfirm.Text != "")
+            {
+                sql.Append("as_shellconfirm='" + as_shellconfirm.Text + "',");
+            }
+            if (as_changerconfirm.Text != "")
+            {
+                sql.Append("as_changerconfirm='" + as_changerconfirm.Text + "',");
+            }
+            if (as_duty2.Text != "")
+            {
+                sql.Append("as_duty2='" + as_duty2.Text + "',");
+            }
+            if (as_process.Text != "")
+            {
+                sql.Append("as_process='" + as_process.Text + "',");
+            }
+            if (as_reason.Text != "")
+            {
+                sql.Append("as_reason='" + as_reason.Text + "',");
+            }
+            if (as_method.Text != "")
+            {
+                sql.Append("as_method='" + as_method.Text + "',");
+            }
+            if (as_badpro.Text != "")
+            {
+                sql.Append("as_badpro='" + as_badpro.Text + "',");
+            }
+            sql.Append(" AS_RECEIVETIME=sysdate, as_repairman='" + User.UserName + "' where as_id='" + as_id.Text + "'");
+            dh.ExecuteSql(sql.GetString(), "update");
+            OperatResult.AppendText(">>序列号【" + GetSNCode.Text + "】保存维修信息成功\n", Color.Green);
+
+            dt = (DataTable)dh.ExecuteSql("select max(ms_id) from makeserial where ms_sncode='" + GetSNCode.Text + "'", "select");
+            if (dt.Rows.Count > 0)
+            {
+                string ms_id = dt.Rows[0][0].ToString();
+                dt = (DataTable)dh.ExecuteSql("select ms_firstsn from makeserial where ms_id='" + ms_id + "'", "select");
+                if (dt.Rows.Count > 0)
+                {
+                    string ms_firstsn = dt.Rows[0][0].ToString();
+                    dh.ExecuteSql("update craftmaterial set cm_status=-1 where cm_firstsn='" + ms_firstsn + "'", "update");
+                    OperatResult.AppendText(">>序列号【" + GetSNCode.Text + "】物料拆解成功\n", Color.Green);
+                }
+            }
+            GetSNCode.Clear();
+            AS_DESCRIPTION.Clear();
+            BaseUtil.CleanForm(this);
+        }
+
+        private void as_recheck_ImeModeChanged(object sender, EventArgs e)
+        {
+            Console.WriteLine(as_recheck.ImeMode.ToString());
+        }
+
+        private void as_recheck_Modified(object sender, EventArgs e)
+        {
+        
+        }
+    }
+}

+ 206 - 0
UAS_MES_ODLF/FunctionCode/Special/Special_Repair.resx

@@ -0,0 +1,206 @@
+<?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="LocationSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <metadata name="ComponentSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>190, 17</value>
+  </metadata>
+  <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+  <data name="Save.DownImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAEUAAAAWCAYAAACWl1FwAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
+        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAFcSURBVFhH5di7UsJAFMbxtDT6QMI76IAFT0npIE0K
+        GcRORxHklpAIBHLfbILV8XxeNsMznJ35F5vu+82kWYuILD4N7oq75roCw27sb/x5WBdc27btntY64o/i
+        DnZjPxy4S6A0R6PHO1WUNHc9ep4uxIXd2D8eP/XZowWUThBG+n3p0stsKbbJ0qFDFFfscQuUbpzm9Pqx
+        Eh8c4PGLkuX0Nl+LDw4GJckUTRaO+OBQo+SKpitXfHAwKClfZuuN+OBgUDJV0NzxxAeHM5TFxhffGUpe
+        aFp5n+KDg0FRfHH8nfjgUKPoktztXnxwMCgFX7xdID441ChlRf7+ID44GBTNl21wFB8capSqot0xFB8c
+        /lE6Wa70IU5oH0Ziw/5cFebpoPUwHPbL04nCJKUgisWF3dgPB3gABc9v7fvBoBcnaVKdvkha2I39cPjx
+        oPrhusndcPinpIXd2N8gIusbTaFspKtR2SQAAAAASUVORK5CYII=
+</value>
+  </data>
+  <data name="Save.MoveImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAEUAAAAWCAYAAACWl1FwAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
+        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAFzSURBVFhH5djNSgJRGMZxL2P2gTfQFbZvHSEZFBEW
+        CEIQBEIgVFiS9qXWoDmp4/fHzDmjM2a+vU/QqUVX0DvwXxxn9fwYXJwYEcXWNzIWt83dcq7AsBv7LXgA
+        ZI0r71/aaqjCJf8o7sFu7IcDFwdK4vimrv1oSZXRnArdQFzYjf3pQkOzRxIoVWc6X5X6M7ruBGIr9mbU
+        9MIVe9hAcXvBO125WnxwgMcXSpcPF20tPjgYlI5eUK6lxAcHg9Lmw3nTFx8cDEpLLSjr+OKDg0FpqojO
+        Gp744GBQ3vyITutT8cHBoDheRCe1ifjgYFBe+ZCxJ+KDg0GpT0NKv4zFBweDUpuEdFQdiQ8OBsXmw2Fl
+        JD44/KCM53TwNBQfHAzKMx/2Hgfig8M3SrXYUasUfz67DwOxYf9dV5urg+RWzta4aEnxn83OfV9c2I39
+        cIAHUOJceTNbUfmW94GX0sJu7IcDPH5fXCe4EvfXxe5/D7ux3yKi2CfkPhTy27lqkwAAAABJRU5ErkJg
+        gg==
+</value>
+  </data>
+  <data name="Save.NormalImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAEUAAAAWCAYAAACWl1FwAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
+        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAGVSURBVFhH5di7agJRFIXhDSKoYBQEC8FCECwEQRBE
+        4uUVEtTiPKVlom2wttM6IfF+15njXHRnL19jD/zFmanWV8zAEDNTp9OJS6/Sm2QUht3YH4cHtdvtF6k7
+        mUwG1tqd3FR3YTf2w0FKUVOu6XT68Xgw3+8PtWH/bDYbCkeLGo1Gz/d9JwzvrL0gCKx49KlerxtIBUGo
+        PjjAg2q1mqDc2fN99cEBHlStVk0oB+t56oMDPKhSqZggDNm1N/XBAR5ULpeNvGD46rrqgwM8qFQqGV8O
+        56ujPjjAg4rFosFL5ni5qA8O8KBCoWBuns/701l9cIAH5fN5QfF4dzipDw7woFwuZ+zN483+oD44wIOy
+        2azB52i13asPDvCgTCZjHGt5sdmqDw7woHQ6bRzX8ny1UR8c4EHJZNJc5fC7XKsPDvCgRCLR2x9Pzt9q
+        zT+Lpdqw/3A6W/HoUywWa32Nx8OL4zwffM8X6sJu7IcDPCgajaak7udoNNjsdgc81BZ2Yz8c4PH8cR2J
+        ROJSU3qXjMKwG/vjzEz/skOI3Zqgv7AAAAAASUVORK5CYII=
+</value>
+  </data>
+  <data name="Clean.DownImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAEUAAAAWCAYAAACWl1FwAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
+        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAFcSURBVFhH5di7UsJAFMbxtDT6QMI76IAFT0npIE0K
+        GcRORxHklpAIBHLfbILV8XxeNsMznJ35F5vu+82kWYuILD4N7oq75roCw27sb/x5WBdc27btntY64o/i
+        DnZjPxy4S6A0R6PHO1WUNHc9ep4uxIXd2D8eP/XZowWUThBG+n3p0stsKbbJ0qFDFFfscQuUbpzm9Pqx
+        Eh8c4PGLkuX0Nl+LDw4GJckUTRaO+OBQo+SKpitXfHAwKClfZuuN+OBgUDJV0NzxxAeHM5TFxhffGUpe
+        aFp5n+KDg0FRfHH8nfjgUKPoktztXnxwMCgFX7xdID441ChlRf7+ID44GBTNl21wFB8capSqot0xFB8c
+        /lE6Wa70IU5oH0Ziw/5cFebpoPUwHPbL04nCJKUgisWF3dgPB3gABc9v7fvBoBcnaVKdvkha2I39cPjx
+        oPrhusndcPinpIXd2N8gIusbTaFspKtR2SQAAAAASUVORK5CYII=
+</value>
+  </data>
+  <data name="Clean.MoveImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAEUAAAAWCAYAAACWl1FwAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
+        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAFzSURBVFhH5djNSgJRGMZxL2P2gTfQFbZvHSEZFBEW
+        CEIQBEIgVFiS9qXWoDmp4/fHzDmjM2a+vU/QqUVX0DvwXxxn9fwYXJwYEcXWNzIWt83dcq7AsBv7LXgA
+        ZI0r71/aaqjCJf8o7sFu7IcDFwdK4vimrv1oSZXRnArdQFzYjf3pQkOzRxIoVWc6X5X6M7ruBGIr9mbU
+        9MIVe9hAcXvBO125WnxwgMcXSpcPF20tPjgYlI5eUK6lxAcHg9Lmw3nTFx8cDEpLLSjr+OKDg0FpqojO
+        Gp744GBQ3vyITutT8cHBoDheRCe1ifjgYFBe+ZCxJ+KDg0GpT0NKv4zFBweDUpuEdFQdiQ8OBsXmw2Fl
+        JD44/KCM53TwNBQfHAzKMx/2Hgfig8M3SrXYUasUfz67DwOxYf9dV5urg+RWzta4aEnxn83OfV9c2I39
+        cIAHUOJceTNbUfmW94GX0sJu7IcDPH5fXCe4EvfXxe5/D7ux3yKi2CfkPhTy27lqkwAAAABJRU5ErkJg
+        gg==
+</value>
+  </data>
+  <data name="Clean.NormalImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAEUAAAAWCAYAAACWl1FwAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
+        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAGVSURBVFhH5di7agJRFIXhDSKoYBQEC8FCECwEQRBE
+        4uUVEtTiPKVlom2wttM6IfF+15njXHRnL19jD/zFmanWV8zAEDNTp9OJS6/Sm2QUht3YH4cHtdvtF6k7
+        mUwG1tqd3FR3YTf2w0FKUVOu6XT68Xgw3+8PtWH/bDYbCkeLGo1Gz/d9JwzvrL0gCKx49KlerxtIBUGo
+        PjjAg2q1mqDc2fN99cEBHlStVk0oB+t56oMDPKhSqZggDNm1N/XBAR5ULpeNvGD46rrqgwM8qFQqGV8O
+        56ujPjjAg4rFosFL5ni5qA8O8KBCoWBuns/701l9cIAH5fN5QfF4dzipDw7woFwuZ+zN483+oD44wIOy
+        2azB52i13asPDvCgTCZjHGt5sdmqDw7woHQ6bRzX8ny1UR8c4EHJZNJc5fC7XKsPDvCgRCLR2x9Pzt9q
+        zT+Lpdqw/3A6W/HoUywWa32Nx8OL4zwffM8X6sJu7IcDPCgajaak7udoNNjsdgc81BZ2Yz8c4PH8cR2J
+        ROJSU3qXjMKwG/vjzEz/skOI3Zqgv7AAAAAASUVORK5CYII=
+</value>
+  </data>
+  <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>42</value>
+  </metadata>
+</root>

+ 1 - 1
UAS_MES_ODLF/FunctionCode/Warehouse/Warehouse_FinishedProductOut.cs

@@ -49,7 +49,7 @@ namespace UAS_MES_NEW.Warehouse
             pi_inoutno.SelectField = "pi_id # ID,pi_title  # 客户名称,pi_inoutno # 出货单号,pi_type # 出货类型";
             pi_inoutno.SetValueField = new string[] { "pi_title", "pi_inoutno", "pi_id", "pi_type" };
             pi_inoutno.FormName = Name;
-            pi_inoutno.Condition = "pi_pdastatus<>'已出库' and pi_class='出货单'";
+            pi_inoutno.Condition = "pi_pdastatus<>'已出库' and pi_class in('出货单','其它出库单','拨出单')";
             pi_inoutno.DbChange += Pi_inoutno_DbChange;
             asc.controllInitializeSize(this);
             dh = SystemInf.dh;

+ 9 - 8
UAS_MES_ODLF/PublicMethod/BaseUtil.cs

@@ -1,4 +1,5 @@
-using LabelManager2;
+using DevExpress.XtraEditors;
+using LabelManager2;
 using System;
 using System.Collections;
 using System.Collections.Generic;
@@ -161,7 +162,7 @@ namespace UAS_MES_NEW.PublicMethod
                     string controlName = ctl[i].Name;
                     string controlsTag = ctl[i].Tag == null ? "" : ctl[i].Tag.ToString();
                     //默认给TextBox和Label赋值
-                    if (ctl[i] is TextBox || ctl[i] is Label || ctl[i] is SearchTextBox || ctl[i] is MaCodeSearchTextBox || ctl[i] is EnterTextBox || ctl[i] is TextBoxGeneratePaCode || ctl[i] is NumericUpDown || ctl[i] is TextBoxWithTextArea ||ctl[i] is RichTextBox)
+                    if (ctl[i] is TextBox || ctl[i] is Label || ctl[i] is SearchTextBox || ctl[i] is MaCodeSearchTextBox || ctl[i] is EnterTextBox || ctl[i] is TextBoxGeneratePaCode || ctl[i] is NumericUpDown || ctl[i] is TextBoxWithTextArea || ctl[i] is RichTextBox || ctl[i] is CheckedComboBoxEdit || ctl[i] is DevExpress.XtraEditors.ComboBoxEdit)
                     {
                         for (int j = 0; j < dt.Columns.Count; j++)
                         {
@@ -213,7 +214,7 @@ namespace UAS_MES_NEW.PublicMethod
                         for (int j = 0; j < ctl[i].Controls.Count; j++)
                         {
                             controlName = ctl[i].Controls[j].Name;
-                            if (ctl[i].Controls[j] is TextBox || ctl[i].Controls[j] is Label || ctl[i].Controls[j] is SearchTextBox || ctl[i].Controls[j] is MaCodeSearchTextBox)
+                            if (ctl[i].Controls[j] is TextBox || ctl[i].Controls[j] is Label || ctl[i].Controls[j] is SearchTextBox || ctl[i].Controls[j] is MaCodeSearchTextBox || ctl[i].Controls[j] is CheckedComboBoxEdit || ctl[i].Controls[j] is DevExpress.XtraEditors.ComboBoxEdit)
                             {
                                 for (int k = 0; k < dt.Columns.Count; k++)
                                 {
@@ -232,7 +233,7 @@ namespace UAS_MES_NEW.PublicMethod
             {
                 for (int i = 0; i < ctl.Count; i++)
                 {
-                    if (ctl[i] is TextBox || ctl[i] is Label || ctl[i] is SearchTextBox)
+                    if (ctl[i] is TextBox || ctl[i] is Label || ctl[i] is SearchTextBox || ctl[i] is CheckedComboBoxEdit || ctl[i] is DevExpress.XtraEditors.ComboBoxEdit)
                     {
                         for (int j = 0; j < dt.Columns.Count; j++)
                         {
@@ -651,7 +652,7 @@ namespace UAS_MES_NEW.PublicMethod
                 {
                     CleanControls(Form.Controls[i].Controls);
                 }
-                if (Form.Controls[i] is EnterTextBox || Form.Controls[i] is TextBox || Form.Controls[i] is ValueLabel || Form.Controls[i] is SearchTextBox || Form.Controls[i] is ValueNumLabel || Form.Controls[i] is MaCodeSearchTextBox)
+                if (Form.Controls[i] is EnterTextBox || Form.Controls[i] is TextBox || Form.Controls[i] is ValueLabel || Form.Controls[i] is SearchTextBox || Form.Controls[i] is ValueNumLabel || Form.Controls[i] is MaCodeSearchTextBox || Form.Controls[i] is CheckedComboBoxEdit || Form.Controls[i] is DevExpress.XtraEditors.ComboBoxEdit)
                     Form.Controls[i].Text = "";
                 if (Form.Controls[i] is DataGridView)
                     CleanDGVData((DataGridView)Form.Controls[i]);
@@ -664,7 +665,7 @@ namespace UAS_MES_NEW.PublicMethod
             {
                 if (collection[i].Controls.Count > 0)
                     CleanControls(collection[i].Controls);
-                if (collection[i] is EnterTextBox || collection[i] is TextBox || collection[i] is ValueLabel || collection[i] is SearchTextBox || collection[i] is ValueNumLabel || collection[i] is MaCodeSearchTextBox)
+                if (collection[i] is EnterTextBox || collection[i] is TextBox || collection[i] is ValueLabel || collection[i] is SearchTextBox || collection[i] is ValueNumLabel || collection[i] is MaCodeSearchTextBox || collection[i] is CheckedComboBoxEdit || collection[i] is DevExpress.XtraEditors.ComboBoxEdit)
                     collection[i].Text = "";
                 if (collection[i] is DataGridView)
                     CleanDGVData((DataGridView)collection[i]);
@@ -790,9 +791,9 @@ namespace UAS_MES_NEW.PublicMethod
                 //如果Text不为空再进行条件的拼接
                 if (Condition[i].Text != "")
                 {
-                    if (Condition[i] is ComboBox)
+                    if (Condition[i] is System.Windows.Forms.ComboBox)
                     {
-                        condition += "(" + Condition[i].Tag + " like " + "'%" + (Condition[i] as ComboBox).SelectedValue + "%' )";
+                        condition += "(" + Condition[i].Tag + " like " + "'%" + (Condition[i] as System.Windows.Forms.ComboBox).SelectedValue + "%' )";
                     }
                     else
                     {

+ 18 - 0
UAS_MES_ODLF/UAS_MES_ODLF.csproj

@@ -356,6 +356,12 @@
     <Compile Include="CustomControl\SetLoading\LoadingCircle.Designer.cs">
       <DependentUpon>LoadingCircle.cs</DependentUpon>
     </Compile>
+    <Compile Include="CustomControl\TextBoxWithIcon\MultBlurSearch.cs">
+      <SubType>UserControl</SubType>
+    </Compile>
+    <Compile Include="CustomControl\TextBoxWithIcon\MultBlurSearch.Designer.cs">
+      <DependentUpon>MultBlurSearch.cs</DependentUpon>
+    </Compile>
     <Compile Include="CustomControl\TextBoxWithIcon\BlurSearch.cs">
       <SubType>UserControl</SubType>
     </Compile>
@@ -958,6 +964,12 @@
     <Compile Include="FunctionCode\SMT\SMT_WaringSetting.Designer.cs">
       <DependentUpon>SMT_WaringSetting.cs</DependentUpon>
     </Compile>
+    <Compile Include="FunctionCode\Special\Special_Repair.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="FunctionCode\Special\Special_Repair.Designer.cs">
+      <DependentUpon>Special_Repair.cs</DependentUpon>
+    </Compile>
     <Compile Include="FunctionCode\Special\Special_BoxSplit.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -1231,6 +1243,9 @@
     <EmbeddedResource Include="CustomControl\ProcessBar\ProcessBar.resx">
       <DependentUpon>ProcessBar.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="CustomControl\TextBoxWithIcon\MultBlurSearch.resx">
+      <DependentUpon>MultBlurSearch.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="CustomControl\TextBoxWithIcon\BlurSearch.resx">
       <DependentUpon>BlurSearch.cs</DependentUpon>
     </EmbeddedResource>
@@ -1525,6 +1540,9 @@
     <EmbeddedResource Include="FunctionCode\SMT\SMT_WaringSetting.resx">
       <DependentUpon>SMT_WaringSetting.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="FunctionCode\Special\Special_Repair.resx">
+      <DependentUpon>Special_Repair.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="FunctionCode\Special\Special_BoxSplit.resx">
       <DependentUpon>Special_BoxSplit.cs</DependentUpon>
     </EmbeddedResource>

+ 8 - 2
UAS_MES_YD/FunctionCode/Make/Make_TestCollection.cs

@@ -227,7 +227,7 @@ namespace UAS_MES_NEW.Make
                         }
                         if (ma_code.Text != oMakeCode && oMakeCode != null)
                         {
-                            dt = (DataTable)dh.ExecuteSql("select ma_code,ma_prodcode,nvl(ma_softversion,ms_softversion)ma_softversion,ma_salecode,substr(pr_spec,0,50)pr_spec,nvl(pr_sendchecktype,'LineCode')pr_sendchecktype,ma_qty from makeserial left join  make on ma_code=ms_makecode left join product on ma_prodcode=pr_code where ma_code='" + oMakeCode + "' and ms_sncode='"+ ms_sncode.Text + "'", "select");
+                            dt = (DataTable)dh.ExecuteSql("select ma_code,ma_prodcode,nvl(ma_softversion,ms_softversion)ma_softversion,ma_salecode,substr(pr_spec,0,50)pr_spec,nvl(pr_sendchecktype,'LineCode')pr_sendchecktype,ma_qty from makeserial left join  make on ma_code=ms_makecode left join product on ma_prodcode=pr_code where ma_code='" + oMakeCode + "' and ms_sncode='" + ms_sncode.Text + "'", "select");
                             if (dt.Rows.Count > 0)
                             {
                                 BaseUtil.SetFormValue(this.Controls, dt);
@@ -517,10 +517,16 @@ namespace UAS_MES_NEW.Make
                     }
                 }
                 //如果之前是良品的
-                dt = dh.getFieldsDataByCondition("makeserial", new string[] { "ms_status", "ms_checkno" }, "ms_id='" + oMSID + "' and ms_stepcode='" + User.CurrentStepCode + "'");
+                dt = dh.getFieldsDataByCondition("makeserial", new string[] { "ms_status", "ms_checkno", "ms_outboxcode" }, "ms_id='" + oMSID + "' and ms_stepcode='" + User.CurrentStepCode + "'");
                 if (dt.Rows.Count > 0)
                 {
                     string status = dt.Rows[0]["ms_status"].ToString();
+                    string ms_outboxcode = dt.Rows[0]["ms_outboxcode"].ToString();
+                    if (ms_outboxcode != "")
+                    {
+                        OperateResult.AppendText(">>" + ms_sncode.Text + "已装箱"+ ms_outboxcode + ",请先取消装箱\n", Color.Green);
+                        return;
+                    }
                     if (status == "1" || status == "2")
                     {
                         dh.UpdateByCondition("steppassed", "sp_result='不良品',sp_ifng=-1,sp_ymd=to_char(sysdate,'yyyymmdd'),sp_hm=to_char(sysdate,'hh24miss')", "sp_id=(select max(sp_id) from steppassed where sp_sncode='" + ms_sncode.Text + "')");

+ 1 - 1
UAS_MES_YD/FunctionCode/Special/Special_CancelCollection.cs

@@ -83,7 +83,7 @@ namespace UAS_MES_NEW.Special
                     sqls.Add("delete from craftmaterial where cm_sncode='" + sn_code.Text + "' and cm_makecode='" + ms_makecode + "'");
                 }
                 sqls.Add("delete from sninfo where si_sn='" + sn_code.Text + "'");
-                sqls.Add("update makeaddresslist set mal_sncode='',mal_status=0 where mal_sncode='" + sn_code.Text + "'");
+                //sqls.Add("update makeaddresslist set mal_sncode='',mal_status=0 where mal_sncode='" + sn_code.Text + "'");
                 //删除打印日志
                 sqls.Add("delete from labelprintlog where lpl_value='" + sn_code.Text + "' and lpl_makecode='" + ms_makecode + "'");
                 //删除老化记录

+ 66 - 130
UAS_MES_YD/FunctionCode/Special/Special_CancelImei.Designer.cs

@@ -29,28 +29,25 @@
         private void InitializeComponent()
         {
             System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Special_CancelImei));
-            this.SN_label = new System.Windows.Forms.Label();
+            this.Pallet_label = new System.Windows.Forms.Label();
             this.bc_code = new System.Windows.Forms.Label();
-            this.st_rstepcode_label = new System.Windows.Forms.Label();
-            this.ma_craftcode_label = new System.Windows.Forms.Label();
-            this.cd_stepcode = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.SearchTextBox();
-            this.cr_code = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.SearchTextBox();
+            this.nr_name_label = new System.Windows.Forms.Label();
             this.OperateResult = new UAS_MES_NEW.CustomControl.RichText.RichTextAutoBottom();
             this.SaveRepairInf = new UAS_MES_NEW.CustomControl.ButtonUtil.NormalButton();
-            this.SN = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.EnterTextBox();
-            this.cd_stepno = new System.Windows.Forms.Label();
+            this.IMEI = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.EnterTextBox();
+            this.Reason = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.EnterTextBox();
             this.SuspendLayout();
             // 
-            // SN_label
+            // Pallet_label
             // 
-            this.SN_label.AutoSize = true;
-            this.SN_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.SN_label.Location = new System.Drawing.Point(115, 90);
-            this.SN_label.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
-            this.SN_label.Name = "SN_label";
-            this.SN_label.Size = new System.Drawing.Size(62, 41);
-            this.SN_label.TabIndex = 1;
-            this.SN_label.Text = "SN";
+            this.Pallet_label.AutoSize = true;
+            this.Pallet_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.Pallet_label.Location = new System.Drawing.Point(253, 266);
+            this.Pallet_label.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.Pallet_label.Name = "Pallet_label";
+            this.Pallet_label.Size = new System.Drawing.Size(85, 41);
+            this.Pallet_label.TabIndex = 1;
+            this.Pallet_label.Text = "IMEI";
             // 
             // bc_code
             // 
@@ -64,79 +61,22 @@
             this.bc_code.TabIndex = 146;
             this.bc_code.Visible = false;
             // 
-            // st_rstepcode_label
-            // 
-            this.st_rstepcode_label.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left)));
-            this.st_rstepcode_label.AutoSize = true;
-            this.st_rstepcode_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.st_rstepcode_label.Location = new System.Drawing.Point(115, 257);
-            this.st_rstepcode_label.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
-            this.st_rstepcode_label.Name = "st_rstepcode_label";
-            this.st_rstepcode_label.Size = new System.Drawing.Size(146, 41);
-            this.st_rstepcode_label.TabIndex = 152;
-            this.st_rstepcode_label.Text = "回流工序";
-            // 
-            // ma_craftcode_label
-            // 
-            this.ma_craftcode_label.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left)));
-            this.ma_craftcode_label.AutoSize = true;
-            this.ma_craftcode_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.ma_craftcode_label.Location = new System.Drawing.Point(114, 177);
-            this.ma_craftcode_label.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
-            this.ma_craftcode_label.Name = "ma_craftcode_label";
-            this.ma_craftcode_label.Size = new System.Drawing.Size(146, 41);
-            this.ma_craftcode_label.TabIndex = 153;
-            this.ma_craftcode_label.Text = "回流途程";
-            // 
-            // cd_stepcode
-            // 
-            this.cd_stepcode.AllPower = "ifall";
-            this.cd_stepcode.Caller = null;
-            this.cd_stepcode.Condition = null;
-            this.cd_stepcode.DBTitle = "回流工序";
-            this.cd_stepcode.Font = new System.Drawing.Font("微软雅黑", 9F);
-            this.cd_stepcode.FormName = null;
-            this.cd_stepcode.Location = new System.Drawing.Point(279, 257);
-            this.cd_stepcode.Margin = new System.Windows.Forms.Padding(6);
-            this.cd_stepcode.Name = "cd_stepcode";
-            this.cd_stepcode.Power = "ifspecial";
-            this.cd_stepcode.ReturnData = null;
-            this.cd_stepcode.SelectField = null;
-            this.cd_stepcode.SetValueField = null;
-            this.cd_stepcode.Size = new System.Drawing.Size(318, 44);
-            this.cd_stepcode.TabIndex = 155;
-            this.cd_stepcode.TableName = null;
-            this.cd_stepcode.Tag = "";
-            this.cd_stepcode.TextBoxEnable = false;
-            // 
-            // cr_code
-            // 
-            this.cr_code.AllPower = "ifall";
-            this.cr_code.Caller = null;
-            this.cr_code.Condition = null;
-            this.cr_code.DBTitle = "回流途程";
-            this.cr_code.Enabled = false;
-            this.cr_code.Font = new System.Drawing.Font("微软雅黑", 9F);
-            this.cr_code.FormName = null;
-            this.cr_code.Location = new System.Drawing.Point(279, 177);
-            this.cr_code.Margin = new System.Windows.Forms.Padding(6);
-            this.cr_code.Name = "cr_code";
-            this.cr_code.Power = "ifspecial";
-            this.cr_code.ReturnData = null;
-            this.cr_code.SelectField = null;
-            this.cr_code.SetValueField = null;
-            this.cr_code.Size = new System.Drawing.Size(318, 46);
-            this.cr_code.TabIndex = 154;
-            this.cr_code.TableName = null;
-            this.cr_code.Tag = "ma_craftcode";
-            this.cr_code.TextBoxEnable = false;
+            // nr_name_label
+            // 
+            this.nr_name_label.AutoSize = true;
+            this.nr_name_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.nr_name_label.ForeColor = System.Drawing.Color.Black;
+            this.nr_name_label.Location = new System.Drawing.Point(255, 347);
+            this.nr_name_label.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.nr_name_label.Name = "nr_name_label";
+            this.nr_name_label.Size = new System.Drawing.Size(82, 41);
+            this.nr_name_label.TabIndex = 141;
+            this.nr_name_label.Text = "原因";
             // 
             // OperateResult
             // 
             this.OperateResult.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.OperateResult.Location = new System.Drawing.Point(812, 50);
+            this.OperateResult.Location = new System.Drawing.Point(791, 109);
             this.OperateResult.Margin = new System.Windows.Forms.Padding(8);
             this.OperateResult.Name = "OperateResult";
             this.OperateResult.Size = new System.Drawing.Size(460, 614);
@@ -150,7 +90,7 @@
             this.SaveRepairInf.DownImage = ((System.Drawing.Image)(resources.GetObject("SaveRepairInf.DownImage")));
             this.SaveRepairInf.Image = null;
             this.SaveRepairInf.IsShowBorder = true;
-            this.SaveRepairInf.Location = new System.Drawing.Point(307, 449);
+            this.SaveRepairInf.Location = new System.Drawing.Point(443, 500);
             this.SaveRepairInf.Margin = new System.Windows.Forms.Padding(6);
             this.SaveRepairInf.MoveImage = ((System.Drawing.Image)(resources.GetObject("SaveRepairInf.MoveImage")));
             this.SaveRepairInf.Name = "SaveRepairInf";
@@ -159,57 +99,56 @@
             this.SaveRepairInf.Size = new System.Drawing.Size(172, 48);
             this.SaveRepairInf.TabIndex = 145;
             this.SaveRepairInf.Tag = "IfRead";
-            this.SaveRepairInf.Text = "确认回流";
+            this.SaveRepairInf.Text = "确认取消";
             this.SaveRepairInf.UseVisualStyleBackColor = true;
             this.SaveRepairInf.Click += new System.EventHandler(this.SaveRepairInf_Click);
             // 
-            // SN
-            // 
-            this.SN.AllPower = null;
-            this.SN.BackColor = System.Drawing.Color.White;
-            this.SN.ID = null;
-            this.SN.Location = new System.Drawing.Point(279, 96);
-            this.SN.Margin = new System.Windows.Forms.Padding(4);
-            this.SN.Name = "SN";
-            this.SN.Power = null;
-            this.SN.Size = new System.Drawing.Size(318, 35);
-            this.SN.Str = null;
-            this.SN.Str1 = null;
-            this.SN.Str2 = null;
-            this.SN.TabIndex = 2;
-            this.SN.KeyDown += new System.Windows.Forms.KeyEventHandler(this.SN_KeyDown);
-            // 
-            // cd_stepno
-            // 
-            this.cd_stepno.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left)));
-            this.cd_stepno.AutoSize = true;
-            this.cd_stepno.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.cd_stepno.Location = new System.Drawing.Point(125, 343);
-            this.cd_stepno.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
-            this.cd_stepno.Name = "cd_stepno";
-            this.cd_stepno.Size = new System.Drawing.Size(0, 41);
-            this.cd_stepno.TabIndex = 156;
+            // IMEI
+            // 
+            this.IMEI.AllPower = null;
+            this.IMEI.BackColor = System.Drawing.Color.White;
+            this.IMEI.ID = null;
+            this.IMEI.Location = new System.Drawing.Point(375, 272);
+            this.IMEI.Margin = new System.Windows.Forms.Padding(4);
+            this.IMEI.Name = "IMEI";
+            this.IMEI.Power = null;
+            this.IMEI.Size = new System.Drawing.Size(318, 35);
+            this.IMEI.Str = null;
+            this.IMEI.Str1 = null;
+            this.IMEI.Str2 = null;
+            this.IMEI.TabIndex = 2;
+            // 
+            // Reason
+            // 
+            this.Reason.AllPower = null;
+            this.Reason.BackColor = System.Drawing.Color.White;
+            this.Reason.ID = null;
+            this.Reason.Location = new System.Drawing.Point(375, 356);
+            this.Reason.Margin = new System.Windows.Forms.Padding(4);
+            this.Reason.Name = "Reason";
+            this.Reason.Power = null;
+            this.Reason.Size = new System.Drawing.Size(318, 35);
+            this.Reason.Str = null;
+            this.Reason.Str1 = null;
+            this.Reason.Str2 = null;
+            this.Reason.TabIndex = 151;
             // 
             // Special_CancelImei
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(12F, 24F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
-            this.ClientSize = new System.Drawing.Size(1384, 713);
-            this.Controls.Add(this.cd_stepno);
-            this.Controls.Add(this.cd_stepcode);
-            this.Controls.Add(this.st_rstepcode_label);
-            this.Controls.Add(this.ma_craftcode_label);
-            this.Controls.Add(this.cr_code);
+            this.ClientSize = new System.Drawing.Size(1384, 1054);
+            this.Controls.Add(this.Reason);
             this.Controls.Add(this.OperateResult);
             this.Controls.Add(this.bc_code);
             this.Controls.Add(this.SaveRepairInf);
-            this.Controls.Add(this.SN);
-            this.Controls.Add(this.SN_label);
+            this.Controls.Add(this.nr_name_label);
+            this.Controls.Add(this.IMEI);
+            this.Controls.Add(this.Pallet_label);
             this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
             this.Margin = new System.Windows.Forms.Padding(4);
             this.Name = "Special_CancelImei";
-            this.Tag = "Special!CancelOQC";
+            this.Tag = "Special!BoxSplit";
             this.Text = "拆箱处理";
             this.Load += new System.EventHandler(this.Special_BoxSplit_Load);
             this.ResumeLayout(false);
@@ -218,15 +157,12 @@
         }
 
         #endregion
-        private System.Windows.Forms.Label SN_label;
-        private CustomControl.TextBoxWithIcon.EnterTextBox SN;
+        private System.Windows.Forms.Label Pallet_label;
+        private CustomControl.TextBoxWithIcon.EnterTextBox IMEI;
         private System.Windows.Forms.Label bc_code;
         private CustomControl.ButtonUtil.NormalButton SaveRepairInf;
+        private System.Windows.Forms.Label nr_name_label;
         private CustomControl.RichText.RichTextAutoBottom OperateResult;
-        private CustomControl.TextBoxWithIcon.SearchTextBox cd_stepcode;
-        private System.Windows.Forms.Label st_rstepcode_label;
-        private System.Windows.Forms.Label ma_craftcode_label;
-        private CustomControl.TextBoxWithIcon.SearchTextBox cr_code;
-        private System.Windows.Forms.Label cd_stepno;
+        private CustomControl.TextBoxWithIcon.EnterTextBox Reason;
     }
 }

+ 48 - 48
UAS_MES_YD/FunctionCode/Special/Special_CancelImei.cs

@@ -1,6 +1,5 @@
 using System;
 using System.Data;
-using System.Text;
 using System.Windows.Forms;
 using UAS_MES_NEW.DataOperate;
 using UAS_MES_NEW.Entity;
@@ -14,9 +13,6 @@ namespace UAS_MES_NEW.Special
 
         LogStringBuilder sql = new LogStringBuilder();
 
-
-        DataTable Dbfind;
-
         public Special_CancelImei()
         {
             InitializeComponent();
@@ -25,58 +21,62 @@ namespace UAS_MES_NEW.Special
         private void Special_BoxSplit_Load(object sender, EventArgs e)
         {
             dh = SystemInf.dh;
-
-            cd_stepcode.FormName = Name;
-            cd_stepcode.TableName = "craftdetail left join step on st_code=cd_stepcode left join craft on cd_crid=cr_id";
-            cd_stepcode.SetValueField = new string[] { "cd_stepcode", "cd_stepno" };
-            cd_stepcode.SelectField = "cd_stepname # 工序名称 ,cd_stepcode # 工序编号,cd_stepno # 执行顺序";
-            cd_stepcode.DBTitle = "回流工序";
-            cd_stepcode.DbChange += Cd_stepcode_DbChange;
         }
 
-        private void Cd_stepcode_DbChange(object sender, EventArgs e)
+        private void Split_Click(object sender, EventArgs e)
         {
-            Dbfind = cd_stepcode.ReturnData;
-            BaseUtil.SetFormValue(this.Controls, Dbfind);
-        }
-        string ms_id = "";
-
-        private void SaveRepairInf_Click(object sender, EventArgs e)
-        {
-            if (ms_id == "") { OperateResult.AppendText(">>请先获取SN\n"); return; }
-            if (cd_stepcode.Text == "") { OperateResult.AppendText(">>请选择回流工序\n"); return; }
-            DataTable dt = (DataTable)dh.ExecuteSql("select ms_makecode,ms_firstsn,ms_sncode,ms_prodcode from makeserial where ms_id='" + ms_id + "' and instr(ms_paststep,'" + cd_stepcode.Text + "')>0 ", "select");
-
-            if (dt.Rows.Count == 0) { OperateResult.AppendText(">>" + SN.Text + "不存在或未执行过" + cd_stepcode.Text + "工序\n"); return; }
-            string ms_makecode = dt.Rows[0]["ms_makecode"].ToString();
-            string ms_firstsn = dt.Rows[0]["ms_firstsn"].ToString();
-            string ms_prodcode = dt.Rows[0]["ms_prodcode"].ToString();
-
-            StringBuilder sql = new StringBuilder();
-            sql.Append("update craftmaterial set cm_status=-1 where  cm_stepcode in (select cd_stepcode from craft left join ");
-            sql.Append("craftdetail on cd_crid = cr_id where cr_prodcode = '" + ms_prodcode + "'  and cd_detno >= " + cd_stepno.Text + ") ");
-            sql.Append("and cm_firstsn='" + ms_firstsn + "' and cm_makecode='" + ms_makecode + "'");
-            dh.ExecuteSql(sql.ToString(), "update");
 
-            dh.ExecuteSql("update makeserial set ms_nextstepcode='" + cd_stepcode.Text + "' where ms_id='" + ms_id + "'", "update");
-
-            OperateResult.AppendText(">>" + SN.Text + "回流成功\n");
-            ms_id = "";
         }
 
-        private void SN_KeyDown(object sender, KeyEventArgs e)
+        private void SaveRepairInf_Click(object sender, EventArgs e)
         {
-            if (e.KeyCode == Keys.Enter)
+            if (Reason.Text == "")
             {
-                DataTable dt = (DataTable)dh.ExecuteSql("select ms_id,ms_craftcode,ms_prodcode from makeserial where ms_sncode='" + SN.Text + "' order by ms_id desc", "select");
-
-                if (dt.Rows.Count == 0) { OperateResult.AppendText(">>" + SN.Text + "不存在\n"); return; }
-
-                ms_id = dt.Rows[0]["ms_id"].ToString();
-                cr_code.Text = dt.Rows[0]["ms_craftcode"].ToString();
-                string ms_prodcode = dt.Rows[0]["ms_prodcode"].ToString();
-                cd_stepcode.Condition = "ST_STATUSCODE='AUDITED' and cr_code='" + cr_code.Text + "' and cr_prodcode='" + ms_prodcode + "' order by cd_stepno";
-
+                MessageBox.Show("必须填写原因");
+                return;
+            }
+            DataTable dt = (DataTable)dh.ExecuteSql("select ms_sncode,ms_imei1 from makeserial where ms_imei1 ='" + IMEI.Text + "'", "select");
+            if (dt.Rows.Count > 0)
+            {
+                dt = (DataTable)dh.ExecuteSql("select ms_sncode,substr(pr_detail,0,15)pr_detail from makeserial left join product on pr_code=ms_prodcode where ms_imei1='" + IMEI.Text + "'", "select");
+                if (dt.Rows.Count > 0)
+                {
+                    string sn = dt.Rows[0]["ms_sncode"].ToString();
+                    string pr_detail = dt.Rows[0]["pr_detail"].ToString();
+                    dh.ExecuteSql("update makeserial set ms_imei='" + Reason.Text + "',ms_imei1='' where ms_imei1='" + IMEI.Text + "'", "update");
+                    dh.ExecuteSql("update sninfo set si_imei1='' where si_imei1='" + IMEI.Text + "'", "update");
+                    LogicHandler.DoCommandLog("CancelImei", User.UserCode, "", User.UserLineCode, User.UserSourceCode, sn + " " + Reason.Text, "取消成功", IMEI.Text, "");
+                    OperateResult.AppendText("SN:" + sn + ",IMEI:" + IMEI.Text + ",机型:" + pr_detail + "取消成功\n", System.Drawing.Color.Black);
+                }
+                else
+                {
+                    OperateResult.AppendText(IMEI.Text + "未录入系统\n", System.Drawing.Color.Black);
+                }
+            }
+            else
+            {
+                dt = (DataTable)dh.ExecuteSql("select ms_sncode,ms_imei1 from makeserial where ms_imei2 ='" + IMEI.Text + "'", "select");
+                if (dt.Rows.Count > 0)
+                {
+                    dt = (DataTable)dh.ExecuteSql("select ms_sncode,substr(pr_detail,0,15)pr_detail from makeserial left join product on pr_code=ms_prodcode where ms_imei2='" + IMEI.Text + "'", "select");
+                    if (dt.Rows.Count > 0)
+                    {
+                        string sn = dt.Rows[0]["ms_sncode"].ToString();
+                        string pr_detail = dt.Rows[0]["pr_detail"].ToString();
+                        dh.ExecuteSql("update makeserial set ms_imei='" + Reason.Text + "',ms_imei2='' where ms_imei2='" + IMEI.Text + "'", "update");
+                        dh.ExecuteSql("update sninfo set si_imei2='' where si_imei2='" + IMEI.Text + "'", "update");
+                        LogicHandler.DoCommandLog("CancelImei", User.UserCode, "", User.UserLineCode, User.UserSourceCode, sn + " " + Reason.Text, "取消成功", IMEI.Text, "");
+                        OperateResult.AppendText("SN:" + sn + ",IMEI:" + IMEI.Text + ",机型:" + pr_detail + "取消成功\n", System.Drawing.Color.Black);
+                    }
+                    else
+                    {
+                        OperateResult.AppendText(IMEI.Text + "未录入系统\n", System.Drawing.Color.Black);
+                    }
+                }
+                else
+                {
+                    OperateResult.AppendText(IMEI.Text + "未录入系统\n", System.Drawing.Color.Black);
+                }
             }
         }
     }

+ 232 - 0
UAS_MES_YD/FunctionCode/Special/Special_CancelOQC.Designer.cs

@@ -0,0 +1,232 @@
+namespace UAS_MES_NEW.Special
+{
+    partial class Special_CancelOQC
+    {
+        /// <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()
+        {
+            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Special_CancelImei));
+            this.SN_label = new System.Windows.Forms.Label();
+            this.bc_code = new System.Windows.Forms.Label();
+            this.st_rstepcode_label = new System.Windows.Forms.Label();
+            this.ma_craftcode_label = new System.Windows.Forms.Label();
+            this.cd_stepcode = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.SearchTextBox();
+            this.cr_code = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.SearchTextBox();
+            this.OperateResult = new UAS_MES_NEW.CustomControl.RichText.RichTextAutoBottom();
+            this.SaveRepairInf = new UAS_MES_NEW.CustomControl.ButtonUtil.NormalButton();
+            this.SN = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.EnterTextBox();
+            this.cd_stepno = new System.Windows.Forms.Label();
+            this.SuspendLayout();
+            // 
+            // SN_label
+            // 
+            this.SN_label.AutoSize = true;
+            this.SN_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.SN_label.Location = new System.Drawing.Point(115, 90);
+            this.SN_label.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.SN_label.Name = "SN_label";
+            this.SN_label.Size = new System.Drawing.Size(62, 41);
+            this.SN_label.TabIndex = 1;
+            this.SN_label.Text = "SN";
+            // 
+            // bc_code
+            // 
+            this.bc_code.AutoSize = true;
+            this.bc_code.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.bc_code.ForeColor = System.Drawing.Color.Black;
+            this.bc_code.Location = new System.Drawing.Point(1391, 507);
+            this.bc_code.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.bc_code.Name = "bc_code";
+            this.bc_code.Size = new System.Drawing.Size(0, 41);
+            this.bc_code.TabIndex = 146;
+            this.bc_code.Visible = false;
+            // 
+            // st_rstepcode_label
+            // 
+            this.st_rstepcode_label.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.st_rstepcode_label.AutoSize = true;
+            this.st_rstepcode_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.st_rstepcode_label.Location = new System.Drawing.Point(115, 257);
+            this.st_rstepcode_label.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.st_rstepcode_label.Name = "st_rstepcode_label";
+            this.st_rstepcode_label.Size = new System.Drawing.Size(146, 41);
+            this.st_rstepcode_label.TabIndex = 152;
+            this.st_rstepcode_label.Text = "回流工序";
+            // 
+            // ma_craftcode_label
+            // 
+            this.ma_craftcode_label.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.ma_craftcode_label.AutoSize = true;
+            this.ma_craftcode_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.ma_craftcode_label.Location = new System.Drawing.Point(114, 177);
+            this.ma_craftcode_label.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.ma_craftcode_label.Name = "ma_craftcode_label";
+            this.ma_craftcode_label.Size = new System.Drawing.Size(146, 41);
+            this.ma_craftcode_label.TabIndex = 153;
+            this.ma_craftcode_label.Text = "回流途程";
+            // 
+            // cd_stepcode
+            // 
+            this.cd_stepcode.AllPower = "ifall";
+            this.cd_stepcode.Caller = null;
+            this.cd_stepcode.Condition = null;
+            this.cd_stepcode.DBTitle = "回流工序";
+            this.cd_stepcode.Font = new System.Drawing.Font("微软雅黑", 9F);
+            this.cd_stepcode.FormName = null;
+            this.cd_stepcode.Location = new System.Drawing.Point(279, 257);
+            this.cd_stepcode.Margin = new System.Windows.Forms.Padding(6);
+            this.cd_stepcode.Name = "cd_stepcode";
+            this.cd_stepcode.Power = "ifspecial";
+            this.cd_stepcode.ReturnData = null;
+            this.cd_stepcode.SelectField = null;
+            this.cd_stepcode.SetValueField = null;
+            this.cd_stepcode.Size = new System.Drawing.Size(318, 44);
+            this.cd_stepcode.TabIndex = 155;
+            this.cd_stepcode.TableName = null;
+            this.cd_stepcode.Tag = "";
+            this.cd_stepcode.TextBoxEnable = false;
+            // 
+            // cr_code
+            // 
+            this.cr_code.AllPower = "ifall";
+            this.cr_code.Caller = null;
+            this.cr_code.Condition = null;
+            this.cr_code.DBTitle = "回流途程";
+            this.cr_code.Enabled = false;
+            this.cr_code.Font = new System.Drawing.Font("微软雅黑", 9F);
+            this.cr_code.FormName = null;
+            this.cr_code.Location = new System.Drawing.Point(279, 177);
+            this.cr_code.Margin = new System.Windows.Forms.Padding(6);
+            this.cr_code.Name = "cr_code";
+            this.cr_code.Power = "ifspecial";
+            this.cr_code.ReturnData = null;
+            this.cr_code.SelectField = null;
+            this.cr_code.SetValueField = null;
+            this.cr_code.Size = new System.Drawing.Size(318, 46);
+            this.cr_code.TabIndex = 154;
+            this.cr_code.TableName = null;
+            this.cr_code.Tag = "ma_craftcode";
+            this.cr_code.TextBoxEnable = false;
+            // 
+            // OperateResult
+            // 
+            this.OperateResult.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.OperateResult.Location = new System.Drawing.Point(812, 50);
+            this.OperateResult.Margin = new System.Windows.Forms.Padding(8);
+            this.OperateResult.Name = "OperateResult";
+            this.OperateResult.Size = new System.Drawing.Size(460, 614);
+            this.OperateResult.TabIndex = 150;
+            this.OperateResult.Text = "";
+            // 
+            // SaveRepairInf
+            // 
+            this.SaveRepairInf.AllPower = "ifall";
+            this.SaveRepairInf.BackColor = System.Drawing.Color.Transparent;
+            this.SaveRepairInf.DownImage = ((System.Drawing.Image)(resources.GetObject("SaveRepairInf.DownImage")));
+            this.SaveRepairInf.Image = null;
+            this.SaveRepairInf.IsShowBorder = true;
+            this.SaveRepairInf.Location = new System.Drawing.Point(307, 449);
+            this.SaveRepairInf.Margin = new System.Windows.Forms.Padding(6);
+            this.SaveRepairInf.MoveImage = ((System.Drawing.Image)(resources.GetObject("SaveRepairInf.MoveImage")));
+            this.SaveRepairInf.Name = "SaveRepairInf";
+            this.SaveRepairInf.NormalImage = ((System.Drawing.Image)(resources.GetObject("SaveRepairInf.NormalImage")));
+            this.SaveRepairInf.Power = null;
+            this.SaveRepairInf.Size = new System.Drawing.Size(172, 48);
+            this.SaveRepairInf.TabIndex = 145;
+            this.SaveRepairInf.Tag = "IfRead";
+            this.SaveRepairInf.Text = "确认回流";
+            this.SaveRepairInf.UseVisualStyleBackColor = true;
+            this.SaveRepairInf.Click += new System.EventHandler(this.SaveRepairInf_Click);
+            // 
+            // SN
+            // 
+            this.SN.AllPower = null;
+            this.SN.BackColor = System.Drawing.Color.White;
+            this.SN.ID = null;
+            this.SN.Location = new System.Drawing.Point(279, 96);
+            this.SN.Margin = new System.Windows.Forms.Padding(4);
+            this.SN.Name = "SN";
+            this.SN.Power = null;
+            this.SN.Size = new System.Drawing.Size(318, 35);
+            this.SN.Str = null;
+            this.SN.Str1 = null;
+            this.SN.Str2 = null;
+            this.SN.TabIndex = 2;
+            this.SN.KeyDown += new System.Windows.Forms.KeyEventHandler(this.SN_KeyDown);
+            // 
+            // cd_stepno
+            // 
+            this.cd_stepno.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.cd_stepno.AutoSize = true;
+            this.cd_stepno.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.cd_stepno.Location = new System.Drawing.Point(125, 343);
+            this.cd_stepno.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.cd_stepno.Name = "cd_stepno";
+            this.cd_stepno.Size = new System.Drawing.Size(0, 41);
+            this.cd_stepno.TabIndex = 156;
+            // 
+            // Special_CancelImei
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(12F, 24F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(1384, 713);
+            this.Controls.Add(this.cd_stepno);
+            this.Controls.Add(this.cd_stepcode);
+            this.Controls.Add(this.st_rstepcode_label);
+            this.Controls.Add(this.ma_craftcode_label);
+            this.Controls.Add(this.cr_code);
+            this.Controls.Add(this.OperateResult);
+            this.Controls.Add(this.bc_code);
+            this.Controls.Add(this.SaveRepairInf);
+            this.Controls.Add(this.SN);
+            this.Controls.Add(this.SN_label);
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
+            this.Margin = new System.Windows.Forms.Padding(4);
+            this.Name = "Special_CancelImei";
+            this.Tag = "Special!CancelOQC";
+            this.Text = "拆箱处理";
+            this.Load += new System.EventHandler(this.Special_BoxSplit_Load);
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+        private System.Windows.Forms.Label SN_label;
+        private CustomControl.TextBoxWithIcon.EnterTextBox SN;
+        private System.Windows.Forms.Label bc_code;
+        private CustomControl.ButtonUtil.NormalButton SaveRepairInf;
+        private CustomControl.RichText.RichTextAutoBottom OperateResult;
+        private CustomControl.TextBoxWithIcon.SearchTextBox cd_stepcode;
+        private System.Windows.Forms.Label st_rstepcode_label;
+        private System.Windows.Forms.Label ma_craftcode_label;
+        private CustomControl.TextBoxWithIcon.SearchTextBox cr_code;
+        private System.Windows.Forms.Label cd_stepno;
+    }
+}

+ 104 - 0
UAS_MES_YD/FunctionCode/Special/Special_CancelOQC.cs

@@ -0,0 +1,104 @@
+using System;
+using System.Data;
+using System.Text;
+using System.Windows.Forms;
+using UAS_MES_NEW.DataOperate;
+using UAS_MES_NEW.Entity;
+using UAS_MES_NEW.PublicMethod;
+
+namespace UAS_MES_NEW.Special
+{
+    public partial class Special_CancelOQC : Form
+    {
+        DataHelper dh;
+
+        LogStringBuilder sql = new LogStringBuilder();
+
+
+        DataTable Dbfind;
+
+        public Special_CancelOQC()
+        {
+            InitializeComponent();
+        }
+
+        private void Special_BoxSplit_Load(object sender, EventArgs e)
+        {
+            dh = SystemInf.dh;
+
+            cd_stepcode.FormName = Name;
+            cd_stepcode.TableName = "craftdetail left join step on st_code=cd_stepcode left join craft on cd_crid=cr_id";
+            cd_stepcode.SetValueField = new string[] { "cd_stepcode", "cd_stepno" };
+            cd_stepcode.SelectField = "cd_stepname # 工序名称 ,cd_stepcode # 工序编号,cd_stepno # 执行顺序";
+            cd_stepcode.DBTitle = "回流工序";
+            cd_stepcode.DbChange += Cd_stepcode_DbChange;
+        }
+
+        private void Cd_stepcode_DbChange(object sender, EventArgs e)
+        {
+            Dbfind = cd_stepcode.ReturnData;
+            BaseUtil.SetFormValue(this.Controls, Dbfind);
+        }
+        string ms_id = "";
+
+        private void SaveRepairInf_Click(object sender, EventArgs e)
+        {
+            if (ms_id == "") { OperateResult.AppendText(">>请先获取SN\n"); return; }
+            if (cd_stepcode.Text == "") { OperateResult.AppendText(">>请选择回流工序\n"); return; }
+            DataTable dt = (DataTable)dh.ExecuteSql("select ms_makecode,ms_firstsn,ms_sncode,ms_prodcode,ms_checkno,ms_craftcode from makeserial where ms_id='" + ms_id + "' and instr(ms_paststep,'" + cd_stepcode.Text + "')>0 ", "select");
+
+            if (dt.Rows.Count == 0) { OperateResult.AppendText(">>" + SN.Text + "不存在或未执行过" + cd_stepcode.Text + "工序\n"); return; }
+
+            string ms_makecode = dt.Rows[0]["ms_makecode"].ToString();
+            string ms_firstsn = dt.Rows[0]["ms_firstsn"].ToString();
+            string ms_prodcode = dt.Rows[0]["ms_prodcode"].ToString();
+            string ms_sncode = dt.Rows[0]["ms_sncode"].ToString();
+            string ms_checkno = dt.Rows[0]["ms_checkno"].ToString();
+            string ms_craftcode = dt.Rows[0]["ms_craftcode"].ToString();
+
+            if (cr_code.Text != "" && cr_code.Text != ms_craftcode) { OperateResult.AppendText(">>序列号途程和所选途程不一致\n"); return; }
+
+            dt = (DataTable)dh.ExecuteSql("select cd_id from craft left join craftdetail on cr_id=cd_crid where cr_prodcode='" + ms_prodcode + "' and cr_code='" + ms_craftcode + "' and cd_stepcode='" + cd_stepcode.Text + "'", "select");
+            if (dt.Rows.Count == 0) { OperateResult.AppendText(">>工序不在所选途程中\n"); return; }
+
+            StringBuilder sql = new StringBuilder();
+            sql.Append("update craftmaterial set cm_status=-1 where  cm_stepcode in (select cd_stepcode from craft left join ");
+            sql.Append("craftdetail on cd_crid = cr_id where cr_prodcode = '" + ms_prodcode + "'  and cd_detno >= " + cd_stepno.Text + ") ");
+            sql.Append("and cm_firstsn='" + ms_firstsn + "' and cm_makecode='" + ms_makecode + "'");
+            dh.ExecuteSql(sql.ToString(), "update");
+
+            dh.ExecuteSql("delete from oqcbatchdetail where obd_sncode='" + ms_sncode + "'", "update");
+
+            dh.ExecuteSql("update oqcbatch set ob_nowcheckqty=(select count(1) from oqcbatchdetail where obd_checkno='" + ms_checkno + "') where ob_checkno='" + ms_checkno + "'", "update");
+
+            dh.ExecuteSql("update makeserial set ms_nextstepcode='" + cd_stepcode.Text + "',ms_checkno='' where ms_id='" + ms_id + "'", "update");
+
+            LogicHandler.DoCommandLog(Tag.ToString(), User.UserCode, ms_makecode, User.UserLineCode, User.UserSourceCode, "OQC回流", "回流成功", ms_sncode, ms_checkno);
+            OperateResult.AppendText(">>" + SN.Text + "回流成功\n");
+            //cr_code.Text = "";
+            //cd_stepcode.Text = "";
+            SN.Text = "";
+            ms_id = "";
+        }
+
+        private void SN_KeyDown(object sender, KeyEventArgs e)
+        {
+            if (e.KeyCode == Keys.Enter)
+            {
+                DataTable dt = (DataTable)dh.ExecuteSql("select ms_id,ms_craftcode,ms_prodcode,ms_checkno from makeserial where ms_sncode='" + SN.Text + "' order by ms_id desc", "select");
+
+                if (dt.Rows.Count == 0) { OperateResult.AppendText(">>" + SN.Text + "不存在\n", System.Drawing.Color.Red, SN); return; }
+
+                ms_id = dt.Rows[0]["ms_id"].ToString();
+                string ms_checkno = dt.Rows[0]["ms_checkno"].ToString();
+
+                if (ms_checkno == "") { OperateResult.AppendText(">>" + SN.Text + "不存在抽检批次中\n", System.Drawing.Color.Red, SN); return; }
+
+                cr_code.Text = dt.Rows[0]["ms_craftcode"].ToString();
+                string ms_prodcode = dt.Rows[0]["ms_prodcode"].ToString();
+                cd_stepcode.Condition = "ST_STATUSCODE='AUDITED' and cr_code='" + cr_code.Text + "' and cr_prodcode='" + ms_prodcode + "' order by cd_stepno";
+                SaveRepairInf_Click(sender, e);
+            }
+        }
+    }
+}

+ 159 - 0
UAS_MES_YD/FunctionCode/Special/Special_CancelOQC.resx

@@ -0,0 +1,159 @@
+<?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>
+  <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+  <data name="SaveRepairInf.DownImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAEUAAAAWCAYAAACWl1FwAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
+        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAFcSURBVFhH5di7UsJAFMbxtDT6QMI76IAFT0npIE0K
+        GcRORxHklpAIBHLfbILV8XxeNsMznJ35F5vu+82kWYuILD4N7oq75roCw27sb/x5WBdc27btntY64o/i
+        DnZjPxy4S6A0R6PHO1WUNHc9ep4uxIXd2D8eP/XZowWUThBG+n3p0stsKbbJ0qFDFFfscQuUbpzm9Pqx
+        Eh8c4PGLkuX0Nl+LDw4GJckUTRaO+OBQo+SKpitXfHAwKClfZuuN+OBgUDJV0NzxxAeHM5TFxhffGUpe
+        aFp5n+KDg0FRfHH8nfjgUKPoktztXnxwMCgFX7xdID441ChlRf7+ID44GBTNl21wFB8capSqot0xFB8c
+        /lE6Wa70IU5oH0Ziw/5cFebpoPUwHPbL04nCJKUgisWF3dgPB3gABc9v7fvBoBcnaVKdvkha2I39cPjx
+        oPrhusndcPinpIXd2N8gIusbTaFspKtR2SQAAAAASUVORK5CYII=
+</value>
+  </data>
+  <data name="SaveRepairInf.MoveImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAEUAAAAWCAYAAACWl1FwAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
+        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAFzSURBVFhH5djNSgJRGMZxL2P2gTfQFbZvHSEZFBEW
+        CEIQBEIgVFiS9qXWoDmp4/fHzDmjM2a+vU/QqUVX0DvwXxxn9fwYXJwYEcXWNzIWt83dcq7AsBv7LXgA
+        ZI0r71/aaqjCJf8o7sFu7IcDFwdK4vimrv1oSZXRnArdQFzYjf3pQkOzRxIoVWc6X5X6M7ruBGIr9mbU
+        9MIVe9hAcXvBO125WnxwgMcXSpcPF20tPjgYlI5eUK6lxAcHg9Lmw3nTFx8cDEpLLSjr+OKDg0FpqojO
+        Gp744GBQ3vyITutT8cHBoDheRCe1ifjgYFBe+ZCxJ+KDg0GpT0NKv4zFBweDUpuEdFQdiQ8OBsXmw2Fl
+        JD44/KCM53TwNBQfHAzKMx/2Hgfig8M3SrXYUasUfz67DwOxYf9dV5urg+RWzta4aEnxn83OfV9c2I39
+        cIAHUOJceTNbUfmW94GX0sJu7IcDPH5fXCe4EvfXxe5/D7ux3yKi2CfkPhTy27lqkwAAAABJRU5ErkJg
+        gg==
+</value>
+  </data>
+  <data name="SaveRepairInf.NormalImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAEUAAAAWCAYAAACWl1FwAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
+        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAGVSURBVFhH5di7agJRFIXhDSKoYBQEC8FCECwEQRBE
+        4uUVEtTiPKVlom2wttM6IfF+15njXHRnL19jD/zFmanWV8zAEDNTp9OJS6/Sm2QUht3YH4cHtdvtF6k7
+        mUwG1tqd3FR3YTf2w0FKUVOu6XT68Xgw3+8PtWH/bDYbCkeLGo1Gz/d9JwzvrL0gCKx49KlerxtIBUGo
+        PjjAg2q1mqDc2fN99cEBHlStVk0oB+t56oMDPKhSqZggDNm1N/XBAR5ULpeNvGD46rrqgwM8qFQqGV8O
+        56ujPjjAg4rFosFL5ni5qA8O8KBCoWBuns/701l9cIAH5fN5QfF4dzipDw7woFwuZ+zN483+oD44wIOy
+        2azB52i13asPDvCgTCZjHGt5sdmqDw7woHQ6bRzX8ny1UR8c4EHJZNJc5fC7XKsPDvCgRCLR2x9Pzt9q
+        zT+Lpdqw/3A6W/HoUywWa32Nx8OL4zwffM8X6sJu7IcDPCgajaak7udoNNjsdgc81BZ2Yz8c4PH8cR2J
+        ROJSU3qXjMKwG/vjzEz/skOI3Zqgv7AAAAAASUVORK5CYII=
+</value>
+  </data>
+</root>

+ 3 - 3
UAS_MES_YD/PublicMethod/Print.cs

@@ -71,7 +71,7 @@ namespace UAS_MES_NEW.PublicMethod
                     //查询的结果的参数个数大于1需要给标签的多个参数赋值
                     if (Param.Rows.Count > 0)
                     {
-                        int LoopTime = Param.Rows.Count > 100 ? 100 : Param.Rows.Count;
+                        int LoopTime = Param.Rows.Count > 200 ? 200 : Param.Rows.Count;
                         for (int j = 0; j < LoopTime; j++)
                         {
                             for (int k = 0; k < doc.Variables.FormVariables.Count; k++)
@@ -174,7 +174,7 @@ namespace UAS_MES_NEW.PublicMethod
                     //查询的结果的参数个数大于1需要给标签的多个参数赋值
                     if (Param.Rows.Count > 0)
                     {
-                        int LoopTime = Param.Rows.Count > 100 ? 100 : Param.Rows.Count;
+                        int LoopTime = Param.Rows.Count > 200 ? 200 : Param.Rows.Count;
                         for (int j = 0; j < LoopTime; j++)
                         {
                             for (int k = 0; k < doc.Variables.FormVariables.Count; k++)
@@ -279,7 +279,7 @@ namespace UAS_MES_NEW.PublicMethod
                     //查询的结果的参数个数大于1需要给标签的多个参数赋值
                     if (Param.Rows.Count > 0)
                     {
-                        int LoopTime = Param.Rows.Count > 100 ? 100 : Param.Rows.Count;
+                        int LoopTime = Param.Rows.Count > 200 ? 200 : Param.Rows.Count;
                         for (int j = 0; j < LoopTime; j++)
                         {
                             for (int k = 0; k < format.SubStrings.Count; k++)

+ 9 - 0
UAS_MES_YD/UAS_MES_YD.csproj

@@ -998,6 +998,12 @@
     <Compile Include="FunctionCode\SMT\SMT_WaringSetting.Designer.cs">
       <DependentUpon>SMT_WaringSetting.cs</DependentUpon>
     </Compile>
+    <Compile Include="FunctionCode\Special\Special_CancelOQC.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="FunctionCode\Special\Special_CancelOQC.Designer.cs">
+      <DependentUpon>Special_CancelOQC.cs</DependentUpon>
+    </Compile>
     <Compile Include="FunctionCode\Special\Special_CancelImei.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -1608,6 +1614,9 @@
     <EmbeddedResource Include="FunctionCode\SMT\SMT_WaringSetting.resx">
       <DependentUpon>SMT_WaringSetting.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="FunctionCode\Special\Special_CancelOQC.resx">
+      <DependentUpon>Special_CancelOQC.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="FunctionCode\Special\Special_CancelImei.resx">
       <DependentUpon>Special_CancelImei.cs</DependentUpon>
     </EmbeddedResource>