private void btnLoadExcel_Click(object sender, EventArgs e)
        {
            try
            {
                OpenFileDialog        openFileDialog1 = new OpenFileDialog();
                System.Data.DataTable dtTemp          = ExcelHelperP.RenderFromExcel(openFileDialog1);

                if (dtTemp == null || dtTemp.Rows.Count == 0 || dtTemp.Columns.Count < 8 || dtTemp.Rows.Count != 39)
                {
                    MessageDialog.ShowPromptMessage("加载的EXCEL文件数据格式错误");
                    return;
                }

                string error       = null;
                string productCode = dtTemp.Rows[0][3].ToString();
                string cvtNumber   = dtTemp.Rows[0][6].ToString();

                if (!ServerModule.ServerModuleFactory.GetServerModule <IProductCodeServer>().VerifyProductCodesInfo(
                        productCode, cvtNumber, GlobalObject.CE_BarCodeType.内部钢印码, out error))
                {
                    MessageDialog.ShowErrorMessage(error);
                    return;
                }

                string 试验设备名称 = dtTemp.Rows[1][3].ToString();
                string 油品     = "出光1";
                string 试验结果   = dtTemp.Rows[37][5].ToString();

                IPersonnelArchiveServer personnelInfoServer = Service_Peripheral_HR.ServerModuleFactory.GetServerModule <IPersonnelArchiveServer>();

                string 装配员工号 = personnelInfoServer.GetPersonnelViewInfoByName(dtTemp.Rows[38][4].ToString());

                if (GlobalObject.GeneralFunction.IsNullOrEmpty(装配员工号))
                {
                    MessageDialog.ShowPromptMessage("文件中的装配员姓名在公司不唯一,无法获取到员工编号");
                    return;
                }

                string 线员工号 = personnelInfoServer.GetPersonnelViewInfoByName(dtTemp.Rows[38][7].ToString());

                if (GlobalObject.GeneralFunction.IsNullOrEmpty(线员工号))
                {
                    MessageDialog.ShowPromptMessage("文件中的下线员姓名在公司不唯一,无法获取到员工编号");
                    return;
                }

                string remark = dtTemp.Rows[35][2].ToString();

                remark += string.Format("【工号:{0}, 姓名:{1}从EXCEL文件中导入】", BasicInfo.LoginID, BasicInfo.LoginName);

                DataTable dt = new DataTable();

                dt.Columns.Add("TestType");         // 试验类型,如:基本功能、N挡磨合等
                dt.Columns.Add("TestItemName");     // 试验项目,如:密封性、传动平稳
                dt.Columns.Add("TestCondition");    // 试验条件,如:整个试验过程中
                dt.Columns.Add("TestRequirement");  // 试验要求,如:总成各结合面、外表面及油封刃口处不得有渗透现象
                dt.Columns.Add("TestData");         // 试验数据,如:0.5Mpa
                dt.Columns.Add("TestResult");       // 试验结论,如:合格

                string 检测项目     = "";
                string 试验项目     = "";
                string 试验条件     = "";
                string 试验要求     = "";
                string 检测数据     = "";
                string 试验项目测试结果 = "";
                string 试验项目备份   = "";

                for (int i = 3; i < 35; i++)
                {
                    if (!GlobalObject.GeneralFunction.IsNullOrEmpty(dtTemp.Rows[i][1].ToString()))
                    {
                        检测项目   = dtTemp.Rows[i][1].ToString();
                        试验项目   = "";
                        试验项目备份 = "";
                    }

                    if (!GlobalObject.GeneralFunction.IsNullOrEmpty(dtTemp.Rows[i][2].ToString()))
                    {
                        试验项目备份 = dtTemp.Rows[i][2].ToString();

                        if (!GlobalObject.GeneralFunction.IsNullOrEmpty(dtTemp.Rows[i][3].ToString()))
                        {
                            试验项目 = dtTemp.Rows[i][2].ToString() + "-" + dtTemp.Rows[i][3].ToString();
                        }
                        else
                        {
                            试验项目 = dtTemp.Rows[i][2].ToString();
                        }

                        试验条件 = "";
                    }
                    else if (!GlobalObject.GeneralFunction.IsNullOrEmpty(dtTemp.Rows[i][3].ToString()))
                    {
                        试验项目 = 试验项目备份 + "-" + dtTemp.Rows[i][3].ToString();
                        试验条件 = "";
                    }

                    if (!GlobalObject.GeneralFunction.IsNullOrEmpty(dtTemp.Rows[i][4].ToString()))
                    {
                        试验条件 = dtTemp.Rows[i][4].ToString();
                    }

                    试验要求     = dtTemp.Rows[i][5].ToString();
                    检测数据     = dtTemp.Rows[i][6].ToString();
                    试验项目测试结果 = dtTemp.Rows[i][7].ToString();

                    dt.Rows.Add(new object[] { 检测项目, 试验项目, 试验条件, 试验要求, 检测数据, 试验项目测试结果 });
                }

                CvtTestInfo testInfo = new CvtTestInfo(
                    productCode + " " + cvtNumber, 试验设备名称, 油品, 试验结果, 装配员工号, 线员工号, remark, dt);

                m_cvtTestDataService.SaveCVTExpData(testInfo);

                MessageDialog.ShowPromptMessage(string.Format("导入【{0}】文件成功!", openFileDialog1.FileName));
            }
            catch (Exception exce)
            {
                MessageDialog.ShowErrorMessage(exce.Message);
            }

            //for (int row = 0; row < dtTemp.Rows.Count; row++)
            //{
            //    for (int col = 0; col < dtTemp.Columns.Count; col++)
            //    {
            //        Console.Write("[{0}, {1}]:{2}\t", row, col, dtTemp.Rows[row][col].ToString());
            //    }

            //    Console.WriteLine();
            //}
        }