using System; using System.Collections.Generic; using System.Data.SqlClient; using System.Data; using System.Linq; using BLL; using System.Web; namespace FineUIPro.Web.HJGL.CheckManage { public partial class UTReportEdit : PageBase { #region 定义项 /// /// 主键 /// private string TestingReportPrintId { get { return (string)ViewState["TestingReportPrintId"]; } set { ViewState["TestingReportPrintId"] = value; } } /// /// 检测报告Id /// private string ReportPrintId { get { return (string)ViewState["ReportPrintId"]; } set { ViewState["ReportPrintId"] = value; } } /// /// 管线ID /// private string ISO_ID { get { return (string)ViewState["ISO_ID"]; } set { ViewState["ISO_ID"] = value; } } /// /// 规格 /// private string Specifications { get { return (string)ViewState["Specifications"]; } set { ViewState["Specifications"] = value; } } /// /// 检测类型主键 /// private string NDT_ID { get { return (string)ViewState["NDT_ID"]; } set { ViewState["NDT_ID"] = value; } } /// /// 批主键 /// private string BatchId { get { return (string)ViewState["BatchId"]; } set { ViewState["BatchId"] = value; } } #endregion #region 加载 /// /// 加载页面 /// /// /// protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { #region 加载下拉列表 //检测技术等级 this.drpTechnicalGrade.DataValueField = "ConstValue"; this.drpTechnicalGrade.DataTextField = "ConstText"; this.drpTechnicalGrade.DataSource = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_TechnicalGrade); this.drpTechnicalGrade.DataBind(); Funs.FineUIPleaseSelect(this.drpTechnicalGrade); //检测时机 this.drpTestingTime.DataValueField = "ConstValue"; this.drpTestingTime.DataTextField = "ConstText"; this.drpTestingTime.DataSource = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_TestingTime); this.drpTestingTime.DataBind(); Funs.FineUIPleaseSelect(this.drpTestingTime); //热处理状态 this.drpHotProessState.DataValueField = "ConstValue"; this.drpHotProessState.DataTextField = "ConstText"; this.drpHotProessState.DataSource = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_HotProessState); this.drpHotProessState.DataBind(); Funs.FineUIPleaseSelect(this.drpHotProessState); //检测面 this.drpDetectionSurface.DataValueField = "ConstValue"; this.drpDetectionSurface.DataTextField = "ConstText"; this.drpDetectionSurface.DataSource = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_DetectionSurface); this.drpDetectionSurface.DataBind(); Funs.FineUIPleaseSelect(this.drpDetectionSurface); //标准试块1 this.drpStandardTestBlock.DataValueField = "ConstValue"; this.drpStandardTestBlock.DataTextField = "ConstText"; this.drpStandardTestBlock.DataSource = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_StandardTestBlock); this.drpStandardTestBlock.DataBind(); Funs.FineUIPleaseSelect(this.drpStandardTestBlock); //标准试块2 this.drpStandardTestBlock2.DataValueField = "ConstValue"; this.drpStandardTestBlock2.DataTextField = "ConstText"; this.drpStandardTestBlock2.DataSource = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_StandardTestBlock); this.drpStandardTestBlock2.DataBind(); Funs.FineUIPleaseSelect(this.drpStandardTestBlock2); //设备型号 this.drpEquipmentCode.DataValueField = "ConstValue"; this.drpEquipmentCode.DataTextField = "ConstText"; this.drpEquipmentCode.DataSource = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_UTEquipmentModel); this.drpEquipmentCode.DataBind(); Funs.FineUIPleaseSelect(this.drpEquipmentCode); //检测灵敏度 this.drpDetectionSensitivity.DataValueField = "ConstValue"; this.drpDetectionSensitivity.DataTextField = "ConstText"; this.drpDetectionSensitivity.DataSource = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_DetectionSensitivity); this.drpDetectionSensitivity.DataBind(); Funs.FineUIPleaseSelect(this.drpDetectionSensitivity); //耦合剂 this.drpCouplingAgent.DataValueField = "ConstValue"; this.drpCouplingAgent.DataTextField = "ConstText"; this.drpCouplingAgent.DataSource = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_CouplingAgent); this.drpCouplingAgent.DataBind(); Funs.FineUIPleaseSelect(this.drpCouplingAgent); #endregion this.ReportPrintId = HttpUtility.UrlDecode(Request.Params["reportPrintId"]); if (!string.IsNullOrEmpty(this.ReportPrintId)) { ISO_ID = ReportPrintId.Split('|')[0]; Specifications = ReportPrintId.Split('|')[1]; NDT_ID = ReportPrintId.Split('|')[2]; BatchId = ReportPrintId.Split('|')[3]; string[] jointNos = (ReportPrintId.Split('|')[4]).Split(','); Model.HJGL_PW_IsoInfo iso = BLL.HJGL_PW_IsoInfoService.GetIsoInfoByIsoInfoId(ISO_ID); Model.HJGL_BO_Batch batch = BLL.HJGL_BO_BatchService.GetBatchById(BatchId); var trust = from x in Funs.DB.HJGL_CH_Trust where x.BatchId == BatchId && x.CH_NDTMethod == NDT_ID select x; var hardReport = from x in Funs.DB.HJGL_CH_HardTestReport where x.ISO_ID == ISO_ID select x; var pro = BLL.Base_ProjectService.GetProjectByProjectId(iso.ProjectId); this.txtCH_TrustUnit.Text = "镇海石化建安工程有限公司"; if (iso != null) { this.txtIsoNo.Text = iso.ISO_IsoNo; Model.Base_Unit unit = BLL.Base_UnitService.GetUnit(iso.BSU_ID); if (unit != null) { this.txtContractUnit.Text = unit.UnitName; } var jot = (from x in Funs.DB.HJGL_PW_JointInfo join y in Funs.DB.HJGL_BO_BatchDetail on x.JOT_ID equals y.JOT_ID where x.ISO_ID == ISO_ID && x.JOT_JointDesc == Specifications && y.BatchId == BatchId && y.NDT.Contains(NDT_ID) select x).FirstOrDefault(); if (jot != null) { var ste = BLL.HJGL_MaterialService.GetSteelBySteID(jot.STE_ID); if (ste != null) { this.txtSteelCode.Text = ste.STE_Code; } } var checkParm = from x in Funs.DB.HJGL_WeldingManage_TestingParameters where x.WeldSpecification == Specifications && x.STE_ID == iso.STE_ID select x; if (checkParm.Count() > 0) { this.drpTestingTime.Text = checkParm.First().TestingTime; } } if (batch != null) { var ndtr = BLL.HJGL_DetectionService.GetNDTRateByNDTRID(batch.NDTR_ID); if (ndtr != null) { this.txtNDTR_Name.Text = ndtr.NDTR_Name; } } if (trust.Count() > 0) { var wme = BLL.HJGL_WeldingMethodService.GetWeldMethodByWMEID(trust.First().CH_WeldMethod); if (wme != null) { this.txtWME_Name.Text = wme.WME_Name; } var jst = BLL.HJGL_GrooveService.GetSlopeTypeByJSTID(trust.First().CH_SlopeType); if (jst != null) { this.txtSlopeType.Text = jst.JST_Name;//坡口型式 } this.txtCH_NDTCriteria.Text = trust.First().CH_NDTCriteria; //if (trust.First().CH_AcceptGrade == "1") //{ // this.txtCH_AcceptGrade.Text = "Ⅰ"; //} //if (trust.First().CH_AcceptGrade == "2") //{ // this.txtCH_AcceptGrade.Text = "Ⅱ"; //} //if (trust.First().CH_AcceptGrade == "3") //{ // this.txtCH_AcceptGrade.Text = "Ⅲ"; //} //if (trust.First().CH_AcceptGrade == "4") //{ // this.txtCH_AcceptGrade.Text = "Ⅳ"; //} //if (trust.First().CH_AcceptGrade == "5") //{ // this.txtCH_AcceptGrade.Text = "Ⅴ"; //} this.txtCH_AcceptGrade.Text = (from x in Funs.DB.HJGL_PW_JointInfo join y in Funs.DB.HJGL_CH_TrustItem on x.JOT_ID equals y.JOT_ID where y.CH_TrustID == trust.First().CH_TrustID select x.JOT_QualifiedLevel).FirstOrDefault(); } if (hardReport.Count() > 0) { var eq = BLL.HJGL_EquipmentService.GetEquipmentById(hardReport.First().EquipmentId); if (eq != null) { this.drpEquipmentCode.Text = eq.EquipmentCode; } } this.txtSpecifications.Text = Specifications;//检件规格 this.drpHotProessState.Text = "消应力";//热处理状态 this.drpTestingTime.Text = "焊后"; this.txtSurfaceState.Text = "机械打磨"; this.txtProbeType.Text = "2.5MHZ10×10K2"; this.txtSurfaceCompensation.Text = " dB"; this.txtScanningRate.Text = "声程1:1"; string jotyName = string.Empty; foreach (var jointNo in jointNos) { var jointId = (from x in Funs.DB.HJGL_PW_JointInfo where x.ISO_ID == ISO_ID && x.JOT_JointNo == jointNo select x.JOT_ID).FirstOrDefault(); if (jointId != null) { if (string.IsNullOrEmpty(jotyName)) //获取检件名称 { Model.HJGL_PW_JointInfo joint = BLL.HJGL_PW_JointInfoService.GetJointInfoByJotID(jointId); if (joint != null) { Model.HJGL_BS_JointType jointType = BLL.HJGL_WeldService.GetJointTypeByID(joint.JOTY_ID); if (jointType != null && !string.IsNullOrEmpty(jointType.JOTY_Name)) { jotyName = jointType.JOTY_Name; break; } } } } } this.txtIso_No.Text = jotyName; var utReport = BLL.HJGL_TestingReportPrintService.GetTestingReportPrint(ISO_ID, Specifications, NDT_ID, BatchId, Request.Params["STE_ID"], Request.Params["STE_ID2"], Request.Params["WME_ID"]); if (utReport != null) { this.TestingReportPrintId = utReport.TestingReportPrintId; if (!string.IsNullOrEmpty(utReport.ReportCode) && utReport.ReportCode.Length > 3) { this.txtUTReportCode.Text = utReport.ReportCode.Substring(3);//报表编号 } else { this.txtUTReportCode.Text = utReport.ReportCode; } this.hdReportCode.Text = utReport.ReportCode; //this.txtContractUnit.Text = utReport.ContractUnitId;//承包单位 this.drpTechnicalGrade.Text = utReport.UT_TechnicalGrade;//技术等级 this.drpDetectionSurface.Text = utReport.UT_DetectionSurface;//检测面 this.txtSurfaceState.Text = utReport.UT_SurfaceState;//表面状态 this.drpStandardTestBlock.Text = utReport.UT_StandardTestBlock;//标准试块1 this.drpStandardTestBlock2.Text = utReport.UT_StandardTestBlock2;//标准试块2 this.txtProbeType.Text = utReport.UT_ProbeType;//探头型号 this.txtSurfaceCompensation.Text = utReport.UT_SurfaceCompensation;//表面补偿 this.txtScanningRate.Text = utReport.UT_ScanningRate;//扫描比例 this.drpDetectionSensitivity.Text = utReport.UT_DetectionSensitivity;//检测灵敏度 this.drpCouplingAgent.Text = utReport.UT_CouplingAgent;//耦合剂 this.drpEquipmentCode.Text = utReport.EquipmentCode; this.drpTestingTime.Text = utReport.TestingTime; this.txtPrinter.Text = utReport.Printer;//打印人 this.txtPrintTime.Text = string.Format("{0:yyyy-MM-dd}", utReport.PrintTime);//打印时间 if (!string.IsNullOrEmpty(this.txtPrinter.Text.Trim()) && !string.IsNullOrEmpty(this.txtPrintTime.Text.Trim())) { this.cbIsPrint.Checked = true; } this.drpHotProessState.Text = utReport.HotProessState; } else { this.hdReportCode.Text = BLL.SQLHelper.RunProcNewIdByProjectId("SpGetNewCodeByProjectId3", "HJGL_CH_TestingReportPrint", "ReportCode", iso.ProjectId, "UT-" + pro.TestEngineeringCode + "-"); this.txtUTReportCode.Text = this.hdReportCode.Text.Substring(3); this.txtContractUnit.Text = "镇海石化建安工程有限公司"; this.txtSurfaceState.Text = "机械打磨"; this.txtProbeType.Text = "2.5MHZ10×10K2"; this.txtSurfaceCompensation.Text = " dB"; this.txtScanningRate.Text = "声程1:1"; } BindGrid(); } } } #endregion #region 提交 /// /// 提交按钮 /// /// /// protected void btnSave_Click(object sender, EventArgs e) { var p = BLL.HJGL_BO_BatchService.GetBatchById(this.BatchId); Model.HJGL_CH_TestingReportPrint newUTReport = new Model.HJGL_CH_TestingReportPrint(); newUTReport.ISO_ID = this.ISO_ID; if (p != null) { newUTReport.ProjectId = p.ProjectId; } newUTReport.Specifications = this.Specifications; newUTReport.NDT_ID = this.NDT_ID; newUTReport.BatchId = this.BatchId; newUTReport.JotyName = this.txtIso_No.Text; newUTReport.ReportCode = this.hdReportCode.Text.Trim(); newUTReport.ContractUnitId = this.txtContractUnit.Text.Trim(); if (this.drpTechnicalGrade.SelectedValue != BLL.Const._Null) { if (!string.IsNullOrEmpty(this.drpTechnicalGrade.Text.Trim())) { newUTReport.UT_TechnicalGrade = this.drpTechnicalGrade.Text.Trim(); } else { newUTReport.UT_TechnicalGrade = this.drpTechnicalGrade.SelectedValue; } } if (this.drpDetectionSurface.SelectedValue != BLL.Const._Null) { if (!string.IsNullOrEmpty(this.drpDetectionSurface.Text.Trim())) { newUTReport.UT_DetectionSurface = this.drpDetectionSurface.Text.Trim(); } else { newUTReport.UT_DetectionSurface = this.drpDetectionSurface.SelectedValue; } } newUTReport.UT_SurfaceState = this.txtSurfaceState.Text.Trim(); if (this.drpStandardTestBlock.SelectedValue != BLL.Const._Null) { if (!string.IsNullOrEmpty(this.drpStandardTestBlock.Text.Trim())) { newUTReport.UT_StandardTestBlock = this.drpStandardTestBlock.Text.Trim(); } else { newUTReport.UT_StandardTestBlock = this.drpStandardTestBlock.SelectedValue; } } if (this.drpStandardTestBlock2.SelectedValue!=BLL.Const._Null) { if (!string.IsNullOrEmpty(this.drpStandardTestBlock2.Text.Trim())) { newUTReport.UT_StandardTestBlock2 = this.drpStandardTestBlock2.Text.Trim(); } else { newUTReport.UT_StandardTestBlock2 = this.drpStandardTestBlock2.SelectedValue; } } newUTReport.UT_ProbeType = this.txtProbeType.Text.Trim(); newUTReport.UT_SurfaceCompensation = this.txtSurfaceCompensation.Text.Trim(); newUTReport.UT_ScanningRate = this.txtScanningRate.Text.Trim(); if (this.drpDetectionSensitivity.SelectedValue != BLL.Const._Null) { if (!string.IsNullOrEmpty(this.drpDetectionSensitivity.Text.Trim())) { newUTReport.UT_DetectionSensitivity = this.drpDetectionSensitivity.Text.Trim(); } else { newUTReport.UT_DetectionSensitivity = this.drpDetectionSensitivity.SelectedValue; } } if (this.drpCouplingAgent.SelectedValue != BLL.Const._Null) { if (!string.IsNullOrEmpty(this.drpCouplingAgent.Text.Trim())) { newUTReport.UT_CouplingAgent = this.drpCouplingAgent.Text.Trim(); } else { newUTReport.UT_CouplingAgent = this.drpCouplingAgent.SelectedValue; } } if (this.drpTestingTime.SelectedValue != BLL.Const._Null) { if (!string.IsNullOrEmpty(this.drpTestingTime.Text.Trim())) { newUTReport.TestingTime = this.drpTestingTime.Text.Trim(); } else { newUTReport.TestingTime = this.drpTestingTime.SelectedValue; } } if (this.drpEquipmentCode.SelectedValue != BLL.Const._Null) { if (!string.IsNullOrEmpty(this.drpEquipmentCode.Text.Trim())) { newUTReport.EquipmentCode = this.drpEquipmentCode.Text.Trim(); } else { newUTReport.EquipmentCode = this.drpEquipmentCode.SelectedValue; } } newUTReport.Printer = this.txtPrinter.Text.Trim(); newUTReport.PrintTime = Funs.GetNewDateTime(this.txtPrintTime.Text.Trim()); if (this.drpHotProessState.SelectedValue != BLL.Const._Null) { if (!string.IsNullOrEmpty(this.drpHotProessState.Text.Trim())) { newUTReport.HotProessState = this.drpHotProessState.Text.Trim(); } else { newUTReport.HotProessState = this.drpHotProessState.SelectedValue; } } newUTReport.STE_ID = Request.Params["STE_ID"]; newUTReport.STE_ID2 = Request.Params["STE_ID2"]; newUTReport.WME_ID = Request.Params["WME_ID"]; if (string.IsNullOrEmpty(this.TestingReportPrintId)) { newUTReport.Type = "UT"; this.TestingReportPrintId = SQLHelper.GetNewID(typeof(Model.HJGL_CH_TestingReportPrint)); newUTReport.TestingReportPrintId = this.TestingReportPrintId; BLL.HJGL_TestingReportPrintService.AddTestingReportPrint(newUTReport); BLL.Sys_LogService.AddLog(Const.System_3, this.CurrUser.LoginProjectId, this.CurrUser.UserId, "添加焊缝超声检测报告"); } else { newUTReport.TestingReportPrintId = this.TestingReportPrintId; BLL.HJGL_TestingReportPrintService.UpdateTestingReportPrint(newUTReport); BLL.Sys_LogService.AddLog(Const.System_3, this.CurrUser.LoginProjectId, this.CurrUser.UserId, "修改焊缝超声检测报告"); } ShowNotify("提交成功!", MessageBoxIcon.Success); PageContext.RegisterStartupScript(ActiveWindow.GetHideReference()); } #endregion #region 绑定数据 /// /// 绑定数据 /// private void BindGrid() { string strSql = @"SELECT QualityRating.QualityRatingId, QualityRating.CH_TrustItemID, QualityRating.ISO_ID, QualityRating.JOT_ID, --BatchDetail.BatchDetailId, trust.CH_NDTMethod AS NDT, JointInfo.JOT_JointDesc, JointInfo.JOT_JointNo+(case batchDetail.PointType when '2' then 'K' else '' end) as JOT_JointNo, QualityRating.FilmNum, Welder.WED_Code, QualityRating.DefectNature, QualityRating.DefectSize, QualityRating.DefectResult, QualityRating.Remark FROM dbo.HJGL_BO_QualityRating AS QualityRating LEFT JOIN DBO.HJGL_CH_TrustItem AS TrustItem ON TrustItem.CH_TrustItemID = QualityRating.CH_TrustItemID LEFT JOIN dbo.HJGL_CH_Trust trust ON trust.CH_TrustID = TrustItem.CH_TrustID --LEFT JOIN DBO.HJGL_BO_BatchDetail AS BatchDetail ON BatchDetail.BatchDetailId=TrustItem.BatchDetailId LEFT JOIN DBO.HJGL_PW_JointInfo AS JointInfo ON JointInfo.JOT_ID=QualityRating.JOT_ID LEFT JOIN dbo.HJGL_BO_BatchDetail batchDetail ON batchDetail.JOT_ID = QualityRating.JOT_ID LEFT JOIN DBO.HJGL_BS_Welder AS Welder ON Welder.WED_ID =JointInfo.JOT_CellWelder WHERE QualityRating.ISO_ID=@ISO_ID AND JointInfo.JOT_JointDesc=@JOT_JointDesc AND JointInfo.STE_ID=@STE_ID AND (JointInfo.STE_ID2=@STE_ID2 or @STE_ID2='') AND JointInfo.WME_ID=@WME_ID AND trust.CH_NDTMethod = @NDT AND trust.BatchId=@BatchId"; List listStr = new List(); listStr.Add(new SqlParameter("@ISO_ID", this.ISO_ID)); listStr.Add(new SqlParameter("@JOT_JointDesc", this.Specifications)); listStr.Add(new SqlParameter("@NDT", this.NDT_ID)); listStr.Add(new SqlParameter("@BatchId", this.BatchId)); listStr.Add(new SqlParameter("@STE_ID", Request.Params["STE_ID"])); listStr.Add(new SqlParameter("@STE_ID2", Request.Params["STE_ID2"])); listStr.Add(new SqlParameter("@WME_ID", Request.Params["WME_ID"])); SqlParameter[] parameter = listStr.ToArray(); DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter); // 2.获取当前分页数据 //var table = this.GetPagedDataTable(Grid1, tb1); Grid1.RecordCount = tb.Rows.Count; tb = GetFilteredTable(Grid1.FilteredData, tb); var table = this.GetPagedDataTable(Grid1, tb); Grid1.DataSource = table; Grid1.DataBind(); } #endregion #region 分页排序 #region 页索引改变事件 /// /// 页索引改变事件 /// /// /// protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e) { BindGrid(); } #endregion #region 排序 /// /// 排序 /// /// /// protected void Grid1_Sort(object sender, GridSortEventArgs e) { BindGrid(); } #endregion #region 分页选择下拉改变事件 /// /// 分页选择下拉改变事件 /// /// /// protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e) { Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue); BindGrid(); } #endregion #endregion #region 是否打印点击事件 /// /// 是否打印点击事件 /// /// /// protected void cbIsPrint_CheckedChanged(object sender, CheckedEventArgs e) { if (this.cbIsPrint.Checked == false) { this.txtPrinter.Text = string.Empty; this.txtPrintTime.Text = string.Empty; } } #endregion } }