xinjiang/DataBase/版本日志/SGGLDB_V2024-09-10-001_bwj.sql

122 lines
4.7 KiB
Transact-SQL

ALTER PROCEDURE [dbo].[sp_rpt_RepairStatistics]
@projectId nvarchar(50)=NULL,
@unitId nvarchar(50)=NULL,
@workAreaId nvarchar(50)=NULL,
@ndtMethod nvarchar(50)=NULL,
@startDate datetime=null,
@endDate datetime = null
AS
/*******返修统计台账*********/
SELECT jointInfo.JOT_ID,
jointInfo.ProjectId,
jointInfo.ISO_ID,
isoInfo.UnitId,
unit.UnitName,
isoInfo.WorkAreaId,
workArea.WorkAreaCode,
isoInfo.ISO_IsoNo,
jointInfo.JOT_JointNo,
jointInfo.JOT_JointDesc,
trust.CH_TrustCode,
detectionType.DetectionTypeCode,
RepairCheck.CHT_RepairLocation AS RepairPartNum,--返修片位号
repairFilm.RepairFilm,--返修片数
trust.CH_TrustDate AS RepairTrustDate,--返修日期
RepairCheck.CHT_CheckDate,--第一次检测日期
checks.CHT_CheckDate AS RepairCheckDate,--返修检测日期
checkUnit.UnitName AS CheckUnitName,--检测单位
NULL AS ConUnitNoPoint, --施工单位未点口
NULL AS Scaffold,--脚手架
NULL AS RepairWeldsNum,--返修焊口数(道)
jointInfo.JOT_Remark
FROM PW_JointInfo AS jointInfo
LEFT JOIN PW_IsoInfo AS isoInfo ON isoInfo.ISO_ID = jointInfo.ISO_ID
LEFT JOIN Base_Unit AS unit ON unit.UnitId = isoInfo.UnitId
LEFT JOIN ProjectData_WorkArea AS workArea ON workArea.WorkAreaId = isoInfo.WorkAreaId
LEFT JOIN CH_TrustItem AS trustItem ON trustItem.JOT_ID = jointInfo.JOT_ID
LEFT JOIN CH_Trust AS trust ON trust.CH_TrustID = trustItem.CH_TrustID
LEFT JOIN Base_DetectionType AS detectionType ON detectionType.DetectionTypeId = trust.CH_NDTMethod
LEFT JOIN CH_CheckItem AS checkItem ON checkItem.CH_TrustItemID =trustItem.CH_TrustItemID
LEFT JOIN CH_Check AS checks ON checks.CHT_CheckID = checkItem.CHT_CheckID
LEFT JOIN Base_Unit AS checkUnit ON checkUnit.UnitId = checks.ContractualUnits
LEFT JOIN (SELECT SUM(CHT_TotalFilm) AS RepairFilm,JOT_ID FROM CH_CheckItem
WHERE CH_CheckItem.CHT_CheckResult='不合格'
GROUP BY JOT_ID) AS repairFilm ON repairFilm.JOT_ID = jointInfo.JOT_ID
LEFT JOIN (SELECT CH_Check.CHT_CheckDate,CH_CheckItem.CHT_RepairLocation,JOT_ID FROM CH_CheckItem
LEFT JOIN CH_Check ON CH_Check.CHT_CheckID = CH_CheckItem.CHT_CheckID
WHERE CH_CheckItem.CHT_CheckResult='不合格') AS RepairCheck ON RepairCheck.JOT_ID = jointInfo.JOT_ID
WHERE trust.CH_TrustType='2'
and trustItem.CH_TrustItemID not in (select CH_TrustItemID from CH_CheckItem)
AND (jointInfo.ProjectId=@projectId OR @projectId IS NULL)
AND (isoInfo.UnitId=@unitId OR @unitId IS NULL)
AND (isoInfo.WorkAreaId=@workAreaId OR @workAreaId IS NULL)
AND (trust.CH_NDTMethod=@ndtMethod OR @ndtMethod IS NULL)
AND (trust.CH_TrustDate>=@startDate OR @startDate IS NULL)
AND (trust.CH_TrustDate<=@endDate OR @endDate IS NULL)
GO
ALTER PROCEDURE [dbo].[sp_rpt_PointTrustCheckTaskList]
@projectId nvarchar(50)=NULL,
@unitId nvarchar(50)=NULL,
@workAreaId nvarchar(50)=NULL,
@ndtMethod nvarchar(50)=NULL,
@startDate datetime=null,
@endDate datetime = null
AS
/*******现场点口/委托检测任务单*********/
SELECT trustItem.CH_TrustItemID,
trustItem.CH_TrustID,
trust.ProjectId,
trust.CH_TrustUnit,
unit.UnitName,
isoInfo.WorkAreaId,
workArea.WorkAreaCode,
workArea.WorkAreaName,
isoInfo.ISO_IsoNo,
jointInfo.JOT_JointNo,
jointInfo.JOT_JointDesc,
(CASE WHEN cellWelder.WED_Code IS NOT NULL
THEN (CASE WHEN floorWelder.WED_Code IS NOT NULL AND cellWelder.WED_Code!=floorWelder.WED_Code
THEN cellWelder.WED_Code+'/'+floorWelder.WED_Code
ELSE cellWelder.WED_Code END)
ELSE floorWelder.WED_Code END) AS WelderCode,
trust.CH_TrustCode,
trust.CH_TrustDate,
trust.CH_NDTMethod,
detectionType.DetectionTypeCode,
NULL AS ConUnitNoPoint, --施工单位未点口
NULL AS Scaffold,--脚手架
NULL AS UnweldedOnTrust,--未焊接已委托
jointInfo.JOT_Remark,
NULL AS PointCount--现场实际点口数(道)
FROM CH_TrustItem AS trustItem
LEFT JOIN CH_Trust AS trust ON trust.CH_TrustID = trustItem.CH_TrustID
LEFT JOIN Base_Unit AS unit ON unit.UnitId = trust.CH_TrustUnit
LEFT JOIN Base_DetectionType AS detectionType ON detectionType.DetectionTypeId = trust.CH_NDTMethod
LEFT JOIN PW_JointInfo AS jointInfo ON jointInfo.JOT_ID = trustItem.JOT_ID
LEFT JOIN PW_IsoInfo AS isoInfo ON isoInfo.ISO_ID = jointInfo.ISO_ID
LEFT JOIN ProjectData_WorkArea AS workArea ON workArea.WorkAreaId = isoInfo.WorkAreaId
LEFT JOIN BS_Welder AS cellWelder ON cellWelder.WED_ID = jointInfo.JOT_CellWelder
LEFT JOIN BS_Welder AS floorWelder ON floorWelder.WED_ID = jointInfo.JOT_FloorWelder
WHERE trust.CH_TrustType='1' and (jointInfo.JOT_CheckFlag='00' or jointInfo.JOT_CheckFlag is null)
AND (jointInfo.ProjectId=@projectId OR @projectId IS NULL)
AND (isoInfo.UnitId=@unitId OR @unitId IS NULL)
AND (isoInfo.WorkAreaId=@workAreaId OR @workAreaId IS NULL)
AND (trust.CH_NDTMethod=@ndtMethod OR @ndtMethod IS NULL)
AND (trust.CH_TrustDate>=@startDate OR @startDate IS NULL)
AND (trust.CH_TrustDate<=@endDate OR @endDate IS NULL)
GO