看板质量验收数据汇总

This commit is contained in:
夏菊 2025-05-06 10:20:27 +08:00
parent 441fbf5985
commit 9957d27137
18 changed files with 2695 additions and 31 deletions

View File

@ -0,0 +1,64 @@
--1( 1 2 3 4 5 6 )
IF NOT EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'CH_CheckItem' AND COLUMN_NAME = 'DefectType')
BEGIN
ALTER TABLE CH_CheckItem ADD DefectType int not null default 6;
END
GO
exec sp_addextendedproperty 'MS_Description', N'缺陷分类(条形缺陷 1 圆形缺陷 2 未融合 3 安装 4 气孔5 其他6 )', 'SCHEMA', 'dbo', 'TABLE', 'CH_CheckItem', 'COLUMN', 'DefectType'
GO
ALTER VIEW [dbo].[View_DCGL_CheckRectifyListFromSUB]
AS
/*子公司隐患整改单集团视图*/
SELECT CheckRectifyItem.CheckRectifyItemId
,CheckRectifyItem.CheckRectifyId
,CheckRectifyItem.NoticeItemId
,CheckRectifyItem.ConfirmMan
,CheckRectifyItem.ConfirmManName
,CheckRectifyItem.ConfirmDate
,CheckRectifyItem.OrderEndDate
,CheckRectifyItem.OrderEndPerson
,CheckRectifyItem.RealEndDate
,CheckRectifyItem.Verification
,CheckRectify.CheckRectifyCode
,CheckRectify.ProjectId
,CheckRectify.UnitId
,CheckRectify.CheckDate
,CheckRectify.IssueMan
,CheckRectify.IssueDate
,CheckRectify.HandleState
,NoticeItem.ProblemTypes AS ProblemTypes
,NoticeItem.SortIndex AS SortIndex
,NoticeItem.Situation AS Situation
,'' AS WorkType
,'' AS DangerPoint
,'隐患(问题)描述:'+NoticeItem.Describe+';依据标准:'+NoticeItem.Standards+';建议:'+NoticeItem.Advice AS RiskExists
,'' AS IsProject
,'' AS CheckMan
,'' AS SubjectUnitMan
--,Table5Item.SortIndex
--,Table5Item.WorkType
--,Table5Item.DangerPoint
--,Table5Item.RiskExists
--,Table5Item.IsProject
--,Table5Item.CheckMan
--,Table5Item.SubjectUnitMan
,AttachFile.AttachFileId
,AttachFile.ToKeyId
,AttachFile.AttachSource
,AttachFile.AttachUrl
,AttachFile2.AttachFileId AS AttachFileId2
,AttachFile2.ToKeyId AS ToKeyId2
,AttachFile2.AttachSource AS AttachSource2
,AttachFile2.AttachUrl AS AttachUrl2
FROM dbo.DCGL_Check_CheckRectifyItem AS CheckRectifyItem
LEFT JOIN dbo.DCGL_Check_CheckRectify AS CheckRectify ON CheckRectifyItem.CheckRectifyid=CheckRectify.CheckRectifyId
--LEFT JOIN dbo.Check_CheckInfo_Table5Item as Table5Item on CheckRectifyItem.Table5ItemId=Table5Item.ID
LEFT JOIN DCGL_Check_CheckInfo_TableNoticeItem AS NoticeItem ON CheckRectifyItem.NoticeItemId=NoticeItem.ID
LEFT JOIN dbo.AttachFile AS AttachFile on AttachFile.ToKeyId =CheckRectifyItem.NoticeItemId
LEFT JOIN dbo.AttachFile AS AttachFile2 on AttachFile2.ToKeyId =CheckRectifyItem.CheckRectifyItemId
GO

View File

@ -0,0 +1,95 @@
alter table dbo.CQMSData_CQMS
add EquipmentInspectionNum int,
EquipmentInspectionQualifiedNum int,
MachineInspectionNum int,
MachineInspectionQualifiedNum int,
PersonInspectionNum int,
PersonInspectionQualifiedNum int,
MaterialInspectionNum int,
MaterialInspectionQualifiedNum int,
ConstructSolutionNum int,
ConstructSolutionProjectApproveNum int,
ConstructSolutionUnitApproveNum int,
SpecialEquipmentQualityAssuranceSystemNum int,
DesignDetailsNum int,
UnitProjectAcceptNum int,
UnitProjectAcceptOKNum int,
SubProjectAcceptNum int,
SubProjectAcceptOKNum int,
SubdivisionalWorksAcceptNum int,
SubdivisionalWorksAcceptOKNum int
go
exec sp_addextendedproperty 'MS_Description', N'设备报验-报检数', 'SCHEMA', 'dbo', 'TABLE', 'CQMSData_CQMS',
'COLUMN', 'EquipmentInspectionNum'
go
exec sp_addextendedproperty 'MS_Description', N'设备报验-报检合格数', 'SCHEMA', 'dbo', 'TABLE', 'CQMSData_CQMS',
'COLUMN', 'EquipmentInspectionQualifiedNum'
go
exec sp_addextendedproperty 'MS_Description', N'机具报验-报检数', 'SCHEMA', 'dbo', 'TABLE', 'CQMSData_CQMS',
'COLUMN', 'MachineInspectionNum'
go
exec sp_addextendedproperty 'MS_Description', N'机具报验-报检合格数', 'SCHEMA', 'dbo', 'TABLE', 'CQMSData_CQMS',
'COLUMN', 'MachineInspectionQualifiedNum'
go
exec sp_addextendedproperty 'MS_Description', N'人员报验-报检数', 'SCHEMA', 'dbo', 'TABLE', 'CQMSData_CQMS',
'COLUMN', 'PersonInspectionNum'
go
exec sp_addextendedproperty 'MS_Description', N'人员报验-报检合格数', 'SCHEMA', 'dbo', 'TABLE', 'CQMSData_CQMS',
'COLUMN', 'PersonInspectionQualifiedNum'
go
exec sp_addextendedproperty 'MS_Description', N'材料报验-报检数', 'SCHEMA', 'dbo', 'TABLE', 'CQMSData_CQMS',
'COLUMN', 'MaterialInspectionNum'
go
exec sp_addextendedproperty 'MS_Description', N'材料报验-报检合格数', 'SCHEMA', 'dbo', 'TABLE', 'CQMSData_CQMS',
'COLUMN', 'MaterialInspectionQualifiedNum'
go
exec sp_addextendedproperty 'MS_Description', N'施工方案数量', 'SCHEMA', 'dbo', 'TABLE', 'CQMSData_CQMS',
'COLUMN', 'ConstructSolutionNum'
go
exec sp_addextendedproperty 'MS_Description', N'施工方案项目审批数量', 'SCHEMA', 'dbo', 'TABLE',
'CQMSData_CQMS', 'COLUMN', 'ConstructSolutionProjectApproveNum'
go
exec sp_addextendedproperty 'MS_Description', N'施工方案企业审批数量', 'SCHEMA', 'dbo', 'TABLE',
'CQMSData_CQMS', 'COLUMN', 'ConstructSolutionUnitApproveNum'
go
exec sp_addextendedproperty 'MS_Description', N'特种设备质保体系', 'SCHEMA', 'dbo', 'TABLE',
'CQMSData_CQMS', 'COLUMN', 'SpecialEquipmentQualityAssuranceSystemNum'
go
exec sp_addextendedproperty 'MS_Description', N'图纸会审/设计交底', 'SCHEMA', 'dbo', 'TABLE',
'CQMSData_CQMS', 'COLUMN', 'DesignDetailsNum'
go
exec sp_addextendedproperty 'MS_Description', N'分项工程验收数', 'SCHEMA', 'dbo', 'TABLE', 'CQMSData_CQMS',
'COLUMN', 'SubdivisionalWorksAcceptNum'
go
exec sp_addextendedproperty 'MS_Description', N'分部工程合格数', 'SCHEMA', 'dbo', 'TABLE', 'CQMSData_CQMS',
'COLUMN', 'SubProjectAcceptOKNum'
go
exec sp_addextendedproperty 'MS_Description', N'分部工程验收数', 'SCHEMA', 'dbo', 'TABLE', 'CQMSData_CQMS',
'COLUMN', 'SubProjectAcceptNum'
go
exec sp_addextendedproperty 'MS_Description', N'单位工程合格数', 'SCHEMA', 'dbo', 'TABLE', 'CQMSData_CQMS',
'COLUMN', 'UnitProjectAcceptOKNum'
go
exec sp_addextendedproperty 'MS_Description', N'单位工程验收数', 'SCHEMA', 'dbo', 'TABLE', 'CQMSData_CQMS',
'COLUMN', 'UnitProjectAcceptNum'
go
exec sp_addextendedproperty 'MS_Description', N'分项工程合格数', 'SCHEMA', 'dbo', 'TABLE', 'CQMSData_CQMS',
'COLUMN', 'SubdivisionalWorksAcceptOKNum'
go

View File

@ -0,0 +1,95 @@
alter table dbo.Project_CQMSData_CQMS
add EquipmentInspectionNum int,
EquipmentInspectionQualifiedNum int,
MachineInspectionNum int,
MachineInspectionQualifiedNum int,
PersonInspectionNum int,
PersonInspectionQualifiedNum int,
MaterialInspectionNum int,
MaterialInspectionQualifiedNum int,
ConstructSolutionNum int,
ConstructSolutionProjectApproveNum int,
ConstructSolutionUnitApproveNum int,
SpecialEquipmentQualityAssuranceSystemNum int,
DesignDetailsNum int,
UnitProjectAcceptNum int,
UnitProjectAcceptOKNum int,
SubProjectAcceptNum int,
SubProjectAcceptOKNum int,
SubdivisionalWorksAcceptNum int,
SubdivisionalWorksAcceptOKNum int
go
exec sp_addextendedproperty 'MS_Description', N'设备报验-报检数', 'SCHEMA', 'dbo', 'TABLE', 'Project_CQMSData_CQMS',
'COLUMN', 'EquipmentInspectionNum'
go
exec sp_addextendedproperty 'MS_Description', N'设备报验-报检合格数', 'SCHEMA', 'dbo', 'TABLE', 'Project_CQMSData_CQMS',
'COLUMN', 'EquipmentInspectionQualifiedNum'
go
exec sp_addextendedproperty 'MS_Description', N'机具报验-报检数', 'SCHEMA', 'dbo', 'TABLE', 'Project_CQMSData_CQMS',
'COLUMN', 'MachineInspectionNum'
go
exec sp_addextendedproperty 'MS_Description', N'机具报验-报检合格数', 'SCHEMA', 'dbo', 'TABLE', 'Project_CQMSData_CQMS',
'COLUMN', 'MachineInspectionQualifiedNum'
go
exec sp_addextendedproperty 'MS_Description', N'人员报验-报检数', 'SCHEMA', 'dbo', 'TABLE', 'Project_CQMSData_CQMS',
'COLUMN', 'PersonInspectionNum'
go
exec sp_addextendedproperty 'MS_Description', N'人员报验-报检合格数', 'SCHEMA', 'dbo', 'TABLE', 'Project_CQMSData_CQMS',
'COLUMN', 'PersonInspectionQualifiedNum'
go
exec sp_addextendedproperty 'MS_Description', N'材料报验-报检数', 'SCHEMA', 'dbo', 'TABLE', 'Project_CQMSData_CQMS',
'COLUMN', 'MaterialInspectionNum'
go
exec sp_addextendedproperty 'MS_Description', N'材料报验-报检合格数', 'SCHEMA', 'dbo', 'TABLE', 'Project_CQMSData_CQMS',
'COLUMN', 'MaterialInspectionQualifiedNum'
go
exec sp_addextendedproperty 'MS_Description', N'施工方案数量', 'SCHEMA', 'dbo', 'TABLE', 'Project_CQMSData_CQMS',
'COLUMN', 'ConstructSolutionNum'
go
exec sp_addextendedproperty 'MS_Description', N'施工方案项目审批数量', 'SCHEMA', 'dbo', 'TABLE',
'Project_CQMSData_CQMS', 'COLUMN', 'ConstructSolutionProjectApproveNum'
go
exec sp_addextendedproperty 'MS_Description', N'施工方案企业审批数量', 'SCHEMA', 'dbo', 'TABLE',
'Project_CQMSData_CQMS', 'COLUMN', 'ConstructSolutionUnitApproveNum'
go
exec sp_addextendedproperty 'MS_Description', N'特种设备质保体系', 'SCHEMA', 'dbo', 'TABLE',
'Project_CQMSData_CQMS', 'COLUMN', 'SpecialEquipmentQualityAssuranceSystemNum'
go
exec sp_addextendedproperty 'MS_Description', N'图纸会审/设计交底', 'SCHEMA', 'dbo', 'TABLE',
'Project_CQMSData_CQMS', 'COLUMN', 'DesignDetailsNum'
go
exec sp_addextendedproperty 'MS_Description', N'分项工程验收数', 'SCHEMA', 'dbo', 'TABLE', 'Project_CQMSData_CQMS',
'COLUMN', 'SubdivisionalWorksAcceptNum'
go
exec sp_addextendedproperty 'MS_Description', N'分部工程合格数', 'SCHEMA', 'dbo', 'TABLE', 'Project_CQMSData_CQMS',
'COLUMN', 'SubProjectAcceptOKNum'
go
exec sp_addextendedproperty 'MS_Description', N'分部工程验收数', 'SCHEMA', 'dbo', 'TABLE', 'Project_CQMSData_CQMS',
'COLUMN', 'SubProjectAcceptNum'
go
exec sp_addextendedproperty 'MS_Description', N'单位工程合格数', 'SCHEMA', 'dbo', 'TABLE', 'Project_CQMSData_CQMS',
'COLUMN', 'UnitProjectAcceptOKNum'
go
exec sp_addextendedproperty 'MS_Description', N'单位工程验收数', 'SCHEMA', 'dbo', 'TABLE', 'Project_CQMSData_CQMS',
'COLUMN', 'UnitProjectAcceptNum'
go
exec sp_addextendedproperty 'MS_Description', N'分项工程合格数', 'SCHEMA', 'dbo', 'TABLE', 'Project_CQMSData_CQMS',
'COLUMN', 'SubdivisionalWorksAcceptOKNum'
go

View File

@ -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
}
}

View File

@ -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);
}
}
}

View File

@ -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;
}
}
}

View File

@ -702,7 +702,12 @@
branchNum: 0,//分部工程数
itemizeNum: 0,//分项工程数
},
//质量验收数据
checkAccepts: [],//质量验收数据——表1验收数
checkAcceptOKs: [],//质量验收数据——表1合格数
checkAcceptOKRates: [],//质量验收数据——表1合格率
checkAccepts2: [],//质量验收数据——表2验收数
checkAcceptOKs2: [],//质量验收数据——表2合格数
checkAcceptOKRates2: [],//质量验收数据——表2合格率
specialEquipmentSys: 0,//特种设备质保体系
designBriefing: 0,//图纸会审、设计交底
hsseEduTrain:
@ -769,9 +774,19 @@
if (response.d.success) {
// 更新数据成功
that.form = { ...response.d.data }; // 更新表单数据
//console.log("请求结果:", that.form);
that.checkAccepts = [...response.d.data.checkAccepts]; //获取质量验收数据——表1验收数
that.checkAcceptOKs = [...response.d.data.checkAcceptOKs]; //获取质量验收数据——表1合格数
that.checkAcceptOKRates = [...response.d.data.checkAcceptOKRates]; //获取质量验收数据——表1合格率
that.checkAccepts2 = [...response.d.data.checkAccepts2]; //获取质量验收数据——表2验收数
that.checkAcceptOKs2 = [...response.d.data.checkAcceptOKs2]; //获取质量验收数据——表2合格数
that.checkAcceptOKRates2 = [...response.d.data.checkAcceptOKRates2]; //获取质量验收数据——表2合格率
that.chinaData = [...response.d.data.chinaData]; // 更新地图数据
//console.log("111111111",that.chinaData);
that.createChinaMap(that.chinaData); // 重新创建地图
that.createMap1(that.checkAccepts, that.checkAcceptOKs, that.checkAcceptOKRates); // 更新数据
that.createMap2(that.checkAccepts2, that.checkAcceptOKs2, that.checkAcceptOKRates2); // 更新数据
} else {
// 更新数据失败
alert("加载数据失败:" + response.d.msg);
@ -995,7 +1010,7 @@
* @param {*} data2 合格数
* @param {*} data3 合格率
*/
createMap1(data1, data2, data3) {
createMap1(data1 = [], data2 = [], data3 = []) {
if (!this.map1) {
this.map1 = echarts.init(document.getElementById('map1'))
}
@ -1039,23 +1054,24 @@
}
},
yAxis: [
{
type: 'value',
name: '数量',
position: 'left',
splitNumber: 5,
alignTicks: true,
splitLine: {
lineStyle: {
color: '#123858' // 设置Y轴线颜色为白色
}
},
},
{
type: 'value',
name: '百分比',
position: 'right',
splitNumber: 5,
interval: 25,
max: 100,
min: 0,
alignTicks: true,
@ -1069,7 +1085,7 @@
series: [
{
name: "验收数",
data: [120, 200, 150],
data: data1,
type: 'bar',
yAxisIndex: 0,
barWidth: 14,
@ -1086,7 +1102,7 @@
},
{
name: "合格数",
data: [120, 200, 150],
data: data2,
type: 'bar',
yAxisIndex: 0,
barWidth: 14,
@ -1104,7 +1120,7 @@
{
name: "合格率",
yAxisIndex: 1,
data: [80, 22.1, 12],
data: data3,
type: 'line',
smooth: true, // 设置折线图变圆滑
symbol: 'none',
@ -1123,7 +1139,7 @@
* @param {*} data2 合格数
* @param {*} data3 合格率
*/
createMap2(data1, data2, data3) {
createMap2(data1 = [], data2 = [], data3 = []) {
if (!this.map2) {
this.map2 = echarts.init(document.getElementById('map2'))
}
@ -1172,6 +1188,7 @@
type: 'value',
name: '数量',
position: 'left',
splitNumber: 5,
alignTicks: true,
splitLine: {
lineStyle: {
@ -1184,6 +1201,8 @@
type: 'value',
name: '百分比',
position: 'right',
splitNumber: 5,
interval: 25,
max: 100,
min: 0,
alignTicks: true,
@ -1197,7 +1216,7 @@
series: [
{
name: "验收数",
data: [120, 200, 150],
data: data1,
type: 'bar',
yAxisIndex: 0,
barWidth: 14,
@ -1214,7 +1233,7 @@
},
{
name: "合格数",
data: [120, 200, 150],
data: data2,
type: 'bar',
yAxisIndex: 0,
barWidth: 14,
@ -1232,7 +1251,7 @@
{
name: "合格率",
yAxisIndex: 1,
data: [80, 22.1, 12],
data: data3,
type: 'line',
smooth: true, // 设置折线图变圆滑
symbol: 'none',

View File

@ -34,6 +34,8 @@ namespace FineUIPro.Web.common
MainSevice mainSevice = new MainSevice(page.CurrUser.UserId);
// 获取HSSE数据
var hsseData = Task.Run(() => mainSevice.GetHsseDataAsync()).Result;
//获取CQMS数据
var cqmsData = Task.Run(() => mainSevice.GetCqmsDataAsync()).Result;
//班前会
var classMeetingList = HSSEData_HSSEService.GetProjectClassMeeting(null);
@ -86,20 +88,20 @@ namespace FineUIPro.Web.common
var inspectionMachineList = (from x in db.Comprehensive_InspectionMachine select x).ToList();
Model.CQMSData_CQMS cqmsData = new Model.CQMSData_CQMS();
//Model.CQMSData_CQMS cqmsData = new Model.CQMSData_CQMS();
var getCqmsDataCqms = db.CQMSData_CQMS.OrderByDescending(x => x.ReportDate).FirstOrDefault();
if (getCqmsDataCqms == null)
{
cqmsData = new Model.CQMSData_CQMS();
//cqmsData = new Model.CQMSData_CQMS();
}
if (unitType == 0)
{
cqmsData = getCqmsDataCqms;
//cqmsData = getCqmsDataCqms;
}
else if (unitType == 1)
{
cqmsData = CQMSDataService.GetSubUnitCqmsDataByDate(page.CurrUser.UnitId, getCqmsDataCqms.ReportDate);
//cqmsData = CQMSDataService.GetSubUnitCqmsDataByDate(page.CurrUser.UnitId, getCqmsDataCqms.ReportDate);
classMeetingList = classMeetingList.Where(x => _beUnderConstructionList.Contains(x.ProjectId) || x.UnitId == page.CurrUser.UnitId).ToList();
weekMeetingList = weekMeetingList.Where(x => _beUnderConstructionList.Contains(x.ProjectId) || x.UnitId == page.CurrUser.UnitId).ToList();
designDetailsList = designDetailsList.Where(x => _beUnderConstructionList.Contains(x.ProjectId) || x.UnitName == page.CurrUser.UnitId).ToList();
@ -110,7 +112,7 @@ namespace FineUIPro.Web.common
}
else if (unitType == 2)
{
cqmsData = new Model.CQMSData_CQMS();
//cqmsData = new Model.CQMSData_CQMS();
classMeetingList = new List<MeetingOutput>();
weekMeetingList = new List<MeetingOutput>();
designDetailsList = new List<Comprehensive_DesignDetails>();
@ -142,6 +144,56 @@ namespace FineUIPro.Web.common
cqmsZGRate = "0";
}
#region
//关键工序合格率
double keyProcessRate = cqmsData.KeyProcessOKNum > 0 ? Math.Round(100 * ((double)cqmsData.KeyProcessOKNum / (double)cqmsData.KeyProcessNum), 2) : 0;
//特殊工程合格率
double specialProcessRate = cqmsData.SpecialProcessOKNum > 0 ? Math.Round(100 * ((double)cqmsData.SpecialProcessOKNum / (double)cqmsData.SpecialProcessNum), 2) : 0;
//隐蔽工程合格率
double concealedWorksRate = cqmsData.ConcealedWorksOKNum > 0 ? Math.Round(100 * ((double)cqmsData.ConcealedWorksOKNum / (double)cqmsData.ConcealedWorksNum), 2) : 0;
//单位工程合格率
double unitProjecProcessRate = cqmsData.UnitProjectAcceptNum > 0 ? Math.Round(100 * ((double)cqmsData.UnitProjectAcceptOKNum / (double)cqmsData.UnitProjectAcceptNum), 2) : 0;
//分部工程合格率
double subProjectProcessRate = cqmsData.SubProjectAcceptOKNum > 0 ? Math.Round(100 * ((double)cqmsData.SubProjectAcceptOKNum / (double)cqmsData.SubProjectAcceptNum), 2) : 0;
//分项工程合格率
double subdivisionalWorksRate = cqmsData.SubdivisionalWorksAcceptOKNum > 0 ? Math.Round(100 * ((double)cqmsData.SubdivisionalWorksAcceptOKNum / (double)cqmsData.SubdivisionalWorksAcceptNum), 2) : 0;
//验收数
List<int> checkAccepts = new List<int>();
checkAccepts.Add((int)cqmsData.KeyProcessNum);
checkAccepts.Add((int)cqmsData.SpecialProcessNum);
checkAccepts.Add((int)cqmsData.ConcealedWorksNum);
//合格数
List<int> checkAcceptOKs = new List<int>();
checkAcceptOKs.Add((int)cqmsData.KeyProcessOKNum);
checkAcceptOKs.Add((int)cqmsData.SpecialProcessOKNum);
checkAcceptOKs.Add((int)cqmsData.ConcealedWorksOKNum);
//合格率
List<double> checkAcceptOKRates = new List<double>();
checkAcceptOKRates.Add(keyProcessRate);
checkAcceptOKRates.Add(specialProcessRate);
checkAcceptOKRates.Add(concealedWorksRate);
//验收数
List<int> checkAccepts2 = new List<int>();
checkAccepts2.Add((int)cqmsData.UnitProjectAcceptNum);
checkAccepts2.Add((int)cqmsData.SubProjectAcceptNum);
checkAccepts2.Add((int)cqmsData.SubdivisionalWorksAcceptNum);
//合格数
List<int> checkAcceptOKs2 = new List<int>();
checkAcceptOKs2.Add((int)cqmsData.UnitProjectAcceptOKNum);
checkAcceptOKs2.Add((int)cqmsData.SubProjectAcceptOKNum);
checkAcceptOKs2.Add((int)cqmsData.SubdivisionalWorksAcceptOKNum);
//合格率
List<double> checkAcceptOKRates2 = new List<double>();
checkAcceptOKRates2.Add(unitProjecProcessRate);
checkAcceptOKRates2.Add(subProjectProcessRate);
checkAcceptOKRates2.Add(subdivisionalWorksRate);
#endregion
// 构造返回数据
var returnData = new
{
@ -241,7 +293,13 @@ namespace FineUIPro.Web.common
branchNum = cqmsData.SubProjectNum ?? 0,//分部工程数
itemizeNum = cqmsData.SubdivisionalWorksNum ?? 0,//分项工程数
},
//质量验收数据【待汇总】
//质量验收数据
checkAccepts = checkAccepts,
checkAcceptOKs = checkAcceptOKs,
checkAcceptOKRates = checkAcceptOKRates,
checkAccepts2 = checkAccepts2,
checkAcceptOKs2 = checkAcceptOKs2,
checkAcceptOKRates2 = checkAcceptOKRates2,
specialEquipmentSys = 0,//特种设备质保体系【待汇总】
designBriefing = designDetailsList.Count(),//图纸会审、设计交底
hsseEduTrain = new

View File

@ -652,6 +652,12 @@
branchNum: 0,//分部工程数
itemizeNum: 0,//分项工程数
},
checkAccepts: [],//质量验收数据——表1验收数
checkAcceptOKs: [],//质量验收数据——表1合格数
checkAcceptOKRates: [],//质量验收数据——表1合格率
checkAccepts2: [],//质量验收数据——表2验收数
checkAcceptOKs2: [],//质量验收数据——表2合格数
checkAcceptOKRates2: [],//质量验收数据——表2合格率
specialEquipmentSys: 0,//特种设备质保体系
designBriefing: 0,//图纸会审、设计交底
hsseEduTrain:
@ -712,11 +718,20 @@
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
console.log(response.d)
//console.log(response.d)
if (response.d.success) {
// 更新数据成功
that.form = { ...response.d.data }; // 更新表单数据
console.log(that.form)
//console.log(that.form)
that.checkAccepts = [...response.d.data.checkAccepts]; //获取质量验收数据——表1验收数
that.checkAcceptOKs = [...response.d.data.checkAcceptOKs]; //获取质量验收数据——表1合格数
that.checkAcceptOKRates = [...response.d.data.checkAcceptOKRates]; //获取质量验收数据——表1合格率
that.checkAccepts2 = [...response.d.data.checkAccepts2]; //获取质量验收数据——表2验收数
that.checkAcceptOKs2 = [...response.d.data.checkAcceptOKs2]; //获取质量验收数据——表2合格数
that.checkAcceptOKRates2 = [...response.d.data.checkAcceptOKRates2]; //获取质量验收数据——表2合格率
that.createMap1(that.checkAccepts, that.checkAcceptOKs, that.checkAcceptOKRates); // 更新数据
that.createMap2(that.checkAccepts2, that.checkAcceptOKs2, that.checkAcceptOKRates2); // 更新数据
} else {
// 更新数据失败
alert("加载数据失败:" + response.d.msg);
@ -772,7 +787,7 @@
* @param {*} data2 合格数
* @param {*} data3 合格率
*/
createMap1(data1, data2, data3) {
createMap1(data1 = [], data2 = [], data3 = []) {
if (!this.map1) {
this.map1 = echarts.init(document.getElementById('map1'))
}
@ -816,23 +831,24 @@
}
},
yAxis: [
{
type: 'value',
name: '数量',
position: 'left',
splitNumber: 5,
alignTicks: true,
splitLine: {
lineStyle: {
color: '#123858' // 设置Y轴线颜色为白色
}
},
},
{
type: 'value',
name: '百分比',
position: 'right',
splitNumber: 5,
interval: 25,
max: 100,
min: 0,
alignTicks: true,
@ -846,7 +862,7 @@
series: [
{
name: "验收数",
data: [120, 200, 150],
data: data1,
type: 'bar',
yAxisIndex: 0,
barWidth: 14,
@ -863,7 +879,7 @@
},
{
name: "合格数",
data: [120, 200, 150],
data: data2,
type: 'bar',
yAxisIndex: 0,
barWidth: 14,
@ -881,7 +897,7 @@
{
name: "合格率",
yAxisIndex: 1,
data: [80, 22.1, 12],
data: data3,
type: 'line',
smooth: true, // 设置折线图变圆滑
symbol: 'none',
@ -900,7 +916,7 @@
* @param {*} data2 合格数
* @param {*} data3 合格率
*/
createMap2(data1, data2, data3) {
createMap2(data1 = [], data2 = [], data3 = []) {
if (!this.map2) {
this.map2 = echarts.init(document.getElementById('map2'))
}
@ -949,6 +965,7 @@
type: 'value',
name: '数量',
position: 'left',
splitNumber: 5,
alignTicks: true,
splitLine: {
lineStyle: {
@ -961,6 +978,8 @@
type: 'value',
name: '百分比',
position: 'right',
splitNumber: 5,
interval: 25,
max: 100,
min: 0,
alignTicks: true,
@ -974,7 +993,7 @@
series: [
{
name: "验收数",
data: [120, 200, 150],
data: data1,
type: 'bar',
yAxisIndex: 0,
barWidth: 14,
@ -991,7 +1010,7 @@
},
{
name: "合格数",
data: [120, 200, 150],
data: data2,
type: 'bar',
yAxisIndex: 0,
barWidth: 14,
@ -1009,7 +1028,7 @@
{
name: "合格率",
yAxisIndex: 1,
data: [80, 22.1, 12],
data: data3,
type: 'line',
smooth: true, // 设置折线图变圆滑
symbol: 'none',

View File

@ -41,6 +41,9 @@ namespace FineUIPro.Web.common
//获取HSSE数据
var hsseData = Task.Run(() => mainSevice.GetHsseDataAsync()).Result;
//获取CQMS数据
var cqmsData = Task.Run(() => mainSevice.GetCqmsDataAsync()).Result;
//安全云视频【待汇总】待配置
string video_Url = string.Empty;
var sysSet16 = (from x in Funs.DB.Sys_Set where x.SetName == "视频监控地址" select x).ToList().FirstOrDefault();
@ -160,6 +163,56 @@ namespace FineUIPro.Web.common
double inspectionPersonRate = inspectionPersonIsCheckOk > 0 ? Math.Round((100 * (double)(inspectionPersonIsCheckOk / inspectionPerson)), 2) : 0;
double inspectionMachineRate = inspectionMachineIsCheckOk > 0 ? Math.Round((100 * (double)(inspectionMachineIsCheckOk / inspectionMachine)), 2) : 0;
#region
//关键工序合格率
double keyProcessRate = cqmsData.KeyProcessOKNum > 0 ? Math.Round(100 * ((double)cqmsData.KeyProcessOKNum / (double)cqmsData.KeyProcessNum), 2) : 0;
//特殊工程合格率
double specialProcessRate = cqmsData.SpecialProcessOKNum > 0 ? Math.Round(100 * ((double)cqmsData.SpecialProcessOKNum / (double)cqmsData.SpecialProcessNum), 2) : 0;
//隐蔽工程合格率
double concealedWorksRate = cqmsData.ConcealedWorksOKNum > 0 ? Math.Round(100 * ((double)cqmsData.ConcealedWorksOKNum / (double)cqmsData.ConcealedWorksNum), 2) : 0;
//单位工程合格率
double unitProjecProcessRate = cqmsData.UnitProjectAcceptNum > 0 ? Math.Round(100 * ((double)cqmsData.UnitProjectAcceptOKNum / (double)cqmsData.UnitProjectAcceptNum), 2) : 0;
//分部工程合格率
double subProjectProcessRate = cqmsData.SubProjectAcceptOKNum > 0 ? Math.Round(100 * ((double)cqmsData.SubProjectAcceptOKNum / (double)cqmsData.SubProjectAcceptNum), 2) : 0;
//分项工程合格率
double subdivisionalWorksRate = cqmsData.SubdivisionalWorksAcceptOKNum > 0 ? Math.Round(100 * ((double)cqmsData.SubdivisionalWorksAcceptOKNum / (double)cqmsData.SubdivisionalWorksAcceptNum), 2) : 0;
//验收数
List<int> checkAccepts = new List<int>();
checkAccepts.Add((int)cqmsData.KeyProcessNum);
checkAccepts.Add((int)cqmsData.SpecialProcessNum);
checkAccepts.Add((int)cqmsData.ConcealedWorksNum);
//合格数
List<int> checkAcceptOKs = new List<int>();
checkAcceptOKs.Add((int)cqmsData.KeyProcessOKNum);
checkAcceptOKs.Add((int)cqmsData.SpecialProcessOKNum);
checkAcceptOKs.Add((int)cqmsData.ConcealedWorksOKNum);
//合格率
List<double> checkAcceptOKRates = new List<double>();
checkAcceptOKRates.Add(keyProcessRate);
checkAcceptOKRates.Add(specialProcessRate);
checkAcceptOKRates.Add(concealedWorksRate);
//验收数
List<int> checkAccepts2 = new List<int>();
checkAccepts2.Add((int)cqmsData.UnitProjectAcceptNum);
checkAccepts2.Add((int)cqmsData.SubProjectAcceptNum);
checkAccepts2.Add((int)cqmsData.SubdivisionalWorksAcceptNum);
//合格数
List<int> checkAcceptOKs2 = new List<int>();
checkAcceptOKs2.Add((int)cqmsData.UnitProjectAcceptOKNum);
checkAcceptOKs2.Add((int)cqmsData.SubProjectAcceptOKNum);
checkAcceptOKs2.Add((int)cqmsData.SubdivisionalWorksAcceptOKNum);
//合格率
List<double> checkAcceptOKRates2 = new List<double>();
checkAcceptOKRates2.Add(unitProjecProcessRate);
checkAcceptOKRates2.Add(subProjectProcessRate);
checkAcceptOKRates2.Add(subdivisionalWorksRate);
#endregion
//项目进度计划
var scheduleList = (from x in db.Sys_Schedule
where x.ProjectId == projectId
@ -260,7 +313,13 @@ namespace FineUIPro.Web.common
branchNum = cqmsProjectData.SubProjectNum ?? 0,//分部工程数
itemizeNum = cqmsProjectData.SubdivisionalWorksNum ?? 0,//分项工程数
},
//质量验收数据【待汇总】
//质量验收数据
checkAccepts = checkAccepts,
checkAcceptOKs = checkAcceptOKs,
checkAcceptOKRates = checkAcceptOKRates,
checkAccepts2 = checkAccepts2,
checkAcceptOKs2 = checkAcceptOKs2,
checkAcceptOKRates2 = checkAcceptOKRates2,
specialEquipmentSys = 0,//特种设备质保体系【待汇总】
designBriefing = designDetailsList.Count(),//图纸会审、设计交底
hsseEduTrain = new

View File

@ -0,0 +1,10 @@
using System;
namespace Model
{
public class AnalysisData
{
public string name { get; set; }
public int value { get; set; }
}
}

View File

@ -0,0 +1,16 @@

namespace Model.Enums
{
/// <summary>
/// 焊接缺陷类型
/// </summary>
public enum DefectTypeEnums
{
= 1,
= 2,
= 3,
= 4,
= 5,
= 6
}
}

File diff suppressed because it is too large Load Diff

View File

@ -239,6 +239,7 @@
<Compile Include="APIItem\WBS_UnitWorkDto.cs" />
<Compile Include="APIItem\WorkSummaryReport.cs" />
<Compile Include="Base_ProjectDto.cs" />
<Compile Include="AnalysisData.cs" />
<Compile Include="BusinessColumn.cs" />
<Compile Include="Chart\DataSourceChart.cs" />
<Compile Include="Chart\DataSourcePoint.cs" />
@ -309,6 +310,7 @@
<Compile Include="DoorServer\InOutstatisticsItem.cs" />
<Compile Include="DoorServer\t_d_validcardeventItem.cs" />
<Compile Include="DoorServer\t_d_facerecordItem.cs" />
<Compile Include="Enums\DefectTypeEnums.cs" />
<Compile Include="Enums\ActionEnums.cs" />
<Compile Include="ErrorInfo.cs" />
<Compile Include="FaceRecordForm.cs" />
@ -343,6 +345,10 @@
<Compile Include="APIItem\ResponeData.cs" />
<Compile Include="SpTDesktopItem.cs" />
<Compile Include="Sys_UserDto.cs" />
<Compile Include="ZHGL\DataSync\CHCheckItemOutput.cs" />
<Compile Include="ZHGL\DataSync\WelderOutput.cs" />
<Compile Include="ZHGL\DataSync\WeldDineOutput.cs" />
<Compile Include="ZHGL\DataSync\InspectionManagementOutput.cs" />
<Compile Include="ZHGL\DataSync\AccidentOutput.cs" />
<Compile Include="ZHGL\DataSync\BaseEntities.cs" />
<Compile Include="ZHGL\DataSync\CheckOutput.cs" />

View File

@ -0,0 +1,20 @@
using System;
namespace Model
{
/// <summary>
/// 焊接信息
/// </summary>
public class CHCheckItemOutput : BaseEntities
{
public string Id { get; set; }
/// <summary>
/// 总片数
/// </summary>
public int? CHT_TotalFilm { get; set; }
/// <summary>
/// 合格片数
/// </summary>
public int? CHT_PassFilm { get; set; }
}
}

View File

@ -0,0 +1,16 @@
using System;
namespace Model
{
/// <summary>
/// 质量验收数据
/// </summary>
public class InspectionManagementOutput : BaseEntities
{
public string Id { get; set; }
public string BreakdownCode { get; set; }
public string BreakdownName { get; set; }
public string Basis { get; set; }
public string CheckPoints { get; set; }
}
}

View File

@ -0,0 +1,20 @@
using System;
namespace Model
{
/// <summary>
/// 焊接达因数
/// </summary>
public class WeldDineOutput : BaseEntities
{
public string Id { get; set; }
/// <summary>
/// 达因数
/// </summary>
public decimal? Size { get; set; }
/// <summary>
/// 完成达因数
/// </summary>
public decimal? DoneDin { get; set; }
}
}

View File

@ -0,0 +1,14 @@
using System;
namespace Model
{
/// <summary>
/// 焊工数据
/// </summary>
public class WelderOutput : BaseEntities
{
public string Id { get; set; }
public string WEDCode { get; set; }
public string WEDName { get; set; }
}
}