大数据数据绑定

This commit is contained in:
2023-09-18 13:47:38 +08:00
parent 9dc9075142
commit 338b874e85
14 changed files with 278 additions and 203 deletions
+3 -3
View File
@@ -21,10 +21,10 @@
EmptyText="请选择项目" EnableEdit="true">
</f:DropDownList>
<f:DatePicker runat="server" DateFormatString="yyyy-MM-dd" EmptyText="开始日期"
ID="txtStartTime" EnableEdit="false">
ID="txtStartTime" EnableEdit="false" Hidden="true">
</f:DatePicker>
<f:DatePicker runat="server" DateFormatString="yyyy-MM-dd" EmptyText="结束日期"
ID="txtEndTime" EnableEdit="false">
ID="txtEndTime" EnableEdit="false" Hidden="true">
</f:DatePicker>
<f:ToolbarFill ID="ToolbarFill2" runat="server">
</f:ToolbarFill>
@@ -50,7 +50,7 @@
<f:RenderField Width="150px" ColumnID="ProjectCode" DataField="ProjectCode"
FieldType="String" HeaderText="项目号" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="200px" ColumnID="ProjectName" DataField="ProjectName"
<f:RenderField Width="250px" ColumnID="ProjectName" DataField="ProjectName"
FieldType="String" HeaderText="项目名称" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="Rate1" DataField="Rate1"
+2 -2
View File
@@ -21,10 +21,10 @@
EmptyText="请选择项目" EnableEdit="true">
</f:DropDownList>
<f:DatePicker runat="server" DateFormatString="yyyy-MM-dd" EmptyText="开始日期"
ID="txtStartTime" EnableEdit="false">
ID="txtStartTime" EnableEdit="false" Hidden="true">
</f:DatePicker>
<f:DatePicker runat="server" DateFormatString="yyyy-MM-dd" EmptyText="结束日期"
ID="txtEndTime" EnableEdit="false">
ID="txtEndTime" EnableEdit="false" Hidden="true">
</f:DatePicker>
<f:ToolbarFill ID="ToolbarFill2" runat="server">
</f:ToolbarFill>
+2 -2
View File
@@ -21,10 +21,10 @@
EmptyText="请选择项目" EnableEdit="true">
</f:DropDownList>
<f:DatePicker runat="server" DateFormatString="yyyy-MM-dd" EmptyText="开始日期"
ID="txtStartTime" EnableEdit="false">
ID="txtStartTime" EnableEdit="false" Hidden="true">
</f:DatePicker>
<f:DatePicker runat="server" DateFormatString="yyyy-MM-dd" EmptyText="结束日期"
ID="txtEndTime" EnableEdit="false">
ID="txtEndTime" EnableEdit="false" Hidden="true">
</f:DatePicker>
<f:ToolbarFill ID="ToolbarFill2" runat="server">
</f:ToolbarFill>
+2 -2
View File
@@ -21,10 +21,10 @@
EmptyText="请选择项目" EnableEdit="true">
</f:DropDownList>
<f:DatePicker runat="server" DateFormatString="yyyy-MM-dd" EmptyText="开始日期"
ID="txtStartTime" EnableEdit="false">
ID="txtStartTime" EnableEdit="false" Hidden="true">
</f:DatePicker>
<f:DatePicker runat="server" DateFormatString="yyyy-MM-dd" EmptyText="结束日期"
ID="txtEndTime" EnableEdit="false">
ID="txtEndTime" EnableEdit="false" Hidden="true">
</f:DatePicker>
<f:ToolbarFill ID="ToolbarFill2" runat="server">
</f:ToolbarFill>
@@ -76,9 +76,9 @@
</f:Label>
<f:Label ID="lbSpotCheckDataRate" runat="server" Label="控制点完成率">
</f:Label>
<f:Label ID="Label2" runat="server" Label="质量检查问题整改率">
<f:Label ID="lbCheckControlStates" runat="server" Label="质量检查问题整改率">
</f:Label>
<f:Label ID="Label10" runat="server" Label="管道焊接一次合格率">
<f:Label ID="lbFirstPassRate" runat="server" Label="管道焊接一次合格率">
</f:Label>
</Items>
</f:FormRow>
@@ -1,4 +1,6 @@
using BLL;
using FineUIPro.Web.HJGL.WeldingReport;
using Model;
using System;
using System.Data;
using System.Data.SqlTypes;
@@ -67,27 +69,14 @@ namespace FineUIPro.Web.DigData
this.lbSitePersons.Text = (from x in Funs.DB.SitePerson_Person
where x.ProjectId == this.ProjectId //&& y.States == Const.State_1
select x).Count().ToString();
var getPersonInOutNumber = (from x in Funs.DB.SitePerson_PersonInOutNumber
where x.ProjectId == this.ProjectId
select x).OrderByDescending(x => x.InOutDate).FirstOrDefault();
if (getPersonInOutNumber != null)
{
this.lbWorkHours.Text = (getPersonInOutNumber.WorkHours ?? 0).ToString();
}
else
{
this.lbWorkHours.Text = "0";
}
///安全工时
this.lbWorkHours.Text = HSEDataDWService.getProjecctSafeHours(this.ProjectId).ToString();
///安全教育
this.lbEduCount.Text = (from x in Funs.DB.EduTrain_TrainRecord
where x.ProjectId == this.ProjectId && x.States == BLL.Const.State_2
select x).Count().ToString();
var getAllHazardRegister = from x in Funs.DB.HSSE_Hazard_HazardRegister
where x.ProjectId == this.ProjectId && x.States != null && x.States != "4" && x.States != "0"
select x;
int allHazardCount = getAllHazardRegister.Count();
int cHazardCount = getAllHazardRegister.Where(x => x.States == "3").Count();
this.lbRectifyRate.Text = allHazardCount > 0 ? Math.Round(cHazardCount * 100.0 / (allHazardCount * 1.0)).ToString() + "%" : "0%";
///问题整改
this.lbRectifyRate.Text = HSEDataDWService.getProblemRate(this.ProjectId);
this.lbMeetingCount.Text = (Funs.DB.Meeting_AttendMeeting.Where(x => x.ProjectId == this.ProjectId && x.States == BLL.Const.State_2).Count()
+ Funs.DB.Meeting_ClassMeeting.Where(x => x.ProjectId == this.ProjectId && x.States == BLL.Const.State_2).Count()
@@ -108,74 +97,21 @@ namespace FineUIPro.Web.DigData
if (item == "CQMS")
{
this.gpCQMS.Hidden = false;
//// 实体验收 资料验收
var getSpotCheckDetail = from x in Funs.DB.Check_SpotCheckDetail
join y in Funs.DB.Check_SpotCheck on x.SpotCheckCode equals y.SpotCheckCode
where y.ProjectId == this.ProjectId && y.State == "8"
select x;
int all = getSpotCheckDetail.Count();
// this.lbSpotCheck1.Text = all.ToString();
int onesOKCount = getSpotCheckDetail.Where(x => x.IsOnesOK == true).Count(); //一次合格
// this.lbSpotCheck2.Text= okCount.ToString();
///质量验收问题整改率
this.lbSpotCheckRate.Text = CQMSDataDWService.getSpotCheckRate(this.ProjectId);
///控制点完成率
this.lbSpotCheckDataRate.Text = CQMSDataDWService.getSpotCheckDataRate(this.ProjectId);
this.lbSpotCheckRate.Text = all > 0 ? Math.Round(onesOKCount * 100.0 / (all * 1.0)).ToString() + "%" : "0%";
//// 质量检查问题整改率
this.lbCheckControlStates.Text = CQMSDataDWService.getCheckControlStates(this.ProjectId);
/// 资料验收合格项目
var getOKSpotCheckDetail = getSpotCheckDetail.Where(x => x.IsOK == true);
int okYSCount = getOKSpotCheckDetail.Count(); //验收合格
int okDateCount = getSpotCheckDetail.Where(x => x.IsDataOK == "1").Count(); //资料合格
this.lbSpotCheckDataRate.Text = okYSCount > 0 ? Math.Round(okDateCount * 100.0 / (okYSCount * 1.0)).ToString() + "%" : "0%";
///实体质量问题整改率
//int allNoOk = all - onesOKCount; ///问题数
//int oKCount = getSpotCheckDetail.Where(x => x.IsOK == true).Count(); //合格数
//int zgCount = oKCount - onesOKCount; ///整改数
//this.lbSpotCheckOkRate.Text = allNoOk > 0 ? Math.Round(zgCount * 100.0 / (allNoOk * 1.0)).ToString() + "%" : "0%";
////控制点
//var getControlItemAndCycle=from x in Funs.DB.WBS_ControlItemAndCycle
// where x.ProjectId == this.ProjectId && x.WorkPackageId.Contains(workPackageId)
// && (controlItemAndCycleId == null || x.WorkPackageId.Contains(controlItemAndCycleId))
// && x.ControlPoint.Contains("A") && x.CheckNum >0
// select x;
/////A级控制点总量
//int allControlItemCount = getControlItemAndCycle.Count();
/////已完成A级控制点数
//var getOKSpotCheckDetailCheckNum = from x in getOKSpotCheckDetail
// group x by x.ControlItemAndCycleId
// into g select new { g.First().ControlItemAndCycleId, num = g.Count() };
//var getOKControlItemAndCycle = from x in getControlItemAndCycle
// join y in getOKSpotCheckDetailCheckNum on x.ControlItemAndCycleId equals y.ControlItemAndCycleId
// where x.CheckNum == y.num
// select x;
//int okControlItemCount= getOKControlItemAndCycle.Count();
//this.lbControlItemRate.Text = allControlItemCount > 0 ? Math.Round(okControlItemCount * 100.0 / (allControlItemCount * 1.0)).ToString() + "%" : "0%";
///焊接一次合格率
this.lbFirstPassRate.Text = CQMSDataDWService.getFirstPassRate(this.ProjectId);
}
if (item == "JDGL")
{
this.gpJDGL.Hidden = false;
double totalSJCost = 0; ////累计实际费用
decimal totalPlanCost = 0; ////计划费用
var getViewWorkPackageParentDetail = from x in Funs.DB.View_WBS_WorkPackageParentDetail
where x.ProjectId == this.ProjectId && (x.ParentId == "1" || x.ParentId == "2")
select x;
if (getViewWorkPackageParentDetail.Count() > 0)
{
totalSJCost = getViewWorkPackageParentDetail.Sum(x => x.TotalThisValue ?? 0);
}
var getUnitWork = from x in Funs.DB.WBS_UnitWork where x.ProjectId == this.ProjectId select x;
if (getUnitWork.Count() > 0)
{
totalPlanCost = getUnitWork.Sum(x => x.PlanCost ?? 0);
}
///项目进度完成百分比
decimal s = Convert.ToDecimal(totalSJCost);
this.lbJDRate.Text = totalPlanCost > 0 ? Math.Round(s / totalPlanCost).ToString() + "%" : "0%";
this.lbJDRate.Text = JDGLDataDWService.getJDRate(this.ProjectId, null, null);
}
if (item == "HTGL")
{
+4 -4
View File
@@ -177,22 +177,22 @@ namespace FineUIPro.Web.DigData
protected global::FineUIPro.Label lbSpotCheckDataRate;
/// <summary>
/// Label2 控件。
/// lbCheckControlStates 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label Label2;
protected global::FineUIPro.Label lbCheckControlStates;
/// <summary>
/// Label10 控件。
/// lbFirstPassRate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label Label10;
protected global::FineUIPro.Label lbFirstPassRate;
/// <summary>
/// gpJDGL 控件。
+4 -14
View File
@@ -51,7 +51,7 @@
</Items>
</f:GroupPanel>
<f:GroupPanel runat="server" ID="gpHSSE" Title="安全数据" Layout="VBox" Hidden="true"
Height="100px" AutoScroll="true">
Height="120px" AutoScroll="true">
<Items>
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right" LabelWidth="180px">
@@ -71,7 +71,7 @@
</Items>
</f:GroupPanel>
<f:GroupPanel runat="server" ID="gpCQMS" Title="质量数据" Layout="VBox" Hidden="true"
Height="150px" AutoScroll="true">
Height="120px" AutoScroll="true">
<Items>
<f:Form ID="Form2" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right" LabelWidth="180px">
@@ -86,18 +86,8 @@
</f:Label>
<f:Label ID="lbSpotCheckDataRate" runat="server" Label="施工资料同步率">
</f:Label>
<f:Label ID="Label2" runat="server" Label="质量问题数">
</f:Label>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:Label ID="lbControlItemRate" runat="server" Label="控制点完成率">
</f:Label>
<f:Label ID="Label1" runat="server" Label="质量检查问题整改率">
</f:Label>
<f:Label ID="lbSpotCheckOkRate" runat="server" Label="质量验收问题整改率">
</f:Label>
<f:Label ID="lbCheckControlCount" runat="server" Label="质量检查问题数">
</f:Label>
</Items>
</f:FormRow>
</Rows>
+12 -50
View File
@@ -117,67 +117,29 @@ namespace FineUIPro.Web.DigData
int okDateCount = getSpotCheckDetail.Where(x => x.IsDataOK == "1").Count(); //资料合格
this.lbSpotCheckDataRate.Text = okYSCount > 0 ? Math.Round(okDateCount * 100.0 / (okYSCount * 1.0)).ToString() + "%" : "0%";
/////实体质量问题整改率
//int allNoOk = all - onesOKCount; ///问题数
//int oKCount = getSpotCheckDetail.Where(x => x.IsOK == true).Count(); //合格数
//int zgCount = oKCount - onesOKCount; ///整改数
//this.lbSpotCheckOkRate.Text = allNoOk > 0 ? Math.Round(zgCount * 100.0 / (allNoOk * 1.0)).ToString() + "%" : "0%";
//// 质量检查问题整改率
var getCheck_CheckControl = from x in Funs.DB.Check_CheckControl select x;
//////控制点
//var getControlItemAndCycle = from x in Funs.DB.WBS_ControlItemAndCycle
// where x.WorkPackageId.Contains(workPackageId)
// && (controlItemAndCycleId == null || x.WorkPackageId.Contains(controlItemAndCycleId))
// && x.ControlPoint.Contains("A") && x.CheckNum > 0
// select x;
/////A级控制点总量
//int allControlItemCount = getControlItemAndCycle.Count();
/////已完成A级控制点数
//var getOKSpotCheckDetailCheckNum = from x in getOKSpotCheckDetail
// group x by x.ControlItemAndCycleId
// into g
// select new { g.First().ControlItemAndCycleId, num = g.Count() };
this.lbCheckControlCount.Text = getCheck_CheckControl.Count().ToString();
//var getOKControlItemAndCycle = from x in getControlItemAndCycle
// join y in getOKSpotCheckDetailCheckNum on x.ControlItemAndCycleId equals y.ControlItemAndCycleId
// where x.CheckNum == y.num
// select x;
//int okControlItemCount = getOKControlItemAndCycle.Count();
//this.lbControlItemRate.Text = allControlItemCount > 0 ? Math.Round(okControlItemCount * 100.0 / (allControlItemCount * 1.0)).ToString() + "%" : "0%";
}
if (item == "JDGL")
{
this.gpJDGL.Hidden = false;
//double totalSJCost = 0; ////累计实际费用
//decimal totalPlanCost = 0; ////计划费用
//var getWorkPackageDetail = Funs.DB.View_WBS_WorkPackageDetail.FirstOrDefault(x => x.InitWorkPackageCode == workPackageId);
//if (getWorkPackageDetail != null)
//var getViewWorkPackageParentDetail = from x in Funs.DB.View_WBS_WorkPackageParentDetail
// where (x.ParentId == "1" || x.ParentId == "2")
// select x;
//if (getViewWorkPackageParentDetail.Count() > 0)
//{
// ///末级节点
// var getMaxSJCost = Funs.DB.View_WBS_WorkPackageDetail.Where(x => x.InitWorkPackageCode == workPackageId).OrderByDescending(x => x.Months).FirstOrDefault();
// if (getMaxSJCost != null)
// {
// totalSJCost = getMaxSJCost.TotalThisValue ?? 0;
// totalPlanCost = getMaxSJCost.PlanCost ?? 0;
// }
// totalSJCost = getViewWorkPackageParentDetail.Sum(x => x.TotalThisValue ?? 0);
//}
//else
//var getUnitWork = from x in Funs.DB.WBS_UnitWork select x;
//if (getUnitWork.Count() > 0)
//{
// ///非末级节点
// var getMaxSJCost = Funs.DB.View_WBS_WorkPackageParentDetail.Where(x => x.InitWorkPackageCode == workPackageId).OrderByDescending(x => x.Months).FirstOrDefault();
// if (getMaxSJCost != null)
// {
// totalSJCost = getMaxSJCost.TotalThisValue ?? 0;
// totalPlanCost = getMaxSJCost.PlanCost ?? 0;
// }
//}
////// 根 节点 建筑工程 安装工程
//if (workPackageId == "1" || workPackageId == "2")
//{
// var getUnitWorkByType = from x in Funs.DB.WBS_UnitWork where x.ProjectType == workPackageId select x;
// if (getUnitWorkByType.Count() > 0)
// {
// totalPlanCost = getUnitWorkByType.Sum(x => x.PlanCost ?? 0);
// }
// totalPlanCost = getUnitWork.Sum(x => x.PlanCost ?? 0);
//}
/////项目进度完成百分比
+2 -29
View File
@@ -204,40 +204,13 @@ namespace FineUIPro.Web.DigData
protected global::FineUIPro.Label lbSpotCheckDataRate;
/// <summary>
/// Label2 控件。
/// lbCheckControlCount 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label Label2;
/// <summary>
/// lbControlItemRate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lbControlItemRate;
/// <summary>
/// Label1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label Label1;
/// <summary>
/// lbSpotCheckOkRate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lbSpotCheckOkRate;
protected global::FineUIPro.Label lbCheckControlCount;
/// <summary>
/// gpJDGL 控件。