190 lines
		
	
	
		
			6.3 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			190 lines
		
	
	
		
			6.3 KiB
		
	
	
	
		
			C#
		
	
	
	
| 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;
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 菜单ID
 | |
|         /// </summary>
 | |
|         public string UnitId
 | |
|         {
 | |
|             get
 | |
|             {
 | |
|                 return (string)ViewState["UnitId"];
 | |
|             }
 | |
|             set
 | |
|             {
 | |
|                 ViewState["UnitId"] = value;
 | |
|             }
 | |
|         }
 | |
|         #endregion
 | |
| 
 | |
|         #region 加载页面
 | |
|         /// <summary>
 | |
|         /// 加载页面
 | |
|         /// </summary>
 | |
|         /// <param name="sender"></param>
 | |
|         /// <param name="e"></param>
 | |
|         protected void Page_Load(object sender, EventArgs e)
 | |
|         {
 | |
|             if (!IsPostBack)
 | |
|             {
 | |
|                 this.UnitId = this.UnitId ?? BLL.Const.UnitId_CWCEC;
 | |
|                 this.ProjectId=this.ProjectId;
 | |
|                 ////加载树
 | |
|                 SetSubUnitProjectTree(this.tvProject);
 | |
|             }
 | |
|         }
 | |
|         #endregion
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 
 | |
|         /// </summary>
 | |
|         /// <param name="sender"></param>
 | |
|         /// <param name="e"></param>
 | |
|         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 绑定分公司 单位-项目树
 | |
|         /// <summary>
 | |
|         ///  绑定分公司 单位-项目树
 | |
|         /// </summary>
 | |
|         /// <param name="tvProject"></param>                                                                                                    
 | |
|         /// <param name="CurrUser"></param>
 | |
|         public void SetSubUnitProjectTree(FineUIPro.Tree tvProject)
 | |
|         {
 | |
|             tvProject.Nodes.Clear();
 | |
|             if (BLL.Const.UnitId_CWCEC == 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);
 | |
|         }
 | |
|     }
 | |
| } |