ZHJA_HJGL/HJGL_ZH/FineUIPro.Web/HJGL/CheckManage/UTReportEdit.aspx.cs

620 lines
28 KiB
C#
Raw Normal View History

2024-05-08 17:17:11 +08:00
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
/// <summary>
/// 主键
/// </summary>
private string TestingReportPrintId
{
get
{
return (string)ViewState["TestingReportPrintId"];
}
set
{
ViewState["TestingReportPrintId"] = value;
}
}
/// <summary>
/// 检测报告Id
/// </summary>
private string ReportPrintId
{
get
{
return (string)ViewState["ReportPrintId"];
}
set
{
ViewState["ReportPrintId"] = value;
}
}
/// <summary>
/// 管线ID
/// </summary>
private string ISO_ID
{
get
{
return (string)ViewState["ISO_ID"];
}
set
{
ViewState["ISO_ID"] = value;
}
}
/// <summary>
/// 规格
/// </summary>
private string Specifications
{
get
{
return (string)ViewState["Specifications"];
}
set
{
ViewState["Specifications"] = value;
}
}
/// <summary>
/// 检测类型主键
/// </summary>
private string NDT_ID
{
get
{
return (string)ViewState["NDT_ID"];
}
set
{
ViewState["NDT_ID"] = value;
}
}
/// <summary>
/// 批主键
/// </summary>
private string BatchId
{
get
{
return (string)ViewState["BatchId"];
}
set
{
ViewState["BatchId"] = value;
}
}
#endregion
#region
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
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
/// <summary>
/// 提交按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
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
/// <summary>
/// 绑定数据
/// </summary>
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<SqlParameter> listStr = new List<SqlParameter>();
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
/// <summary>
/// 页索引改变事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
BindGrid();
}
#endregion
#region
/// <summary>
/// 排序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_Sort(object sender, GridSortEventArgs e)
{
BindGrid();
}
#endregion
#region
/// <summary>
/// 分页选择下拉改变事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
{
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
BindGrid();
}
#endregion
#endregion
#region
/// <summary>
/// 是否打印点击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void cbIsPrint_CheckedChanged(object sender, CheckedEventArgs e)
{
if (this.cbIsPrint.Checked == false)
{
this.txtPrinter.Text = string.Empty;
this.txtPrintTime.Text = string.Empty;
}
}
#endregion
}
}