//   private static object obj = new object();
 public static ManualSelectWin getInstance()
 {
     if (instance == null || instance.IsDisposed)
     {
         instance = new ManualSelectWin();
     }
     return(instance);
 }
        /// <summary>
        /// 输入编号,发往厂家,插入到表tbProductId
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnConfirm_Click(object sender, EventArgs e)
        {
            if (cbbCompany.Text == "" || txtValveId.Text == "" || cbbMenjiaType.Text == "" || cbbValveType.Text == "")
            {
                MessageBox.Show("请输入,不能为空");
            }
            else
            {
                #region 0x105
                TPCANMsg canmsg105;

                canmsg105         = new TPCANMsg();
                canmsg105.ID      = 0x105;
                canmsg105.LEN     = Convert.ToByte(8);
                canmsg105.MSGTYPE = TPCANMessageType.PCAN_MESSAGE_STANDARD;
                canmsg105.DATA    = new byte[8];

                if (cbbMenjiaType.Text == "小门架")
                {
                    canmsg105.DATA[0] = 1;
                }
                if (cbbMenjiaType.Text == "大门架")
                {
                    canmsg105.DATA[1] = 1;
                }
                if (cbbValveType.Text == "普通_二联")
                {
                    canmsg105.DATA[2] = 1;
                    canmsg105.DATA[3] = 1;
                }
                if (cbbValveType.Text == "普通_三联")
                {
                    canmsg105.DATA[2] = 1;
                    canmsg105.DATA[3] = 2;
                }
                if (cbbValveType.Text == "普通_四联")
                {
                    canmsg105.DATA[2] = 1;
                    canmsg105.DATA[3] = 3;
                }
                if (cbbValveType.Text == "CDB4_二联")
                {
                    canmsg105.DATA[2] = 2;
                    canmsg105.DATA[3] = 1;
                }
                if (cbbValveType.Text == "CDB4_三联")
                {
                    canmsg105.DATA[2] = 2;
                    canmsg105.DATA[3] = 2;
                }
                if (cbbValveType.Text == "CDB4_四联")
                {
                    canmsg105.DATA[2] = 2;
                    canmsg105.DATA[3] = 3;
                }

                #endregion
                TPCANStatus sts4 = peak.write(canmsg105);
                if (sts4 == TPCANStatus.PCAN_ERROR_OK)
                {
                    MessageBox.Show("阀信息输入成功");
                }

                this.valveid     = txtValveId.Text;
                id               = this.valveid;
                this.SendCompany = cbbCompany.Text;
                company          = this.SendCompany;
                this.MenjiaType  = cbbMenjiaType.Text;
                menjiaType       = this.MenjiaType;
                this.ValveType   = cbbValveType.Text;
                valveType        = this.ValveType;

                string sqlstr = "select * from tbProductId where Id=" + "'" + txtValveId.Text + "'";


                if (!OperateDb.IsTableNull(sqlstr))//说明存在此id的记录,biao,须建立新名字。

                {
                    DataTable dt = OperateDb.readTableN(sqlstr);

                    n = dt.Rows.Count;
                    MessageBox.Show("此编号已测" + n.ToString() + "次,这是第" + (n + 1).ToString() + "次测试");
                    //   i = int.Parse(dt.Rows[n-1][1].ToString());
                    n = n + 1;
                    //  MessageBox.Show("这是第" + n.ToString() + "测试。");
                }
                else
                {
                    n = 1;
                }
                //n = i;

                try
                {
                    RecreateRecordManager.AddNewId(id, n, company, menjiaType, valveType);
                }
                catch (Exception ex)
                {
                    MessageBox.Show("加入阀编号表错误" + ex.Message);
                }
                this.Close();
                ManualSelectWin win = new ManualSelectWin();
                //TestFinishedWin win = new TestFinishedWin();
                win.Show();
            }
        }