HJGL_DS/DataBase/版本日志/HJGLDB_DS_2025-03-21_bwj.sql

75 lines
4.3 KiB
Transact-SQL

ALTER PROCEDURE [dbo].[HJGL_sp_WeldInspectionCheckRecord]
(
@ProjectId NVARCHAR(50)=null,
@ISO_ID VARCHAR(1000)=NULL,
@VICheckDate DATETIME=NULL,
@NDTR_ID VARCHAR(50)=NULL,
@JOTY_Group NCHAR(1)=NULL,
@WeldingDate datetime =null
)
AS
--밗돛뚤쌈보쌈쌈庫괩쇱/쇱꿴션쩌
SELECT ROW_NUMBER() OVER(ORDER BY IsoInfo.ISO_IsoNo,joint.JOT_JointNo)%18 AS Num,NEWID() as New_ID,
Project.ProjectId,Project.ProjectCode,Project.ProjectName,batchDetail.JOT_ID,
joint.JOT_JointNo,joint.JOT_JointDesc,joint.ISO_ID,batch.NDTR_ID,
IsoInfo.ISO_IsoNo,batchDetail.VICheckDate,
(CASE WHEN joint.JOT_CellWelder!=joint.JOT_FloorWelder THEN FloorWelder.WED_Code+'/'+CellWelder.WED_Code ELSE FloorWelder.WED_Code END) AS WED_Code, --보묏뵀
(CASE WHEN joint.JOT_CellWelder!=joint.JOT_FloorWelder THEN FloorWelder.WED_Name+'/'+CellWelder.WED_Name ELSE FloorWelder.WED_Name END) AS WED_Name, --보묏檎츰
(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, --꼼醴
(CASE batchDetail.IsVI WHEN 1 THEN '' ELSE NULL END) AS PassVI,
(CASE batchDetail.IsVI WHEN 0 THEN '' ELSE NULL END) AS NoPassVI,
(CASE WHEN v.CH_TrustItemID IS NOT NULL THEN '' ELSE NULL END) AS IsTrust,
(CASE v.States WHEN '2' THEN '' ELSE NULL END ) AS TrustState,
(SELECT TOP 1 ReportCode FROM dbo.HJGL_CH_TestingReportPrint report
WHERE report.BatchId=batchDetail.BatchId
AND report.ISO_ID=batchDetail.ISO_ID AND report.NDT_ID=v.NDT_ID
AND report.Specifications=joint.JOT_JointDesc) AS ReportCode,
joint.JOT_Location --보쌈貫零
,WeldMethod.WME_Name --보쌈렘랬
,CASE WHEN WeldMat.WMT_MatCode IS NULL THEN ISNULL(WeldSilk.WMT_MatCode,'')
ELSE (CASE WHEN WeldSilk.WMT_MatCode IS NULL
THEN ISNULL(WeldMat.WMT_MatCode,'')
ELSE (ISNULL(WeldSilk.WMT_MatCode,'') +'/'+ ISNULL(WeldMat.WMT_MatCode,'')) END) END AS WMT_MatName --보꼼탬뵀
,joint.JOT_PrepareTemp --渡훑侊똑
,batchDetail.Remark
,jointType.JOTY_Group,joint.Sort1,joint.Sort2,joint.Sort3,joint.Sort4,joint.Sort5
,weldReport.JOT_WeldDate
FROM dbo.HJGL_BO_BatchDetail batchDetail
LEFT JOIN dbo.HJGL_BO_Batch batch ON batch.BatchId=batchDetail.BatchId
LEFT JOIN dbo.HJGL_PW_JointInfo joint ON joint.JOT_ID=batchDetail.JOT_ID
LEFT JOIN dbo.Base_Project AS Project ON Project.ProjectId = joint.ProjectId
LEFT JOIN dbo.HJGL_PW_IsoInfo AS IsoInfo ON IsoInfo.ISO_ID = joint.ISO_ID
LEFT JOIN dbo.HJGL_BS_Welder AS CellWelder ON CellWelder.WED_ID=joint.JOT_CellWelder
LEFT JOIN dbo.HJGL_BS_Welder AS FloorWelder ON FloorWelder.WED_ID=joint.JOT_FloorWelder
LEFT JOIN dbo.HJGL_BS_Steel AS Steel ON Steel.STE_ID = joint.STE_ID
LEFT JOIN dbo.HJGL_BS_Steel AS Steel2 ON Steel2.STE_ID=joint.STE_ID2
LEFT JOIN dbo.HJGL_BS_JointType jointType ON jointType.JOTY_ID = joint.JOTY_ID
LEFT JOIN (SELECT top 1 trustItem.CH_TrustItemID,trust.CH_NDTMethod AS NDT_ID, trustItem.JOT_ID, trustItem.States
FROM dbo.HJGL_CH_TrustItem trustItem
LEFT JOIN dbo.HJGL_CH_Trust trust ON trust.CH_TrustID = trustItem.CH_TrustID
LEFT JOIN dbo.HJGL_BS_NDTType ndtType on ndtType.NDT_ID=trust.CH_NDTMethod
WHERE ndtType.NDT_Code LIKE '%RT%') v ON v.JOT_ID=batchDetail.JOT_ID
LEFT JOIN dbo.HJGL_BS_WeldMethod AS WeldMethod ON WeldMethod.WME_ID=joint.WME_ID
LEFT JOIN HJGL_BS_WeldMaterial AS WeldSilk ON WeldSilk.WMT_ID=joint.JOT_WeldSilk
LEFT JOIN HJGL_BS_WeldMaterial AS WeldMat ON WeldMat.WMT_ID=joint.JOT_WeldMat
left join HJGL_BO_WeldReportMain as weldReport on weldReport.DReportID = joint.DReportID
WHERE (jointType.JOTY_Group=@JOTY_Group OR @JOTY_Group IS NULL) AND
(joint.ProjectId=@projectId OR @projectId IS NULL) AND
--(joint.ISO_ID in(select Id from dbo.StrToTable(@ISO_ID)) OR @ISO_ID IS NULL)
(joint.ISO_ID=@ISO_ID or @ISO_ID is null)
AND (batchDetail.VICheckDate=@VICheckDate OR @VICheckDate IS NULL)
AND (batch.NDTR_ID=@NDTR_ID OR @NDTR_ID IS NULL)
AND batchDetail.VICheckDate IS NOT NULL
and(weldReport.JOT_WeldDate=@WeldingDate or @WeldingDate is null)
order by joint.Sort1,joint.Sort2,joint.Sort3,joint.Sort4,joint.Sort5
GO