Exemplo n.º 1
0
        private void SearchUnusedTestData(string strWTBH)
        {
            DataTable Data = CaiJiHelperClient.GetUnusedTestData(strWTBH);

            if (Data != null)
            {
                FpSpread_Info.Columns[0].Width  = 80;
                FpSpread_Info.Columns[1].Width  = 80;
                FpSpread_Info.Columns[2].Width  = 120;
                FpSpread_Info.Columns[3].Width  = 100;
                FpSpread_Info.Columns[4].Width  = 100;
                FpSpread_Info.Columns[5].Width  = 40;
                FpSpread_Info.Columns[6].Width  = 80;
                FpSpread_Info.Columns[7].Width  = 400;
                FpSpread_Info.Columns[8].Width  = 100;
                FpSpread_Info.Columns[9].Width  = 100;
                FpSpread_Info.Columns[10].Width = 100;
                FpSpread_Info.Columns[11].Width = 120;

                FpSpread_Info.Rows.Count = Data.Rows.Count;

                int    i, j;
                string strModuleIDs = string.Empty;

                foreach (DataRow Row in Data.Rows)
                {
                    strModuleIDs += "'" + Row["ModuleID"].ToString() + "',";
                }
                if (strModuleIDs.Length > 0)
                {
                    strModuleIDs = strModuleIDs.Substring(0, strModuleIDs.Length - 1);
                }
                DataTable dtSheet = ModuleHelperClient.GetSheetIDAndName(strModuleIDs);
                foreach (System.Data.DataColumn Column in Data.Columns)
                {
                    i = Data.Columns.IndexOf(Column);

                    FpSpread_Info.Columns[i].VerticalAlignment = CellVerticalAlignment.Center;
                    FpSpread_Info.Columns[i].Label             = Column.ColumnName;

                    foreach (DataRow Row in Data.Rows)
                    {
                        j = Data.Rows.IndexOf(Row);
                        if (i == 7)//解析试验结果
                        {
                            string        strTestData     = Row[Column.ColumnName].ToString();
                            StringBuilder strTestDataName = new StringBuilder();
                            try
                            {
                                List <JZTestCell> lstJZTC      = Newtonsoft.Json.JsonConvert.DeserializeObject <List <JZTestCell> >(strTestData);
                                string            strSheetName = string.Empty;
                                bool bHaveSheet = false;;
                                foreach (JZTestCell tcItem in lstJZTC)
                                {
                                    if (bHaveSheet == false)
                                    {
                                        bHaveSheet   = true;
                                        strSheetName = GetSheetName(dtSheet, tcItem.SheetID.ToString());
                                        if (string.IsNullOrEmpty(strSheetName))
                                        {
                                            strTestDataName.Append(tcItem.SheetID + "|");
                                        }
                                        else
                                        {
                                            strTestDataName.Append(strSheetName + "|");
                                        }
                                    }
                                    switch (tcItem.Name)
                                    {
                                    case JZTestEnum.DHBJ:
                                        strTestDataName.Append("断后标距:" + tcItem.Value);
                                        break;

                                    case JZTestEnum.LDZDL:
                                        strTestDataName.Append("拉断最大力:" + tcItem.Value);
                                        break;

                                    case JZTestEnum.PHHZ:
                                        strTestDataName.Append("破坏荷载:" + tcItem.Value);
                                        break;

                                    case JZTestEnum.QFL:
                                        strTestDataName.Append("屈服力:" + tcItem.Value);
                                        break;

                                    default:
                                        break;
                                    }
                                    strTestDataName.Append(";");
                                }
                            }
                            catch (Exception ex)
                            {
                                //logger.Error(string.Format("解析Json出错,TestData:{0},Exception:{1}", strTestData, ex.Message));
                                strTestDataName.Append(strTestData);
                                //continue;
                            }
                            FpSpread_Info.Cells[j, i].Value = strTestDataName.ToString();
                        }
                        else
                        {
                            FpSpread_Info.Rows[j].HorizontalAlignment = CellHorizontalAlignment.Center;
                            FpSpread_Info.Cells[j, i].Value           = Row[Column.ColumnName].ToString();
                        }
                        FpSpread_Info.Rows[j].Tag = Row["ID"];
                    }
                }
            }
        }