using BLL; using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace FineUIPro.Web.YLRQ.TestDataManagement { public partial class ReworkQualityRatingView : PageBase { /// /// 检测方法明细表ID /// private string ReworkId { get { return (string)ViewState["reworkId"]; } set { ViewState["reworkId"] = value; } } /// /// 检测方法ID /// private string NdtId { get { return (string)ViewState["ndtId"]; } set { ViewState["ndtId"] = value; } } #region 加载 /// /// 加载页面 /// /// /// protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { this.ReworkId = Request.Params["reworkId"]; this.NdtId = Request.Params["ndtId"]; if (!string.IsNullOrEmpty(this.ReworkId)) { //根据类型不同,显示不同的缺陷 var methodModel = Funs.DB.PV_ReworkManagementMethod.FirstOrDefault(p => p.ReworkId == this.ReworkId); var qualityRating = Funs.DB.PV_BO_QualityRating.FirstOrDefault(p => p.MethodId == this.ReworkId); if (methodModel != null) { var entrustModel = Funs.DB.PV_EntrustRecord.FirstOrDefault(p => p.Id == methodModel.EntrustId); if (entrustModel != null) { if (!string.IsNullOrEmpty(entrustModel.NdtId)) { var ndt = Funs.DB.PV_TestMethod.FirstOrDefault(p => p.Ndt_Id == entrustModel.NdtId); if (ndt != null) { if (ndt.Ndt_NdtCode.Contains("RT")) { Grid1.Columns[6].Hidden = false;//裂纹 Grid1.Columns[7].Hidden = false;//未熔合 Grid1.Columns[8].Hidden = false;//未焊透 Grid1.Columns[9].Hidden = false;//条状缺陷 Grid1.Columns[10].Hidden = false;//圆形缺陷 Grid1.Columns[11].Hidden = false;//深孔缺陷 Grid1.Columns[12].Hidden = false;//根部内凹 Grid1.Columns[13].Hidden = false;//根部咬边 Grid1.Columns[17].Hidden = true;//缺陷性质 Grid1.Columns[19].Hidden = false;//缺陷位置(定量) Grid1.Columns[19].HeaderText = "超标缺陷部位"; } else if (ndt.Ndt_NdtCode.Contains("UT") || ndt.Ndt_NdtCode.Contains("TOFD")) { Grid1.Columns[3].Hidden = true; Grid1.Columns[15].Hidden = false;//检测长度 Grid1.Columns[16].Hidden = false;//峰值波幅 Grid1.Columns[19].Hidden = false;//缺陷位置 Grid1.Columns[22].Hidden = false;//缺陷深度 Grid1.Columns[25].Hidden = false;//指示长度 } else if (ndt.Ndt_NdtCode.Contains("MT") || ndt.Ndt_NdtCode.Contains("PT")) { Grid1.Columns[3].Hidden = true; Grid1.Columns[17].Hidden = false;//缺陷性质 Grid1.Columns[19].Hidden = false;//缺陷位置 Grid1.Columns[20].Hidden = false;//缺陷尺寸 } } } } } BindGrid(); } } } #endregion #region 数据绑定 /// /// 数据绑定 /// private void BindGrid() { string strSql = @"SELECT QualityRating.QualityRatingId,QualityRating.MethodId,QualityRating.Remake,QualityRating.RemakeResult,QualityRating.WeldingId,QualityRating.FilmNum,QualityRating.RepairTag,QualityRating.Cack,QualityRating.NotFusion,QualityRating.NotPenetration,QualityRating.StripDefects,QualityRating.CircularDefects,QualityRating.DeepHoleDefects,QualityRating.RootsConcave,QualityRating.RootsBiteEdge,QualityRating.PseudoDefects,QualityRating.DefectLength,QualityRating.DefectResult,QualityRating.SignMan,QualityRating.SignDate,QualityRating.Remark,JointInfo.WeldingCode,trust.ProjectId,Project.ProjectCode,(select a.pkidStr from (SELECT STUFF(( SELECT ',' +convert(VARCHAR, WED_Code) FROM (select WED_Code from HJGL_BS_Welder as Welder where Welder.WED_ID in (select Id from StrToTable(JointInfo.BackingWelderId)))t FOR XML PATH('')), 1, 1, '') AS pkidStr) a) as WED_Code,QualityRating.DetectLength,QualityRating.PeakAmplitude,QualityRating.DefectLocation,QualityRating.DefectRation,QualityRating.DepthDefect,QualityRating.IndicatingLength,QualityRating.DefectHeight,QualityRating.DefectsHighSide,QualityRating.DefectSize,QualityRating.DefectNature,QualityRating.IsPass FROM dbo.PV_BO_QualityRating QualityRating LEFT JOIN dbo.PV_ReworkManagementMethod AS trustItem ON trustItem.ReworkId = QualityRating.MethodId LEFT JOIN dbo.PV_EntrustRecord AS trust ON trust.Id = trustItem.EntrustId LEFT JOIN dbo.PV_WeldInformation AS JointInfo ON JointInfo.WeldingId = QualityRating.WeldingId LEFT JOIN dbo.Base_Project AS Project ON Project.ProjectId = trust.ProjectId WHERE QualityRating.WeldingId IS NOT NULL AND QualityRating.MethodId = @MethodId AND Trust.NdtId=@NdtId"; List listStr = new List(); listStr.Add(new SqlParameter("@MethodId", this.ReworkId)); listStr.Add(new SqlParameter("@NdtId", this.NdtId)); SqlParameter[] parameter = listStr.ToArray(); DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter); Grid1.RecordCount = tb.Rows.Count; tb = GetFilteredTable(Grid1.FilteredData, tb); var table = this.GetPagedDataTable(Grid1, tb); Grid1.DataSource = table; Grid1.DataBind(); } #endregion #region 排序 /// /// 排序 /// /// /// protected void Grid1_Sort(object sender, GridSortEventArgs e) { BindGrid(); } #endregion } }