xinjiang/SGGL/FineUIPro.Web/HJGL/HotProcessHard/HotProessTrustEdit.aspx.cs

348 lines
14 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using BLL;
using System.Data;
using Newtonsoft.Json.Linq;
namespace FineUIPro.Web.HJGL.HotProcessHard
{
public partial class HotProessTrustEdit : PageBase
{
#region
/// <summary>
/// 热处理委托主键
/// </summary>
public string HotProessTrustId
{
get
{
return (string)ViewState["HotProessTrustId"];
}
set
{
ViewState["HotProessTrustId"] = value;
}
}
/// <summary>
/// 装置主键
/// </summary>
public string InstallationId
{
get
{
return (string)ViewState["InstallationId"];
}
set
{
ViewState["InstallationId"] = value;
}
}
/// <summary>
/// 单位主键
/// </summary>
public string UnitId
{
get
{
return (string)ViewState["UnitId"];
}
set
{
ViewState["UnitId"] = value;
}
}
/// <summary>
/// 区域主键
/// </summary>
public string WorkAreaId
{
get
{
return (string)ViewState["WorkAreaId"];
}
set
{
ViewState["WorkAreaId"] = value;
}
}
#endregion
#region
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.HotProessTrustId = Request.Params["HotProessTrustId"];
this.InstallationId = Request.Params["InstallationId"];
this.UnitId = Request.Params["UnitId"];
this.WorkAreaId = Request.Params["WorkAreaId"];
this.PageInfoLoad(); ///加载页面
List<Model.View_HJGL_HotProess_TrustItem> lists = BLL.HotProessTrustItemService.GetViewHotProessTrustItem(this.CurrUser.LoginProjectId, this.HotProessTrustId);
this.BindGrid(lists); ////初始化页面
}
}
#endregion
#region
/// <summary>
/// 加载页面输入提交信息
/// </summary>
private void PageInfoLoad()
{
var trust = BLL.HotProess_TrustService.GetHotProessTrustById(this.HotProessTrustId);
if (trust != null)
{
//this.ProjectId = trust.ProjectId;
this.txtHotProessTrustNo.Text = trust.HotProessTrustNo;
if (trust.ProessDate.HasValue)
{
this.txtProessDate.Text = string.Format("{0:yyyy-MM-dd}", trust.ProessDate);
}
this.InstallationId = trust.InstallationId;
if (!string.IsNullOrEmpty(trust.UnitId))
{
this.txtUnitName.Text = BLL.UnitService.GetUnitNameByUnitId(trust.UnitId);
this.UnitId = trust.UnitId;
}
if (!string.IsNullOrEmpty(trust.WorkAreaId))
{
this.txtWorkAreaCode.Text = BLL.WorkAreaService.GetWorkAreaCodeByWorkAreaId(trust.WorkAreaId);
this.WorkAreaId = trust.WorkAreaId;
}
if (!string.IsNullOrEmpty(trust.Tabler))
{
this.txtTabler.Text = BLL.UserService.GetUserNameByUserId(trust.Tabler);
}
this.txtRemark.Text = trust.Remark;
}
else
{
string code = "";
if (!string.IsNullOrEmpty(UnitId))
{
var unit = BLL.UnitService.GetUnitByUnitId(UnitId);
this.txtUnitName.Text = unit.UnitName;
code += unit.UnitCode + "-";
}
if (!string.IsNullOrEmpty(WorkAreaId))
{
var workArea = BLL.WorkAreaService.getWorkAreaByWorkAreaId(WorkAreaId);
this.txtWorkAreaCode.Text = workArea.WorkAreaName;
code += workArea.WorkAreaCode + "-";
}
this.txtTabler.Text = this.CurrUser.UserName;
this.SimpleForm1.Reset(); //重置所有字段
code += "PWHT-";
this.txtHotProessTrustNo.Text = BLL.SQLHelper.RunProcNewId("SpGetNewCode5ByProjectId", "dbo.HJGL_HotProess_Trust", "HotProessTrustNo", this.CurrUser.LoginProjectId, code);
}
}
#endregion
#region
/// <summary>
/// 数据绑定
/// </summary>
private void BindGrid(List<Model.View_HJGL_HotProess_TrustItem> lists)
{
DataTable tb = this.LINQToDataTable(lists);
Grid1.RecordCount = tb.Rows.Count;
tb = GetFilteredTable(Grid1.FilteredData, tb);
var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table;
Grid1.DataBind();
}
#endregion
#region
/// <summary>
/// 查找需要热处理的焊口
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ckSelect_Click(object sender, EventArgs e)
{
string weldJointIds = string.Empty;
for (int i = 0; i < Grid1.Rows.Count; i++)
{
string jotId = Grid1.DataKeys[i][0].ToString();
weldJointIds += jotId + "|";
}
if (weldJointIds != string.Empty)
{
weldJointIds = weldJointIds.Substring(0, weldJointIds.Length - 1);
}
string strList = this.UnitId + "|" + this.WorkAreaId + "|" + this.HotProessTrustId;
string window = String.Format("HotProessTrustItemEdit.aspx?strList={0}&weldJointIds={1}", strList, weldJointIds, "编辑 - ");
PageContext.RegisterStartupScript(Window1.GetSaveStateReference(hdItemsString.ClientID) + Window1.GetShowReference(window));
}
#endregion
#region Grid
/// <summary>
/// 关闭弹出窗口
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Window1_Close(object sender, WindowCloseEventArgs e)
{
string weldJointIds = string.Empty;
if (!string.IsNullOrEmpty(hdItemsString.Text))
{
weldJointIds = hdItemsString.Text.Substring(0, hdItemsString.Text.LastIndexOf('|'));
List<Model.View_HJGL_HotProess_TrustItem> lists = BLL.HotProess_TrustService.GetHotProessTrustAddItem(weldJointIds);
this.BindGrid(lists);
}
}
#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_HotProessTrustMenuId, Const.BtnSave))
{
if (BLL.HotProess_TrustService.IsExistTrustCode(this.txtHotProessTrustNo.Text, this.HotProessTrustId, this.CurrUser.LoginProjectId))
{
ShowNotify("委托单号已存在,请重新录入!", MessageBoxIcon.Warning);
return;
}
string unitWorkId = Request.Params["unitWorkId"];
Model.HJGL_HotProess_Trust newHotProessTrust = new Model.HJGL_HotProess_Trust();
newHotProessTrust.HotProessTrustNo = this.txtHotProessTrustNo.Text.Trim();
newHotProessTrust.ProessDate = Funs.GetNewDateTime(this.txtProessDate.Text.Trim());
newHotProessTrust.InstallationId = this.InstallationId;
newHotProessTrust.ProjectId = this.CurrUser.LoginProjectId;
newHotProessTrust.UnitId = this.UnitId;
newHotProessTrust.WorkAreaId = this.WorkAreaId;
newHotProessTrust.Tabler = this.CurrUser.UserId;
newHotProessTrust.Remark = this.txtRemark.Text.Trim();
if (!string.IsNullOrEmpty(this.HotProessTrustId))
{
newHotProessTrust.HotProessTrustId = this.HotProessTrustId;
BLL.HotProess_TrustService.UpdateHotProessTrust(newHotProessTrust);
//BLL.Sys_LogService.AddLog(BLL.Const.System_3, this.CurrUser.LoginProjectId, this.CurrUser.UserId, Resources.Lan.ModifyPWHT);
}
else
{
this.HotProessTrustId = SQLHelper.GetNewID(typeof(Model.HJGL_HotProess_Trust));
newHotProessTrust.HotProessTrustId = this.HotProessTrustId;
BLL.HotProess_TrustService.AddHotProessTrust(newHotProessTrust);
//BLL.Sys_LogService.AddLog(BLL.Const.System_3,this.CurrUser.LoginProjectId, this.CurrUser.UserId, Resources.Lan.AddPWHT);
}
//BLL.HotProessTrustItemService.DeleteHotProessTrustItemById(this.HotProessTrustId);
this.CollectGridJointInfo();//收集Grid页面信息,增加明细
ShowNotify("保存成功!", MessageBoxIcon.Success);
PageContext.RegisterStartupScript(ActiveWindow.GetWriteBackValueReference(newHotProessTrust.HotProessTrustId)
+ ActiveWindow.GetHidePostBackReference());
}
else
{
ShowNotify("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
return;
}
}
#endregion
#region Grid页面信息,
/// <summary>
/// 收集Grid页面信息,提交明细
/// </summary>
/// <returns></returns>
private void CollectGridJointInfo()
{
JArray mergedData = Grid1.GetMergedData();
var items = from x in Funs.DB.HJGL_HotProess_TrustItem select x;
foreach (JObject mergedRow in mergedData)
{
JObject values = mergedRow.Value<JObject>("values");
Model.HJGL_HotProess_TrustItem newTrustItem = new Model.HJGL_HotProess_TrustItem();
newTrustItem.HotProessTrustId = this.HotProessTrustId;
newTrustItem.WeldJointId = values.Value<string>("WeldJointId").ToString();
string hotProessTrustItemId = values.Value<string>("HotProessTrustItemId").ToString();
var item = items.FirstOrDefault(x => x.HotProessTrustItemId == hotProessTrustItemId);
if (item == null)
{
BLL.HotProessTrustItemService.AddHotProessTrustItem(newTrustItem);
}
}
}
#endregion
#region
/// <summary>
/// 右键删除事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuDelete_Click(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(this.hdItemsString.Text))
{
this.hdItemsString.Text = this.hdItemsString.Text.Substring(0, this.hdItemsString.Text.LastIndexOf('|'));
}
var trust = BLL.HotProess_TrustService.GetHotProessTrustById(this.HotProessTrustId);
if (Grid1.SelectedRowIndexArray.Length > 0)
{
List<Model.View_HJGL_HotProess_TrustItem> GetHotProessTrustItem = new List<Model.View_HJGL_HotProess_TrustItem>();
if (!string.IsNullOrEmpty(this.hdItemsString.Text))
{
GetHotProessTrustItem = BLL.HotProess_TrustService.GetHotProessTrustAddItem(this.hdItemsString.Text);
}
else if (string.IsNullOrEmpty(this.hdItemsString.Text) && this.HotProessTrustId != null)
{
GetHotProessTrustItem = BLL.HotProess_TrustService.GetHotProessTrustItem(this.CurrUser.LoginProjectId, this.HotProessTrustId);
}
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
{
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
var item = GetHotProessTrustItem.FirstOrDefault(x => x.WeldJointId == rowID);
if (item != null)
{
if (string.IsNullOrEmpty(this.HotProessTrustId)) //新增记录可直接删除
{
GetHotProessTrustItem.Remove(item);
}
else
{
if (item.OldIsCompleted != null)
{
ShowNotify("已生成热处理报告,不能删除!", MessageBoxIcon.Warning);
return;
}
else
{
GetHotProessTrustItem.Remove(item);
BLL.HotProessTrustItemService.DeleteHotProessTrustItemByItemId(item.HotProessTrustItemId);
}
}
}
}
BindGrid(GetHotProessTrustItem);
ShowNotify("删除成功!", MessageBoxIcon.Success);
}
}
#endregion
}
}