1
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
using BLL;
|
||||
using System;
|
||||
using System.Linq;
|
||||
|
||||
namespace FineUIPro.Web.HJGL.DataImport
|
||||
{
|
||||
@@ -22,11 +23,16 @@ namespace FineUIPro.Web.HJGL.DataImport
|
||||
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
this.txtHeatNo.Readonly = true;
|
||||
this.txtBatchNo.Readonly = true;
|
||||
|
||||
if (!IsPostBack)
|
||||
{
|
||||
btnClose.OnClientClick = ActiveWindow.GetHideReference();
|
||||
this.PipeLineMatId = Request.Params["PipeLineMatId"];
|
||||
|
||||
BindMainMaterialCodes();
|
||||
|
||||
Model.HJGL_PipeLineMat pipeLineMat = PipelineMatService.GetPipeLineMat(this.PipeLineMatId);
|
||||
if (pipeLineMat == null)
|
||||
{
|
||||
@@ -34,12 +40,64 @@ namespace FineUIPro.Web.HJGL.DataImport
|
||||
return;
|
||||
}
|
||||
|
||||
this.drpMainMaterialCode.SelectedValue = string.IsNullOrEmpty(pipeLineMat.MaterialCode)
|
||||
? Const._Null
|
||||
: pipeLineMat.MaterialCode;
|
||||
this.txtMaterialCode.Text = pipeLineMat.MaterialCode2;
|
||||
BindMaterialDetails(pipeLineMat.MaterialCode, false);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 保存材料编码。
|
||||
/// 绑定材料主编码,下拉框保留空选项以支持解除材料主数据关联。
|
||||
/// </summary>
|
||||
private void BindMainMaterialCodes()
|
||||
{
|
||||
this.drpMainMaterialCode.DataTextField = "MaterialCode";
|
||||
this.drpMainMaterialCode.DataValueField = "MaterialCode";
|
||||
this.drpMainMaterialCode.DataSource = MaterialCodeLibService.GetMaterialCodeLibList()
|
||||
.OrderBy(x => x.MaterialCode)
|
||||
.ToList();
|
||||
this.drpMainMaterialCode.DataBind();
|
||||
Funs.FineUIPleaseSelect(this.drpMainMaterialCode, "-请选择-");
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 材料主编码变化后同步其材料编码、炉号和批号。
|
||||
/// </summary>
|
||||
protected void drpMainMaterialCode_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
BindMaterialDetails(GetMainMaterialCode(), true);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 按材料主编码填充关联信息;清空选择时同步清空联动字段。
|
||||
/// </summary>
|
||||
private void BindMaterialDetails(string mainMaterialCode, bool updateMaterialCode)
|
||||
{
|
||||
Model.HJGL_MaterialCodeLib material = string.IsNullOrEmpty(mainMaterialCode)
|
||||
? null
|
||||
: MaterialCodeLibService.GetMaterialCodeLib(mainMaterialCode);
|
||||
|
||||
if (updateMaterialCode)
|
||||
{
|
||||
this.txtMaterialCode.Text = material == null ? string.Empty : material.Code;
|
||||
}
|
||||
this.txtHeatNo.Text = material == null ? string.Empty : material.HeatNo;
|
||||
this.txtBatchNo.Text = material == null ? string.Empty : material.BatchNo;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 将下拉框的“请选择”值转换为数据库可保存的空值。
|
||||
/// </summary>
|
||||
private string GetMainMaterialCode()
|
||||
{
|
||||
string value = this.drpMainMaterialCode.SelectedValue;
|
||||
return string.IsNullOrEmpty(value) || value == Const._Null ? null : value.Trim();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 保存材料主编码和材料编码。
|
||||
/// </summary>
|
||||
protected void btnSave_Click(object sender, EventArgs e)
|
||||
{
|
||||
@@ -49,7 +107,17 @@ namespace FineUIPro.Web.HJGL.DataImport
|
||||
return;
|
||||
}
|
||||
|
||||
PipelineMatService.UpdateMaterialCode2(this.PipeLineMatId, this.txtMaterialCode.Text.Trim());
|
||||
string mainMaterialCode = GetMainMaterialCode();
|
||||
if (!string.IsNullOrEmpty(mainMaterialCode) && MaterialCodeLibService.GetMaterialCodeLib(mainMaterialCode) == null)
|
||||
{
|
||||
Alert.ShowInTop("所选材料主编码不存在,请重新选择!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
|
||||
PipelineMatService.UpdateMaterialCodes(
|
||||
this.PipeLineMatId,
|
||||
mainMaterialCode,
|
||||
this.txtMaterialCode.Text.Trim());
|
||||
ShowNotify("保存成功!", MessageBoxIcon.Success);
|
||||
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user