HJGL_DS/DataBase/版本日志/HJGLDB_DS_2026-04-18_bwj.sql

89 lines
4.7 KiB
MySQL
Raw Normal View History

2026-04-18 16:48:37 +08:00
alter table HJGL_HotProessItem add PostHeatingDate datetime
go
ALTER PROC [dbo].[HJGL_sp_HeatTreatmentEstimateRecord]
@projectId NVARCHAR(50) = NULL,
@type NVARCHAR(50) = NULL
AS
/*<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۺϷ<EFBFBD><EFBFBD><EFBFBD>*/
SELECT
isoinfo.ProjectId
,isoinfo.ISO_ID
,isoinfo.ISO_IsoNo
,ndtRate.NDTR_Name --<EFBFBD>ԽӺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,ISNULL(total_jot.total_jot,0) AS total_jot --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,ISNULL(total_bw1jot.total_bw1jot,0) AS total_bw1jot --<EFBFBD>ԽӺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,ISNULL(total_hotjot.total_hotjot ,0) AS total_hotjot --Ԥ<EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,ISNULL(total_OKhotjot.total_OKhotjot ,0) AS total_OKhotjot --<EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ񺸿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,ISNULL(total_Trusthotjot.total_Trusthotjot ,0) AS total_Trusthotjot --<EFBFBD><EFBFBD>ί<EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,ISNULL(total_Inputhotjot.total_Inputhotjot ,0) AS total_Inputhotjot --<EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,ISNULL(total_hotjot.total_hotjot ,0)-ISNULL(total_OKhotjot.total_OKhotjot ,0) AS total_NotOKhotjot --<EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD>ϸ񺸿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,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 --Ԥ<>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,ISNULL(postHeating_jot.postHeating_jot,0) AS postHeating_jot --<EFBFBD><EFBFBD><EFBFBD>Ⱥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
FROM HJGL_PW_IsoInfo AS isoinfo
--<EFBFBD>ԽӺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
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
----<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
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
----<EFBFBD>ԽӺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
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
--Ԥ<EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
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
--<EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ񺸿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
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
--<EFBFBD><EFBFBD>ί<EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
LEFT JOIN (SELECT COUNT(*) AS total_Trusthotjot
,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_HotProessTrustItem r where r.JOT_ID=jointinfo.JOT_ID and r.ProessTypes=@type)>0
GROUP BY jointinfo.ISO_ID) AS total_Trusthotjot ON total_Trusthotjot.ISO_ID =isoinfo.ISO_ID
--<EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
--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
LEFT JOIN (SELECT COUNT(*) AS total_Inputhotjot
,jointinfo.ISO_ID
FROM HJGL_HotProessItem AS r
left join HJGL_PW_JointInfo jointinfo on jointinfo.JOT_ID = r.JOT_ID
WHERE r.ProessTypes=@type --and r.RecordChartNo is not null and r.RecordChartNo!=''
GROUP BY jointinfo.ISO_ID) AS total_Inputhotjot ON total_Inputhotjot.ISO_ID =isoinfo.ISO_ID
LEFT JOIN (SELECT COUNT(*) AS postHeating_jot
,jointinfo.ISO_ID
FROM HJGL_HotProessItem AS r
left join HJGL_PW_JointInfo jointinfo on jointinfo.JOT_ID = r.JOT_ID
WHERE r.ProessTypes=@type and r.PostHeatingDate is not null
GROUP BY jointinfo.ISO_ID) AS postHeating_jot ON postHeating_jot.ISO_ID =isoinfo.ISO_ID
WHERE (isoinfo.ProjectId = @projectId OR @projectId IS NULL)
ORDER BY isoinfo.ISO_IsoNo
GO