数据穿透新增页面

This commit is contained in:
2023-06-09 10:20:38 +08:00
parent 857a427be6
commit 72f0109f93
132 changed files with 15962 additions and 205 deletions
@@ -0,0 +1,23 @@
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="UnitProjectTControl.ascx.cs" Inherits="FineUIPro.Web.Controls.UnitProjectTControl" %>
<f:Panel ID="Panel1" runat="server" BodyPadding="0px" ShowBorder="false"
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" Hidden="true">
<Items>
<f:RadioButtonList runat="server" ID="ckState" Width="300px" ShowEmptyLabel="true"
AutoPostBack="true" OnSelectedIndexChanged="ckState_SelectedIndexChanged">
<f:RadioItem Text="全部" Value="0" />
<f:RadioItem Text="在建" Value="1" Selected="true" />
<f:RadioItem Text="停工" Value="2" />
<f:RadioItem Text="竣工" Value="3" />
</f:RadioButtonList>
</Items>
</f:Toolbar>
</Toolbars>
<Items>
<f:Tree ID="tvProject" EnableCollapse="true" ShowHeader="false" Title="单位-项目"
OnNodeCommand="tvProject_NodeCommand" AutoLeafIdentification="true" runat="server"
ShowBorder="false" EnableTextSelection="True">
</f:Tree>
</Items>
</f:Panel>
@@ -0,0 +1,190 @@
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 ?? CommonService.GetThisUnitId();
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 (CommonService.GetThisUnitId() == 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);
}
}
}
@@ -0,0 +1,53 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.Controls
{
public partial class UnitProjectTControl
{
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// Toolbar2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar2;
/// <summary>
/// ckState 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.RadioButtonList ckState;
/// <summary>
/// tvProject 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Tree tvProject;
}
}