537 lines
21 KiB
C#
537 lines
21 KiB
C#
namespace FineUIPro.Web.HJGLServer.BaseInfo
|
|
{
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.Data.SqlClient;
|
|
using System.Linq;
|
|
using BLL;
|
|
|
|
public partial class Material : PageBase
|
|
{
|
|
#region 加载页面
|
|
/// <summary>
|
|
/// 加载页面
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
if (!IsPostBack)
|
|
{
|
|
if (CurrUser.Account == Const.Gly)
|
|
{
|
|
cbIsUse.Enabled = true;
|
|
}
|
|
else
|
|
{
|
|
cbIsUse.Enabled = false;
|
|
}
|
|
ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
|
|
|
|
this.ddlSteType.DataTextField = "Text";
|
|
this.ddlSteType.DataValueField = "Value";
|
|
this.ddlSteType.DataSource = BLL.DropListService.HJGL_GetSteTypeList();
|
|
this.ddlSteType.DataBind();
|
|
Funs.FineUIPleaseSelect(this.ddlSteType);
|
|
|
|
this.drpSteType.DataTextField = "Text";
|
|
this.drpSteType.DataValueField = "Value";
|
|
this.drpSteType.DataSource = BLL.DropListService.HJGL_GetSteTypeList();
|
|
this.drpSteType.DataBind();
|
|
Funs.FineUIPleaseSelect(this.drpSteType);
|
|
|
|
this.drpMaterialClass.DataTextField = "MaterialClass";
|
|
this.drpMaterialClass.DataValueField = "MaterialClassId";
|
|
this.drpMaterialClass.DataSource = BLL.HJGL_MaterialClassService.GetMaterialClassList();
|
|
this.drpMaterialClass.DataBind();
|
|
Funs.FineUIPleaseSelect(this.drpMaterialClass);
|
|
|
|
this.drpMaterialGroup.DataTextField = "MaterialGroup";
|
|
this.drpMaterialGroup.DataValueField = "MaterialGroupId";
|
|
this.drpMaterialGroup.DataSource = (from x in Funs.DB.HJGL_BS_MaterialGroup orderby x.MaterialGroupCode select x).ToList();
|
|
this.drpMaterialGroup.DataBind();
|
|
Funs.FineUIPleaseSelect(this.drpMaterialGroup);
|
|
// 绑定表格
|
|
BindGrid();
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 绑定数据
|
|
/// <summary>
|
|
/// 绑定数据
|
|
/// </summary>
|
|
private void BindGrid()
|
|
{
|
|
string strSql = @"SELECT Steel.STE_ID,Steel.STE_Code,Steel.STE_Name,Steel.STE_SteelType,Steel.STE_Remark,
|
|
Steel.MaterialType,Steel.MaterialGroup,MaterialClas.MaterialClass as MaterialClassName,
|
|
MaterialGroup.MaterialGroup as MaterialGroupName,Steel.HardQuaStandard,Steel.IsUse
|
|
FROM HJGL_BS_Steel AS Steel
|
|
LEFT JOIN HJGL_BS_MaterialClass AS MaterialClas ON Steel.MaterialType=MaterialClas.MaterialClassId
|
|
LEFT JOIN HJGL_BS_MaterialGroup AS MaterialGroup ON Steel.MaterialGroup=MaterialGroup.MaterialGroupId
|
|
WHERE 1=1";
|
|
List<SqlParameter> listStr = new List<SqlParameter>();
|
|
if (!string.IsNullOrEmpty(this.txtCode.Text.Trim()))
|
|
{
|
|
strSql += " AND STE_Code LIKE @STE_Code";
|
|
listStr.Add(new SqlParameter("@STE_Code", "%" + this.txtCode.Text.Trim() + "%"));
|
|
}
|
|
if (!string.IsNullOrEmpty(this.txtName.Text.Trim()))
|
|
{
|
|
strSql += " AND STE_Name LIKE @STE_Name";
|
|
listStr.Add(new SqlParameter("@STE_Name", "%" + this.txtName.Text.Trim() + "%"));
|
|
}
|
|
if (this.drpSteType.SelectedValue != BLL.Const._Null)
|
|
{
|
|
strSql += " AND STE_SteelType = @STE_SteelType";
|
|
listStr.Add(new SqlParameter("@STE_SteelType", this.drpSteType.SelectedValue));
|
|
}
|
|
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
|
|
|
|
protected void Grid1_RowClick(object sender, GridRowClickEventArgs e)
|
|
{
|
|
object[] keys = Grid1.DataKeys[e.RowIndex];
|
|
var q = BLL.HJGL_MaterialService.GetSteelBySteID(keys[0].ToString());
|
|
if (q.IsUse == true)
|
|
{
|
|
cbIsUse.Checked = true;
|
|
}
|
|
else
|
|
{
|
|
cbIsUse.Checked = false;
|
|
}
|
|
|
|
}
|
|
|
|
#region 分页排序
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
|
|
{
|
|
Grid1.PageIndex = e.NewPageIndex;
|
|
BindGrid();
|
|
}
|
|
|
|
/// <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();
|
|
}
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void Grid1_FilterChange(object sender, EventArgs e)
|
|
{
|
|
BindGrid();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 排序
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
|
|
{
|
|
Grid1.SortDirection = e.SortDirection;
|
|
Grid1.SortField = e.SortField;
|
|
BindGrid();
|
|
}
|
|
#endregion
|
|
|
|
#region 删除事件
|
|
/// <summary>
|
|
/// 删除
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void btnDelete_Click(object sender, EventArgs e)
|
|
{
|
|
if (CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.HJGL_MaterialMenuId, Const.BtnDelete))
|
|
{
|
|
if (judgementDelete(hfFormID.Text, true))
|
|
{
|
|
BLL.HJGL_MaterialService.DeleteSteel(hfFormID.Text);
|
|
BLL.Sys_LogService.AddLog(BLL.Const.System_2, this.CurrUser.LoginProjectId, this.CurrUser.UserId, "删除材质信息");
|
|
// 重新绑定表格,并模拟点击[新增按钮]
|
|
BindGrid();
|
|
PageContext.RegisterStartupScript("onNewButtonClick();");
|
|
}
|
|
}
|
|
else
|
|
{
|
|
Alert.ShowInTop("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
|
|
return;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 右键删除事件
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void btnMenuDelete_Click(object sender, EventArgs e)
|
|
{
|
|
if (CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.HJGL_MaterialMenuId, Const.BtnDelete))
|
|
{
|
|
this.DeleteData();
|
|
}
|
|
else
|
|
{
|
|
Alert.ShowInTop("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
|
|
return;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 删除方法
|
|
/// </summary>
|
|
private void DeleteData()
|
|
{
|
|
if (Grid1.SelectedRowIndexArray.Length > 0)
|
|
{
|
|
bool isShow = true;
|
|
if (Grid1.SelectedRowIndexArray.Length > 1)
|
|
{
|
|
isShow = false;
|
|
}
|
|
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
|
|
{
|
|
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
|
|
if (judgementDelete(rowID, isShow))
|
|
{
|
|
BLL.HJGL_MaterialService.DeleteSteel(rowID);
|
|
BLL.Sys_LogService.AddLog(BLL.Const.System_2, this.CurrUser.LoginProjectId, this.CurrUser.UserId, "删除材质信息");
|
|
Alert.ShowInTop("删除完成!", MessageBoxIcon.Success);
|
|
}
|
|
}
|
|
|
|
BindGrid();
|
|
PageContext.RegisterStartupScript("onNewButtonClick();");
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 编辑
|
|
/// <summary>
|
|
/// 右键编辑事件
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void btnMenuEdit_Click(object sender, EventArgs e)
|
|
{
|
|
if (CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.HJGL_MaterialMenuId, Const.BtnModify))
|
|
{
|
|
this.EditData();
|
|
}
|
|
else
|
|
{
|
|
Alert.ShowInTop("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
|
|
return;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 编辑数据方法
|
|
/// </summary>
|
|
private void EditData()
|
|
{
|
|
if (Grid1.SelectedRowIndexArray.Length == 0)
|
|
{
|
|
Alert.ShowInTop("请至少选择一条记录!",MessageBoxIcon.Warning);
|
|
return;
|
|
}
|
|
string Id = Grid1.SelectedRowID;
|
|
var Material = BLL.HJGL_MaterialService.GetSteelBySteID(Id);
|
|
if (Material != null)
|
|
{
|
|
this.txtSte_Code.Text = Material.STE_Code;
|
|
this.txtSte_Name.Text = Material.STE_Name;
|
|
this.txtRemark.Text = Material.STE_Remark;
|
|
if (Material.STE_SteelType!=null)
|
|
{
|
|
this.ddlSteType.SelectedValue = Material.STE_SteelType;
|
|
}
|
|
this.drpMaterialClass.SelectedValue = Material.MaterialType;
|
|
this.drpMaterialGroup.SelectedValue = Material.MaterialGroup;
|
|
this.txtHardQuaStandard.Text = Material.HardQuaStandard;
|
|
hfFormID.Text = Id;
|
|
this.btnDelete.Enabled = true;
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 提交按钮
|
|
/// <summary>
|
|
/// 提交按钮
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void btnSave_Click(object sender, EventArgs e)
|
|
{
|
|
if (CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.HJGL_MaterialMenuId, Const.BtnSave))
|
|
{
|
|
string strRowID = hfFormID.Text;
|
|
if (BLL.HJGL_MaterialService.IsExitSteelCode(this.txtSte_Code.Text.Trim(), strRowID))
|
|
{
|
|
Alert.ShowInTop("此材质代号已存在!", MessageBoxIcon.Warning);
|
|
return;
|
|
}
|
|
|
|
Model.HJGL_BS_Steel steel = new Model.HJGL_BS_Steel();
|
|
steel.STE_Code = this.txtSte_Code.Text.Trim();
|
|
steel.STE_Name = this.txtSte_Name.Text.Trim();
|
|
steel.STE_Remark = this.txtRemark.Text.Trim();
|
|
steel.HardQuaStandard = this.txtHardQuaStandard.Text.Trim();
|
|
if (this.ddlSteType.SelectedValue != BLL.Const._Null)
|
|
{
|
|
steel.STE_SteelType = this.ddlSteType.SelectedValue;
|
|
}
|
|
if (this.drpMaterialClass.SelectedValue != BLL.Const._Null)
|
|
{
|
|
steel.MaterialType = this.drpMaterialClass.SelectedValue;
|
|
}
|
|
if (this.drpMaterialGroup.SelectedValue != BLL.Const._Null)
|
|
{
|
|
steel.MaterialGroup = this.drpMaterialGroup.SelectedValue;
|
|
}
|
|
|
|
if (cbIsUse.Checked)
|
|
{
|
|
steel.IsUse = true;
|
|
}
|
|
else
|
|
{
|
|
steel.IsUse = false;
|
|
}
|
|
|
|
if (string.IsNullOrEmpty(strRowID))
|
|
{
|
|
BLL.HJGL_MaterialService.AddSteel(steel);
|
|
BLL.Sys_LogService.AddLog(BLL.Const.System_2, this.CurrUser.LoginProjectId, this.CurrUser.UserId, "添加材质信息");
|
|
}
|
|
else
|
|
{
|
|
steel.STE_ID = strRowID;
|
|
BLL.HJGL_MaterialService.UpdateSteel(steel);
|
|
BLL.Sys_LogService.AddLog(BLL.Const.System_2, this.CurrUser.LoginProjectId, this.CurrUser.UserId, "修改材质信息");
|
|
}
|
|
|
|
// 重新绑定表格,并点击当前编辑或者新增的行
|
|
BindGrid();
|
|
|
|
Alert.ShowInTop("提交成功!", MessageBoxIcon.Success);
|
|
PageContext.RegisterStartupScript("onNewButtonClick();");
|
|
//PageContext.RegisterStartupScript(String.Format("F('{0}').selectRow('{1}');", Grid1.ClientID, UnitQualitySort.UnitQualitySortId));
|
|
}
|
|
else
|
|
{
|
|
Alert.ShowInTop("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
|
|
return;
|
|
}
|
|
|
|
deleteDoule();
|
|
}
|
|
#endregion
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
private void deleteDoule()
|
|
{
|
|
List<string> steIdList = new List<string>();
|
|
var steels = from x in Funs.DB.HJGL_BS_Steel select x;
|
|
foreach (var item in steels)
|
|
{
|
|
var isCodeDoule = from x in Funs.DB.HJGL_BS_Steel where x.STE_Code == item.STE_Code select x;
|
|
if (isCodeDoule.Count() > 1)
|
|
{
|
|
foreach (var itemcode in isCodeDoule)
|
|
{
|
|
if (!steIdList.Contains(itemcode.STE_ID))
|
|
{
|
|
steIdList.Add(itemcode.STE_ID);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
if (steIdList.Count() > 0)
|
|
{
|
|
foreach (var item in steIdList)
|
|
{
|
|
var a = Funs.DB.HJGL_BS_MaterialCompare.FirstOrDefault(x => x.STE_ID == item);
|
|
var b = Funs.DB.HJGL_PW_IsoInfo.FirstOrDefault(x => x.STE_ID == item);
|
|
var c = Funs.DB.HJGL_WeldingProcedure_WeldingProcedure.FirstOrDefault(x => x.STE_ID1 == item || x.STE_ID2 == item);
|
|
if (a == null && b == null && c == null)
|
|
{
|
|
BLL.HJGL_MaterialService.DeleteSteel(item);
|
|
}
|
|
//else
|
|
//{
|
|
// var steel = Funs.DB.HJGL_BS_Steel.FirstOrDefault(x => x.STE_ID == item);
|
|
// if (steel != null)
|
|
// {
|
|
// var isSteelD = from x in Funs.DB.HJGL_BS_Steel where x.STE_Code == steel.STE_Code select x;
|
|
// foreach (var itemD in isSteelD)
|
|
// {
|
|
// var compare = from x in Funs.DB.HJGL_BS_MaterialCompare where x.STE_ID == itemD.STE_ID select x;
|
|
// foreach (var itemCompare in compare)
|
|
// {
|
|
// itemCompare.STE_ID = item;
|
|
// BLL.HJGL_MaterialCompareService.updateMaterialCompare(itemCompare);
|
|
// }
|
|
// var isoInfo = from x in Funs.DB.HJGL_PW_IsoInfo where x.STE_ID == itemD.STE_ID select x;
|
|
// foreach (var itemisoInfo in isoInfo)
|
|
// {
|
|
// itemisoInfo.STE_ID = item;
|
|
// BLL.HJGL_PW_IsoInfoService.UpdateIsoInfo(itemisoInfo);
|
|
// }
|
|
// var weldingProcedure = from x in Funs.DB.HJGL_WeldingProcedure_WeldingProcedure where x.STE_ID1 == itemD.STE_ID select x;
|
|
// foreach (var itemweldingProcedure in weldingProcedure)
|
|
// {
|
|
// itemweldingProcedure.STE_ID1 = item;
|
|
// BLL.HJGL_WeldingManage_WeldingProcedureService.UpdateWeldingProcedure(itemweldingProcedure);
|
|
// }
|
|
// var weldingProcedure2 = from x in Funs.DB.HJGL_WeldingProcedure_WeldingProcedure where x.STE_ID2 == itemD.STE_ID select x;
|
|
// foreach (var itemweldingProcedure2 in weldingProcedure2)
|
|
// {
|
|
// itemweldingProcedure2.STE_ID2 = item;
|
|
// BLL.HJGL_WeldingManage_WeldingProcedureService.UpdateWeldingProcedure(itemweldingProcedure2);
|
|
// }
|
|
|
|
// deleteDoule();
|
|
// }
|
|
// }
|
|
//}
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
#region 判断是否可删除
|
|
/// <summary>
|
|
/// 判断是否可以删除
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
private bool judgementDelete(string id, bool isShow)
|
|
{
|
|
string content = string.Empty;
|
|
if (BLL.HJGL_PW_IsoInfoService.GetIsoInfoBySteId(id) > 0)
|
|
{
|
|
content = "管线中已经使用了该材质,不能删除!";
|
|
}
|
|
if (BLL.HJGL_PW_JointInfoService.GetJointInfoBySTEID(id) > 0)
|
|
{
|
|
content = "焊口中已经使用了该材质,不能删除!";
|
|
}
|
|
if (BLL.HJGL_PW_JointInfoService.GetJointInfoBySTEID2(id) > 0)
|
|
{
|
|
content = "焊口中已经使用了该材质,不能删除!";
|
|
}
|
|
if (BLL.HJGL_MaterialCompareService.GetMaterialCompareCountByste(id) > 0)
|
|
{
|
|
content = "材质对照表已经使用了该材质,不能删除!";
|
|
}
|
|
|
|
if (string.IsNullOrEmpty(content))
|
|
{
|
|
return true;
|
|
}
|
|
else
|
|
{
|
|
if (isShow)
|
|
{
|
|
Alert.ShowInTop(content, MessageBoxIcon.Error);
|
|
}
|
|
return false;
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 查询
|
|
/// <summary>
|
|
/// 查询
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void TextBox_TextChanged(object sender, EventArgs e)
|
|
{
|
|
this.BindGrid();
|
|
}
|
|
#endregion
|
|
|
|
#region 格式化字符串
|
|
/// <summary>
|
|
/// 获取工作阶段
|
|
/// </summary>
|
|
/// <param name="WorkStage"></param>
|
|
/// <returns></returns>
|
|
protected string ConvertMaterialType(object MaterialType)
|
|
{
|
|
string name = string.Empty;
|
|
if (MaterialType != null)
|
|
{
|
|
var type = BLL.HJGL_MaterialClassService.GetMaterialClassById(MaterialType.ToString());
|
|
if (type != null)
|
|
{
|
|
name =type.MaterialClass;
|
|
}
|
|
}
|
|
return name;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取工作阶段
|
|
/// </summary>
|
|
/// <param name="WorkStage"></param>
|
|
/// <returns></returns>
|
|
protected string ConvertMaterialGroup(object MaterialType)
|
|
{
|
|
string name = string.Empty;
|
|
if (MaterialType != null)
|
|
{
|
|
var group = BLL.HJGL_MaterialGroupService.GetMaterialGroupById(MaterialType.ToString());
|
|
if (group != null)
|
|
{
|
|
name = group.MaterialGroup;
|
|
}
|
|
}
|
|
return name;
|
|
}
|
|
#endregion
|
|
|
|
protected void drpMaterialClass_SelectedIndexChanged(object sender, EventArgs e)
|
|
{
|
|
this.drpMaterialGroup.Items.Clear();
|
|
this.drpMaterialGroup.DataTextField = "MaterialGroup";
|
|
this.drpMaterialGroup.DataValueField = "MaterialGroupId";
|
|
this.drpMaterialGroup.DataSource = BLL.HJGL_MaterialGroupService.GetMaterialGroupByMaterialClassId(this.drpMaterialClass.SelectedValue);
|
|
this.drpMaterialGroup.DataBind();
|
|
Funs.FineUIPleaseSelect(this.drpMaterialGroup);
|
|
}
|
|
}
|
|
} |