using BLL; using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace FineUIPro.Web.YLRQ.TestDataManagement { public partial class RTQualityRating : PageBase { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { this.ddlPageSize.SelectedValue = this.Grid1.PageSize.ToString(); BridProjectGrid(); this.InitTreeMenu();//加载树 this.BindGrid(); } } #region 树项目 /// /// 绑定项目 /// public void BridProjectGrid() { GridProject.DataSource = BLL.Base_ProjectService.GetYlrqProjectListByUserId(this.CurrUser.UserId, "2"); GridProject.DataBind(); } /// /// 加载树 /// 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); List projects = BLL.Base_ProjectService.GetOnProjectListByUserId(this.CurrUser.UserId, "2"); if (!string.IsNullOrEmpty(this.drpProject.Value)) { projects = projects.Where(e => e.ProjectId == this.drpProject.Value).ToList(); } foreach (var item in projects) { TreeNode rootProjectNode = new TreeNode();//定义根节点 rootProjectNode.Text = $"{item.ProjectCode},{item.EquipmentName},{item.ProductNum}"; rootProjectNode.NodeID = item.ProjectId; rootProjectNode.EnableClickEvent = true; rootProjectNode.Expanded = true; rootProjectNode.ToolTip = "项目名称"; rootNode.Nodes.Add(rootProjectNode); } } /// /// 点击TreeView /// /// /// protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e) { this.BindGrid(); } #endregion #region 数据绑定 /// /// 数据绑定 /// private void BindGrid() { string strSql = ""; if (this.ckbShowAll.Checked) { strSql = @"SELECT v.* ,ROW_NUMBER() OVER(ORDER BY v.EntrustCode DESC) AS Number FROM(SELECT x.* FROM(select b.WeldingId,b.WeldingCode,b.ProjectId,d.ProjectCode,a.EntrustCode,a.EntrustData,a.NdtCode,a.NdtId,h.WME_Code,f.JST_Name,g.Ndt_TestStandardCode,a.EntrustId,e.UnitName,(CASE WHEN (SELECT COUNT(*) FROM PV_BO_QualityRating q WHERE q.MethodId=a.MethodId)>0 THEN 0 ELSE 1 END) IsShow from PV_ManagementMethod as a left join PV_WeldInformation as b on a.WeldingId=b.WeldingId left join PV_EntrustRecord as c on c.Id=a.EntrustId left JOIN dbo.Base_Project AS d ON d.ProjectId = b.ProjectId left join View_Common_Project_UnitList as e on e.UnitId=b.UnitId and e.ProjectId=b.ProjectId left join HJGL_BS_SlopeType as f on f.JST_ID=b.GrooveType left join PV_TestMethod as g on g.Ndt_TestStandardId=c.TestStandardId and g.Ndt_Id=a.NdtId left join HJGL_BS_WeldMethod as h on h.WME_ID=b.WmeId where ISNULL(a.EntrustCode,'')!='') as x GROUP BY x.WeldingId,x.WeldingCode,x.ProjectId,x.ProjectCode,x.EntrustCode,x.EntrustData,x.NdtCode,x.NdtId,x.WME_Code,x.JST_Name,x.Ndt_TestStandardCode,x.EntrustId,x.EntrustCode,x.UnitName,x.IsShow) as v where 1=1 and v.NdtCode like '%RT%' "; } else { strSql = @"SELECT v.* ,ROW_NUMBER() OVER(ORDER BY v.EntrustCode DESC) AS Number FROM(SELECT x.* FROM(select b.WeldingId,b.WeldingCode,b.ProjectId,d.ProjectCode,a.EntrustCode,a.EntrustData,a.NdtCode,a.NdtId,h.WME_Code,f.JST_Name,g.ndt_TestStandardCode,a.EntrustId,e.UnitName,(CASE WHEN (SELECT COUNT(*) FROM PV_BO_QualityRating q WHERE q.MethodId=a.MethodId)>0 THEN 0 ELSE 1 END) IsShow from PV_ManagementMethod as a left join PV_WeldInformation as b on a.WeldingId=b.WeldingId left join PV_EntrustRecord as c on c.Id=a.EntrustId left JOIN dbo.Base_Project AS d ON d.ProjectId = b.ProjectId left join View_Common_Project_UnitList as e on e.UnitId=b.UnitId and e.ProjectId=b.ProjectId left join HJGL_BS_SlopeType as f on f.JST_ID=b.GrooveType left join PV_TestMethod as g on g.ndt_TestStandardId=c.TestStandardId and g.ndt_Id=a.NdtId left join HJGL_BS_WeldMethod as h on h.WME_ID=b.WmeId where ISNULL(a.EntrustCode,'')!='') as x GROUP BY x.WeldingId,x.WeldingCode,x.ProjectId,x.ProjectCode,x.EntrustCode,x.EntrustData,x.NdtCode,x.NdtId,x.WME_Code,x.JST_Name,x.ndt_TestStandardCode,x.EntrustId,x.EntrustCode,x.UnitName,x.IsShow) as v where 1=1 and v.IsShow=1 and v.NdtCode like '%RT%' "; } List listStr = new List(); if (!string.IsNullOrEmpty(this.tvControlItem.SelectedNodeID)) { strSql += " AND ProjectId = @ProjectId"; listStr.Add(new SqlParameter("@ProjectId", this.tvControlItem.SelectedNodeID)); } else { if (this.GetCookiesProjectId != string.Empty) { strSql += " AND ProjectId = @ProjectId"; listStr.Add(new SqlParameter("@ProjectId", this.GetCookiesProjectId)); } else { strSql += " AND ProjectId = @ProjectId"; listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId)); } } if (!string.IsNullOrEmpty(this.txtEntrustCode.Text.Trim())) { strSql += " AND EntrustCode LIKE @EntrustCode"; listStr.Add(new SqlParameter("@EntrustCode", "%" + this.txtEntrustCode.Text.Trim() + "%")); } SqlParameter[] parameter = listStr.ToArray(); DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter); Grid1.RecordCount = tb.Rows.Count; var table = this.GetPagedDataTable(Grid1, tb); Grid1.DataSource = table; Grid1.DataBind(); } #endregion #region 分页排序 /// /// 页索引改变事件 /// /// /// protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e) { BindGrid(); } /// /// 排序 /// /// /// protected void Grid1_Sort(object sender, GridSortEventArgs e) { BindGrid(); } /// /// 分页选择下拉改变事件 /// /// /// protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e) { Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue); BindGrid(); } #endregion #region 按钮和事件 /// /// 施工号下拉框 /// protected void drpProject_TextChanged(object sender, EventArgs e) { this.InitTreeMenu(); this.tvControlItem.SelectedNodeID = drpProject.Value; this.BindGrid(); } /// /// 查询 /// protected void btnSearch_Click(object sender, EventArgs e) { this.BindGrid(); } /// /// 关闭弹出窗口 /// protected void Window1_Close(object sender, WindowCloseEventArgs e) { this.BindGrid(); } /// /// 编辑质量等级评定 /// protected void btnEdit_Click(object sender, EventArgs e) { if (Grid1.SelectedRowIndexArray.Length == 0) { ShowNotify("请选择一条信息", MessageBoxIcon.Warning); return; } if (BLL.CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.PV_RTQualityRating, BLL.Const.BtnEditQualityRating)) { PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("QualityRating.aspx?EntrustCode={0}&WeldingId={1}&NdtId={2}", Grid1.SelectedRow.DataKeys[0].ToString(), Grid1.SelectedRow.DataKeys[1].ToString(), Grid1.SelectedRow.DataKeys[2].ToString(), "编辑 - "))); } else { ShowNotify("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning); } } /// /// Grid双击事件 /// protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e) { btnEdit_Click(null, null); } #endregion } }