1
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
|
||||
ALTER VIEW [dbo].[View_UnitWeldPerformance]
|
||||
AS
|
||||
SELECT
|
||||
NEWID() AS Id,
|
||||
'' as ProjectCode,
|
||||
total.WED_Unit,
|
||||
un.UnitCode,-- 单位代码
|
||||
un.UnitName,--单位名称
|
||||
-------------本期start
|
||||
DATEADD(day, -1, CAST(GETDATE() AS date)) as ReportDate, --统计日期
|
||||
ISNULL(MRPerson.MRPersonNum,0) AS MRPersonNum, --维保在岗人数
|
||||
ISNULL(TTPerson.TTPersonNum,0) AS TTPersonNum, --技改在岗人数
|
||||
ISNULL(WeldJoint.totalSize,0) AS TotalSize, --当日焊接量
|
||||
ISNULL(WorkProject.WorkProjectNum,0) AS WorkProjectNum --维保工作项数
|
||||
FROM
|
||||
--总达因值 --总焊口
|
||||
(SELECT SUM(joint.JOT_Size) AS totalSize,COUNT(*) AS totalJoint
|
||||
,joint.WED_Unit
|
||||
FROM View_JointWelder joint
|
||||
LEFT JOIN HJGL_BO_WeldReportMain report ON joint.DReportID = report.DReportID
|
||||
WHERE joint.DReportID IS NOT NULL and report.JOT_WeldDate >= '2026-01-01'
|
||||
GROUP BY joint.WED_Unit) AS total
|
||||
|
||||
|
||||
--维保在岗人数,有几个人领用了焊材就是几个人
|
||||
LEFT JOIN (SELECT COUNT(usingMat.UsingMatId) AS MRPersonNum,
|
||||
welder.WED_Unit
|
||||
FROM dbo.HJGL_BS_Welder welder
|
||||
left join dbo.Weld_UsingMat usingMat on usingMat.UsingMan=welder.WED_ID
|
||||
WHERE usingMat.UsingDate>= DATEADD(day, -1, CAST(GETDATE() AS date)) and usingMat.UsingDate<CAST(GETDATE() AS date)
|
||||
GROUP BY welder.WED_Unit) AS MRPerson
|
||||
ON MRPerson.WED_Unit = total.WED_Unit
|
||||
|
||||
--技改在岗人数,当焊材领用时选择了管道焊接的人数
|
||||
LEFT JOIN (SELECT COUNT(distinct usingMat.UsingMan) AS TTPersonNum,
|
||||
welder.WED_Unit
|
||||
FROM dbo.HJGL_BS_Welder welder
|
||||
left join dbo.Weld_UsingMat usingMat on usingMat.UsingMan=welder.WED_ID
|
||||
left join dbo.Weld_UsingPlan usingPlan on usingPlan.UsingPlanId=usingMat.UsingPlanId
|
||||
WHERE usingMat.UsingDate>= DATEADD(day, -1, CAST(GETDATE() AS date)) and usingMat.UsingDate<CAST(GETDATE() AS date) and usingPlan.IsSteelStru=0
|
||||
GROUP BY welder.WED_Unit) AS TTPerson
|
||||
ON TTPerson.WED_Unit = total.WED_Unit
|
||||
--当日焊接量,只统计自建焊工的总工作量
|
||||
LEFT JOIN (SELECT SUM(joint.JOT_Size) AS totalSize
|
||||
,joint.WED_Unit
|
||||
FROM View_JointWelder joint
|
||||
LEFT JOIN HJGL_BO_WeldReportMain report ON joint.DReportID = report.DReportID
|
||||
LEFT JOIN HJGL_BS_Welder wed on wed.WED_ID=joint.Welder
|
||||
WHERE joint.DReportID IS NOT NULL and report.JOT_WeldDate>= DATEADD(day, -1, CAST(GETDATE() AS date)) and report.JOT_WeldDate<CAST(GETDATE() AS date)
|
||||
and wed.IsSelfCreate=1
|
||||
GROUP BY joint.WED_Unit) AS WeldJoint
|
||||
ON WeldJoint.WED_Unit = total.WED_Unit
|
||||
--维保工作项数,自建焊工领用的项目数量
|
||||
LEFT JOIN (SELECT COUNT(distinct usingMat.ProjectId) AS WorkProjectNum,
|
||||
welder.WED_Unit
|
||||
FROM dbo.HJGL_BS_Welder welder
|
||||
left join dbo.Weld_UsingMat usingMat on usingMat.UsingMan=welder.WED_ID
|
||||
WHERE usingMat.UsingDate>= DATEADD(day, -1, CAST(GETDATE() AS date)) and usingMat.UsingDate<CAST(GETDATE() AS date)
|
||||
and welder.IsSelfCreate=1
|
||||
GROUP BY welder.WED_Unit) AS WorkProject
|
||||
ON WorkProject.WED_Unit = total.WED_Unit
|
||||
LEFT JOIN dbo.Base_Unit un ON un.UnitId=total.WED_Unit
|
||||
|
||||
|
||||
GO
|
||||
|
||||
|
||||
Reference in New Issue
Block a user