168 lines
		
	
	
		
			6.7 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			168 lines
		
	
	
		
			6.7 KiB
		
	
	
	
		
			C#
		
	
	
	
| 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  加载树
 | |
|         /// <summary>
 | |
|         /// 加载树
 | |
|         /// </summary>
 | |
|         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 && (x.SuperUnitWork == null || x.SuperUnitWork == "0") 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 点击树节点
 | |
|         /// <summary>
 | |
|         /// 点击树节点
 | |
|         /// </summary>
 | |
|         /// <param name="sender"></param>
 | |
|         /// <param name="e"></param>
 | |
|         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 分页
 | |
|         /// <summary>
 | |
|         /// 分页
 | |
|         /// </summary>
 | |
|         /// <param name="sender"></param>
 | |
|         /// <param name="e"></param>
 | |
|         protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
 | |
|         {
 | |
|             Grid1.PageIndex = e.NewPageIndex;
 | |
|             BindGrid();
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 下拉框分页
 | |
|         /// </summary>
 | |
|         /// <param name="sender"></param>
 | |
|         /// <param name="e"></param>
 | |
|         protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
 | |
|         {
 | |
|             Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
 | |
|             BindGrid();
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 排序
 | |
|         /// </summary>
 | |
|         /// <param name="sender"></param>
 | |
|         /// <param name="e"></param>
 | |
|         protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
 | |
|         {
 | |
|             Grid1.SortDirection = e.SortDirection;
 | |
|             Grid1.SortField = e.SortField;
 | |
|             BindGrid();
 | |
|         }
 | |
|         #endregion
 | |
| 
 | |
|         #region 数据绑定
 | |
|         /// <summary>
 | |
|         /// 绑定数据 
 | |
|         /// </summary>
 | |
|         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<SqlParameter> listStr = new List<SqlParameter>();
 | |
|             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 确定
 | |
|         /// <summary>
 | |
|         /// 确定按钮
 | |
|         /// </summary>
 | |
|         /// <param name="sender"></param>
 | |
|         /// <param name="e"></param>
 | |
|         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
 | |
|     }
 | |
| } |