333 lines
11 KiB
C#
333 lines
11 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using BLL;
|
|
using System.Data;
|
|
using AspNet = System.Web.UI.WebControls;
|
|
|
|
namespace FineUIPro.Web.HJGL.HotProcessHard
|
|
{
|
|
public partial class HotProessTrustItemEdit : PageBase
|
|
{
|
|
#region 定义项
|
|
|
|
/// <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;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 热处理委托主键
|
|
/// </summary>
|
|
public string HotProessTrustId
|
|
{
|
|
get
|
|
{
|
|
return (string)ViewState["HotProessTrustId"];
|
|
}
|
|
set
|
|
{
|
|
ViewState["HotProessTrustId"] = value;
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 选择内容字符串
|
|
/// </summary>
|
|
public string ItemsString
|
|
{
|
|
get
|
|
{
|
|
return (string)ViewState["ItemsString"];
|
|
}
|
|
set
|
|
{
|
|
ViewState["ItemsString"] = value;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 被选择项列表
|
|
/// </summary>
|
|
public List<string> SelectedList
|
|
{
|
|
get
|
|
{
|
|
return (List<string>)ViewState["SelectedList"];
|
|
}
|
|
set
|
|
{
|
|
ViewState["SelectedList"] = value;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 未被选择项列表
|
|
/// </summary>
|
|
public List<string> NoSelectedList
|
|
{
|
|
get
|
|
{
|
|
return (List<string>)ViewState["NoSelectedList"];
|
|
}
|
|
set
|
|
{
|
|
ViewState["NoSelectedList"] = value;
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 加载页面
|
|
/// <summary>
|
|
/// 加载页面
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
if (!IsPostBack)
|
|
{
|
|
this.SelectedList = new List<string>();
|
|
this.NoSelectedList = new List<string>();
|
|
string strList = Request.Params["strList"];
|
|
List<string> list = Funs.GetStrListByStr(strList, '|');
|
|
if (list.Count() == 3)
|
|
{
|
|
this.UnitId = list[0];
|
|
this.WorkAreaId = list[1];
|
|
this.HotProessTrustId = list[2];
|
|
this.InitTreeMenu();//加载树
|
|
}
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 加载管线信息
|
|
/// <summary>
|
|
/// 加载树
|
|
/// </summary>
|
|
private void InitTreeMenu()
|
|
{
|
|
this.tvControlItem.Nodes.Clear();
|
|
TreeNode rootNode = new TreeNode();
|
|
rootNode.Text = "管线号";
|
|
rootNode.NodeID = "0";
|
|
rootNode.ToolTip = "绿色表示管线下有已焊接的焊口未委托热处理";
|
|
rootNode.Expanded = true;
|
|
this.tvControlItem.Nodes.Add(rootNode);
|
|
|
|
var hotProessItems = from x in Funs.DB.HJGL_HotProess_TrustItem select x; //热处理委托明细集合
|
|
var iso = from x in Funs.DB.PW_IsoInfo where x.ProjectId == this.CurrUser.LoginProjectId && x.UnitId == this.UnitId && x.WorkAreaId == this.WorkAreaId select x;
|
|
if (!string.IsNullOrEmpty(this.txtIsono.Text))
|
|
{
|
|
iso = iso.Where(e => e.ISO_IsoNo.Contains(this.txtIsono.Text.Trim()));
|
|
}
|
|
|
|
iso = iso.OrderBy(x => x.ISO_IsoNo);
|
|
if (iso.Count() > 0)
|
|
{
|
|
foreach (var q in iso)
|
|
{
|
|
var jots = from x in Funs.DB.PW_JointInfo
|
|
where x.ISO_ID == q.ISO_ID && x.IS_Proess == "1"
|
|
select x;
|
|
var hotItem = from x in Funs.DB.HJGL_HotProess_TrustItem
|
|
join y in Funs.DB.PW_JointInfo on x.WeldJointId equals y.JOT_ID
|
|
where y.ISO_ID == q.ISO_ID
|
|
select x;
|
|
if (jots.Count() > hotItem.Count())
|
|
{
|
|
TreeNode newNode = new TreeNode();
|
|
newNode.NodeID = q.ISO_ID;
|
|
newNode.Text = q.ISO_IsoNo;
|
|
newNode.EnableClickEvent = true;
|
|
rootNode.Nodes.Add(newNode);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 管线查询
|
|
/// <summary>
|
|
/// 查询
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void Tree_TextChanged(object sender, EventArgs e)
|
|
{
|
|
this.InitTreeMenu();
|
|
this.BindGrid();
|
|
}
|
|
#endregion
|
|
|
|
#region 点击TreeView
|
|
/// <summary>
|
|
/// 点击TreeView
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e)
|
|
{
|
|
string[] selectRowId = Grid1.SelectedRowIDArray;
|
|
foreach (var id in selectRowId)
|
|
{
|
|
SelectedList.Add(id);
|
|
}
|
|
this.BindGrid();
|
|
}
|
|
#endregion
|
|
|
|
#region 数据绑定
|
|
/// <summary>
|
|
/// 数据绑定
|
|
/// </summary>
|
|
private void BindGrid()
|
|
{
|
|
//List<Model.View_HotProessTrustItemSearch> toDoMatterList = BLL.HotProess_TrustService.GetHotProessTrustFind(this.ProjectId, this.HotProessTrustId, this.tvControlItem.SelectedNodeID);
|
|
|
|
List<Model.View_HJGL_HotProessTrustItemSearch> toDoMatterList = (from x in Funs.DB.View_HJGL_HotProessTrustItemSearch
|
|
where x.ProjectId == this.CurrUser.LoginProjectId && x.HotProessTrustItemId == null
|
|
&& x.IS_Proess == "1"
|
|
orderby x.JOT_JointNo
|
|
select x).ToList();
|
|
if (rblIsWeld.SelectedValue == "0")
|
|
{
|
|
toDoMatterList = toDoMatterList.Where(x => x.DReportID == null).ToList();
|
|
}
|
|
if (rblIsWeld.SelectedValue == "1")
|
|
{
|
|
toDoMatterList = toDoMatterList.Where(x => x.DReportID != null).ToList();
|
|
}
|
|
if (this.tvControlItem.SelectedNodeID != null)
|
|
{
|
|
toDoMatterList = toDoMatterList.Where(x => x.ISO_ID == this.tvControlItem.SelectedNodeID).ToList();
|
|
}
|
|
if (!string.IsNullOrEmpty(this.txtJointNo.Text.Trim()))
|
|
{
|
|
toDoMatterList = toDoMatterList.Where(x => x.JOT_JointNo.Contains(this.txtJointNo.Text.Trim())).ToList();
|
|
}
|
|
//string weldJointIds = Request.Params["weldJointIds"];
|
|
//if (!string.IsNullOrEmpty(weldJointIds))
|
|
//{
|
|
// string[] jots = weldJointIds.Split('|');
|
|
// foreach (string jotId in jots)
|
|
// {
|
|
// Model.View_HotProessTrustItemSearch item = toDoMatterList.FirstOrDefault(e => e.WeldJointId == jotId);
|
|
// if (item != null)
|
|
// {
|
|
// toDoMatterList.Remove(item);
|
|
// }
|
|
// }
|
|
//}
|
|
//DataTable tb = this.LINQToDataTable(toDoMatterList);
|
|
|
|
//Grid1.RecordCount = tb.Rows.Count;
|
|
//tb = GetFilteredTable(Grid1.FilteredData, tb);
|
|
|
|
|
|
//var table = this.GetPagedDataTable(Grid1, tb);
|
|
|
|
Grid1.DataSource = toDoMatterList;
|
|
Grid1.DataBind();
|
|
}
|
|
#endregion
|
|
|
|
#region 排序
|
|
/// <summary>
|
|
/// 排序
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void Grid1_Sort(object sender, GridSortEventArgs e)
|
|
{
|
|
this.BindGrid();
|
|
}
|
|
#endregion
|
|
|
|
#region 筛选焊口信息
|
|
/// <summary>
|
|
/// 筛选焊口信息
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void rblIsWeld_SelectedIndexChanged(object sender, EventArgs e)
|
|
{
|
|
this.BindGrid();
|
|
}
|
|
#endregion
|
|
|
|
#region 提交按钮
|
|
/// <summary>
|
|
/// 提交按钮
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void btnAccept_Click(object sender, EventArgs e)
|
|
{
|
|
string itemsString = "";
|
|
string[] selectRowId = Grid1.SelectedRowIDArray;
|
|
int n = 0;
|
|
int j = 0;
|
|
int[] selections = new int[selectRowId.Count()];
|
|
foreach (GridRow row in Grid1.Rows)
|
|
{
|
|
if (selectRowId.Contains(row.DataKeys[0]))
|
|
{
|
|
selections[n] = j;
|
|
n++;
|
|
}
|
|
j++;
|
|
}
|
|
var select = selections.Distinct();
|
|
string jotIds = Request.Params["weldJointIds"];
|
|
if (!string.IsNullOrEmpty(jotIds))
|
|
{
|
|
string[] jots = jotIds.Split('|');
|
|
foreach (string jotId in jots)
|
|
{
|
|
itemsString += jotId + "|";
|
|
}
|
|
}
|
|
foreach (int i in select)
|
|
{
|
|
string rowID = Grid1.DataKeys[i][0].ToString();
|
|
if (!itemsString.Contains(rowID))
|
|
{
|
|
itemsString += rowID + "|";
|
|
}
|
|
}
|
|
foreach (var item in SelectedList)
|
|
{
|
|
itemsString += item + "|";
|
|
}
|
|
PageContext.RegisterStartupScript(ActiveWindow.GetWriteBackValueReference(itemsString)
|
|
+ ActiveWindow.GetHidePostBackReference());
|
|
}
|
|
#endregion
|
|
}
|
|
} |