20260728 修改焊工焊接检测统计表导出

This commit is contained in:
2026-07-28 14:35:50 +08:00
parent a0a7e026a3
commit e490ea9c89
4 changed files with 255 additions and 122 deletions
@@ -0,0 +1,113 @@
ALTER PROC [dbo].[HJGL_sp_rpt_welderStatistics]
@unitcode varchar(50) = NULL,
@WED_ID nvarchar(50) = NULL,
@projectId NVARCHAR(50) = NULL
AS
/*보묏보쌈쇱꿎固셕깊*/
SELECT welder.ProjectWelderId,
welder.ProjectId,
project.ProjectCode,--嘉묏뵀
wld.wed_code,-- 보묏덜쯤
wld.wed_name,--보묏츰냔
ISNULL(totalJoint.totalJoint,0) AS totalJoint, --綠보보룹鑒
ISNULL(TrustJointNum.TrustJointNum,0) AS TrustJointNum, --綠官辜보룹鑒
CAST((CASE ISNULL(TrustJointNum.TrustJointNum,0) WHEN 0 THEN 0
ELSE 1.0 * ISNULL(TrustJointNum.TrustJointNum,0)/(1.0 * totalJoint.totalJoint) END) AS DECIMAL(19,3))
AS OneCheckRate , ---寧늴쇱꿎궐절
ISNULL(FixedJoint.FixedJoint,0) AS FixedJoint, --綠보미땍왯鑒
ISNULL(TrustFixedJoint.TrustFixedJoint,0) AS TrustFixedJoint, --綠官辜미땍왯鑒
CAST((CASE ISNULL(TrustFixedJoint.TrustFixedJoint,0) WHEN 0 THEN 0
ELSE 1.0 * ISNULL(TrustFixedJoint.TrustFixedJoint,0)/(1.0 * FixedJoint.FixedJoint) END) AS DECIMAL(19,3))
AS FixedJointCheckRate , ---미땍왯쇱꿎궐절
ISNULL(ButtJoint.ButtJoint,0) AS ButtJoint, --綠보뚤쌈보룹鑒
ISNULL(TrustButtJoint.TrustButtJoint,0) AS TrustButtJoint, --綠官辜뚤쌈보룹鑒
CAST((CASE ISNULL(TrustButtJoint.TrustButtJoint,0) WHEN 0 THEN 0
ELSE 1.0 * ISNULL(TrustButtJoint.TrustButtJoint,0)/(1.0 * ButtJoint.ButtJoint) END) AS DECIMAL(19,3))
AS ButtJointCheckRate , ---뚤쌈보룹쇱꿎궐절
ISNULL(FilletJoint.FilletJoint,0) AS FilletJoint, --綠보실보룹鑒
ISNULL(TrustFilletJoint.TrustFilletJoint,0) AS TrustFilletJoint, --綠官辜실보룹鑒
CAST((CASE ISNULL(TrustFilletJoint.TrustFilletJoint,0) WHEN 0 THEN 0
ELSE 1.0 * ISNULL(TrustFilletJoint.TrustFilletJoint,0)/(1.0 * FilletJoint.FilletJoint) END) AS DECIMAL(19,3))
AS FilletJointCheckRate
FROM dbo.Project_Welder AS welder
LEFT JOIN Base_Project project on welder.ProjectId=project.ProjectId
LEFT JOIN dbo.HJGL_BS_Welder wld on wld.WED_ID=welder.WED_ID
--綠보보왯鑒
LEFT JOIN (SELECT COUNT(*) AS totalJoint,HJGL_pw_jointinfo.JOT_CellWelder,ProjectId
FROM HJGL_PW_JointInfo
WHERE HJGL_pw_jointinfo.DReportID is not null
GROUP BY HJGL_pw_jointinfo.JOT_CellWelder,ProjectId) AS totalJoint ON totalJoint.JOT_CellWelder = welder.WED_ID and totalJoint.ProjectId=welder.ProjectId
--綠보미땍왯鑒
LEFT JOIN (SELECT COUNT(*) AS FixedJoint,JOT_CellWelder,ProjectId
FROM HJGL_PW_JointInfo
WHERE DReportID is not null AND JOT_JointAttribute='미땍'
GROUP BY HJGL_pw_jointinfo.JOT_CellWelder,ProjectId) AS FixedJoint ON FixedJoint.JOT_CellWelder = welder.WED_ID and FixedJoint.ProjectId=welder.ProjectId
--綠보뚤쌈보룹鑒
LEFT JOIN (SELECT COUNT(*) AS ButtJoint,joint.JOT_CellWelder,ProjectId
FROM HJGL_PW_JointInfo joint
LEFT JOIN dbo.HJGL_BS_JointType jointType on jointType.JOTY_ID=joint.JOTY_ID
WHERE DReportID is not null AND jointType.JOTY_Group='1'
GROUP BY joint.JOT_CellWelder,ProjectId) AS ButtJoint ON ButtJoint.JOT_CellWelder = welder.WED_ID and ButtJoint.ProjectId=welder.ProjectId
--綠보실보룹鑒
LEFT JOIN (SELECT COUNT(*) AS FilletJoint,joint.JOT_CellWelder,ProjectId
FROM HJGL_PW_JointInfo joint
LEFT JOIN dbo.HJGL_BS_JointType jointType on jointType.JOTY_ID=joint.JOTY_ID
WHERE DReportID is not null AND jointType.JOTY_Group='2'
GROUP BY joint.JOT_CellWelder,ProjectId) AS FilletJoint ON FilletJoint.JOT_CellWelder = welder.WED_ID and FilletJoint.ProjectId=welder.ProjectId
--綠官辜보왯鑒
LEFT JOIN (SELECT COUNT(*) AS TrustJointNum,joint.JOT_CellWelder,ProjectId
FROM dbo.HJGL_BO_BatchDetail batchDetail
LEFT JOIN HJGL_pw_jointinfo joint ON joint.jot_id=batchDetail.jot_id
WHERE (batchDetail.NDT is not null OR batchDetail.NDT!='') and joint.JOT_JointNo not like '%A%' and joint.JOT_JointNo not like '%B%' and batchDetail.PointType!='2'
GROUP BY joint.JOT_CellWelder,ProjectId) AS TrustJointNum ON TrustJointNum.JOT_CellWelder = welder.WED_ID and TrustJointNum.ProjectId=welder.ProjectId
--綠官辜미땍왯鑒
LEFT JOIN (SELECT COUNT(*) AS TrustFixedJoint,joint.JOT_CellWelder,ProjectId
FROM dbo.HJGL_BO_BatchDetail batchDetail
LEFT JOIN HJGL_pw_jointinfo joint ON joint.jot_id=batchDetail.jot_id
WHERE (batchDetail.NDT is not null OR batchDetail.NDT!='')
AND joint.JOT_JointAttribute='미땍' and joint.JOT_JointNo not like '%A%' and joint.JOT_JointNo not like '%B%' and batchDetail.PointType!='2'
GROUP BY joint.JOT_CellWelder,ProjectId) AS TrustFixedJoint ON TrustFixedJoint.JOT_CellWelder = welder.WED_ID and TrustFixedJoint.ProjectId=welder.ProjectId
--綠官辜뚤쌈보룹鑒
LEFT JOIN (SELECT COUNT(*) AS TrustButtJoint,joint.JOT_CellWelder,ProjectId
FROM dbo.HJGL_BO_BatchDetail batchDetail
LEFT JOIN HJGL_pw_jointinfo joint ON joint.jot_id=batchDetail.jot_id
LEFT JOIN dbo.HJGL_BS_JointType jointType on jointType.JOTY_ID=joint.JOTY_ID
WHERE (batchDetail.NDT is not null OR batchDetail.NDT!='')
AND jointType.JOTY_Group='1' and joint.JOT_JointNo not like '%A%' and joint.JOT_JointNo not like '%B%' and batchDetail.PointType!='2'
GROUP BY joint.JOT_CellWelder,ProjectId) AS TrustButtJoint ON TrustButtJoint.JOT_CellWelder = welder.WED_ID and TrustButtJoint.ProjectId=welder.ProjectId
--綠官辜실보룹鑒
LEFT JOIN (SELECT COUNT(*) AS TrustFilletJoint,joint.JOT_CellWelder,ProjectId
FROM dbo.HJGL_BO_BatchDetail batchDetail
LEFT JOIN HJGL_pw_jointinfo joint ON joint.jot_id=batchDetail.jot_id
LEFT JOIN dbo.HJGL_BS_JointType jointType on jointType.JOTY_ID=joint.JOTY_ID
WHERE (batchDetail.NDT is not null OR batchDetail.NDT!='')
AND jointType.JOTY_Group='2' and joint.JOT_JointNo not like '%A%' and joint.JOT_JointNo not like '%B%' and batchDetail.PointType!='2'
GROUP BY joint.JOT_CellWelder,ProjectId) AS TrustFilletJoint ON TrustFilletJoint.JOT_CellWelder = welder.WED_ID and TrustFilletJoint.ProjectId=welder.ProjectId
WHERE (welder.ProjectId = @projectId OR @projectId IS NULL)
AND (wld.WED_Unit=@unitcode OR @unitcode IS NULL)
AND (wld.WED_ID=@WED_ID OR @WED_ID is null)
order BY wld.WED_Code
GO