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.CQMS.Foreign { public partial class ShoBreakdownProject : PageBase { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { string cnProfessionalId= Request.Params["CNProfessionalId"]; InitTreeMenu(cnProfessionalId); } } #region 加载树 /// /// 加载树 /// private void InitTreeMenu(string cnProfessionalId) { this.tvControlItem.Nodes.Clear(); this.tvControlItem.ShowBorder = false; this.tvControlItem.ShowHeader = false; this.tvControlItem.EnableIcons = true; this.tvControlItem.AutoScroll = true; this.tvControlItem.EnableSingleClickExpand = true; var unitWorks = from x in Funs.DB.WBS_UnitWork where x.ProjectId == this.CurrUser.LoginProjectId orderby x.UnitWorkCode select x; foreach (var item in unitWorks) { TreeNode rootNode1 = new TreeNode(); rootNode1.Text = item.UnitWorkName; rootNode1.NodeID = item.UnitWorkId; rootNode1.CommandName = "单位工程"; //rootNode1.EnableExpandEvent = true; //rootNode1.EnableClickEvent = true; this.tvControlItem.Nodes.Add(rootNode1); var foreignCNProfessionals = from x in Funs.DB.WBS_ForeignCNProfessional where x.CNProfessionalId == cnProfessionalId orderby x.SortIndex select x; foreach (var item2 in foreignCNProfessionals) { TreeNode rootNode2 = new TreeNode(); rootNode2.Text = item2.ProfessionalName; rootNode2.NodeID = rootNode1.NodeID + "|" + item2.CNProfessionalId; rootNode2.CommandName = "国外专业"; rootNode2.EnableExpandEvent = true; rootNode2.EnableClickEvent = true; rootNode1.Nodes.Add(rootNode2); } } } #endregion #region 点击树节点 /// /// 点击树节点 /// /// /// protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e) { string ids = this.tvControlItem.SelectedNodeID; this.hdUnitWorkId.Text = ids.Split('|').ToList()[0]; this.hdCNProfessionalId.Text = ids.Split('|').ToList()[1]; BindGrid(); } #endregion #region 分页 /// /// 分页 /// /// /// protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e) { Grid1.PageIndex = e.NewPageIndex; BindGrid(); } /// /// 下拉框分页 /// /// /// protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e) { Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue); BindGrid(); } /// /// 排序 /// /// /// protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e) { Grid1.SortDirection = e.SortDirection; Grid1.SortField = e.SortField; BindGrid(); } #endregion #region 数据绑定 /// /// 绑定数据 /// private void BindGrid() { string strSql = @"SELECT ForeignBreakdownProject.BreakdownProjectId, ForeignBreakdownProject.ProjectId, ForeignBreakdownProject.UnitWorkId, ForeignBreakdownProject.CNProfessionalId, ForeignBreakdownProject.BreakdownCode, ForeignBreakdownProject.BreakdownName, ForeignBreakdownProject.BreakdownDef, ForeignBreakdownProject.Remark, ForeignBreakdownProject.SortIndex, ForeignBreakdownProject.IsSelected" + @" FROM WBS_ForeignBreakdownProject AS ForeignBreakdownProject " + @" WHERE ForeignBreakdownProject.ProjectId=@ProjectId" + @" AND ForeignBreakdownProject.UnitWorkId=@UnitWorkId" + @" AND ForeignBreakdownProject.CNProfessionalId=@CNProfessionalId"; List listStr = new List(); listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId)); listStr.Add(new SqlParameter("@UnitWorkId", this.hdUnitWorkId.Text.Trim())); listStr.Add(new SqlParameter("@CNProfessionalId", this.hdCNProfessionalId.Text.Trim())); //if (!string.IsNullOrEmpty(this.txtBreakdownName.Text.Trim())) //{ // strSql += " AND ForeignBreakdownProject.BreakdownName LIKE @BreakdownName"; // listStr.Add(new SqlParameter("@BreakdownName", "%" + this.txtBreakdownName.Text.Trim() + "%")); //} SqlParameter[] parameter = listStr.ToArray(); DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter); Grid1.RecordCount = tb.Rows.Count; //tb = GetFilteredTable(Grid1.FilteredData, tb); var table = this.GetPagedDataTable(Grid1, tb); Grid1.DataSource = table; Grid1.DataBind(); } #endregion #region 确定 /// /// 确定按钮 /// /// /// protected void btnSure_Click(object sender, EventArgs e) { string itemsString = this.Grid1.SelectedRowID + "|" + this.hdUnitWorkId.Text.Trim(); PageContext.RegisterStartupScript(ActiveWindow.GetWriteBackValueReference(itemsString) + ActiveWindow.GetHidePostBackReference()); } #endregion } }