191 lines
7.5 KiB
Transact-SQL
191 lines
7.5 KiB
Transact-SQL
|
|
----获取安全人工时
|
|
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
|
|
|
|
-----获取安全隐患整改单
|
|
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
|
|
|
|
----工程概况
|
|
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
|
|
-----质量统计
|
|
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
|
|
-----劳务数据
|
|
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
|
|
-----待办事项
|
|
--存储过程
|
|
---预警信息
|
|
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
|
|
---环境检测数据
|
|
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
|
|
--进度数据
|
|
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
|
|
--风险管控
|
|
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 |