20220922 1、焊工业绩存储过程修改。2、人员库是否在岗空时报错。3、合同流程审批页选择框人员加载问题。4、小程序订阅推送检查。
This commit is contained in:
@@ -0,0 +1,116 @@
|
||||
--焊工业绩
|
||||
ALTER PROC [dbo].[sp_rpt_WelderPerformance]
|
||||
@unitcode NVARCHAR(50) = NULL,
|
||||
@UnitWorkId NVARCHAR(50) = NULL,
|
||||
@steel NVARCHAR(50) = NULL,
|
||||
@wloName NVARCHAR(50) = NULL,
|
||||
@date1 DATETIME = NULL,
|
||||
@date2 DATETIME = NULL,
|
||||
@projectId NVARCHAR(50) = NULL
|
||||
|
||||
AS
|
||||
/*焊工业绩分析*/
|
||||
|
||||
SELECT
|
||||
welder.ProjectId,
|
||||
welder.WelderCode,-- 焊工代码
|
||||
welder.PersonName,--焊工名称
|
||||
(CASE WHEN Persons.Sex ='2' THEN '女' ELSE '男' END) AS Sex, --性别
|
||||
-------------本期start
|
||||
CAST(ISNULL(nowtotal_din.nowtotal_din,0) AS DECIMAL(19,2)) AS nowtotal_din, --本期总达因值
|
||||
ISNULL(nowtotal_din.nowtotal_jot,0) AS nowtotal_jot, --本期总焊口
|
||||
ISNULL(nowtotal_Rt.Rt_JotNum,0) AS rt_total_Jot, -- 本期已RT焊口数
|
||||
ISNULL(nowtotal_repairjot.nowtotal_repairjot,0) AS nowtotal_repairjot, -- 本期RT返修焊口数
|
||||
CONVERT(NVARCHAR(10),(CAST((CASE ISNULL(nowtotal_Rt.Rt_JotNum,0) WHEN 0 THEN 0
|
||||
ELSE 100.0 * ISNULL(nowtotal_repairjot.nowtotal_repairjot,0)/(1.0 * nowtotal_Rt.Rt_JotNum) END) AS DECIMAL(8,1))))+'%' AS nowrepairrate, -- 本期RT返修率(焊口)
|
||||
|
||||
ISNULL(nowtotalfilm.nowtotalfilm,0) AS nowtotalfilm, --本期RT拍片总数
|
||||
ISNULL(nowtotalfilm.nopassfilm,0) AS nopassfilm, --本期RT不合格拍片数
|
||||
CONVERT(NVARCHAR(10),(CAST((CASE ISNULL(nowtotalfilm.nowtotalfilm,0) WHEN 0 THEN 0
|
||||
ELSE 100.0 * ISNULL(nowtotalfilm.nopassfilm,0)/(1.0 * nowtotalfilm.nowtotalfilm) END) AS DECIMAL(8,1))))+'%'
|
||||
AS nopassfilmrate , ---本期RT返修率(片数)
|
||||
teamGroup.TeamGroupName AS education, --所在班组
|
||||
welder.States
|
||||
FROM SitePerson_Person AS welder
|
||||
LEFT JOIN Person_Persons AS Persons ON welder.PersonId =Persons.PersonId
|
||||
left join ProjectData_TeamGroup as teamGroup on teamGroup.TeamGroupId=welder.TeamGroupId
|
||||
--本期总达因值 --本期总焊口
|
||||
LEFT JOIN (SELECT SUM(jot.Size) AS nowtotal_din
|
||||
,COUNT(*) AS nowtotal_jot
|
||||
,jot.CoverWelderId
|
||||
FROM dbo.HJGL_WeldJoint jot
|
||||
LEFT JOIN dbo.HJGL_Pipeline pipe ON pipe.PipelineId = jot.PipelineId
|
||||
LEFT JOIN dbo.HJGL_WeldingDaily daily ON daily.WeldingDailyId = jot.WeldingDailyId
|
||||
LEFT JOIN WBS_UnitWork UnitWork ON UnitWork.UnitWorkId = pipe.UnitWorkId
|
||||
WHERE jot.WeldingDailyId IS NOT NULL
|
||||
AND (daily.WeldingDate >= @date1 OR @date1 IS NULL) AND (daily.WeldingDate <= @date2 OR @date2 IS NULL)
|
||||
AND (pipe.UnitWorkId =@UnitWorkId OR @UnitWorkId IS NULL)
|
||||
AND (jot.Material1Id=@steel OR @steel IS NULL)
|
||||
GROUP BY jot.CoverWelderId) AS nowtotal_din ON nowtotal_din.CoverWelderId = welder.PersonId
|
||||
|
||||
--本期已Rt焊口数
|
||||
LEFT JOIN (SELECT COUNT(pointItem.PointBatchItemId) AS Rt_JotNum --RT焊口数
|
||||
,jot.CoverWelderId
|
||||
FROM dbo.HJGL_Batch_PointBatchItem pointItem
|
||||
LEFT JOIN dbo.HJGL_WeldJoint jot ON jot.WeldJointId = pointItem.WeldJointId
|
||||
LEFT JOIN dbo.HJGL_Batch_PointBatch point ON point.PointBatchId = pointItem.PointBatchId
|
||||
LEFT JOIN Base_DetectionType ndeType ON ndeType.DetectionTypeId = point.DetectionTypeId
|
||||
LEFT JOIN dbo.HJGL_Pipeline pipe ON pipe.PipelineId = jot.PipelineId
|
||||
LEFT JOIN dbo.HJGL_WeldingDaily daily ON daily.WeldingDailyId = jot.WeldingDailyId
|
||||
WHERE pointItem.PointDate IS NOT NULL
|
||||
AND ndeType.DetectionTypeCode='RT' --表示RT类型
|
||||
AND (daily.WeldingDate >= @date1 OR @date1 IS NULL)
|
||||
AND (daily.WeldingDate <= @date2 OR @date2 IS NULL)
|
||||
AND (pipe.UnitWorkId =@UnitWorkId OR @UnitWorkId IS NULL)
|
||||
AND (jot.Material1Id=@steel OR @steel IS NULL)
|
||||
GROUP BY jot.CoverWelderId) AS nowtotal_Rt ON nowtotal_Rt.CoverWelderId = welder.PersonId
|
||||
-- 本期RT返口数
|
||||
LEFT JOIN (SELECT COUNT(pointItem.PointBatchItemId) AS nowtotal_repairjot --返修口数
|
||||
,jot.CoverWelderId
|
||||
FROM dbo.HJGL_Batch_PointBatchItem pointItem
|
||||
LEFT JOIN dbo.HJGL_WeldJoint jot ON jot.WeldJointId = pointItem.WeldJointId
|
||||
LEFT JOIN dbo.HJGL_Batch_PointBatch point ON point.PointBatchId = pointItem.PointBatchId
|
||||
LEFT JOIN Base_DetectionType ndeType ON ndeType.DetectionTypeId = point.DetectionTypeId
|
||||
LEFT JOIN dbo.HJGL_Pipeline pipe ON pipe.PipelineId = jot.PipelineId
|
||||
LEFT JOIN dbo.HJGL_WeldingDaily daily ON daily.WeldingDailyId = jot.WeldingDailyId
|
||||
LEFT JOIN dbo.HJGL_Batch_BatchTrustItem trustItem ON trustItem.PointBatchItemId = pointItem.PointBatchItemId
|
||||
LEFT JOIN dbo.HJGL_Batch_NDEItem ndeItem ON ndeItem.TrustBatchItemId = trustItem.TrustBatchItemId
|
||||
WHERE pointItem.PointDate IS NOT NULL
|
||||
AND ndeType.DetectionTypeCode='RT' --表示RT类型
|
||||
AND ndeItem.CheckResult='2'
|
||||
AND (daily.WeldingDate >= @date1 OR @date1 IS NULL)
|
||||
AND (daily.WeldingDate <= @date2 OR @date2 IS NULL)
|
||||
AND (pipe.UnitWorkId =@UnitWorkId OR @UnitWorkId IS NULL)
|
||||
AND (jot.Material1Id=@steel OR @steel IS NULL)
|
||||
GROUP BY jot.CoverWelderId) AS nowtotal_repairjot ON nowtotal_repairjot.CoverWelderId = welder.PersonId
|
||||
|
||||
--本期RT总片数
|
||||
LEFT JOIN (SELECT SUM(ndeItem.TotalFilm) AS nowtotalfilm
|
||||
,SUM(ndeItem.PassFilm) AS nowpassfilm
|
||||
,SUM(ndeItem.TotalFilm-ndeItem.PassFilm) AS nopassfilm,
|
||||
jot.CoverWelderId
|
||||
FROM dbo.HJGL_Batch_NDEItem ndeItem
|
||||
LEFT JOIN dbo.HJGL_Batch_BatchTrustItem trustItem ON trustItem.TrustBatchItemId = ndeItem.TrustBatchItemId
|
||||
LEFT JOIN dbo.HJGL_Batch_PointBatchItem pointItem ON pointItem.PointBatchItemId = trustItem.PointBatchItemId
|
||||
LEFT JOIN dbo.HJGL_Batch_PointBatch point ON point.PointBatchId = pointItem.PointBatchId
|
||||
LEFT JOIN Base_DetectionType ndeType ON ndeType.DetectionTypeId = point.DetectionTypeId
|
||||
LEFT JOIN dbo.HJGL_WeldJoint jot ON jot.WeldJointId = pointItem.WeldJointId
|
||||
LEFT JOIN dbo.HJGL_WeldingDaily daily ON daily.WeldingDailyId = jot.WeldingDailyId
|
||||
WHERE ndeType.DetectionTypeCode='RT'
|
||||
AND ndeItem.CheckResult IS NOT NULL --表示有检测结果
|
||||
AND jot.WeldingDailyId IS NOT NULL
|
||||
AND (point.UnitWorkId=@UnitWorkId OR @UnitWorkId IS NULL)
|
||||
AND (jot.Material1Id=@steel OR @steel IS NULL)
|
||||
AND (daily.WeldingDate >= @date1 OR @date1 IS NULL) AND (daily.WeldingDate <= @date2 OR @date2 IS NULL)
|
||||
GROUP BY jot.CoverWelderId) AS nowtotalfilm ON nowtotalfilm.CoverWelderId = welder.PersonId
|
||||
|
||||
WHERE (welder.WelderCode IS NOT NULL AND welder.WelderCode!='') AND
|
||||
(welder.ProjectId = @projectId OR @projectId IS NULL)
|
||||
AND (welder.UnitId=@unitcode OR @unitcode IS NULL)
|
||||
AND (welder.WorkPostId='19B8F2A9-28D3-4F20-867A-1B2237C2E228')
|
||||
AND (welder.PersonId=@wloName OR @wloname IS NULL)
|
||||
ORDER BY welder.WelderCode
|
||||
|
||||
GO
|
||||
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
|
||||
--ADD BY YangHongwei 2022-09-22
|
||||
1、焊工业绩存储过程修改。
|
||||
2、人员库是否在岗空时报错。
|
||||
3、合同流程审批页选择框人员加载问题。
|
||||
4、小程序订阅推送检查。
|
||||
--END
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user