安全会议,教育培训接口

This commit is contained in:
2026-02-06 10:23:36 +08:00
parent 75ce4655b4
commit 89bd4cc350
24 changed files with 1435 additions and 769 deletions
@@ -1,5 +1,7 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="PersonList.aspx.cs" Inherits="FineUIPro.Web.HSSE.SitePerson.PersonList" %>
<%@ Register Src="~/Controls/UnitProjectTControl.ascx" TagName="UnitProjectTControl" TagPrefix="uc1" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
@@ -9,6 +11,7 @@
.f-grid-row.Red {
background-color: red;
}
.LabelColor {
color: Red;
font-size: small;
@@ -21,6 +24,16 @@
<f:Panel ID="Panel1" runat="server" ShowBorder="false" ShowHeader="false" Layout="Region">
<Items>
<f:Panel runat="server" ID="panelLeftRegion" RegionPosition="Left" RegionSplit="true"
EnableCollapse="true" Width="380" Title="公司-项目" TitleToolTip="公司-项目" ShowBorder="true"
ShowHeader="true" AutoScroll="true" BodyPadding="5px" IconFont="ArrowCircleLeft" Layout="Fit">
<Items>
<f:ContentPanel ID="ContentPanel1" runat="server" ShowHeader="false" EnableCollapse="true" AutoScroll="true"
BodyPadding="0px">
<uc1:UnitProjectTControl ID="ucTree" runat="server" Onchange="changeTree" />
</f:ContentPanel>
</Items>
</f:Panel>
<f:Panel runat="server" ID="panelLeftRegion1" RegionPosition="Left" RegionSplit="true"
EnableCollapse="true" Width="250" Title="人员信息" TitleToolTip="人员信息" ShowBorder="true"
ShowHeader="false" AutoScroll="true" BodyPadding="5px" IconFont="ArrowCircleLeft" Layout="Fit">
<Items>
@@ -64,7 +77,7 @@
<f:DropDownList ID="drpTreamGroup" runat="server" Label="班组" EnableEdit="true"
Width="200px" LabelWidth="50px" LabelAlign="right" ForceSelection="false">
</f:DropDownList>
<f:TextBox runat="server" Label="身份证" ID="txtIdentityCard" EmptyText="输入查询条件"
<f:TextBox runat="server" Label="身份证" ID="txtIdentityCard" EmptyText="输入查询条件"
Width="200px" LabelWidth="70px"
LabelAlign="right">
</f:TextBox>
@@ -74,8 +87,8 @@
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Top" ToolbarAlign="Right" runat="server">
<Items>
<f:DropDownList ID="drpIsUsedName" runat="server" Label="是否在岗" EnableEdit="true" AutoPostBack="True"
Width="200px" LabelWidth="100px" LabelAlign="right" ForceSelection="false" OnSelectedIndexChanged="drpIsUsedName_OnSelectedIndexChanged" >
<f:DropDownList ID="drpIsUsedName" runat="server" Label="是否在岗" EnableEdit="true" AutoPostBack="True"
Width="200px" LabelWidth="100px" LabelAlign="right" ForceSelection="false" OnSelectedIndexChanged="drpIsUsedName_OnSelectedIndexChanged">
<f:ListItem Value="是" Text="是" />
<f:ListItem Value="否" Text="否" />
</f:DropDownList>
@@ -108,7 +121,7 @@
FieldType="String" HeaderText="姓名" HeaderTextAlign="Center"
TextAlign="Center">
</f:RenderField>
<%-- <f:RenderField HeaderText="卡号" ColumnID="CardNo" DataField="CardNo" SortField="CardNo"
<%-- <f:RenderField HeaderText="卡号" ColumnID="CardNo" DataField="CardNo" SortField="CardNo"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left" Width="80px">
</f:RenderField>--%>
<f:RenderField HeaderText="岗位名称" ColumnID="WorkPostName" DataField="WorkPostName" SortField="WorkPostName"
@@ -122,32 +135,32 @@
</f:RenderField>--%>
<%-- <f:RenderField HeaderText="部门名称" ColumnID="DepartName" DataField="DepartName" SortField="DepartName"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left" Width="100px">
</f:RenderField> --%>
<f:TemplateField ColumnID="tfI" HeaderText="身份证号" Width="170px" HeaderTextAlign="Center" TextAlign="Left">
<ItemTemplate>
<asp:Label ID="lbI" runat="server" Text=' <%# Bind("IdentityCard") %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
</f:RenderField> --%>
<f:TemplateField ColumnID="tfI" HeaderText="身份证号" Width="170px" HeaderTextAlign="Center" TextAlign="Left">
<ItemTemplate>
<asp:Label ID="lbI" runat="server" Text=' <%# Bind("IdentityCard") %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField HeaderText="班组" ColumnID="TeamGroupName" DataField="TeamGroupName" SortField="TeamGroupName"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left" Width="150px">
</f:RenderField>
<f:RenderField HeaderText="单位工程" ColumnID="WorkAreaName" DataField="WorkAreaName" SortField="WorkAreaName"
<f:RenderField HeaderText="单位工程" ColumnID="WorkAreaName" DataField="WorkAreaName" SortField="WorkAreaName"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left" Width="110px">
</f:RenderField>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="InTime" DataField="InTime" SortField="InTime"
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="入场时间"
HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="入场时间"
HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<%-- <f:RenderField HeaderText="电话" ColumnID="Telephone" DataField="Telephone" SortField="Telephone"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left" Width="110px">
</f:RenderField>--%>
<f:RenderField HeaderText="在场" ColumnID="IsUsedName" DataField="IsUsedName" SortField="IsUsedName"
FieldType="String" HeaderTextAlign="Center" TextAlign="Center" Width="60px">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="OutTime" DataField="OutTime" SortField="OutTime"
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="出场时间"
HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="OutTime" DataField="OutTime" SortField="OutTime"
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="出场时间"
HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
@@ -59,8 +59,16 @@ namespace FineUIPro.Web.HSSE.SitePerson
{
this.ProjectId = Request.Params["projectId"];
}
this.ucTree.UnitId = this.CurrUser.UnitId;
this.ucTree.ProjectId = this.ProjectId;
if (!string.IsNullOrEmpty(this.CurrUser.LoginProjectId))
{
this.panelLeftRegion.Hidden = true;
//权限按钮方法
this.GetButtonPower();
}
////权限按钮方法
this.GetButtonPower();
//this.GetButtonPower();
this.btnMenuDelete.OnClientClick = Grid1.GetNoSelectionAlertReference("请至少选择一项!");
this.btnMenuDelete.ConfirmText = String.Format("你确定要删除选中的&nbsp;<b><script>{0}</script></b>&nbsp;行数据吗?", Grid1.GetSelectedCountReference());
this.ddlPageSize.SelectedValue = this.Grid1.PageSize.ToString();
@@ -69,6 +77,27 @@ namespace FineUIPro.Web.HSSE.SitePerson
this.InitTreeMenu();//加载树
}
}
/// <summary>
/// 公司级树加载
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void changeTree(object sender, EventArgs e)
{
this.ProjectId = this.ucTree.ProjectId;
this.InitTreeMenu();
this.BindGrid();
this.GetButtonPower();
if (string.IsNullOrEmpty(this.CurrUser.LoginProjectId))
{
btnNew.Hidden = true;
btnImport.Hidden = true;
btnPersonOut.Hidden = true;
btnMenuEdit.Hidden = true;
btnMenuDelete.Hidden = true;
//btnMenuBlackList.Hidden = true;
}
}
/// <summary>
/// 加载树
@@ -79,46 +108,18 @@ namespace FineUIPro.Web.HSSE.SitePerson
var project = BLL.ProjectService.GetProjectByProjectId(this.ProjectId);
if (project != null)
{
//var personLists = BLL.PersonService.GetPersonList(project.ProjectId);
String strSql1 = @"select UnitId,count( * ) num from SitePerson_Person
where ProjectId='" + this.CurrUser.LoginProjectId + @"'
group by UnitId";
String strSql2 = @" select UnitId,count( * ) num from SitePerson_Person
where ProjectId='" + this.CurrUser.LoginProjectId + @"' and IsUsed =1 and InTime<='" + DateTime.Now.ToString("yyyy-MM-dd") + "' and (OutTime is null or OutTime>'" + DateTime.Now.ToString("yyyy-MM-dd") + @"' )
group by UnitId";
DataTable dt1 = SQLHelper.GetDataTableRunText(strSql1, null);
DataTable dt2 = SQLHelper.GetDataTableRunText(strSql2, null);
int proTotal = 0;
int proIn = 0;
if (dt1 != null && dt1.Rows.Count > 0)
{
foreach (DataRow row in dt1.Rows)
{
proTotal += int.Parse(row["num"].ToString());
}
}
if (dt2 != null && dt2.Rows.Count > 0)
{
foreach (DataRow row in dt2.Rows)
{
proIn += int.Parse(row["num"].ToString());
}
}
var personLists = BLL.PersonService.GetPersonList(project.ProjectId);
TreeNode rootNode = new TreeNode();
rootNode = new TreeNode
{
Text = project.ProjectName,
NodeID = project.ProjectId
};
if (proTotal > 0)
if (personLists.Count() > 0)
{
//var personIn = personLists.Where(x => x.ProjectId == this.CurrUser.LoginProjectId && x.IsUsed == true
// && x.InTime <= DateTime.Now && (!x.OutTime.HasValue || x.OutTime > DateTime.Now)).ToList();
rootNode.ToolTip = "当前项目人员总数:" + proTotal + ";在场人员数:" + proIn + ";离场人员数:" + (proTotal - proIn);
var personIn = personLists.Where(x => x.ProjectId == this.ProjectId && x.IsUsed == true
&& x.InTime <= DateTime.Now && (!x.OutTime.HasValue || x.OutTime > DateTime.Now)).ToList();
rootNode.ToolTip = "当前项目人员总数:" + personLists.Count() + ";在场人员数:" + personIn.Count() + ";离场人员数:" + (personLists.Count() - personIn.Count());
}
else
{
@@ -126,7 +127,117 @@ namespace FineUIPro.Web.HSSE.SitePerson
}
rootNode.Expanded = true;
this.tvProjectAndUnit.Nodes.Add(rootNode);
GetUnitLists(rootNode.Nodes, this.ProjectId, dt1, dt2);
GetUnitLists(rootNode.Nodes, this.ProjectId, personLists);
////var personLists = BLL.PersonService.GetPersonList(project.ProjectId);
//String strSql1 = @"select UnitId,count( * ) num from SitePerson_Person
// where ProjectId='" + this.CurrUser.LoginProjectId + @"'
// group by UnitId";
//String strSql2 = @" select UnitId,count( * ) num from SitePerson_Person
// where ProjectId='" + this.CurrUser.LoginProjectId + @"' and IsUsed =1 and InTime<='" + DateTime.Now.ToString("yyyy-MM-dd") + "' and (OutTime is null or OutTime>'" + DateTime.Now.ToString("yyyy-MM-dd") + @"' )
// group by UnitId";
//DataTable dt1 = SQLHelper.GetDataTableRunText(strSql1, null);
//DataTable dt2 = SQLHelper.GetDataTableRunText(strSql2, null);
//int proTotal = 0;
//int proIn = 0;
//if (dt1 != null && dt1.Rows.Count > 0)
//{
// foreach (DataRow row in dt1.Rows)
// {
// proTotal += int.Parse(row["num"].ToString());
// }
//}
//if (dt2 != null && dt2.Rows.Count > 0)
//{
// foreach (DataRow row in dt2.Rows)
// {
// proIn += int.Parse(row["num"].ToString());
// }
//}
//TreeNode rootNode = new TreeNode();
//rootNode = new TreeNode
//{
// Text = project.ProjectName,
// NodeID = project.ProjectId
//};
//if (proTotal > 0)
//{
// //var personIn = personLists.Where(x => x.ProjectId == this.CurrUser.LoginProjectId && x.IsUsed == true
// // && x.InTime <= DateTime.Now && (!x.OutTime.HasValue || x.OutTime > DateTime.Now)).ToList();
// rootNode.ToolTip = "当前项目人员总数:" + proTotal + ";在场人员数:" + proIn + ";离场人员数:" + (proTotal - proIn);
//}
//else
//{
// rootNode.ToolTip = "当前项目人员总数:0";
//}
//rootNode.Expanded = true;
//this.tvProjectAndUnit.Nodes.Add(rootNode);
//GetUnitLists(rootNode.Nodes, this.ProjectId, dt1, dt2);
}
}
/// <summary>
/// 加载单位
/// </summary>
/// <param name="nodes"></param>
/// <param name="parentId"></param>
private void GetUnitLists(TreeNodeCollection nodes, string parentId, List<Model.SitePerson_Person> personLists)
{
List<Model.Base_Unit> unitLists = BLL.UnitService.GetUnitByProjectIdList(parentId);
if (unitLists.Count() > 0)
{
if (BLL.ProjectUnitService.GetProjectUnitTypeByProjectIdUnitId(parentId, this.CurrUser.UnitId))
{
unitLists = unitLists.Where(x => x.UnitId == this.CurrUser.UnitId).ToList();
}
//添加其他单位/无单位人员
Model.Base_Unit otherUnit = new Model.Base_Unit
{
UnitId = "0",
UnitName = "其他"
};
unitLists.Add(otherUnit);
TreeNode newNode = null;
foreach (var q in unitLists)
{
newNode = new TreeNode
{
Text = q.UnitName,
NodeID = q.UnitId + "|" + parentId,
ToolTip = q.UnitName
};
if (personLists.Count() > 0)
{
var personUnitLists = personLists.Where(x => x.UnitId == q.UnitId);
if (q.UnitId == "0")
{
personUnitLists = personLists.Where(x => x.UnitId == null);
}
if (personUnitLists.Count() > 0)
{
var personIn = personUnitLists.Where(x => x.InTime <= System.DateTime.Now && x.IsUsed == true
&& (!x.OutTime.HasValue || x.OutTime >= System.DateTime.Now));
newNode.ToolTip = q.UnitName + "人员总数:" + personUnitLists.Count() + ";在场人员数:" + personIn.Count() + ";离场人员数:" + (personUnitLists.Count() - personIn.Count());
}
else
{
newNode.ToolTip = q.UnitName + "人员总数:0";
}
}
else
{
newNode.ToolTip = q.UnitName + "人员总数:0";
}
newNode.EnableClickEvent = true;
nodes.Add(newNode);
}
}
}
@@ -50,6 +50,33 @@ namespace FineUIPro.Web.HSSE.SitePerson
/// </remarks>
protected global::FineUIPro.Panel panelLeftRegion;
/// <summary>
/// ContentPanel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ContentPanel ContentPanel1;
/// <summary>
/// ucTree 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Web.Controls.UnitProjectTControl ucTree;
/// <summary>
/// panelLeftRegion1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel panelLeftRegion1;
/// <summary>
/// tvProjectAndUnit 控件。
/// </summary>