大数据数据绑定
This commit is contained in:
@@ -26,7 +26,8 @@ namespace BLL
|
||||
/// 定义变量
|
||||
/// </summary>
|
||||
private static IQueryable<Model.Base_Project> getDataLists = from x in db.Base_Project
|
||||
select x;
|
||||
where x.ProjectState == Const.ProjectState_1
|
||||
select x;
|
||||
|
||||
/// <summary>
|
||||
/// 安全数据仓库
|
||||
@@ -38,7 +39,7 @@ namespace BLL
|
||||
/// <returns></returns>
|
||||
public static IEnumerable getDataDWList( string projectId, DateTime? startTime, DateTime? endTime, Grid Grid1)
|
||||
{
|
||||
var getDataList = from x in Funs.DB.Base_Project select x;
|
||||
IQueryable<Model.Base_Project> getDataList = getDataLists;
|
||||
if (!string.IsNullOrEmpty(projectId) && projectId != Const._Null)
|
||||
{
|
||||
getDataList = getDataList.Where(x => x.ProjectId == projectId);
|
||||
@@ -56,13 +57,48 @@ namespace BLL
|
||||
x.ProjectId,
|
||||
x.ProjectName,
|
||||
x.ProjectCode,
|
||||
Count1=0, //人员数量
|
||||
Count2 =0, //安全人工时
|
||||
Count3 =0, //安全培训次数
|
||||
ProblemRate = "0%", //安全巡检整改率
|
||||
Count1=db.SitePerson_Person.Where(p=>p.ProjectId == x.ProjectId && p.States == Const.ProjectPersonStates_1).Count(), //人员数量
|
||||
Count2 = getProjecctSafeHours(x.ProjectId), //安全人工时
|
||||
Count3 =db.EduTrain_TrainRecord.Where(p => p.ProjectId == x.ProjectId && p.States == BLL.Const.State_2).Count(), //安全培训次数
|
||||
ProblemRate = getProblemRate(x.ProjectId), //安全巡检整改率
|
||||
};
|
||||
}
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// 安全人工时
|
||||
/// </summary>
|
||||
/// <param name="projectId"></param>
|
||||
/// <returns></returns>
|
||||
public static int getProjecctSafeHours(string projectId)
|
||||
{
|
||||
int count = 0;
|
||||
var getPersonInOutNumber = (from x in Funs.DB.SitePerson_PersonInOutNumber
|
||||
where (x.ProjectId == projectId || projectId == null)
|
||||
select x).OrderByDescending(x => x.InOutDate).FirstOrDefault();
|
||||
if (getPersonInOutNumber != null)
|
||||
{
|
||||
count = getPersonInOutNumber.WorkHours ?? 0;
|
||||
}
|
||||
|
||||
return count;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 安全问题整改率
|
||||
/// </summary>
|
||||
/// <param name="projectId"></param>
|
||||
/// <returns></returns>
|
||||
public static string getProblemRate(string projectId)
|
||||
{
|
||||
var getAllHazardRegister = from x in Funs.DB.HSSE_Hazard_HazardRegister
|
||||
where (x.ProjectId == projectId || projectId == null)
|
||||
&& x.States != null && x.States != "4" && x.States != "0"
|
||||
select x;
|
||||
int allHazardCount = getAllHazardRegister.Count();
|
||||
int cHazardCount = getAllHazardRegister.Where(x => x.States == "3").Count();
|
||||
return allHazardCount > 0 ? Math.Round(cHazardCount * 100.0 / (allHazardCount * 1.0)).ToString() + "%" : "0%";
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user