看板质量验收数据汇总
This commit is contained in:
@@ -7,12 +7,14 @@ using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BLL
|
||||
{
|
||||
public static class CQMSDataService
|
||||
{
|
||||
public static SUBQHSEDB db = Funs.DB;
|
||||
public static List<string> BeUnderConstructionList = ProjectService.GetProjectWorkList().Where(x => (x.ProjectAttribute == "GONGCHENG" || x.ProjectAttribute == null)).Select(x => x.ProjectId).ToList();
|
||||
|
||||
#region 获取列表
|
||||
|
||||
@@ -518,6 +520,15 @@ namespace BLL
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取企业总部人数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<int> GetCompanyPersonNumAsync()
|
||||
{
|
||||
return await Task.Run(GetCompanyPersonNum);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取分支机构人数
|
||||
/// </summary>
|
||||
@@ -533,5 +544,792 @@ namespace BLL
|
||||
select x).Count();
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取分支机构人数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<int> GetBranchPersonNumAsync()
|
||||
{
|
||||
return await Task.Run(GetBranchPersonNum);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取项目专职人数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<Model.OfSafetySupervisorsOutput> GetProjectPersonNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.SitePerson_Person
|
||||
join p in Funs.DB.Base_Project on x.ProjectId equals p.ProjectId into pGroup
|
||||
from p in pGroup.DefaultIfEmpty()
|
||||
join u in Funs.DB.Base_Unit on x.UnitId equals u.UnitId into uGroup
|
||||
from u in uGroup.DefaultIfEmpty()
|
||||
join y in Funs.DB.Base_WorkPost on x.WorkPostId equals y.WorkPostId
|
||||
where BeUnderConstructionList.Contains(p.ProjectId) && y.IsCQMS == true && x.IsUsed == true && x.IdentityCard != null
|
||||
select new Model.OfSafetySupervisorsOutput
|
||||
{
|
||||
ProjectId = x.ProjectId,
|
||||
ProjectName = p.ProjectName,
|
||||
UnitId = u.UnitId,
|
||||
UnitName = u.UnitName,
|
||||
Name = x.PersonName,
|
||||
Sex = x.Sex == null ? "" : (x.Sex == "1" ? "男" : "女"),
|
||||
IdentityCard = x.IdentityCard,
|
||||
WorkPostName = PostService.GetPostNameById(x.WorkPostId),
|
||||
Phone = x.Telephone
|
||||
}).ToList();
|
||||
result = result
|
||||
.GroupBy(x => x.IdentityCard)
|
||||
.Select(g => g.FirstOrDefault())
|
||||
.ToList();
|
||||
return result;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取项目专职人数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<Model.OfSafetySupervisorsOutput>> GetProjectPersonNumAsync()
|
||||
{
|
||||
return await Task.Run(GetProjectPersonNum);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取质量培训人次数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<Model.OfSafetySupervisorsOutput> GetTrainPersonNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.Comprehensive_InspectionPerson
|
||||
join p in Funs.DB.Base_Project on x.ProjectId equals p.ProjectId into pGroup
|
||||
from p in pGroup.DefaultIfEmpty()
|
||||
join u in Funs.DB.Base_Unit on x.UnitId equals u.UnitId into uGroup
|
||||
from u in uGroup.DefaultIfEmpty()
|
||||
join y in Funs.DB.SitePerson_Person on x.InspectionPersonId equals y.PersonId
|
||||
join z in Funs.DB.Base_WorkPost on y.WorkPostId equals z.WorkPostId
|
||||
where BeUnderConstructionList.Contains(p.ProjectId) && x.IsTrain == true && x.CompileDate > Const.DtmarkTime
|
||||
select new Model.OfSafetySupervisorsOutput
|
||||
{
|
||||
ProjectId = x.ProjectId,
|
||||
ProjectName = p.ProjectName,
|
||||
UnitId = u.UnitId,
|
||||
UnitName = u.UnitName,
|
||||
Name = x.PersonName,
|
||||
Sex = y.Sex == null ? "" : (y.Sex == "1" ? "男" : "女"),
|
||||
IdentityCard = y.IdentityCard,
|
||||
WorkPostName = PostService.GetPostNameById(y.WorkPostId),
|
||||
Phone = y.Telephone
|
||||
}).ToList();
|
||||
return result;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取质量培训人次数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<Model.OfSafetySupervisorsOutput>> GetTrainPersonNumAsync()
|
||||
{
|
||||
return await Task.Run(GetTrainPersonNum);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取技术交底人次数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static int GetTechnicalDisclosePersonNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.Comprehensive_DesignDetails
|
||||
where BeUnderConstructionList.Contains(x.ProjectId) && x.CompileDate > Const.DtmarkTime
|
||||
select x.JoinPersonNum).ToList().Sum(x => x.Value);
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取技术交底人次数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<Model.EduTrainOutput> GetTechnicalDisclosePerson()
|
||||
{
|
||||
var result = (from x in Funs.DB.Comprehensive_DesignDetails
|
||||
join p in Funs.DB.Base_Project on x.ProjectId equals p.ProjectId into pGroup
|
||||
from p in pGroup.DefaultIfEmpty()
|
||||
where BeUnderConstructionList.Contains(p.ProjectId) && x.CompileDate > Const.DtmarkTime
|
||||
select new Model.EduTrainOutput()
|
||||
{
|
||||
ProjectId = x.ProjectId,
|
||||
ProjectName = p.ProjectName,
|
||||
UnitName = "",
|
||||
Id = x.DesignDetailsId,
|
||||
TrainTitle = "",
|
||||
TrainStartDate = null,
|
||||
TrainEndDate = null,
|
||||
TrainPersonNum = x.JoinPersonNum ?? 0,
|
||||
}).ToList();
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取技术交底人次数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<EduTrainOutput>> GetTechnicalDisclosePersonNumAsync()
|
||||
{
|
||||
return await Task.Run(GetTechnicalDisclosePerson);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取设备报验
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<Model.Comprehensive_InspectionEquipment> GetComprehensive_InspectionEquipment()
|
||||
{
|
||||
var result = (from x in Funs.DB.Comprehensive_InspectionEquipment
|
||||
where BeUnderConstructionList.Contains(x.ProjectId) && x.CompileDate > Const.DtmarkTime
|
||||
select x).ToList();
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取设备报验(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<Comprehensive_InspectionEquipment>> GetComprehensive_InspectionEquipmentAsync()
|
||||
{
|
||||
return await Task.Run(GetComprehensive_InspectionEquipment);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取人员报验
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<Model.Comprehensive_InspectionPerson> GetComprehensive_InspectionPerson()
|
||||
{
|
||||
var result = (from x in Funs.DB.Comprehensive_InspectionPerson
|
||||
where BeUnderConstructionList.Contains(x.ProjectId) && x.CompileDate > Const.DtmarkTime
|
||||
select x).ToList();
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取人员报验(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<Comprehensive_InspectionPerson>> GetComprehensive_InspectionPersonAsync()
|
||||
{
|
||||
return await Task.Run(GetComprehensive_InspectionPerson);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取机具报验
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<Model.Comprehensive_InspectionMachine> GetComprehensive_InspectionMachine()
|
||||
{
|
||||
var result = (from x in Funs.DB.Comprehensive_InspectionMachine
|
||||
where BeUnderConstructionList.Contains(x.ProjectId) && x.CompileDate > Const.DtmarkTime
|
||||
select x).ToList();
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取机具报验(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<Comprehensive_InspectionMachine>> GetComprehensive_InspectionMachineAsync()
|
||||
{
|
||||
return await Task.Run(GetComprehensive_InspectionMachine);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取在用计量器具数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<Comprehensive_InspectionMachine> GetUseNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.Comprehensive_InspectionMachine
|
||||
where BeUnderConstructionList.Contains(x.ProjectId) && x.IsOnSite == true && x.InspectionType.Contains("计量") && x.CompileDate > Const.DtmarkTime
|
||||
select x).ToList();
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取在用计量器具数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<Comprehensive_InspectionMachine>> GetUseNumAsync()
|
||||
{
|
||||
return await Task.Run(GetUseNum);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取校准合格数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<Comprehensive_InspectionMachine> GetOkNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.Comprehensive_InspectionMachine
|
||||
where BeUnderConstructionList.Contains(x.ProjectId) && x.IsOnSite == true && x.InspectionType.Contains("计量") && x.IsCheckOK == true
|
||||
&& x.CompileDate > Const.DtmarkTime
|
||||
select x).ToList();
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取校准合格数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<Comprehensive_InspectionMachine>> GetOkNumAsync()
|
||||
{
|
||||
return await Task.Run(GetOkNum);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取单项工程个数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<Project_Installation> GetSingleProjectNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.Project_Installation
|
||||
where BeUnderConstructionList.Contains(x.ProjectId) && x.SuperInstallationId == "0"
|
||||
select x).ToList();
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取单项工程个数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<Project_Installation>> GetSingleProjectNumAsync()
|
||||
{
|
||||
return await Task.Run(GetSingleProjectNum);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取单位工程个数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<WBS_UnitWork> GetUnitProjectNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.WBS_UnitWork
|
||||
where BeUnderConstructionList.Contains(x.ProjectId)
|
||||
select x).ToList();
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取单位工程个数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<WBS_UnitWork>> GetUnitProjectNumAsync()
|
||||
{
|
||||
return await Task.Run(GetUnitProjectNum);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取分部工程个数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<WBS_DivisionProject> GetSubProjectNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.WBS_DivisionProject
|
||||
where BeUnderConstructionList.Contains(x.ProjectId) && x.SubItemType == "1" && x.IsSelected == true
|
||||
select x).ToList();
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取分部工程个数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<WBS_DivisionProject>> GetSubProjectNumAsync()
|
||||
{
|
||||
return await Task.Run(GetSubProjectNum);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取分项工程个数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<WBS_DivisionProject> GetSubdivisionalWorksNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.WBS_DivisionProject
|
||||
where BeUnderConstructionList.Contains(x.ProjectId) && x.SubItemType == "3" && x.IsSelected == true
|
||||
select x).ToList();
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取分项工程个数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<WBS_DivisionProject>> GetSubdivisionalWorksNumAsync()
|
||||
{
|
||||
return await Task.Run(GetSubdivisionalWorksNum);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取检验批个数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<WBS_BreakdownProject> GetInspectionLotNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.WBS_BreakdownProject
|
||||
where BeUnderConstructionList.Contains(x.ProjectId) && x.IsSelected == true
|
||||
select x).ToList();
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取检验批个数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<WBS_BreakdownProject>> GetInspectionLotNumAsync()
|
||||
{
|
||||
return await Task.Run(GetInspectionLotNum);
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 施工方案数量
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<Solution_CQMSConstructSolution> GetConstructSolution()
|
||||
{
|
||||
var result = (from x in Funs.DB.Solution_CQMSConstructSolution
|
||||
where BeUnderConstructionList.Contains(x.ProjectId)
|
||||
select x).ToList();
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 施工方案数量(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<Solution_CQMSConstructSolution>> GetConstructSolutionAsync()
|
||||
{
|
||||
return await Task.Run(GetConstructSolution);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取质量问题
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<Check_CheckControl> GetCQMSProblem()
|
||||
{
|
||||
var result = (from x in Funs.DB.Check_CheckControl
|
||||
where BeUnderConstructionList.Contains(x.ProjectId) && x.CheckDate > Const.DtmarkTime
|
||||
select x).ToList();
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取质量问题(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<Check_CheckControl>> GetCQMSProblemAsync()
|
||||
{
|
||||
return await Task.Run(GetCQMSProblem);
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 获取分支机构巡检质量问题
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<View_DCGL_CheckRectifyListFromSUB> GetBranchCQMSProblem()
|
||||
{
|
||||
var result = (from x in Funs.DB.View_DCGL_CheckRectifyListFromSUB
|
||||
where BeUnderConstructionList.Contains(x.ProjectId) && x.ProblemTypes == "1" && x.CheckDate > Const.DtmarkTime
|
||||
select x).ToList();
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取分支机构巡检质量问题(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<View_DCGL_CheckRectifyListFromSUB>> GetBranchCQMSProblemAsync()
|
||||
{
|
||||
return await Task.Run(GetBranchCQMSProblem);
|
||||
}
|
||||
|
||||
#region 质量验收数据
|
||||
|
||||
/// <summary>
|
||||
/// 获取关键工序验收数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<InspectionManagementOutput> GetKeyProcessNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.ProcessControl_InspectionManagementDetail
|
||||
join y in Funs.DB.WBS_BreakdownProject on x.ControlPointType equals y.BreakdownProjectId
|
||||
where BeUnderConstructionList.Contains(y.ProjectId) && y.CheckAcceptType == "1" && x.CreateDate > Const.DtmarkTime
|
||||
select new Model.InspectionManagementOutput()
|
||||
{
|
||||
ProjectId = y.ProjectId,
|
||||
//ProjectName = p.ProjectName,
|
||||
//UnitName = UnitService.getUnitNamesUnitIds(x.UnitIds),
|
||||
Id = x.InspectionDetailId,
|
||||
BreakdownCode = y.BreakdownCode,
|
||||
BreakdownName = y.BreakdownName,
|
||||
Basis = y.Basis,
|
||||
CheckPoints = y.CheckPoints,
|
||||
}).ToList();
|
||||
return result;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取关键工序验收数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<InspectionManagementOutput>> GetKeyProcessNumAsync()
|
||||
{
|
||||
return await Task.Run(GetKeyProcessNum);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取关键工序验收合格数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<InspectionManagementOutput> GetKeyProcessOkNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.ProcessControl_InspectionManagementDetail
|
||||
join y in Funs.DB.WBS_BreakdownProject on x.ControlPointType equals y.BreakdownProjectId
|
||||
join z in Funs.DB.ProcessControl_InspectionManagement on x.InspectionId equals z.InspectionId
|
||||
where BeUnderConstructionList.Contains(y.ProjectId) && y.CheckAcceptType == "1" && z.IsOnceQualified == true && x.CreateDate > Const.DtmarkTime
|
||||
select new Model.InspectionManagementOutput()
|
||||
{
|
||||
ProjectId = y.ProjectId,
|
||||
//ProjectName = p.ProjectName,
|
||||
//UnitName = UnitService.getUnitNamesUnitIds(x.UnitIds),
|
||||
Id = x.InspectionDetailId,
|
||||
BreakdownCode = y.BreakdownCode,
|
||||
BreakdownName = y.BreakdownName,
|
||||
Basis = y.Basis,
|
||||
CheckPoints = y.CheckPoints,
|
||||
}).ToList();
|
||||
return result;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取关键工序验收合格数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<InspectionManagementOutput>> GetKeyProcessOkNumAsync()
|
||||
{
|
||||
return await Task.Run(GetKeyProcessOkNum);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取特殊过程验收数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<InspectionManagementOutput> GetSpecialProcessNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.ProcessControl_InspectionManagementDetail
|
||||
join y in Funs.DB.WBS_BreakdownProject on x.ControlPointType equals y.BreakdownProjectId
|
||||
where BeUnderConstructionList.Contains(y.ProjectId) && y.CheckAcceptType == "2" && x.CreateDate > Const.DtmarkTime
|
||||
select new Model.InspectionManagementOutput()
|
||||
{
|
||||
ProjectId = y.ProjectId,
|
||||
//ProjectName = p.ProjectName,
|
||||
//UnitName = UnitService.getUnitNamesUnitIds(x.UnitIds),
|
||||
Id = x.InspectionDetailId,
|
||||
BreakdownCode = y.BreakdownCode,
|
||||
BreakdownName = y.BreakdownName,
|
||||
Basis = y.Basis,
|
||||
CheckPoints = y.CheckPoints,
|
||||
}).ToList();
|
||||
return result;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取特殊过程验收数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<InspectionManagementOutput>> GetSpecialProcessNumAsync()
|
||||
{
|
||||
return await Task.Run(GetSpecialProcessNum);
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取特殊过程验收合格数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<InspectionManagementOutput> GetSpecialProcessOkNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.ProcessControl_InspectionManagementDetail
|
||||
join y in Funs.DB.WBS_BreakdownProject on x.ControlPointType equals y.BreakdownProjectId
|
||||
join z in Funs.DB.ProcessControl_InspectionManagement on x.InspectionId equals z.InspectionId
|
||||
where BeUnderConstructionList.Contains(y.ProjectId) && y.CheckAcceptType == "2" && z.IsOnceQualified == true && x.CreateDate > Const.DtmarkTime
|
||||
select new Model.InspectionManagementOutput()
|
||||
{
|
||||
ProjectId = y.ProjectId,
|
||||
//ProjectName = p.ProjectName,
|
||||
//UnitName = UnitService.getUnitNamesUnitIds(x.UnitIds),
|
||||
Id = x.InspectionDetailId,
|
||||
BreakdownCode = y.BreakdownCode,
|
||||
BreakdownName = y.BreakdownName,
|
||||
Basis = y.Basis,
|
||||
CheckPoints = y.CheckPoints,
|
||||
}).ToList();
|
||||
return result;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取特殊过程验收合格数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<InspectionManagementOutput>> GetSpecialProcessOkNumAsync()
|
||||
{
|
||||
return await Task.Run(GetSpecialProcessOkNum);
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取隐蔽工程验收数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<InspectionManagementOutput> GetConcealedWorksNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.ProcessControl_InspectionManagementDetail
|
||||
join y in Funs.DB.WBS_BreakdownProject on x.ControlPointType equals y.BreakdownProjectId
|
||||
where BeUnderConstructionList.Contains(y.ProjectId) && y.CheckAcceptType == "3" && x.CreateDate > Const.DtmarkTime
|
||||
select new Model.InspectionManagementOutput()
|
||||
{
|
||||
ProjectId = y.ProjectId,
|
||||
//ProjectName = p.ProjectName,
|
||||
//UnitName = UnitService.getUnitNamesUnitIds(x.UnitIds),
|
||||
Id = x.InspectionDetailId,
|
||||
BreakdownCode = y.BreakdownCode,
|
||||
BreakdownName = y.BreakdownName,
|
||||
Basis = y.Basis,
|
||||
CheckPoints = y.CheckPoints,
|
||||
}).ToList();
|
||||
return result;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取隐蔽工程验收数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<InspectionManagementOutput>> GetConcealedWorksNumAsync()
|
||||
{
|
||||
return await Task.Run(GetConcealedWorksNum);
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取隐蔽工程验收合格数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<InspectionManagementOutput> GetConcealedWorksOkNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.ProcessControl_InspectionManagementDetail
|
||||
join y in Funs.DB.WBS_BreakdownProject on x.ControlPointType equals y.BreakdownProjectId
|
||||
join z in Funs.DB.ProcessControl_InspectionManagement on x.InspectionId equals z.InspectionId
|
||||
where BeUnderConstructionList.Contains(y.ProjectId) && y.CheckAcceptType == "3" && z.IsOnceQualified == true && x.CreateDate > Const.DtmarkTime
|
||||
select new Model.InspectionManagementOutput()
|
||||
{
|
||||
ProjectId = y.ProjectId,
|
||||
//ProjectName = p.ProjectName,
|
||||
//UnitName = UnitService.getUnitNamesUnitIds(x.UnitIds),
|
||||
Id = x.InspectionDetailId,
|
||||
BreakdownCode = y.BreakdownCode,
|
||||
BreakdownName = y.BreakdownName,
|
||||
Basis = y.Basis,
|
||||
CheckPoints = y.CheckPoints,
|
||||
}).ToList();
|
||||
return result;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取隐蔽工程验收合格数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<InspectionManagementOutput>> GetConcealedWorksOkNumAsync()
|
||||
{
|
||||
return await Task.Run(GetConcealedWorksOkNum);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取单位工程验收数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<InspectionManagementOutput> GetUnitProjectAcceptNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.ProcessControl_InspectionManagementDetail
|
||||
join y in Funs.DB.WBS_BreakdownProject on x.ControlPointType equals y.BreakdownProjectId
|
||||
join z in Funs.DB.ProcessControl_InspectionManagement on x.InspectionId equals z.InspectionId
|
||||
where BeUnderConstructionList.Contains(y.ProjectId) && y.CheckAcceptType == "4" && x.CreateDate > Const.DtmarkTime
|
||||
select new Model.InspectionManagementOutput()
|
||||
{
|
||||
ProjectId = y.ProjectId,
|
||||
//ProjectName = p.ProjectName,
|
||||
//UnitName = UnitService.getUnitNamesUnitIds(x.UnitIds),
|
||||
Id = x.InspectionDetailId,
|
||||
BreakdownCode = y.BreakdownCode,
|
||||
BreakdownName = y.BreakdownName,
|
||||
Basis = y.Basis,
|
||||
CheckPoints = y.CheckPoints,
|
||||
}).ToList();
|
||||
return result;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取单位工程验收数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<InspectionManagementOutput>> GetUnitProjectAcceptNumAsync()
|
||||
{
|
||||
return await Task.Run(GetUnitProjectAcceptNum);
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取单位工程验收合格数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<InspectionManagementOutput> GetUnitProjectAcceptOKNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.ProcessControl_InspectionManagementDetail
|
||||
join y in Funs.DB.WBS_BreakdownProject on x.ControlPointType equals y.BreakdownProjectId
|
||||
join z in Funs.DB.ProcessControl_InspectionManagement on x.InspectionId equals z.InspectionId
|
||||
where BeUnderConstructionList.Contains(y.ProjectId) && y.CheckAcceptType == "4" && z.IsOnceQualified == true && x.CreateDate > Const.DtmarkTime
|
||||
select new Model.InspectionManagementOutput()
|
||||
{
|
||||
ProjectId = y.ProjectId,
|
||||
//ProjectName = p.ProjectName,
|
||||
//UnitName = UnitService.getUnitNamesUnitIds(x.UnitIds),
|
||||
Id = x.InspectionDetailId,
|
||||
BreakdownCode = y.BreakdownCode,
|
||||
BreakdownName = y.BreakdownName,
|
||||
Basis = y.Basis,
|
||||
CheckPoints = y.CheckPoints,
|
||||
}).ToList();
|
||||
return result;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取单位工程验收合格数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<InspectionManagementOutput>> GetUnitProjectAcceptOKNumAsync()
|
||||
{
|
||||
return await Task.Run(GetUnitProjectAcceptOKNum);
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 获取分部工程验收数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<InspectionManagementOutput> GetSubProjectAcceptNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.ProcessControl_InspectionManagementDetail
|
||||
join y in Funs.DB.WBS_BreakdownProject on x.ControlPointType equals y.BreakdownProjectId
|
||||
join z in Funs.DB.ProcessControl_InspectionManagement on x.InspectionId equals z.InspectionId
|
||||
where BeUnderConstructionList.Contains(y.ProjectId) && y.CheckAcceptType == "5" && x.CreateDate > Const.DtmarkTime
|
||||
select new Model.InspectionManagementOutput()
|
||||
{
|
||||
ProjectId = y.ProjectId,
|
||||
//ProjectName = p.ProjectName,
|
||||
//UnitName = UnitService.getUnitNamesUnitIds(x.UnitIds),
|
||||
Id = x.InspectionDetailId,
|
||||
BreakdownCode = y.BreakdownCode,
|
||||
BreakdownName = y.BreakdownName,
|
||||
Basis = y.Basis,
|
||||
CheckPoints = y.CheckPoints,
|
||||
}).ToList();
|
||||
return result;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取分部工程验收数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<InspectionManagementOutput>> GetSubProjectAcceptNumAsync()
|
||||
{
|
||||
return await Task.Run(GetSubProjectAcceptNum);
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取分部工程验收合格数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<InspectionManagementOutput> GetSubProjectAcceptOKNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.ProcessControl_InspectionManagementDetail
|
||||
join y in Funs.DB.WBS_BreakdownProject on x.ControlPointType equals y.BreakdownProjectId
|
||||
join z in Funs.DB.ProcessControl_InspectionManagement on x.InspectionId equals z.InspectionId
|
||||
where BeUnderConstructionList.Contains(y.ProjectId) && y.CheckAcceptType == "5" && z.IsOnceQualified == true && x.CreateDate > Const.DtmarkTime
|
||||
select new Model.InspectionManagementOutput()
|
||||
{
|
||||
ProjectId = y.ProjectId,
|
||||
//ProjectName = p.ProjectName,
|
||||
//UnitName = UnitService.getUnitNamesUnitIds(x.UnitIds),
|
||||
Id = x.InspectionDetailId,
|
||||
BreakdownCode = y.BreakdownCode,
|
||||
BreakdownName = y.BreakdownName,
|
||||
Basis = y.Basis,
|
||||
CheckPoints = y.CheckPoints,
|
||||
}).ToList();
|
||||
return result;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取分部工程验收合格数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<InspectionManagementOutput>> GetSubProjectAcceptOKNumAsync()
|
||||
{
|
||||
return await Task.Run(GetSubProjectAcceptOKNum);
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取分项工程验收数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<InspectionManagementOutput> GetSubdivisionalWorksAcceptNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.ProcessControl_InspectionManagementDetail
|
||||
join y in Funs.DB.WBS_BreakdownProject on x.ControlPointType equals y.BreakdownProjectId
|
||||
join z in Funs.DB.ProcessControl_InspectionManagement on x.InspectionId equals z.InspectionId
|
||||
where BeUnderConstructionList.Contains(y.ProjectId) && y.CheckAcceptType == "6" && x.CreateDate > Const.DtmarkTime
|
||||
select new Model.InspectionManagementOutput()
|
||||
{
|
||||
ProjectId = y.ProjectId,
|
||||
//ProjectName = p.ProjectName,
|
||||
//UnitName = UnitService.getUnitNamesUnitIds(x.UnitIds),
|
||||
Id = x.InspectionDetailId,
|
||||
BreakdownCode = y.BreakdownCode,
|
||||
BreakdownName = y.BreakdownName,
|
||||
Basis = y.Basis,
|
||||
CheckPoints = y.CheckPoints,
|
||||
}).ToList();
|
||||
return result;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取分项工程验收数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<InspectionManagementOutput>> GetSubdivisionalWorksAcceptNumAsync()
|
||||
{
|
||||
return await Task.Run(GetSubdivisionalWorksAcceptNum);
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取分项工程验收合格数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<InspectionManagementOutput> GetSubdivisionalWorksAcceptOKNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.ProcessControl_InspectionManagementDetail
|
||||
join y in Funs.DB.WBS_BreakdownProject on x.ControlPointType equals y.BreakdownProjectId
|
||||
join z in Funs.DB.ProcessControl_InspectionManagement on x.InspectionId equals z.InspectionId
|
||||
where BeUnderConstructionList.Contains(y.ProjectId) && y.CheckAcceptType == "6" && z.IsOnceQualified == true && x.CreateDate > Const.DtmarkTime
|
||||
select new Model.InspectionManagementOutput()
|
||||
{
|
||||
ProjectId = y.ProjectId,
|
||||
//ProjectName = p.ProjectName,
|
||||
//UnitName = UnitService.getUnitNamesUnitIds(x.UnitIds),
|
||||
Id = x.InspectionDetailId,
|
||||
BreakdownCode = y.BreakdownCode,
|
||||
BreakdownName = y.BreakdownName,
|
||||
Basis = y.Basis,
|
||||
CheckPoints = y.CheckPoints,
|
||||
}).ToList();
|
||||
return result;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取分项工程验收合格数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<InspectionManagementOutput>> GetSubdivisionalWorksAcceptOKNumAsync()
|
||||
{
|
||||
return await Task.Run(GetSubdivisionalWorksAcceptOKNum);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
}
|
||||
}
|
||||
@@ -8,12 +8,14 @@ using System.Linq;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using Model.Customization;
|
||||
using System.Net.PeerToPeer;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BLL
|
||||
{
|
||||
public static class HJGLData_HJGLService
|
||||
{
|
||||
public static SUBQHSEDB db = Funs.DB;
|
||||
public static List<string> BeUnderConstructionList = ProjectService.GetProjectWorkList().Where(x => (x.ProjectAttribute == "GONGCHENG" || x.ProjectAttribute == null)).Select(x => x.ProjectId).ToList();
|
||||
|
||||
#region 获取列表
|
||||
|
||||
@@ -389,5 +391,89 @@ namespace BLL
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 获取焊工总数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<WelderOutput> GetWelderNum()
|
||||
{
|
||||
var result = (from x in Funs.DB.BS_Welder
|
||||
where BeUnderConstructionList.Contains(x.ProjectId) && x.WED_IfOnGuard == true
|
||||
select new Model.WelderOutput()
|
||||
{
|
||||
ProjectId = x.ProjectId,
|
||||
UnitId = x.WED_Unit,
|
||||
WEDCode = x.WED_Code,
|
||||
WEDName = x.WED_Name
|
||||
//UnitName = UnitService.getUnitNamesUnitIds(x.UnitIds),
|
||||
}).ToList();
|
||||
return result;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取焊工总数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<WelderOutput>> GetWelderNumAsync()
|
||||
{
|
||||
return await Task.Run(GetWelderNum);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取总达因数和完成达因数
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<WeldDineOutput> GetDineInfo()
|
||||
{
|
||||
var result = (from x in Funs.DB.PW_JointInfo
|
||||
where BeUnderConstructionList.Contains(x.ProjectId)
|
||||
select new Model.WeldDineOutput()
|
||||
{
|
||||
Id = x.JOT_ID,
|
||||
ProjectId = x.ProjectId,
|
||||
Size = x.JOT_Size,
|
||||
DoneDin = x.JOT_DoneDin
|
||||
//UnitName = UnitService.getUnitNamesUnitIds(x.UnitIds),
|
||||
}).ToList();
|
||||
return result;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取总达因数(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<WeldDineOutput>> GetDineInfoAsync()
|
||||
{
|
||||
return await Task.Run(GetDineInfo);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取焊接检查信息
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<CHCheckItemOutput> GetCHCheckItem()
|
||||
{
|
||||
var result = (from x in Funs.DB.CH_CheckItem
|
||||
join y in Funs.DB.CH_Check on x.CHT_CheckID equals y.CHT_CheckID
|
||||
where BeUnderConstructionList.Contains(y.ProjectId)
|
||||
select new Model.CHCheckItemOutput()
|
||||
{
|
||||
Id = x.CHT_CheckItemID,
|
||||
ProjectId = y.ProjectId,
|
||||
UnitId = y.UnitId,
|
||||
CHT_TotalFilm = x.CHT_TotalFilm,
|
||||
CHT_PassFilm = x.CHT_PassFilm
|
||||
//UnitName = UnitService.getUnitNamesUnitIds(x.UnitIds),
|
||||
}).ToList();
|
||||
return result;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取焊接检查信息(异步)
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<CHCheckItemOutput>> GetCHCheckItemAsync()
|
||||
{
|
||||
return await Task.Run(GetCHCheckItem);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,5 @@
|
||||
using Model;
|
||||
using Model.Enums;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
@@ -15,6 +16,8 @@ namespace BLL
|
||||
/// </summary>
|
||||
private List<string> _beUnderConstructionList;
|
||||
private HSSEData_HSSE _hsseData;
|
||||
private CQMSData_CQMS _cqmsData;
|
||||
private HJGLData_HJGL _hjglData;
|
||||
private string _unitId;
|
||||
private int _unitType;
|
||||
|
||||
@@ -49,7 +52,10 @@ namespace BLL
|
||||
_beUnderConstructionList = new List<string>() { projectId };
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 安全数据
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public async Task<HSSEData_HSSE> GetHsseDataAsync()
|
||||
{
|
||||
try
|
||||
@@ -379,5 +385,254 @@ namespace BLL
|
||||
}).ToList();
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 质量数据
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public async Task<CQMSData_CQMS> GetCqmsDataAsync()
|
||||
{
|
||||
try
|
||||
{
|
||||
// 并行执行异步方法
|
||||
var companyPersonNumTask = CQMSDataService.GetCompanyPersonNumAsync(); //获取企业总部人数
|
||||
var branchPersonNumTask = CQMSDataService.GetBranchPersonNumAsync(); //获取分支机构人数
|
||||
var projectPersonNumTask = CQMSDataService.GetProjectPersonNumAsync(); //获取项目专职人数
|
||||
var trainPersonNumTask = CQMSDataService.GetTrainPersonNumAsync(); //获取质量培训人次数
|
||||
var technicalDisclosePersonTask = CQMSDataService.GetTechnicalDisclosePersonNumAsync(); //获取技术交底人次数
|
||||
|
||||
var inspectionEquipmentTask = CQMSDataService.GetComprehensive_InspectionEquipmentAsync(); //获取设备报验
|
||||
var inspectionPersonTask = CQMSDataService.GetComprehensive_InspectionPersonAsync(); //获取人员报验
|
||||
var inspectionMachineTask = CQMSDataService.GetComprehensive_InspectionMachineAsync(); //获取机具报验
|
||||
var useNumTask = CQMSDataService.GetUseNumAsync(); //获取在用计量器具数
|
||||
var okNumTask = CQMSDataService.GetOkNumAsync(); //获取校准合格数
|
||||
|
||||
var singleProjectNumTask = CQMSDataService.GetSingleProjectNumAsync(); //获取单项工程个数
|
||||
var unitProjectNumTask = CQMSDataService.GetUnitProjectNumAsync(); //获取单位工程个数
|
||||
var subProjectNuTask = CQMSDataService.GetSubProjectNumAsync(); //获取分部工程个数
|
||||
var subdivisionalWorksNuTask = CQMSDataService.GetSubdivisionalWorksNumAsync(); //获取分项工程个数
|
||||
var inspectionLotNumTask = CQMSDataService.GetInspectionLotNumAsync(); //获取检验批个数
|
||||
var constructSolutionTask = CQMSDataService.GetConstructSolutionAsync(); //施工方案数量
|
||||
var cqmsProblemTask = CQMSDataService.GetCQMSProblemAsync(); //获取企业级、项目级质量问题
|
||||
|
||||
//质量验收数据
|
||||
var keyProcessNumTask = CQMSDataService.GetKeyProcessNumAsync(); //获取关键工序验收数
|
||||
var keyProcessOKNumTask = CQMSDataService.GetKeyProcessOkNumAsync(); //获取关键工序验收合格数
|
||||
var specialProcessNumTask = CQMSDataService.GetSpecialProcessNumAsync(); //获取特殊过程验收数
|
||||
var specialProcessOKNumTask = CQMSDataService.GetSpecialProcessOkNumAsync(); //获取特殊过程验收合格数
|
||||
var concealedWorksNumTask = CQMSDataService.GetConcealedWorksNumAsync(); //获取隐蔽工程验收数
|
||||
var concealedWorksOKNumTask = CQMSDataService.GetConcealedWorksOkNumAsync(); //获取隐蔽工程验收合格数
|
||||
|
||||
var unitProjectAcceptNumTask = CQMSDataService.GetUnitProjectAcceptNumAsync(); //获取单位工程验收数
|
||||
var unitProjectAcceptOKNumTask = CQMSDataService.GetUnitProjectAcceptOKNumAsync(); //获取单位工程验收合格数
|
||||
var subProjectAcceptNumTask = CQMSDataService.GetSubProjectAcceptNumAsync(); //获取分部工程验收数
|
||||
var subProjectAcceptOKNumTask = CQMSDataService.GetSubProjectAcceptOKNumAsync(); //获取分部工程验收合格数
|
||||
var subdivisionalWorksAcceptNumTask = CQMSDataService.GetSubdivisionalWorksAcceptNumAsync(); //获取分项工程验收数
|
||||
var subdivisionalWorksAcceptOKNumTask = CQMSDataService.GetSubdivisionalWorksAcceptOKNumAsync(); //获取分项工程验收合格数
|
||||
|
||||
// 等待所有异步方法执行完成
|
||||
await Task.WhenAll(
|
||||
companyPersonNumTask, branchPersonNumTask, projectPersonNumTask,
|
||||
trainPersonNumTask, technicalDisclosePersonTask,
|
||||
inspectionEquipmentTask, inspectionPersonTask, inspectionMachineTask,
|
||||
useNumTask, okNumTask,
|
||||
singleProjectNumTask, unitProjectNumTask, subProjectNuTask, subdivisionalWorksNuTask, inspectionLotNumTask,
|
||||
constructSolutionTask,
|
||||
cqmsProblemTask,
|
||||
keyProcessNumTask, keyProcessOKNumTask, specialProcessNumTask, specialProcessOKNumTask, concealedWorksNumTask, concealedWorksOKNumTask,
|
||||
unitProjectAcceptNumTask, unitProjectAcceptOKNumTask, subProjectAcceptNumTask, subProjectAcceptOKNumTask, subdivisionalWorksAcceptNumTask, subdivisionalWorksAcceptOKNumTask
|
||||
);
|
||||
|
||||
// 统一获取异步方法的返回值
|
||||
var companyPersonNum = await companyPersonNumTask;
|
||||
var branchPersonNum = await branchPersonNumTask;
|
||||
var projectPersonNumList = await projectPersonNumTask;
|
||||
var trainPersonNumList = await trainPersonNumTask;
|
||||
var technicalDisclosePersonList = await technicalDisclosePersonTask;
|
||||
|
||||
var inspectionEquipmentList = await inspectionEquipmentTask;
|
||||
var inspectionPersonList = await inspectionPersonTask;
|
||||
var inspectionMachineList = await inspectionMachineTask;
|
||||
var useNum = await useNumTask;
|
||||
var okNum = await okNumTask;
|
||||
var singleProjectNum = await singleProjectNumTask;
|
||||
var unitProjectNum = await unitProjectNumTask;
|
||||
var subProjectNum = await subProjectNuTask;
|
||||
var subdivisionalWorksNum = await subdivisionalWorksNuTask;
|
||||
var inspectionLotNum = await inspectionLotNumTask;
|
||||
|
||||
var constructSolutionList = await constructSolutionTask;
|
||||
var cqmsProblemList = await cqmsProblemTask;
|
||||
|
||||
var keyProcessNum = await keyProcessNumTask;
|
||||
var keyProcessOKNum = await keyProcessOKNumTask;
|
||||
var specialProcessNum = await specialProcessNumTask;
|
||||
var specialProcessOKNum = await specialProcessOKNumTask;
|
||||
var concealedWorksNum = await concealedWorksNumTask;
|
||||
var concealedWorksOKNum = await concealedWorksOKNumTask;
|
||||
|
||||
var unitProjectAcceptNum = await unitProjectAcceptNumTask;
|
||||
var unitProjectAcceptOKNum = await unitProjectAcceptOKNumTask;
|
||||
var subProjectAcceptNum = await subProjectAcceptNumTask;
|
||||
var subProjectAcceptOKNum = await subProjectAcceptOKNumTask;
|
||||
var subdivisionalWorksAcceptNum = await subdivisionalWorksAcceptNumTask;
|
||||
var subdivisionalWorksAcceptOKNum = await subdivisionalWorksAcceptOKNumTask;
|
||||
|
||||
if (_unitType == 1 || _unitType == 3)
|
||||
{
|
||||
projectPersonNumList = projectPersonNumList.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
trainPersonNumList = trainPersonNumList.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
technicalDisclosePersonList = technicalDisclosePersonList.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
inspectionEquipmentList = inspectionEquipmentList.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
inspectionPersonList = inspectionPersonList.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
inspectionMachineList = inspectionMachineList.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
useNum = useNum.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
okNum = okNum.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
singleProjectNum = singleProjectNum.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
unitProjectNum = unitProjectNum.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
subProjectNum = subProjectNum.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
subdivisionalWorksNum = subdivisionalWorksNum.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
inspectionLotNum = inspectionLotNum.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
constructSolutionList = constructSolutionList.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
cqmsProblemList = cqmsProblemList.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
keyProcessNum = keyProcessNum.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
keyProcessOKNum = keyProcessOKNum.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
specialProcessNum = specialProcessNum.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
specialProcessOKNum = specialProcessOKNum.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
concealedWorksNum = concealedWorksNum.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
concealedWorksOKNum = concealedWorksOKNum.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
unitProjectAcceptNum = unitProjectAcceptNum.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
unitProjectAcceptOKNum = unitProjectAcceptOKNum.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
subProjectAcceptNum = subProjectAcceptNum.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
subProjectAcceptOKNum = subProjectAcceptOKNum.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
subdivisionalWorksAcceptNum = subdivisionalWorksAcceptNum.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
subdivisionalWorksAcceptOKNum = subdivisionalWorksAcceptOKNum.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
}
|
||||
// 构造结果对象
|
||||
var table = new CQMSData_CQMS
|
||||
{
|
||||
CompanyPersonNum = companyPersonNum,//
|
||||
BranchPersonNum = branchPersonNum,//
|
||||
ProjectPersonNum = projectPersonNumList.Count(),
|
||||
TrainPersonNum = trainPersonNumList.Count(),
|
||||
TechnicalDisclosePersonNum = technicalDisclosePersonList.Sum(x => x.TrainPersonNum),
|
||||
EquipmentInspectionNum = inspectionEquipmentList.Count(),
|
||||
EquipmentInspectionQualifiedNum = inspectionEquipmentList.Where(x => x.SamplingResult == "1").Count(),
|
||||
PersonInspectionNum = inspectionPersonList.Count(),
|
||||
PersonInspectionQualifiedNum = inspectionPersonList.Where(x => x.IsOnSite.HasValue && x.IsOnSite == true).Count(),
|
||||
MachineInspectionNum = inspectionMachineList.Count(),
|
||||
MachineInspectionQualifiedNum = inspectionMachineList.Where(x => x.IsCheckOK.HasValue && x.IsCheckOK == true).Count(),
|
||||
MaterialInspectionNum = 0,
|
||||
MaterialInspectionQualifiedNum = 0,
|
||||
UseNum = useNum.Count(),
|
||||
OKNum = okNum.Count(),
|
||||
SingleProjectNum = singleProjectNum.Count(),
|
||||
UnitProjectNum = unitProjectNum.Count(),
|
||||
SubProjectNum = subProjectNum.Count(),
|
||||
SubdivisionalWorksNum = subdivisionalWorksNum.Count(),
|
||||
InspectionLotNum = inspectionLotNum.Count(),
|
||||
|
||||
ConstructSolutionNum = constructSolutionList.Count(),
|
||||
ConstructSolutionProjectApproveNum = constructSolutionList.Where(x => x.State == "1").Count(),
|
||||
ConstructSolutionUnitApproveNum = 0,//
|
||||
SpecialEquipmentQualityAssuranceSystemNum = 0,//
|
||||
DesignDetailsNum = technicalDisclosePersonList.Sum(x => x.TrainPersonNum),
|
||||
|
||||
ProblemNum = cqmsProblemList.Count(),
|
||||
ProblemCompletedNum = cqmsProblemList.Where(x => x.State == "7").Count(),
|
||||
ProblemNotCompletedNum = cqmsProblemList.Where(x => x.State != "7").Count(),
|
||||
|
||||
KeyProcessNum = keyProcessNum.Count(),
|
||||
KeyProcessOKNum = keyProcessOKNum.Count(),
|
||||
SpecialProcessNum = specialProcessNum.Count(),
|
||||
SpecialProcessOKNum = specialProcessOKNum.Count(),
|
||||
ConcealedWorksNum = concealedWorksNum.Count(),
|
||||
ConcealedWorksOKNum = concealedWorksOKNum.Count(),
|
||||
UnitProjectAcceptNum = unitProjectAcceptNum.Count(),
|
||||
UnitProjectAcceptOKNum = unitProjectAcceptOKNum.Count(),
|
||||
SubProjectAcceptNum = subProjectAcceptNum.Count(),
|
||||
SubProjectAcceptOKNum = subProjectAcceptOKNum.Count(),
|
||||
SubdivisionalWorksAcceptNum = subdivisionalWorksAcceptNum.Count(),
|
||||
SubdivisionalWorksAcceptOKNum = subdivisionalWorksAcceptOKNum.Count()
|
||||
};
|
||||
|
||||
_cqmsData = table;
|
||||
return _cqmsData;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
throw;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 焊接数据
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public async Task<HJGLData_HJGL> GetHjglDataAsync()
|
||||
{
|
||||
try
|
||||
{
|
||||
// 并行执行异步方法
|
||||
var welderNumTask = HJGLData_HJGLService.GetWelderNumAsync(); //获取焊工总数
|
||||
var dineInfoListTask = HJGLData_HJGLService.GetDineInfoAsync(); //获达因数信息
|
||||
var chCheckItemListTask = HJGLData_HJGLService.GetCHCheckItemAsync(); //获取焊接检查信息
|
||||
|
||||
// 等待所有异步方法执行完成
|
||||
await Task.WhenAll(
|
||||
welderNumTask,
|
||||
dineInfoListTask,
|
||||
chCheckItemListTask
|
||||
);
|
||||
|
||||
// 统一获取异步方法的返回值
|
||||
var welderNum = await welderNumTask;
|
||||
var dineInfoList = await dineInfoListTask;
|
||||
var chCheckItemList = await chCheckItemListTask;
|
||||
|
||||
if (_unitType == 1 || _unitType == 3)
|
||||
{
|
||||
welderNum = welderNum.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
dineInfoList = dineInfoList.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
chCheckItemList = chCheckItemList.Where(x => _beUnderConstructionList.Contains(x.ProjectId)).ToList();
|
||||
}
|
||||
|
||||
// 构造结果对象
|
||||
var table = new HJGLData_HJGL
|
||||
{
|
||||
WelderNum = welderNum.Count(),
|
||||
TotalDineNum = Convert.ToInt32(dineInfoList.Sum(x => x.Size)),
|
||||
CompleteDineNum = Convert.ToInt32(dineInfoList.Sum(x => x.DoneDin)),
|
||||
TotalFilmNum = Convert.ToInt32(chCheckItemList.Sum(x => x.CHT_TotalFilm)),
|
||||
OKFilmNum = Convert.ToInt32(chCheckItemList.Sum(x => x.CHT_PassFilm))
|
||||
};
|
||||
_hjglData = table;
|
||||
return _hjglData;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
throw;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 焊接缺陷分析
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public List<AnalysisData> GetDefectAnalysis()
|
||||
{
|
||||
var db = Funs.DB;
|
||||
var list = (from item in db.CH_CheckItem
|
||||
join check in db.CH_Check on item.CHT_CheckID equals check.CHT_CheckID
|
||||
where _beUnderConstructionList.Contains(check.ProjectId)
|
||||
group item by item.DefectType into g
|
||||
select new AnalysisData
|
||||
{
|
||||
name = Enum.GetName(typeof(DefectTypeEnums), g.Key),
|
||||
value = g.Count()
|
||||
}).ToList();
|
||||
return list;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user