308 lines
11 KiB
C#
308 lines
11 KiB
C#
using BLL;
|
|
using Newtonsoft.Json.Linq;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.Data.SqlClient;
|
|
using System.Linq;
|
|
|
|
namespace FineUIPro.Web.HJGL.PersonManage
|
|
{
|
|
public partial class PersonItem : PageBase
|
|
{
|
|
#region 定义项
|
|
/// <summary>
|
|
/// 焊工id
|
|
/// </summary>
|
|
public string WED_ID
|
|
{
|
|
get
|
|
{
|
|
return (string)ViewState["WED_ID"];
|
|
}
|
|
set
|
|
{
|
|
ViewState["WED_ID"] = value;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 焊接材质集合
|
|
/// </summary>
|
|
private static List<string> BS_SteelList = new List<string>();
|
|
|
|
/// <summary>
|
|
/// 焊接位置集合
|
|
/// </summary>
|
|
private static List<string> BS_WeldPositionList = new List<string>();
|
|
|
|
/// <summary>
|
|
/// 焊接方法集合
|
|
/// </summary>
|
|
private static List<string> BS_WeldMethodList = new List<string>();
|
|
#endregion
|
|
|
|
#region 加载页面
|
|
/// <summary>
|
|
/// 加载页面
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
if (!IsPostBack)
|
|
{
|
|
this.WED_ID = Request.Params["welderId"];
|
|
var welder = BLL.WelderService.GetWelderById(this.WED_ID);
|
|
if (welder != null)
|
|
{
|
|
this.lbWelderName.Text = welder.WED_Name;
|
|
//焊接材质初始化
|
|
this.Tab2Load();
|
|
//焊接方法初始化
|
|
this.Tab4Load();
|
|
}
|
|
else
|
|
{
|
|
Alert.ShowInTop("焊工信息不正确!", MessageBoxIcon.Error);
|
|
}
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 焊接材质
|
|
#region 焊接材质初始化
|
|
/// <summary>
|
|
/// 材质初始化
|
|
/// </summary>
|
|
protected void Tab2Load()
|
|
{
|
|
BS_SteelList = new List<string>();
|
|
var items = from x in Funs.DB.BS_WelderItem where x.WED_ID == this.WED_ID select x.STE_ID;
|
|
if (items.Count() > 0)
|
|
{
|
|
foreach (var item in items)
|
|
{
|
|
BS_SteelList.Add(item);
|
|
}
|
|
}
|
|
gvBS_SteelBindGrid();
|
|
}
|
|
#endregion
|
|
|
|
#region 焊接材质绑定数据
|
|
/// <summary>
|
|
/// 绑定数据
|
|
/// </summary>
|
|
private void gvBS_SteelBindGrid()
|
|
{
|
|
string strSql = @"SELECT steel.STE_ID,STE_Code,STE_Name,STE_SteelType,STE_Remark,"
|
|
+ @" (CASE WHEN STE_SteelType='1' THEN '碳钢'
|
|
WHEN STE_SteelType='2' THEN '不锈钢'
|
|
WHEN STE_SteelType='3' THEN '鉻目钢'
|
|
WHEN STE_SteelType='4' THEN '低合金钢'
|
|
WHEN STE_SteelType='5' THEN '镍合金钢'
|
|
WHEN STE_SteelType='6' THEN '钛合金钢'
|
|
WHEN STE_SteelType='7' THEN '其他'
|
|
WHEN STE_SteelType='8' THEN '异种钢接头'
|
|
WHEN STE_SteelType='9' THEN '低温钢'
|
|
WHEN STE_SteelType='10' THEN '复合钢' END) AS STE_SteelTypeName,
|
|
item.ThicknessMax,
|
|
item.ThicknessMin,
|
|
item.SizesMax,
|
|
item.SizesMin"
|
|
+ @" FROM BS_Steel as steel"
|
|
+ @" left join BS_WelderItem as item on item.STE_ID = steel.STE_ID WHERE 1=1 ";
|
|
List<SqlParameter> listStr = new List<SqlParameter>();
|
|
if (!string.IsNullOrEmpty(this.txtSTE_Name.Text.Trim()))
|
|
{
|
|
strSql += " AND STE_Name LIKE @STE_Name";
|
|
listStr.Add(new SqlParameter("@STE_Name", "%" + this.txtSTE_Name.Text.Trim() + "%"));
|
|
}
|
|
if (!string.IsNullOrEmpty(this.txtSTE_Code.Text.Trim()))
|
|
{
|
|
strSql += " AND STE_Code LIKE @STE_Code";
|
|
listStr.Add(new SqlParameter("@STE_Code", "%" + this.txtSTE_Code.Text.Trim() + "%"));
|
|
}
|
|
SqlParameter[] parameter = listStr.ToArray();
|
|
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
|
|
|
// 2.获取当前分页数据
|
|
//var table = this.GetPagedDataTable(gvBS_Steel, tb1);
|
|
gvBS_Steel.RecordCount = tb.Rows.Count;
|
|
//tb = GetFilteredTable(gvBS_Steel.FilteredData, tb);
|
|
var table = this.GetPagedDataTable(gvBS_Steel, tb);
|
|
|
|
gvBS_Steel.DataSource = table;
|
|
gvBS_Steel.DataBind();
|
|
if (BS_SteelList.Count() > 0)
|
|
{
|
|
List<string> lists = new List<string>();
|
|
for (int i = 0; i < gvBS_Steel.Rows.Count; i++)
|
|
{
|
|
string id = gvBS_Steel.DataKeys[i][0].ToString();
|
|
if (BS_SteelList.Contains(id))
|
|
{
|
|
lists.Add(id);
|
|
}
|
|
}
|
|
gvBS_Steel.SelectedRowIDArray = lists.ToArray();
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 焊接材质保存方法
|
|
/// <summary>
|
|
/// 焊接材质保存方法
|
|
/// </summary>
|
|
private void SaveTab2Data()
|
|
{
|
|
BLL.WelderItemService.DeleteItemByWenId(this.WED_ID);
|
|
foreach (var item in gvBS_Steel.SelectedRowIDArray)
|
|
{
|
|
Model.BS_WelderItem welderItem = new Model.BS_WelderItem();
|
|
welderItem.WEDItem_ID = SQLHelper.GetNewID(typeof(Model.BS_WelderItem));
|
|
welderItem.WED_ID = this.WED_ID;
|
|
welderItem.STE_ID = item;
|
|
//增加焊接壁厚、焊接尺寸
|
|
JArray EditorPMArr = gvBS_Steel.GetMergedData();
|
|
if (EditorPMArr.Count > 0)
|
|
{
|
|
JArray mergedData = gvBS_Steel.GetMergedData();
|
|
int i = 0;
|
|
foreach (JObject mergedRow in EditorPMArr)
|
|
{
|
|
string steId = gvBS_Steel.DataKeys[i][0].ToString();
|
|
JObject values = mergedRow.Value<JObject>("values");
|
|
if (steId == item)
|
|
{
|
|
welderItem.ThicknessMin = Funs.GetNewDecimal(values.Value<string>("ThicknessMin").ToString());
|
|
welderItem.ThicknessMax = Funs.GetNewDecimal(values.Value<string>("ThicknessMax").ToString());
|
|
welderItem.SizesMin = Funs.GetNewDecimal(values.Value<string>("SizesMin").ToString());
|
|
welderItem.SizesMax = Funs.GetNewDecimal(values.Value<string>("SizesMax").ToString());
|
|
}
|
|
i++;
|
|
}
|
|
}
|
|
BLL.WelderItemService.AddWelderItem(welderItem);
|
|
}
|
|
}
|
|
#endregion
|
|
#endregion
|
|
|
|
#region 焊接方法
|
|
#region 焊接方法初始化
|
|
/// <summary>
|
|
/// 方法初始化
|
|
/// </summary>
|
|
protected void Tab4Load()
|
|
{
|
|
BS_WeldMethodList = new List<string>();
|
|
var items = from x in Funs.DB.BS_WeldMethodItem where x.WED_ID == this.WED_ID select x.WME_ID;
|
|
if (items.Count() > 0)
|
|
{
|
|
foreach (var item in items)
|
|
{
|
|
BS_WeldMethodList.Add(item);
|
|
}
|
|
}
|
|
gvBS_WeldMethodBindGrid();
|
|
}
|
|
#endregion
|
|
|
|
#region 焊接方法绑定数据
|
|
/// <summary>
|
|
/// 绑定数据
|
|
/// </summary>
|
|
private void gvBS_WeldMethodBindGrid()
|
|
{
|
|
string strSql = @"SELECT WeldingMethodId,WeldingMethodCode,WeldingMethodName,Remark"
|
|
+ @" FROM [dbo].[Base_WeldingMethod] WHERE 1=1";
|
|
List<SqlParameter> listStr = new List<SqlParameter>();
|
|
if (!string.IsNullOrEmpty(this.txtWME_Name.Text.Trim()))
|
|
{
|
|
strSql += " AND WeldingMethodName LIKE @WME_Name";
|
|
listStr.Add(new SqlParameter("@WME_Name", "%" + this.txtWME_Name.Text.Trim() + "%"));
|
|
}
|
|
if (!string.IsNullOrEmpty(this.txtWME_Code.Text.Trim()))
|
|
{
|
|
strSql += " AND WeldingMethodCode LIKE @WME_Code";
|
|
listStr.Add(new SqlParameter("@WME_Code", "%" + this.txtWME_Code.Text.Trim() + "%"));
|
|
}
|
|
SqlParameter[] parameter = listStr.ToArray();
|
|
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
|
|
|
// 2.获取当前分页数据
|
|
//var table = this.GetPagedDataTable(gvBS_WeldMethod, tb1);
|
|
gvBS_WeldMethod.RecordCount = tb.Rows.Count;
|
|
//tb = GetFilteredTable(gvBS_WeldMethod.FilteredData, tb);
|
|
var table = this.GetPagedDataTable(gvBS_WeldMethod, tb);
|
|
|
|
gvBS_WeldMethod.DataSource = table;
|
|
gvBS_WeldMethod.DataBind();
|
|
if (BS_WeldMethodList.Count() > 0)
|
|
{
|
|
List<string> lists = new List<string>();
|
|
for (int i = 0; i < gvBS_WeldMethod.Rows.Count; i++)
|
|
{
|
|
string id = gvBS_WeldMethod.DataKeys[i][0].ToString();
|
|
if (BS_WeldMethodList.Contains(id))
|
|
{
|
|
lists.Add(id);
|
|
}
|
|
}
|
|
gvBS_WeldMethod.SelectedRowIDArray = lists.ToArray();
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 焊接方法保存方法
|
|
/// <summary>
|
|
/// 焊接方法保存方法
|
|
/// </summary>
|
|
private void SaveTab4Data()
|
|
{
|
|
BLL.WeldMethodItemService.DeleteWeldMethodItem(this.WED_ID);
|
|
foreach (var item in gvBS_WeldMethod.SelectedRowIDArray)
|
|
{
|
|
Model.BS_WeldMethodItem weldMethodItem = new Model.BS_WeldMethodItem();
|
|
weldMethodItem.WeldMethodItemId = SQLHelper.GetNewID(typeof(Model.BS_WeldMethodItem));
|
|
weldMethodItem.WED_ID = this.WED_ID;
|
|
weldMethodItem.WME_ID = item;
|
|
BLL.WeldMethodItemService.AddWeldMethodItem(weldMethodItem);
|
|
}
|
|
}
|
|
#endregion
|
|
#endregion
|
|
|
|
#region 保存按钮
|
|
/// <summary>
|
|
/// 保存按钮
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void btnSave_Click(object sender, EventArgs e)
|
|
{
|
|
/// 焊接材质保存方法
|
|
this.SaveTab2Data();
|
|
/// 焊接方法保存方法
|
|
this.SaveTab4Data();
|
|
ShowNotify("保存成功!", MessageBoxIcon.Success);
|
|
PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference());
|
|
}
|
|
#endregion
|
|
|
|
#region 查询
|
|
/// <summary>
|
|
/// 查询
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void TextBox_TextChanged(object sender, EventArgs e)
|
|
{
|
|
this.gvBS_SteelBindGrid();
|
|
this.gvBS_WeldMethodBindGrid();
|
|
}
|
|
#endregion
|
|
}
|
|
} |