using BLL; using Org.BouncyCastle.Asn1.Cms; using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Linq; namespace FineUIPro.Web.Controls { public partial class UnitProjectTControl : System.Web.UI.UserControl { #region 定义页面项 public string ProjectId { get { return (string)ViewState["ProjectId"]; } set { ViewState["ProjectId"] = value; } } /// /// 菜单ID /// public string UnitId { get { return (string)ViewState["UnitId"]; } set { ViewState["UnitId"] = value; } } #endregion #region 加载页面 /// /// 加载页面 /// /// /// protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { this.UnitId = this.UnitId ?? BLL.Const.UnitId_TCC; this.ProjectId=this.ProjectId; ////加载树 SetSubUnitProjectTree(this.tvProject); } } #endregion /// /// /// /// /// protected void tvProject_NodeCommand(object sender, TreeCommandEventArgs e) { this.UnitId = string.Empty; this.ProjectId = string.Empty; if (this.tvProject != null && !string.IsNullOrEmpty(this.tvProject.SelectedNodeID)) { if (this.tvProject.SelectedNode.ParentNode == null) { this.UnitId = this.tvProject.SelectedNodeID; } else { this.UnitId=this.tvProject.SelectedNode.ParentNode.NodeID; this.ProjectId = this.tvProject.SelectedNodeID; } if (this.change != null) { this.change(this, e); } } } public delegate void userEvent(object sender, EventArgs arg); public event userEvent change; #region 绑定分公司 单位-项目树 /// /// 绑定分公司 单位-项目树 /// /// /// public void SetSubUnitProjectTree(FineUIPro.Tree tvProject) { tvProject.Nodes.Clear(); if (BLL.Const.UnitId_TCC == this.UnitId) { var getSubUnit = from x in Funs.DB.Base_Unit where x.UnitId == this.UnitId || x.IsBranch == true orderby x.IsBranch, x.UnitCode select x; foreach (var item in getSubUnit) { bool isHideUPTCode = false; var sysSet17 = (from x in Funs.DB.Sys_Set where x.SetName == "是否隐藏公司项目树单位编码" select x).ToList().FirstOrDefault(); if (sysSet17 != null && sysSet17.IsAuto == true) { isHideUPTCode = true; } FineUIPro.TreeNode crootNode = new FineUIPro.TreeNode { // Text =item.UnitCode+":"+ item.UnitName, NodeID = item.UnitId, EnableClickEvent = true }; if (isHideUPTCode) { crootNode.Text = item.UnitName; } else { crootNode.Text = item.UnitCode + ":" + item.UnitName; } tvProject.Nodes.Add(crootNode); var getSProjects = ProjectService.GetProjectWorkList(item.UnitId); foreach (var sitem in getSProjects) { FineUIPro.TreeNode scrootNode = new FineUIPro.TreeNode { Text = sitem.ProjectName, NodeID = sitem.ProjectId, EnableClickEvent = true }; if (sitem.ProjectId == this.ProjectId) { scrootNode.Checked = true; } crootNode.Nodes.Add(scrootNode); } } } else { var getSubUnit = Funs.DB.Base_Unit.FirstOrDefault(x => x.UnitId == this.UnitId); if (getSubUnit != null) { FineUIPro.TreeNode crootNode = new FineUIPro.TreeNode { Text = getSubUnit.UnitName, NodeID = getSubUnit.UnitId, EnableClickEvent = true }; tvProject.Nodes.Add(crootNode); var getSProjects = ProjectService.GetProjectWorkList(getSubUnit.UnitId); foreach (var sitem in getSProjects) { FineUIPro.TreeNode scrootNode = new FineUIPro.TreeNode { Text = sitem.ProjectName, NodeID = sitem.ProjectId, EnableClickEvent = true }; if (sitem.ProjectId == this.ProjectId) { scrootNode.Checked = true; } crootNode.Nodes.Add(scrootNode); } } } } #endregion protected void ckState_SelectedIndexChanged(object sender, EventArgs e) { ////加载树 SetSubUnitProjectTree(this.tvProject); } } }