126 lines
6.2 KiB
Transact-SQL
126 lines
6.2 KiB
Transact-SQL
|
|
ALTER PROC [dbo].[HJGL_sp_HeatTreatmentEstimateRecord]
|
|
@projectId NVARCHAR(50) = NULL,
|
|
@type NVARCHAR(50) = NULL
|
|
AS
|
|
/*管线综合分析*/
|
|
SELECT
|
|
isoinfo.ProjectId
|
|
,isoinfo.ISO_ID
|
|
,isoinfo.ISO_IsoNo
|
|
,ndtRate.NDTR_Name --对接焊缝检测比例
|
|
,ISNULL(total_jot.total_jot,0) AS total_jot --焊口总数量
|
|
,ISNULL(total_bw1jot.total_bw1jot,0) AS total_bw1jot --对接焊口数量
|
|
,ISNULL(total_hotjot.total_hotjot ,0) AS total_hotjot --预计热处理焊口数量
|
|
,ISNULL(total_OKhotjot.total_OKhotjot ,0) AS total_OKhotjot --热处理合格焊口数量
|
|
,ISNULL(total_Inputhotjot.total_Inputhotjot ,0) AS total_Inputhotjot --已录入热处理焊口数量
|
|
,ISNULL(total_hotjot.total_hotjot ,0)-ISNULL(total_OKhotjot.total_OKhotjot ,0) AS total_NotOKhotjot --热处理未合格焊口数量
|
|
,CEILING(ISNULL(total_bw1jot.total_bw1jot,0)*ndtRate.NDTR_Rate/100.00) AS maybe_bw1jot
|
|
--,CASE WHEN
|
|
--CAST(total_jot.total_jot AS DECIMAL(9,2))*ndtRate.NDTR_Rate/100>CAST((ISNULL(total_jot.total_jot,0)*ndtRate.NDTR_Rate/100) AS INT)
|
|
-- THEN CAST((ISNULL(total_jot.total_jot,0)*ndtRate.NDTR_Rate/100) AS INT)+1
|
|
--ELSE CAST((ISNULL(total_jot.total_jot,0)*ndtRate.NDTR_Rate/100) AS INT) END
|
|
-- AS maybe_bw1jot --预计检测接头数量比例
|
|
FROM HJGL_PW_IsoInfo AS isoinfo
|
|
--对接焊缝检测比例
|
|
LEFT JOIN HJGL_BS_WeldControl AS weldControl ON weldControl.ISC_ID=isoinfo.ISC_ID AND weldControl.ExecStandardId=isoinfo.ISO_Executive
|
|
LEFT JOIN HJGL_BS_NDTRate AS ndtRate ON ndtRate.NDTR_ID=weldControl.Joty_Rate
|
|
----焊口总数量
|
|
LEFT JOIN (SELECT COUNT(*) AS total_jot
|
|
,HJGL_PW_JointInfo.ISO_ID
|
|
FROM HJGL_PW_JointInfo
|
|
GROUP BY HJGL_PW_JointInfo.ISO_ID) AS total_jot ON total_jot.ISO_ID =isoinfo.ISO_ID
|
|
----对接焊口数量
|
|
LEFT JOIN (SELECT COUNT(*) AS total_bw1jot
|
|
,jointinfo.ISO_ID
|
|
FROM HJGL_PW_JointInfo AS jointinfo
|
|
WHERE jointinfo.JOTY_ID='1e2704c8-b088-4389-9adf-9d89ceffe85b'
|
|
GROUP BY jointinfo.ISO_ID) AS total_bw1jot ON total_bw1jot.ISO_ID =isoinfo.ISO_ID
|
|
--预计热处理焊口数量
|
|
LEFT JOIN (SELECT COUNT(*) AS total_hotjot
|
|
,jointinfo.ISO_ID
|
|
FROM HJGL_PW_JointInfo AS jointinfo
|
|
WHERE jointinfo.IS_Proess='1' and jointinfo.ProessTypes like '%'+@type+'%'
|
|
GROUP BY jointinfo.ISO_ID) AS total_hotjot ON total_hotjot.ISO_ID =isoinfo.ISO_ID
|
|
--热处理合格焊口数量
|
|
LEFT JOIN (SELECT COUNT(*) AS total_OKhotjot
|
|
,jointinfo.ISO_ID
|
|
FROM HJGL_PW_JointInfo AS jointinfo
|
|
WHERE jointinfo.IS_Proess='1' and jointinfo.ProessTypes like '%'+@type+'%'
|
|
and ((select count(*) from HJGL_CH_HotProessResult r where r.JOT_ID=jointinfo.JOT_ID and r.ProessTypes=@type and r.IsOK=1)>0 or (select count(*) from HJGL_CH_HardTestResult r where r.JOT_ID=jointinfo.JOT_ID and r.IsOK=1)>0)
|
|
GROUP BY jointinfo.ISO_ID) AS total_OKhotjot ON total_OKhotjot.ISO_ID =isoinfo.ISO_ID
|
|
--已录入热处理焊口数量
|
|
LEFT JOIN (SELECT COUNT(*) AS total_Inputhotjot
|
|
,jointinfo.ISO_ID
|
|
FROM HJGL_PW_JointInfo AS jointinfo
|
|
WHERE jointinfo.IS_Proess='1' and jointinfo.ProessTypes like '%'+@type+'%'
|
|
and (select count(*) from HJGL_HotProessItem r where r.JOT_ID=jointinfo.JOT_ID and r.ProessTypes=@type and r.RecordChartNo is not null and r.RecordChartNo!='')>0
|
|
GROUP BY jointinfo.ISO_ID) AS total_Inputhotjot ON total_Inputhotjot.ISO_ID =isoinfo.ISO_ID
|
|
WHERE (isoinfo.ProjectId = @projectId OR @projectId IS NULL)
|
|
ORDER BY isoinfo.ISO_IsoNo
|
|
|
|
|
|
|
|
|
|
GO
|
|
|
|
|
|
|
|
ALTER VIEW [dbo].[HJGL_View_CH_HotProessResult]
|
|
/*热处理结果反馈查询视图*/
|
|
AS
|
|
SELECT
|
|
IsoInfo.ProjectId
|
|
,hti.HotProessTrustItemId
|
|
,Project.ProjectCode
|
|
,IsoInfo.BSU_ID
|
|
,IsoInfo.ISO_IsoNo
|
|
,IsoInfo.ISO_ID
|
|
,JointInfo.JOT_ID
|
|
, (CASE WHEN Steel.STE_Code IS NOT NULL AND Steel2.STE_Code IS NOT NULL AND Steel.STE_Code!=Steel2.STE_Code
|
|
THEN Steel.STE_Code + '/' + Steel2.STE_Code
|
|
WHEN Steel.STE_Code IS NOT NULL THEN Steel.STE_Code
|
|
ELSE ISNULL(Steel2.STE_Code,'') END) AS STE_Code
|
|
,JointInfo.JOT_Dia
|
|
,JointInfo.JOT_Sch
|
|
,JointInfo.JOT_JointNo+
|
|
ISNULL((SELECT TOP 1 RepairMark FROM dbo.HJGL_CH_HotProessTrustItem TrustItem
|
|
LEFT JOIN dbo.HJGL_CH_RepairItemRecord AS record ON record.RepairItemRecordId=TrustItem.TrustItemID
|
|
WHERE TrustItem.JOT_ID=hti.JOT_ID AND TrustItem.HotProessTrustId=hti.HotProessTrustId),'')+
|
|
ISNULL(hti.HardRepairMark,'') AS JOT_JointNo
|
|
,(SELECT TOP 1 trustItem.TrustDate FROM dbo.HJGL_CH_HotProessTrustItem trustItem
|
|
WHERE trustItem.JOT_ID=hti.JOT_ID AND trustItem.HotProessTrustId=hti.HotProessTrustId) AS TrustDate
|
|
,HotProessResult.HotProessResultId
|
|
,hti.HotProessTrustId
|
|
,hti.ProessTypes
|
|
,HotProessResult.IsNeedHardTest
|
|
,HotProessResult.Remark
|
|
,(SELECT TOP 1 RecordChartNo FROM dbo.HJGL_HotProessItem HotProessItem WHERE HotProessItem.HotProessTrustId=hti.HotProessTrustId
|
|
AND HotProessItem.JOT_ID=hti.JOT_ID AND HotProessItem.ProessTypes=hti.ProessTypes and RecordChartNo is not null and RecordChartNo!='') AS RecordChartNo
|
|
,(SELECT TOP 1 Remark FROM dbo.HJGL_HotProessItem HotProessItem WHERE HotProessItem.HotProessTrustId=hti.HotProessTrustId
|
|
AND HotProessItem.JOT_ID=hti.JOT_ID AND HotProessItem.ProessTypes=hti.ProessTypes) AS HotProessItemRemark
|
|
,HotProessResult.IsOK
|
|
,(SELECT TOP 1 report.TestDate FROM dbo.HJGL_CH_HardTestReport report
|
|
LEFT JOIN dbo.HJGL_CH_HardTestReportItem item ON item.HardTestReportId = report.HardTestReportId
|
|
WHERE item.JOT_ID=hti.JOT_ID AND item.HotProessTrustId=hti.HotProessTrustId AND hti.ProessTypes='4') AS HardTestDate
|
|
FROM HJGL_CH_HotProessTrustItem hti
|
|
LEFT JOIN dbo.HJGL_CH_HotProessResult AS HotProessResult ON HotProessResult.HotProessTrustId=hti.HotProessTrustId and HotProessResult.JOT_ID=hti.JOT_ID and HotProessResult.ProessTypes=hti.ProessTypes
|
|
LEFT JOIN dbo.HJGL_PW_JointInfo AS JointInfo ON JointInfo.JOT_ID = hti.JOT_ID
|
|
LEFT JOIN dbo.HJGL_PW_IsoInfo AS IsoInfo ON JointInfo.ISO_ID = IsoInfo.ISO_ID
|
|
LEFT JOIN dbo.Base_Project AS Project ON JointInfo.ProjectId=Project.ProjectId
|
|
LEFT JOIN dbo.HJGL_BS_Steel AS Steel ON JointInfo.STE_ID = Steel.STE_ID
|
|
LEFT JOIN dbo.HJGL_BS_Steel AS Steel2 ON JointInfo.STE_ID2 = Steel2.STE_ID
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GO
|
|
|
|
|
|
update Sys_Menu set MenuName='硬度委托单' where MenuName='硬度检测记录'
|
|
GO
|
|
|
|
update Sys_Menu set MenuName='硬度委托单' where MenuId='72B3E508-1315-4CC3-6666-E840FA701A0E'
|
|
GO |