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

599 lines
27 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.Collections.Generic;
using BLL;
using System.Linq;
using System.Data.SqlClient;
using System.Data;
using System.Web;
namespace FineUIPro.Web.HJGL.CheckManage
{
public partial class MTReportEdit : 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.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.drpTestMethod.DataValueField = "ConstValue";
this.drpTestMethod.DataTextField = "ConstText";
this.drpTestMethod.DataSource = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_TestMethod);
this.drpTestMethod.DataBind();
Funs.FineUIPleaseSelect(this.drpTestMethod);
//设备名称
this.drpEquipmentName.DataValueField = "ConstValue";
this.drpEquipmentName.DataTextField = "ConstText";
this.drpEquipmentName.DataSource = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_EquipmentName);
this.drpEquipmentName.DataBind();
Funs.FineUIPleaseSelect(this.drpEquipmentName);
//设备型号
this.drpEquipmentModel.DataValueField = "ConstValue";
this.drpEquipmentModel.DataTextField = "ConstText";
this.drpEquipmentModel.DataSource = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_EquipmentModel);
this.drpEquipmentModel.DataBind();
Funs.FineUIPleaseSelect(this.drpEquipmentModel);
//灵敏度试片
this.drpSensitivityTestBlock.DataValueField = "ConstValue";
this.drpSensitivityTestBlock.DataTextField = "ConstText";
this.drpSensitivityTestBlock.DataSource = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_SensitivityTestBlock);
this.drpSensitivityTestBlock.DataBind();
Funs.FineUIPleaseSelect(this.drpSensitivityTestBlock);
//磁粉种类
this.drpMagneticPowderType.DataValueField = "ConstValue";
this.drpMagneticPowderType.DataTextField = "ConstText";
this.drpMagneticPowderType.DataSource = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_MagneticPowderType);
this.drpMagneticPowderType.DataBind();
Funs.FineUIPleaseSelect(this.drpMagneticPowderType);
//磁悬液浓度
this.drpConcentration.DataValueField = "ConstValue";
this.drpConcentration.DataTextField = "ConstText";
this.drpConcentration.DataSource = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_Concentration);
this.drpConcentration.DataBind();
Funs.FineUIPleaseSelect(this.drpConcentration);
#endregion
//this.ReportPrintId = Request.Params["reportPrintId"];
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(',');
//var report = BLL.HJGL_TestingReportPrintService.GetCheckReportInfo(ISO_ID, NDT_ID, BatchId);
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;
this.txtIso_No.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;
}
this.txtCH_NDTCriteria.Text = trust.First().CH_NDTCriteria;
var jot = 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;
if (jot.Count() > 0)
{
var ndtInfo = BLL.HJGL_TestingService.GetTestingByTestingId(NDT_ID);
var joty = BLL.HJGL_WeldService.GetJointTypeByID(jot.First().JOTY_ID);
if ((ndtInfo.NDT_Code == "MT" || ndtInfo.NDT_Code == "PT") && joty.JOTY_Group == "1")
{
this.txtCH_AcceptGrade.Text = "";
}
else
{
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.drpEquipmentName.Text = eq.EquipmentName;//设备名称
this.drpEquipmentModel.Text = eq.EquipmentCode;
}
}
this.txtSpecifications.Text = Specifications;//检件规格
this.drpHotProessState.Text = "消应力";//热处理状态
this.drpTestMethod.Text = "连续磁轭法";//磁化方法
this.txtSurfaceState.Text = "机械打磨";
this.drpSensitivityTestBlock.Text = "A1:30/100";
this.txtCurrentType.Text = "交流电";
this.txtLiftingPower.Text = "≥45N";
this.txtMagnetizationTime.Text = "1-3s";
this.drpMagneticPowderType.Text = "黑磁膏";
this.drpConcentration.Text = "1.2-2.4mL/100mL";
this.txtImposingMethod.Text = "喷洒";
this.drpTestingTime.Text = "焊后";
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 mtReport = BLL.HJGL_TestingReportPrintService.GetTestingReportPrint(ISO_ID, Specifications, NDT_ID, BatchId, Request.Params["STE_ID"], Request.Params["STE_ID2"], Request.Params["WME_ID"]);
if (mtReport != null)
{
this.TestingReportPrintId = mtReport.TestingReportPrintId;
if (!string.IsNullOrEmpty(mtReport.ReportCode) && mtReport.ReportCode.Length > 3)
{
this.txtMTReportCode.Text = mtReport.ReportCode.Substring(3);//报告编号
}
else
{
this.txtMTReportCode.Text = mtReport.ReportCode;
}
this.hdReportCode.Text = mtReport.ReportCode;
this.txtSurfaceState.Text = mtReport.MT_SurfaceState;//表面状态
this.drpSensitivityTestBlock.Text = mtReport.MT_SensitivityTestBlock;//灵敏度试片
this.txtCurrentType.Text = mtReport.MT_CurrentType;//电流类型
this.txtLiftingPower.Text = mtReport.MT_LiftingPower;//提升力/电流
this.txtMagnetizationTime.Text = mtReport.MT_MagnetizationTime;//磁化时间
this.drpMagneticPowderType.Text = mtReport.MT_MagneticPowderType;//磁粉种类
this.drpConcentration.Text = mtReport.MT_Concentration;//磁悬液浓度
this.txtImposingMethod.Text = mtReport.MT_ImposingMethod;//施加方法
this.drpEquipmentName.Text = mtReport.EquipmentName;
this.drpEquipmentModel.Text = mtReport.EquipmentCode;
this.drpTestingTime.Text = mtReport.TestingTime;
this.txtPrinter.Text = mtReport.Printer;//打印人
this.txtPrintTime.Text = string.Format("{0:yyyy-MM-dd}", mtReport.PrintTime);//打印时间
if (!string.IsNullOrEmpty(this.txtPrinter.Text.Trim()) && !string.IsNullOrEmpty(this.txtPrintTime.Text.Trim()))
{
this.cbIsPrint.Checked = true;
}
this.drpHotProessState.Text = mtReport.HotProessState;
this.txtPoleSpacing.Text = mtReport.PoleSpacing;
}
else
{
this.hdReportCode.Text = BLL.SQLHelper.RunProcNewIdByProjectId("SpGetNewCodeByProjectId3", "HJGL_CH_TestingReportPrint", "ReportCode", iso.ProjectId, "MT-" + pro.TestEngineeringCode + "-");
this.txtMTReportCode.Text = this.hdReportCode.Text.Substring(3);
}
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 newMTReport = new Model.HJGL_CH_TestingReportPrint();
newMTReport.ISO_ID = this.ISO_ID;
if (p != null)
{
newMTReport.ProjectId = p.ProjectId;
}
newMTReport.Specifications = this.Specifications;
newMTReport.NDT_ID = this.NDT_ID;
newMTReport.BatchId = this.BatchId;
newMTReport.JotyName = this.txtIso_No.Text;
newMTReport.ReportCode = this.hdReportCode.Text.Trim();
newMTReport.ContractUnitId = this.txtContractUnit.Text.Trim();
newMTReport.MT_SurfaceState = this.txtSurfaceState.Text.Trim();
if (this.drpSensitivityTestBlock.SelectedValue != BLL.Const._Null)
{
if (!string.IsNullOrEmpty(this.drpSensitivityTestBlock.Text.Trim()))
{
newMTReport.MT_SensitivityTestBlock = this.drpSensitivityTestBlock.Text.Trim();
}
else
{
newMTReport.MT_SensitivityTestBlock = this.drpSensitivityTestBlock.SelectedValue;
}
}
newMTReport.MT_CurrentType = this.txtCurrentType.Text.Trim();
newMTReport.MT_LiftingPower = this.txtLiftingPower.Text.Trim();
newMTReport.MT_MagnetizationTime = this.txtMagnetizationTime.Text.Trim();
if (this.drpMagneticPowderType.SelectedValue != BLL.Const._Null)
{
if (!string.IsNullOrEmpty(this.drpMagneticPowderType.Text.Trim()))
{
newMTReport.MT_MagneticPowderType = this.drpMagneticPowderType.Text.Trim();
}
else
{
newMTReport.MT_MagneticPowderType = this.drpMagneticPowderType.SelectedValue;
}
}
if (this.drpConcentration.SelectedValue != BLL.Const._Null)
{
if (!string.IsNullOrEmpty(this.drpConcentration.Text.Trim()))
{
newMTReport.MT_Concentration = this.drpConcentration.Text.Trim();
}
else
{
newMTReport.MT_Concentration = this.drpConcentration.SelectedValue;
}
}
newMTReport.MT_ImposingMethod = this.txtImposingMethod.Text.Trim();
if (this.drpTestMethod.SelectedValue != BLL.Const._Null)
{
if (!string.IsNullOrEmpty(this.drpTestMethod.Text.Trim()))
{
newMTReport.MT_TestMethod = this.drpTestMethod.Text.Trim();
}
else
{
newMTReport.MT_TestMethod = this.drpTestMethod.SelectedValue;
}
}
if (this.drpTestingTime.SelectedValue != BLL.Const._Null)
{
if (!string.IsNullOrEmpty(this.drpTestingTime.Text.Trim()))
{
newMTReport.TestingTime = this.drpTestingTime.Text.Trim();
}
else
{
newMTReport.TestingTime = this.drpTestingTime.SelectedValue;
}
}
if (this.drpEquipmentName.SelectedValue != BLL.Const._Null)
{
if (!string.IsNullOrEmpty(this.drpEquipmentName.Text.Trim()))
{
newMTReport.EquipmentName = this.drpEquipmentName.Text.Trim();
}
else
{
newMTReport.EquipmentName = this.drpEquipmentName.SelectedValue;
}
}
if (this.drpEquipmentModel.SelectedValue != BLL.Const._Null)
{
if (!string.IsNullOrEmpty(this.drpEquipmentModel.Text.Trim()))
{
newMTReport.EquipmentCode = this.drpEquipmentModel.Text.Trim();
}
else
{
newMTReport.EquipmentCode = this.drpEquipmentModel.SelectedValue;
}
}
newMTReport.Printer = this.txtPrinter.Text.Trim();
newMTReport.PrintTime = Funs.GetNewDateTime(this.txtPrintTime.Text.Trim());
if (this.drpHotProessState.SelectedValue != BLL.Const._Null)
{
if (!string.IsNullOrEmpty(this.drpHotProessState.Text.Trim()))
{
newMTReport.HotProessState = this.drpHotProessState.Text.Trim();
}
else
{
newMTReport.HotProessState = this.drpHotProessState.SelectedValue;
}
}
newMTReport.PoleSpacing = this.txtPoleSpacing.Text.Trim();
newMTReport.STE_ID = Request.Params["STE_ID"];
newMTReport.STE_ID2 = Request.Params["STE_ID2"];
newMTReport.WME_ID = Request.Params["WME_ID"];
if (string.IsNullOrEmpty(this.TestingReportPrintId))
{
newMTReport.Type = "MT";
this.TestingReportPrintId = SQLHelper.GetNewID(typeof(Model.HJGL_CH_TestingReportPrint));
newMTReport.TestingReportPrintId = this.TestingReportPrintId;
BLL.HJGL_TestingReportPrintService.AddTestingReportPrint(newMTReport);
BLL.Sys_LogService.AddLog(Const.System_3, this.CurrUser.LoginProjectId, this.CurrUser.UserId, "添加磁粉检测报告");
}
else
{
newMTReport.TestingReportPrintId = this.TestingReportPrintId;
BLL.HJGL_TestingReportPrintService.UpdateTestingReportPrint(newMTReport);
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
}
}