633 lines
23 KiB
Transact-SQL
633 lines
23 KiB
Transact-SQL
----获取安全人工时
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_Home_SafeWorkTime')
|
|
DROP VIEW View_IOC_Home_SafeWorkTime
|
|
GO
|
|
Create view View_IOC_Home_SafeWorkTime
|
|
as
|
|
SELECT Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
SUM(ISNULL(mmsb.TotalManhoursTotal, 0)) AS SafeWorkTime --安全工时
|
|
FROM Manager_ManhoursSortB mmsb
|
|
JOIN
|
|
Manager_MonthReportB mmb ON mmsb.MonthReportId = mmb.MonthReportId
|
|
JOIN
|
|
Base_Project Project ON mmb.ProjectId = Project.ProjectId
|
|
WHERE mmb.MonthReportId IN (SELECT TOP 1 MonthReportId
|
|
FROM Manager_MonthReportB
|
|
WHERE ProjectId = Project.ProjectId
|
|
ORDER BY Months DESC)
|
|
GROUP BY Project.ProjectId, Project.ProjectName, Project.ProjectCode
|
|
go
|
|
|
|
-----获取安全隐患整改单
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_Home_SafeRectifyNotices')
|
|
DROP VIEW View_IOC_Home_SafeRectifyNotices
|
|
go
|
|
Create view View_IOC_Home_SafeRectifyNotices
|
|
as
|
|
SELECT Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
R.RectifyNoticesId,--安全隐患整改单主键id
|
|
R.RectifyNoticesCode,--安全隐患整改单编码
|
|
Unit.UnitName,--单位名称
|
|
R.CheckManNames,--检查人姓名
|
|
WorkAreaName= STUFF((SELECT ',' + UnitWorkName
|
|
FROM dbo.WBS_UnitWork
|
|
where PATINDEX('%,' + RTRIM(UnitWorkId) + ',%', ',' + R.WorkAreaId + ',') > 0
|
|
FOR XML PATH('')), 1, 1, ''),--单位工程名称
|
|
R.CheckedDate,--检查日期
|
|
DutyPerson.UserName AS DutyPersonName,--责任人
|
|
R.DutyPersonTime,--接收人接收日期
|
|
R.CompleteDate,--日期
|
|
(CASE
|
|
WHEN States = 5 THEN '已完成'
|
|
ELSE '未完成' END) AS StatesName
|
|
FROM Check_RectifyNotices AS R
|
|
LEFT JOIN Base_Project AS Project ON Project.ProjectId = R.ProjectId
|
|
LEFT JOIN Base_Unit AS Unit ON Unit.UnitId = R.UnitId
|
|
LEFT JOIN Sys_User AS CompileMan ON CompileMan.UserId = R.CompleteManId
|
|
LEFT JOIN Sys_User AS DutyPerson ON DutyPerson.UserId = R.DutyPersonId
|
|
WHERE States IS NOT NULL
|
|
or States != '0'
|
|
go
|
|
|
|
----工程概况
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_Home_ProjectOverview')
|
|
DROP VIEW View_IOC_Home_ProjectOverview
|
|
GO
|
|
Create view View_IOC_Home_ProjectOverview
|
|
as
|
|
select ProjectId,--项目id
|
|
ProjectName,--项目名称
|
|
ProjectCode,--项目编号
|
|
ShortName,--项目简称
|
|
ProjectAddress,--项目地址
|
|
OwnUnit = STUFF((SELECT ',' + UnitName
|
|
FROM dbo.Project_ProjectUnit
|
|
left join Base_Unit on Project_ProjectUnit.UnitId = Base_Unit.UnitId
|
|
where Project_ProjectUnit.ProjectId = Project.ProjectId
|
|
and UnitType = '4'
|
|
FOR XML PATH('')), 1, 1, ''),--建设单位
|
|
JLUnit = STUFF((SELECT ',' + UnitName
|
|
FROM dbo.Project_ProjectUnit
|
|
left join Base_Unit on Project_ProjectUnit.UnitId = Base_Unit.UnitId
|
|
where Project_ProjectUnit.ProjectId = Project.ProjectId
|
|
and UnitType = '3'
|
|
FOR XML PATH('')), 1, 1, ''),--监理单位
|
|
SGUnit = STUFF((SELECT ',' + UnitName
|
|
FROM dbo.Project_ProjectUnit
|
|
left join Base_Unit on Project_ProjectUnit.UnitId = Base_Unit.UnitId
|
|
where Project_ProjectUnit.ProjectId = Project.ProjectId
|
|
and UnitType = '2'
|
|
FOR XML PATH('')), 1, 1, ''),--施工单位
|
|
ContractDays= DATEDIFF(day, Project.StartDate, Project.EndDate),--合同总工期
|
|
ContractEndDate=Project.EndDate,--合同到期时间
|
|
RemainingDays=DATEDIFF(day, Project.EndDate, getdate())--距离竣工剩余时间
|
|
from Base_Project Project
|
|
go
|
|
-----质量统计
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_Home_CQMSStatistics')
|
|
DROP VIEW View_IOC_Home_CQMSStatistics
|
|
GO
|
|
Create view View_IOC_Home_CQMSStatistics
|
|
as
|
|
select Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
QuestionDef,--问题描述
|
|
RectifyOpinion,----整改要求
|
|
HandleWay,--处理方式
|
|
LimitDate,--整改时间
|
|
(CASE
|
|
WHEN ck.State = '6' THEN '已完成'
|
|
ELSE '未完成' END) AS States --状态
|
|
from Check_JointCheckDetail ckdetail
|
|
left join Check_JointCheck ck on ckdetail.JointCheckId = ck.JointCheckId
|
|
left join Base_Project project on ck.ProjectId = project.ProjectId
|
|
union all
|
|
select Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
QuestionDef,--问题描述
|
|
RectifyOpinion,----整改要求
|
|
HandleWay,--处理方式
|
|
LimitDate,--整改时间
|
|
(CASE
|
|
WHEN ckControl.State = '7' THEN '已完成'
|
|
ELSE '未完成' END) AS States --状态
|
|
from Check_CheckControl ckControl
|
|
left join Base_Project project on ckControl.ProjectId = project.ProjectId
|
|
go
|
|
-----劳务数据
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_Home_LabourData')
|
|
DROP VIEW View_IOC_Home_LabourData
|
|
GO
|
|
Create view View_IOC_Home_LabourData
|
|
as
|
|
SELECT DISTINCT Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
IdentityCard=record.IDCardNo, --身份证号码
|
|
workpost.WorkPostName,--岗位名称
|
|
(case
|
|
when workpost.PostType = '1' then '管理人员'
|
|
else '作业人员' end) as PostType--岗位类型
|
|
FROM T_d_EmployInOutRecord record
|
|
left join Base_Project project on record.ProjectId = project.ProjectId
|
|
left join SitePerson_Person person on person.IdentityCard = record.IDCardNo
|
|
left join Base_WorkPost workpost on person.WorkPostId = workpost.WorkPostId
|
|
WHERE record.RecordDate = CAST(GETDATE() AS DATE)
|
|
go
|
|
-----待办事项
|
|
--存储过程
|
|
---预警信息
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_Home_Warning')
|
|
DROP VIEW View_IOC_Home_Warning
|
|
GO
|
|
Create view View_IOC_Home_Warning
|
|
as
|
|
SELECT Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
y.PersonName,--人员姓名
|
|
y.IdentityCard,--人员身份证号号码
|
|
x.CertificateNo,--证书编号
|
|
CertificateName,--证书名称
|
|
x.SendDate,--发证时间
|
|
x.LimitDate--证书到期时间
|
|
FROM QualityAudit_PersonQuality x
|
|
JOIN SitePerson_Person y ON x.PersonId = y.PersonId
|
|
left join Base_Project project on y.ProjectId = project.ProjectId
|
|
WHERE x.LimitDate <= GETDATE()
|
|
go
|
|
---环境检测数据
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_Home_Environmental')
|
|
DROP VIEW View_IOC_Home_Environmental
|
|
GO
|
|
Create view View_IOC_Home_Environmental
|
|
as
|
|
select Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
pm10,--PM10
|
|
pm25,--PM2.5
|
|
noise,--噪声
|
|
tem,--温度
|
|
hum,--湿度
|
|
ws,--风速
|
|
CompileDate
|
|
from Environmental_EnvironmentalMonitoring x
|
|
left join Base_Project project on x.ProjectId = project.ProjectId
|
|
go
|
|
--进度数据
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_Home_Schedule')
|
|
DROP VIEW View_IOC_Home_Schedule
|
|
GO
|
|
Create view View_IOC_Home_Schedule
|
|
as
|
|
select Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
x.ScheduleId,--进度主键
|
|
x.ScheduleName,--进度名称
|
|
x.ScheduleDate,--日期
|
|
x.SortId--排序
|
|
from Sys_Schedule x
|
|
left join Base_Project project on x.ProjectId = project.ProjectId
|
|
go
|
|
--风险管控
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_Home_Hazard')
|
|
DROP VIEW View_IOC_Home_Hazard
|
|
GO
|
|
Create view View_IOC_Home_Hazard
|
|
as
|
|
SELECT Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
x.HazardSelectedItemId,--风险管控主键id
|
|
x.HazardItems,--危险因素明细
|
|
x.DefectsType,--危险源类别
|
|
y.RiskLevel,--危险级别
|
|
y.RiskLevelName--危险级别名称
|
|
FROM Hazard_HazardSelectedItem x
|
|
JOIN Base_RiskLevel y ON x.HazardLevel = y.RiskLevelId
|
|
left join Base_Project project on x.ProjectId = project.ProjectId
|
|
go
|
|
--质量人员培训
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_CQMS_PersonTrain')
|
|
DROP VIEW View_IOC_CQMS_PersonTrain
|
|
GO
|
|
Create view View_IOC_CQMS_PersonTrain
|
|
as
|
|
SELECT Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
x.InspectionPersonCode,--编号
|
|
x.PersonName,--培训人员
|
|
x.CompileDate--提交日期
|
|
FROM Comprehensive_InspectionPerson x
|
|
left join Base_Project project on x.ProjectId = project.ProjectId
|
|
where x.IsTrain = 1
|
|
go
|
|
--质量技术交底
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_CQMS_TechnicalDisclose')
|
|
DROP VIEW View_IOC_CQMS_TechnicalDisclose
|
|
GO
|
|
Create view View_IOC_CQMS_TechnicalDisclose
|
|
as
|
|
select Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
x.DesignDetailsCode,--交底编号
|
|
x.DetailsMan,--交底人
|
|
x.CompileDate,--提交日期
|
|
x.JoinPersonNum--交底人数
|
|
from Comprehensive_DesignDetails x
|
|
left join Base_Project project on project.ProjectId = x.ProjectId;
|
|
go
|
|
--质量计量器具数据
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_CQMS_InspectionMachine')
|
|
DROP VIEW View_IOC_CQMS_InspectionMachine
|
|
GO
|
|
Create view View_IOC_CQMS_InspectionMachine
|
|
as
|
|
select Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
x.InspectionMachineCode,--报验编号
|
|
x.InspectionMachineName,--名称
|
|
x.SpecificationModel,--规格型号
|
|
x.NextTestDate,--下次检验日期
|
|
x.TestCycle,--检验周期
|
|
x.IsVerification,--是否在校验期内
|
|
x.InspectionDate,--校验日期
|
|
x.LeaveDate,--离场时间
|
|
x.UnitsCount,--台数
|
|
(case x.IsCheckOK when 1 then '校准合格' else '校准不合格' end) as IsCheckOK --是否合格
|
|
from Comprehensive_InspectionMachine x
|
|
left join Base_Project project on project.ProjectId = x.ProjectId
|
|
where x.IsOnSite = 1
|
|
and x.InspectionType like '%计量%';
|
|
go
|
|
--质量控制点
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_CQMS_Breakdown')
|
|
DROP VIEW View_IOC_CQMS_Breakdown
|
|
GO
|
|
Create view View_IOC_CQMS_Breakdown
|
|
as
|
|
select Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
x.BreakdownCode,--分项编号
|
|
x.BreakdownName,--分项名称
|
|
x.Basis,--执行依据或规范
|
|
x.CheckPoints,--质量检查要点
|
|
x.RecordAndCode,--质量记录及格式文本号
|
|
x.Class--控制等级
|
|
from WBS_BreakdownProject x
|
|
left join Base_Project project on project.ProjectId = x.ProjectId
|
|
where x.IsSelected = 1
|
|
and (x.Class like '%A%' or x.Class like '%B%' or x.Class like '%C%');
|
|
go
|
|
--质量问题治理数据
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_CQMS_CheckControl')
|
|
DROP VIEW View_IOC_CQMS_CheckControl
|
|
GO
|
|
Create view View_IOC_CQMS_CheckControl
|
|
as
|
|
select Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
UnitName,
|
|
QuestionDef,--问题描述
|
|
RectifyOpinion,----整改要求
|
|
HandleWay,--处理方式
|
|
RectifyDate,--整改时间
|
|
(case x.State when '7' then '已整改' else '未整改' end) as state
|
|
from Check_CheckControl x
|
|
left join Base_Project project on project.ProjectId = x.ProjectId
|
|
left join Base_Unit unit on x.UnitId = unit.UnitId
|
|
go
|
|
--质量施工方案
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_CQMS_ConstructSolution')
|
|
DROP VIEW View_IOC_CQMS_ConstructSolution
|
|
GO
|
|
Create view View_IOC_CQMS_ConstructSolution
|
|
as
|
|
select Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
UnitName,--单位名称
|
|
SolutionName,--方案名称
|
|
(case x.State
|
|
when '0' then '重报'
|
|
when '2' then '会签'
|
|
when '3' then '审批完成'
|
|
else '编制' end) as state
|
|
from Solution_CQMSConstructSolution x
|
|
left join Base_Project project on project.ProjectId = x.ProjectId
|
|
left join Base_Unit unit on x.UnitId = unit.UnitId
|
|
go
|
|
--质量验收数据
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_CQMS_InspectionManagement')
|
|
DROP VIEW View_IOC_CQMS_InspectionManagement
|
|
GO
|
|
Create view View_IOC_CQMS_InspectionManagement
|
|
as
|
|
select Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
unit.UnitName,--单位名称
|
|
y.InspectionCode,--共检通知单编号
|
|
unitwork.UnitWorkName,--单位工程名称
|
|
branch.DivisionName,--分部
|
|
controlPointType.BreakdownName,--控制点内容
|
|
(case y.IsOnceQualified
|
|
when '1' then '合格'
|
|
else '不合格' end) as state --是否合格
|
|
from ProcessControl_InspectionManagementDetail x
|
|
left join ProcessControl_InspectionManagement y on x.InspectionId = y.InspectionId
|
|
left join Base_Project project on project.ProjectId = y.ProjectId
|
|
left join Base_Unit unit on y.UnitId = unit.UnitId
|
|
left join WBS_UnitWork unitwork on x.UnitWorkId = unitwork.UnitWorkId
|
|
left join WBS_DivisionProject branch on x.Branch = branch.DivisionProjectId
|
|
left join WBS_BreakdownProject controlPointType on x.ControlPointType = controlPointType.breakdownProjectId
|
|
go
|
|
--质量检查待处理事项(明细)
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_CQMS_ToDoItem')
|
|
DROP VIEW View_IOC_CQMS_ToDoItem
|
|
GO
|
|
Create view View_IOC_CQMS_ToDoItem
|
|
as
|
|
select Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
UnitName,--单位名称
|
|
CheckDate,--检查时间
|
|
CheckSite,--部位
|
|
(case x.State
|
|
when '3' then '待整改'
|
|
when '3' then '待整改'
|
|
when '5' then '待复查验收'
|
|
when '6' then '待复查验收'
|
|
else '' end) as state --状态
|
|
from Check_CheckControl x
|
|
left join Base_Project project on project.ProjectId = x.ProjectId
|
|
left join Base_Unit unit on x.UnitId = unit.UnitId
|
|
where State in ('3', '4', '5', '6')
|
|
go
|
|
|
|
--安全
|
|
--项目在场人员
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_HSSE_PresentPerson')
|
|
DROP VIEW View_IOC_HSSE_PresentPerson
|
|
GO
|
|
Create view View_IOC_HSSE_PresentPerson
|
|
as
|
|
SELECT DISTINCT Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
IdentityCard=record.IDCardNo,--身份证号码
|
|
record.EmployName --姓名
|
|
FROM T_d_EmployInOutRecord record
|
|
left join Base_Project project on record.ProjectId = project.ProjectId
|
|
WHERE record.RecordDate = CAST(GETDATE() AS DATE)
|
|
go
|
|
|
|
--项目安全人工时
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_HSSE_SafeWorkTime')
|
|
DROP VIEW View_IOC_HSSE_SafeWorkTime
|
|
GO
|
|
Create view View_IOC_HSSE_SafeWorkTime
|
|
as
|
|
select Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
unit.UnitName,
|
|
unit.UnitId,
|
|
SUM(COALESCE(detail.PersonWorkTime, 0)) as PersonWorkTime
|
|
from Project_ProjectUnit prounit
|
|
left join Base_Project Project on Project.ProjectId = prounit.ProjectId
|
|
left join SitePerson_DayReport report on report.ProjectId = prounit.ProjectId
|
|
left join SitePerson_DayReportDetail detail
|
|
on detail.DayReportId = report.DayReportId and detail.UnitId = prounit.UnitId
|
|
left join Base_Unit unit on unit.UnitId = prounit.UnitId
|
|
group by Project.ProjectCode, Project.ProjectId, Project.ProjectName, unit.UnitName, unit.UnitId
|
|
|
|
go
|
|
---安全检查问题统计-按单位统计
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_HSSE_CheckStatistics_Unit')
|
|
DROP VIEW View_IOC_HSSE_CheckStatistics_Unit
|
|
GO
|
|
Create view View_IOC_HSSE_CheckStatistics_Unit
|
|
as
|
|
select Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
unit.UnitName,
|
|
unit.UnitId,
|
|
COUNT(CASE WHEN register.states = '1' THEN 1 END) AS NeedRectificationCount,
|
|
COUNT(register.HazardRegisterId) AS AllCount
|
|
from Project_ProjectUnit prounit
|
|
left join Base_Project Project on Project.ProjectId = prounit.ProjectId
|
|
left join View_Hazard_HazardRegister register
|
|
on register.ProjectId = prounit.ProjectId and register.ResponsibleUnit = prounit.UnitId
|
|
left join Base_Unit unit on unit.UnitId = prounit.UnitId
|
|
group by Project.ProjectCode, Project.ProjectId, Project.ProjectName, unit.UnitName, unit.UnitId
|
|
go
|
|
--安全检查问题统计-按类型统计
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_HSSE_CheckStatistics_Type')
|
|
DROP VIEW View_IOC_HSSE_CheckStatistics_Type
|
|
GO
|
|
Create view View_IOC_HSSE_CheckStatistics_Type
|
|
as
|
|
select Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
register.RegisterTypesName,--问题类别
|
|
COUNT(CASE WHEN register.states = '1' THEN 1 END) AS NeedRectificationCount,--待整改数量
|
|
COUNT(register.HazardRegisterId) AS AllCount --全部数量
|
|
from View_Hazard_HazardRegister register
|
|
left join Base_Project Project on Project.ProjectId = register.ProjectId
|
|
group by Project.ProjectCode, Project.ProjectId, Project.ProjectName, register.RegisterTypesName
|
|
go
|
|
--作业许统计
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_HSSE_LicenseStatistics')
|
|
DROP VIEW View_IOC_HSSE_LicenseStatistics
|
|
GO
|
|
Create view View_IOC_HSSE_LicenseStatistics
|
|
as
|
|
with cte as
|
|
(select ProjectId,
|
|
manager.LicenseManagerCode as LicenseCode,
|
|
(case LicenseTypeCode
|
|
when '4' then '动火'
|
|
when '2' then '高处'
|
|
when '7' then '受限'
|
|
when '04' then '射线'
|
|
when '5' then '断路'
|
|
when '8' then '动土'
|
|
when '' then '夜间'
|
|
when '3' then '吊装' end
|
|
) as TypeName
|
|
from License_LicenseManager manager
|
|
left join Base_LicenseType license on manager.LicenseTypeId = license.LicenseTypeId
|
|
union all
|
|
select ProjectId, LicenseCode, '动火' as TypeName
|
|
from License_FireWork
|
|
where States = '3'
|
|
union all
|
|
select ProjectId, LicenseCode, '高处' as TypeName
|
|
from License_HeightWork
|
|
where States = '3'
|
|
union all
|
|
select ProjectId, LicenseCode, '受限' as TypeName
|
|
from License_LimitedSpace
|
|
where States = '3'
|
|
union all
|
|
select ProjectId, LicenseCode, '射线' as TypeName
|
|
from License_RadialWork
|
|
where States = '3'
|
|
union all
|
|
select ProjectId, LicenseCode, '断路' as TypeName
|
|
from License_OpenCircuit
|
|
where States = '3'
|
|
union all
|
|
select ProjectId, LicenseCode, '动土' as TypeName
|
|
from License_BreakGround
|
|
where States = '3'
|
|
union all
|
|
select ProjectId, LicenseCode, '夜间' as TypeName
|
|
from License_NightWork
|
|
where States = '3'
|
|
union all
|
|
select ProjectId, LicenseCode, '吊装' as TypeName
|
|
from License_LiftingWork
|
|
where States = '3')
|
|
|
|
select Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
cte.LicenseCode,
|
|
TypeName
|
|
from cte
|
|
left join Base_Project Project on Project.ProjectId = cte.ProjectId
|
|
where cte.TypeName is not null
|
|
go
|
|
--入场教育培训统计
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_HSSE_TrainStatistics')
|
|
DROP VIEW View_IOC_HSSE_TrainStatistics
|
|
GO
|
|
Create view View_IOC_HSSE_TrainStatistics
|
|
as
|
|
select Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
detail.PersonId,
|
|
person.PersonName,
|
|
unit.UnitName,
|
|
detail.CheckScore,
|
|
detail.CheckResult
|
|
from EduTrain_TrainRecordDetail detail
|
|
join EduTrain_TrainRecord record on detail.TrainingId = record.TrainingId
|
|
join Base_Project Project on record.ProjectId = Project.ProjectId
|
|
join SitePerson_Person person on detail.PersonId = person.PersonId
|
|
join Base_Unit unit on person.UnitId = unit.UnitId
|
|
where record.TrainTypeId = 'dfb6a37e-4412-4ba9-ad59-3bc505bc21f7'
|
|
go
|
|
--
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_HSSE_AccidentStatistics')
|
|
DROP VIEW View_IOC_HSSE_AccidentStatistics
|
|
GO
|
|
Create view View_IOC_HSSE_AccidentStatistics
|
|
as
|
|
select
|
|
Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
count (case when report.AccidentTypeId in ('1','2','3','4') THEN 1 END) as PersonalInjuryNum,--人身伤害
|
|
count (case when report.AccidentTypeId ='5' THEN 1 END) as AttemptedAccidentNumNum,--未遂事故
|
|
count (case when report.AccidentTypeId in ('6','7') THEN 1 END) as FireNum,--火灾
|
|
count (case when report.AccidentTypeId in ('8','9') THEN 1 END) as MechanicalEquipmentNum,--机械设备
|
|
count (case when report.AccidentTypeId ='10' THEN 1 END) as EnvironmentalEffectNum,--环境影响
|
|
count (case when report.AccidentTypeId ='11'THEN 1 END ) as OtherNum--其他
|
|
from Accident_AccidentReport as report
|
|
join Base_Project Project on report.ProjectId = Project.ProjectId
|
|
group by Project.ProjectId, Project.ProjectName, Project.ProjectCode
|
|
go
|
|
--焊接检测单管理(计算一次合格率)
|
|
IF EXISTS(SELECT 1
|
|
FROM sys.views
|
|
WHERE name = 'View_IOC_HJGL_CheckManageStatistics_Unit')
|
|
DROP VIEW View_IOC_HJGL_CheckManageStatistics_Unit
|
|
GO
|
|
Create view View_IOC_HJGL_CheckManageStatistics_Unit
|
|
as
|
|
select Project.ProjectId,--项目id
|
|
Project.ProjectName,--项目名称
|
|
Project.ProjectCode,--项目编码
|
|
unit.UnitName,
|
|
unit.UnitId,
|
|
SUM(cht_totalfilm) AS CHT_TotalFilm, --拍片总数
|
|
SUM(cht_passfilm) AS CHT_PassFilm --合格片数
|
|
from Project_ProjectUnit prounit
|
|
join Base_Project Project on Project.ProjectId = prounit.ProjectId
|
|
join PW_IsoInfo IsoInfo on IsoInfo.UnitId=prounit.UnitId and isoinfo.ProjectId = prounit.ProjectId
|
|
join PW_JointInfo JointInfo on IsoInfo.ISO_ID = JointInfo.ISO_ID
|
|
join CH_CheckItem ch_checkitem on JointInfo.JOT_ID = ch_checkitem.JOT_ID
|
|
join Base_Unit unit on unit.UnitId = prounit.UnitId
|
|
where IsoInfo.UnitId is not null
|
|
group by Project.ProjectCode, Project.ProjectId, Project.ProjectName, unit.UnitName, unit.UnitId
|
|
go
|
|
|