using System; using System.Collections.Generic; using System.Linq; using System.Data.SqlClient; using System.Data; using BLL; namespace FineUIPro.Web.WeldMat.Recycle { public partial class RecycleMat : PageBase { #region 加载页面 /// /// 加载页面 /// /// /// protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { ddlPageSize.SelectedValue = Grid1.PageSize.ToString(); this.drpProjectId.DataTextField = "ProjectCode"; this.drpProjectId.DataValueField = "ProjectId"; this.drpProjectId.DataSource = BLL.Base_ProjectService.GetOnProjectListByUserId(this.CurrUser.UserId, "1"); this.drpProjectId.DataBind(); Funs.FineUIPleaseSelect(this.drpProjectId); this.InitTreeMenu();//加载树 // 绑定表格 BindGrid(); } } #region 加载树施工号 /// /// 加载树 /// private void InitTreeMenu() { this.tvControlItem.Nodes.Clear(); TreeNode rootNode = new TreeNode(); rootNode.Text = "施工号"; rootNode.ToolTip = "项目"; rootNode.NodeID = "0"; rootNode.Expanded = true; this.tvControlItem.Nodes.Add(rootNode); var projects = BLL.Base_ProjectService.GetOnProjectListByUserId(this.CurrUser.UserId, "1"); if (this.drpProjectId.SelectedValue != null && this.drpProjectId.SelectedValue != "null") { projects = projects.Where(x => x.ProjectId == this.drpProjectId.SelectedValue).ToList(); } foreach (var item in projects) { TreeNode rootProjectNode = new TreeNode();//定义根节点 rootProjectNode.Text = item.ProjectCode; rootProjectNode.NodeID = item.ProjectId; rootProjectNode.Expanded = false; rootProjectNode.ToolTip = item.ProjectName; rootProjectNode.CommandName = "施工号"; rootProjectNode.EnableClickEvent = true; rootNode.Nodes.Add(rootProjectNode); } } #endregion #region TreeView点击事件 /// /// TreeView点击事件 /// /// /// protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e) { this.BindGrid(); } #endregion #region 下拉选择事件 /// /// 项目下拉选择事件 /// /// /// protected void drpProjectId_SelectedIndexChanged(object sender, EventArgs e) { this.InitTreeMenu(); } #endregion /// /// 绑定数据 /// private void BindGrid() { string strSql = @"SELECT m.UsingMatId, m.ProjectId, m.UsePosition, m.WeldId,weld.WeldName,weld.WeldCode,weld.WeldSpec, m.UsingPlanId, m.Amount,m.TwoAmount,usingMat.WED_Code AS UsingMan, m.UsingDate,m.Warrantybook,m.Number,r.RecycleAmount, r.RecycleDate,storeman.StoreName,welder.WED_Name AS RecycleMan,r.ReturnMatTop, (CASE WHEN m.IsOnTime=1 THEN '是' ELSE '否' END ) AS IsOnTime, (CASE WHEN r.IsWelderConfirm=1 THEN '是' ELSE '否' END) AS IsRecycleMat FROM dbo.Weld_UsingMat m LEFT JOIN dbo.Weld_RecycleMat r ON m.UsingMatId=r.UsingMatId LEFT JOIN dbo.Weld_Storeman AS storeman ON storeman.StoremanId=r.StockMan LEFT JOIN dbo.HJGL_BS_Welder AS welder ON welder.WED_ID=r.RecycleMan LEFT JOIN dbo.Weld_WeldInfo weld ON weld.WeldId = m.WeldId LEFT JOIN dbo.Base_Project project ON project.ProjectId = m.ProjectId LEFT JOIN dbo.HJGL_BS_Welder usingMat ON usingmat.WED_ID=m.UsingMan WHERE m.IsWelderConfirm=1 AND m.IsStoreManConfirm=1"; List listStr = new List(); if (!string.IsNullOrEmpty(this.txtWelderCode.Text.Trim())) { strSql += " AND usingMat.WED_Code LIKE @WelderCode"; listStr.Add(new SqlParameter("@WelderCode", "%" + this.txtWelderCode.Text.Trim() + "%")); } if (tvControlItem.SelectedNodeID != "0") { strSql += " AND m.ProjectId = @ProjectId"; listStr.Add(new SqlParameter("@ProjectId", tvControlItem.SelectedNodeID)); } if (!string.IsNullOrEmpty(this.txtWeldName.Text.Trim())) { strSql += " AND weld.WeldName LIKE @WeldName"; listStr.Add(new SqlParameter("@WeldName", "%" + this.txtWeldName.Text.Trim() + "%")); } if (!string.IsNullOrEmpty(this.txtUsingMan.Text.Trim())) { strSql += " AND welder.WED_Name LIKE @UsingMan"; listStr.Add(new SqlParameter("@UsingMan", "%" + this.txtUsingMan.Text.Trim() + "%")); } SqlParameter[] parameter = listStr.ToArray(); DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter); Grid1.RecordCount = tb.Rows.Count; tb = GetSortTable(Grid1, tb); var table = this.GetPagedDataTable(Grid1, tb); Grid1.DataSource = table; Grid1.DataBind(); } #endregion #region Grid右键菜单事件 /// /// 焊材退回 /// /// /// protected void btnMenuRecycleMat_Click(object sender, EventArgs e) { if (!string.IsNullOrEmpty(this.Grid1.SelectedRowID)) { var mat = BLL.UsingMatService.GetUsingMatById(this.Grid1.SelectedRowID); bool isRec = false; if (mat.UsingDate.Value.AddHours(24) < DateTime.Now) { isRec = true; } if (isRec) { var rec = BLL.RecycleMatService.GetRecycleMatByUsingMatId(this.Grid1.SelectedRowID); if (rec != null && rec.IsStoreManConfirm == true && rec.IsWelderConfirm == true) { ShowNotify("焊材已退!"); } else { string window = String.Format("RecycleMatEdit.aspx?usingMatId={0}&isOnTime=0", this.Grid1.SelectedRowID, "编辑 - "); PageContext.RegisterStartupScript(Window1.GetShowReference(window)); } } else { ShowNotify("未超过指定退料时间,请到焊工领料页面进行正常退料!"); } } } protected void btnRecycleFind_Click(object sender, EventArgs e) { if (!string.IsNullOrEmpty(this.Grid1.SelectedRowID)) { string window = String.Format("RecycleMatEdit.aspx?usingMatId={0}&flag=1", this.Grid1.SelectedRowID, "编辑 - "); PageContext.RegisterStartupScript(Window1.GetShowReference(window)); } } protected void menuRecycleMatConfirm_Click(object sender, EventArgs e) { if (!string.IsNullOrEmpty(this.Grid1.SelectedRowID)) { string weldMatId = this.Grid1.SelectedRowID; var rec = BLL.RecycleMatService.GetRecycleMatByUsingMatId(weldMatId); if (rec != null) { if (rec.IsStoreManConfirm == true && rec.IsWelderConfirm == true) { ShowNotify("保管员和焊工已确认!"); } else { string window = String.Format("../UsingSentMat/UsingMatCheck.aspx?keyId={0}&grid=2&isFinger=0", rec.RecycleMatId, "编辑 - "); PageContext.RegisterStartupScript(Window3.GetShowReference(window)); } } else { ShowNotify("请先保存退回材料的记录!"); } } } #endregion #region Grid行点击双击事件 /// /// /// /// /// protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e) { string weldMatId = e.RowID; var rec = BLL.RecycleMatService.GetRecycleMatByUsingMatId(weldMatId); if (rec != null) { if (rec.IsStoreManConfirm == true && rec.IsWelderConfirm == true) { ShowNotify("保管员和焊工已确认!"); } else { string window = String.Format("../UsingSentMat/UsingMatCheck.aspx?keyId={0}&grid=2", weldMatId, "编辑 - "); PageContext.RegisterStartupScript(Window3.GetShowReference(window)); } } else { ShowNotify("请先保存记录!"); } } #endregion protected void Window1_Close(object sender, WindowCloseEventArgs e) { BindGrid(); } protected void Window3_Close(object sender, WindowCloseEventArgs e) { } #region 页索引改变事件 /// /// 页索引改变事件 /// /// /// protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e) { Grid1.PageIndex = e.NewPageIndex; BindGrid(); } #endregion #region 排序 /// /// 排序 /// /// /// protected void Grid1_Sort(object sender, GridSortEventArgs e) { Grid1.SortDirection = e.SortDirection; Grid1.SortField = e.SortField; BindGrid(); } #endregion #region 分页选择下拉改变事件 /// /// 分页选择下拉改变事件 /// /// /// protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e) { Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue); BindGrid(); } #endregion #region 查询 /// /// 查询 /// /// /// protected void TextBox_TextChanged(object sender, EventArgs e) { BindGrid(); } #endregion } }