This commit is contained in:
2026-06-01 17:55:35 +08:00
parent a897bee59f
commit a4d45947e2
4 changed files with 150 additions and 68 deletions
@@ -173,9 +173,9 @@
<Items>
<f:Grid ID="Grid2" ShowBorder="true" ShowHeader="false" Title="QHSE在建项目清单" Height="720px"
EnableCollapse="true" runat="server" BoxFlex="1" EnableColumnLines="true" EnableSummary="true" SummaryPosition="Bottom"
DataKeyNames="ProjectId" DataIDField="ProjectId" AllowSorting="true" SortField="Usage,StartDate" SortDirection="DESC"
DataKeyNames="ProjectId" DataIDField="ProjectId" AllowSorting="true" SortField="UsageThreeMonth DESC,UsageMonth DESC,UsageWeek DESC,UsageDays DESC,SortIndex DESC,StartDate" SortDirection="DESC"
OnSort="Grid2_Sort" AllowPaging="false" IsDatabasePaging="false" PageSize="1000000" OnPageIndexChange="Grid2_PageIndexChange"
EnableTextSelection="True">
EnableTextSelection="True">
<Toolbars>
<f:Toolbar ID="Toolbar3" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
@@ -224,9 +224,25 @@
<asp:Label ID="lblStatus" runat="server" Text='<%# ConvertProjectState(Eval("ProjectState")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="120px" ColumnID="Usage" DataField="Usage"
<%--<f:RenderField Width="120px" ColumnID="Usage" DataField="Usage"
FieldType="String" HeaderText="使用情况" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
</f:RenderField>--%>
<f:GroupField ColumnID="GroupField2" runat="server" HeaderText="使用情况" HeaderTextAlign="Center">
<Columns>
<f:RenderField Width="100px" ColumnID="UsageDays" DataField="UsageDays"
FieldType="String" HeaderText="近三天" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="UsageWeek" DataField="UsageWeek"
FieldType="String" HeaderText="近一周" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="160px" ColumnID="UsageMonth" DataField="UsageMonth"
FieldType="String" HeaderText="近一月" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="160px" ColumnID="UsageThreeMonth" DataField="UsageThreeMonth"
FieldType="String" HeaderText="近三个月" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
</Columns>
</f:GroupField>
</Columns>
<Listeners>
<f:Listener Event="dataload" Handler="onGridDataLoad" />
@@ -300,7 +300,7 @@ namespace FineUIPro.Web.ProjectData
model.Id = useId;
model.Pro_id = pro_id;
model.Pro_code = pro_code;
model.Pro_name = pro_name.Replace("&#183;", "").Replace("&", "").Replace("#", "").Replace(";", "");
model.Pro_name = pro_name.Replace("&#183;", ".").Replace("&#215;", "/").Replace("&", "").Replace("#", "").Replace(";", "");
model.Is_relate = !string.IsNullOrWhiteSpace(projectId);
model.Is_use = !string.IsNullOrWhiteSpace(projectId);
model.Projectid = projectId;
@@ -413,37 +413,63 @@ namespace FineUIPro.Web.ProjectData
}
var dateNow = DateTime.Now.Date;//现在
var dateMonthAgo = dateNow.AddMonths(-1);//一个月
var dateDays = dateNow.AddDays(-3);//三天
var dateWeek = dateNow.AddDays(-7);//一周前
var dateMonth = dateNow.AddMonths(-1);//一个月前
var dateThreeMonth = dateNow.AddMonths(-3);//三个月前
var datas = (from x in db.Project_HSSEData_HSSE
where x.ReportDate == dateNow || x.ReportDate == dateMonthAgo
where x.ReportDate == dateNow || x.ReportDate == dateDays || x.ReportDate == dateWeek || x.ReportDate == dateMonth || x.ReportDate == dateThreeMonth
select new QHSEProjectHSSEData
{
ProjectId = x.ProjectId,
ReportDate = x.ReportDate,
DataMetricsSum = (x.JoinConstructionPersonNum ?? 0) + (x.GeneralClosedNum ?? 0) + (x.GeneralNotClosedNum ?? 0) + (x.SafeWorkingHour ?? 0)
//DataMetricsSum = (x.JoinConstructionPersonNum ?? 0) + (x.GeneralClosedNum ?? 0) + (x.GeneralNotClosedNum ?? 0) + (x.SafeWorkingHour ?? 0)
DataMetricsSum = (x.JoinConstructionPersonNum ?? 0) + (x.GeneralClosedNum ?? 0) + (x.GeneralNotClosedNum ?? 0) + (x.SafeWorkingHour ?? 0) + (x.LicensesNum ?? 0) + (x.SpecialTrainNum ?? 0)
+ (x.SpecialTrainNum ?? 0) + (x.SpecialOperationTrainNum ?? 0) + (x.ProjectSafetyLeadingGroupMeetingNum ?? 0) + (x.ProjectSafetyMeetingNum ?? 0)
+ (x.GeneralRiskNum ?? 0) + (x.LowRiskNum ?? 0) + (x.MediumRiskNum ?? 0) + (x.HighRiskNum ?? 0)
+ (x.TrainPersonNum ?? 0) + (x.SuperTrainPersonNum ?? 0) + (x.OperativesNum ?? 0) + (x.SuperOperativesNum ?? 0) + (x.ProjectDrillPersonNum ?? 0)
}).ToList();
foreach (var pro in getProjects)
{
string result = "正常";
string threeMonResult = "";
string monResult = "";
string dayResult = "";
string weekResult = "";
var nowData = datas.Where(x => x.ProjectId == pro.ProjectId && x.ReportDate == dateNow).FirstOrDefault();
var monthAgoData = datas.Where(x => x.ProjectId == pro.ProjectId && x.ReportDate == dateMonthAgo).FirstOrDefault();
if (nowData != null && monthAgoData != null)
var daysData = datas.Where(x => x.ProjectId == pro.ProjectId && x.ReportDate == dateDays).FirstOrDefault();
var weekData = datas.Where(x => x.ProjectId == pro.ProjectId && x.ReportDate == dateWeek).FirstOrDefault();
var monthData = datas.Where(x => x.ProjectId == pro.ProjectId && x.ReportDate == dateMonth).FirstOrDefault();
var threeMonthData = datas.Where(x => x.ProjectId == pro.ProjectId && x.ReportDate == dateThreeMonth).FirstOrDefault();
if (nowData != null && daysData != null)
{//两个时间点都有指标数据
if (nowData.DataMetricsSum == monthAgoData.DataMetricsSum)
if (nowData.DataMetricsSum == daysData.DataMetricsSum)
{
result = "异常";
dayResult = "数据无变化";
}
}
if (nowData != null && weekData != null)
{//两个时间点都有指标数据
if (nowData.DataMetricsSum == weekData.DataMetricsSum)
{
weekResult = "数据无变化";
}
}
if (nowData != null && monthData != null)
{//两个时间点都有指标数据
if (nowData.DataMetricsSum == monthData.DataMetricsSum)
{
monResult = "数据无变化";
}
}
if (nowData != null && threeMonthData != null)
{//两个时间点都有指标数据
if (nowData.DataMetricsSum == threeMonthData.DataMetricsSum)
{
threeMonResult = "数据无变化";
}
}
//else if (nowData != null)
//{//现在有指标数据,一个月前没有
// result = "正常";
//}
//else if (monthAgoData != null)
//{//现在没有指标数据,一个月前有
// result = "正常";
//}
list.Add(new QHSEProjectDataInfo
{
@@ -454,7 +480,10 @@ namespace FineUIPro.Web.ProjectData
StartDate = pro.StartDate,
EndDate = pro.EndDate,
ProjectState = pro.ProjectState,
Usage = result
UsageDays = dayResult,
UsageWeek = weekResult,
UsageMonth = monResult,
UsageThreeMonth = threeMonResult,
});
}
@@ -464,19 +493,39 @@ namespace FineUIPro.Web.ProjectData
Grid2.DataSource = table;
Grid2.DataBind();
int exNum = 0;
int exDayNum = 0;
int exWeekNum = 0;
int exMonNum = 0;
int exThreeMonNum = 0;
int allQhseNum = 0;
//int allQhseNum = list.Count();
try
{
for (int i = 0; i < Grid2.Rows.Count; i++)
{
allQhseNum++;
var usage = table.Rows[i]["Usage"].ToString().Trim();
if (usage == "异常")
var usageDays = table.Rows[i]["UsageDays"].ToString().Trim();
var usageWeek = table.Rows[i]["UsageWeek"].ToString().Trim();
var usageMonth = table.Rows[i]["UsageMonth"].ToString().Trim();
var usageThreeMonth = table.Rows[i]["UsageThreeMonth"].ToString().Trim();
if (usageDays == "数据无变化")
{
Grid2.Rows[i].RowCssClass = "Pause";
exNum++;
Grid2.Rows[i].RowCssClass = "DayPause";
exDayNum++;
}
if (usageWeek == "数据无变化")
{
Grid2.Rows[i].RowCssClass = "WeekPause";
exWeekNum++;
}
if (usageMonth == "数据无变化")
{
Grid2.Rows[i].RowCssClass = "MonthPause";
exMonNum++;
}
if (usageThreeMonth == "数据无变化")
{
Grid2.Rows[i].RowCssClass = "ThreeMonthPause";
exThreeMonNum++;
}
}
}
@@ -485,8 +534,12 @@ namespace FineUIPro.Web.ProjectData
JObject summary = new JObject();
summary.Add("tfNumber", "合计");
summary.Add("ProjectCode", allQhseNum);
summary.Add("Usage", $"异常:{exNum}");
summary.Add("Abbreviation", allQhseNum);
summary.Add("StartDate", "数据无变化");
summary.Add("UsageDays", exDayNum);
summary.Add("UsageWeek", exWeekNum);
summary.Add("UsageMonth", exMonNum);
summary.Add("UsageThreeMonth", exThreeMonNum);
Grid2.SummaryData = summary;
}
@@ -32,38 +32,38 @@
<f:PageManager ID="PageManager1" AutoSizePanelID="SimpleForm1" runat="server" />
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<rows>
<f:FormRow>
<Items>
<items>
<f:TextBox ID="txtPro_code" runat="server" Label="主数据项目编号" LabelWidth="120px" LabelAlign="Right" Readonly="true">
</f:TextBox>
</Items>
</items>
</f:FormRow>
<f:FormRow>
<Items>
<items>
<f:TextBox ID="txtPro_name" runat="server" Label="主数据项目名称" LabelWidth="120px" LabelAlign="Right" Readonly="true">
</f:TextBox>
</Items>
</items>
</f:FormRow>
<f:FormRow>
<Items>
<items>
<f:TextBox ID="txtProjectcode" runat="server" Label="QHSE项目编号" LabelWidth="120px" LabelAlign="Right" Readonly="true">
</f:TextBox>
</Items>
</items>
</f:FormRow>
<f:FormRow>
<Items>
<items>
<f:TextBox ID="txtProjectname" runat="server" Label="QHSE项目名称" LabelWidth="120px" LabelAlign="Right" Readonly="true">
</f:TextBox>
</Items>
</items>
</f:FormRow>
<f:FormRow>
<Items>
<items>
<f:RadioButtonList runat="server" ID="rblIsRelate" Label="是否关联使用" LabelWidth="120px" Readonly="true" Enabled="true" LabelAlign="Right">
<f:RadioItem Text="已关联" Value="1" />
<f:RadioItem Text="未关联" Value="0" />
</f:RadioButtonList>
</Items>
</items>
</f:FormRow>
<%--<f:FormRow>
<Items>
@@ -74,23 +74,24 @@
</Items>
</f:FormRow>--%>
<f:FormRow>
<Items>
<items>
<f:RadioButtonList runat="server" ID="rblReasonType" Label="原因类型" LabelWidth="120px" LabelAlign="Right" Required="true" ShowRedStar="true">
<f:RadioItem Text="已完工" Value="已完工" />
<f:RadioItem Text="业主统筹" Value="业主统筹" />
<f:RadioItem Text="工期短/规模小" Value="工期短/规模小" />
<f:RadioItem Text="网络受限" Value="网络受限" />
<f:RadioItem Text="停缓建" Value="停缓建" />
<f:RadioItem Text="其他原因" Value="其他原因" />
</f:RadioButtonList>
</Items>
</items>
</f:FormRow>
<f:FormRow>
<Items>
<items>
<f:TextArea ID="txtReason" runat="server" Label="原因说明" EmptyText="请填写未关联使用集团主数据项目的原因情况说明(不超过100字)" LabelAlign="Right" LabelWidth="120px">
</f:TextArea>
<%--<f:TextArea ID="txtReason" runat="server" Label="原因说明" EmptyText="请填写原因说明" LabelAlign="Right" LabelWidth="120px" ShowRedStar="true">
</f:TextArea>--%>
</Items>
</items>
</f:FormRow>
<%--<f:FormRow>
<Items>
@@ -105,32 +106,32 @@
</Items>
</f:FormRow>--%>
<f:FormRow ID="Next">
<Items>
<f:RadioButtonList ID="cbNext" runat="server" Label="下一步" AutoPostBack="true" OnSelectedIndexChanged="cbNext_SelectedIndexChanged" LabelWidth="120px" >
<items>
<f:RadioButtonList ID="cbNext" runat="server" Label="下一步" AutoPostBack="true" OnSelectedIndexChanged="cbNext_SelectedIndexChanged" LabelWidth="120px">
<f:RadioItem Text="已完成" Value="0" Selected="true" />
<f:RadioItem Text="下一步审批人" Value="1" />
</f:RadioButtonList>
<f:Label runat="server" ID="lb"></f:Label>
</Items>
</items>
</f:FormRow>
<f:FormRow ID="HandleMan" Hidden="true">
<Items>
<items>
<f:DropDownBox runat="server" ID="drpHandleMan" EmptyText="请从下拉表格中选择" Label="审批人"
MatchFieldWidth="false" EnableMultiSelect="false" LabelWidth="120px">
<PopPanel>
<poppanel>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" runat="server" DataIDField="UserId" DataTextField="UserName"
DataKeyNames="UserId" AllowSorting="true" SortField="UserName" SortDirection="ASC" EnableColumnLines="true"
Hidden="true" Width="800px" Height="520px" EnableMultiSelect="false" KeepCurrentSelection="true" PageSize="10000">
<Toolbars>
<toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server">
<Items>
<items>
<f:TextBox runat="server" Label="查询" ID="txtUserName" EmptyText="输入查询条件" FocusOnPageLoad="true"
AutoPostBack="true" OnTextChanged="TextBox_TextChanged" Width="250px" LabelWidth="80px">
</f:TextBox>
</Items>
</items>
</f:Toolbar>
</Toolbars>
<Columns>
</toolbars>
<columns>
<f:RowNumberField EnablePagingNumber="true" HeaderText="序号" Width="50px"
HeaderTextAlign="Center" TextAlign="Center" />
<f:RenderField Width="90px" ColumnID="UserCode" DataField="UserCode" SortField="UserCode"
@@ -145,33 +146,33 @@
SortField="RoleName" FieldType="String" HeaderText="角色" HeaderTextAlign="Center"
TextAlign="Left">
</f:RenderField>
</Columns>
</columns>
</f:Grid>
</PopPanel>
</poppanel>
</f:DropDownBox>
</Items>
</items>
</f:FormRow>
<f:FormRow ID="Audit" Hidden="true">
<Items>
<f:RadioButtonList ID="rblHandleState" runat="server" Label="审核结果" LabelWidth="120px" >
<items>
<f:RadioButtonList ID="rblHandleState" runat="server" Label="审核结果" LabelWidth="120px">
<f:RadioItem Text="通过" Value="1" />
<f:RadioItem Text="不通过" Value="0" />
</f:RadioButtonList>
<f:Label runat="server" ID="Label1"></f:Label>
</Items>
</items>
</f:FormRow>
</Rows>
<Toolbars>
</rows>
<toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
<Items>
<items>
<f:HiddenField ID="hfGpsAreId" runat="server"></f:HiddenField>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
<f:Button ID="btnSave" OnClick="btnSave_Click" Icon="SystemSave" ValidateForms="SimpleForm1" runat="server" ToolTip="提交" Text="提交">
</f:Button>
</Items>
</items>
</f:Toolbar>
</Toolbars>
</toolbars>
</f:Form>