Files
xinjiang/DataBase/版本日志/SGGLDB_V2024-07-31-001.sql
T
2024-11-19 09:45:27 +08:00

147 lines
6.2 KiB
Transact-SQL

INSERT INTO Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
VALUES('D6571D44-78F9-4D33-A5CC-53138BBC0B98','现场点口/委托检测任务单','HJGL/WeldingReport/PointTrustCheckTaskList.aspx',200,'F3B157B7-9BEE-4150-80CB-087828F1C51D','Menu_HJGL',0,1,1)
GO
INSERT INTO Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
VALUES('1EB0AC15-252A-4464-89DC-51CD7F302A48','返修统计台账','HJGL/WeldingReport/RepairStatistics.aspx',210,'F3B157B7-9BEE-4150-80CB-087828F1C51D','Menu_HJGL',0,1,1)
GO
CREATE VIEW View_PipeWeldingCheckTotalTrust
AS
/************管道焊口检测总委托单*****************/
SELECT isoInfo.ISO_ID,
isoInfo.ProjectId,
isoInfo.WorkAreaId,
isoInfo.ISO_IsoNo,
isoInfo.ISO_IsoNumber,
workArea.WorkAreaCode,
isoInfo.ISO_Specification,
isoInfo.MaterialId,
material.MaterialCode,
isoInfo.PipingClassId,
pipingClass.PipingClassName,
isoInfo.DetectionRateId,
detectionRate.DetectionRateValue,
ISNULL(joint_gd.jointCount_gd,0) AS jointCount_gd,
ISNULL(joint_hd.jointCount_hd,0) AS jointCount_hd,
detectionType.DetectionTypeCode,
isoInfo.ISO_NDTClass,
isoInfo.ISO_Remark
FROM PW_IsoInfo AS isoInfo
LEFT JOIN ProjectData_WorkArea AS workArea ON workArea.WorkAreaId = isoInfo.WorkAreaId
LEFT JOIN Base_Material AS material ON material.MaterialId = isoInfo.MaterialId
LEFT JOIN Base_PipingClass AS pipingClass ON pipingClass.PipingClassId = isoInfo.PipingClassId
LEFT JOIN Base_DetectionRate AS detectionRate ON detectionRate.DetectionRateId = isoInfo.DetectionRateId
LEFT JOIN Base_DetectionType AS detectionType ON detectionType.DetectionTypeId = isoInfo.DetectionTypeId
LEFT JOIN (SELECT COUNT(*) AS jointCount_gd,ISO_ID FROM PW_JointInfo
WHERE PW_JointInfo.JOT_JointAttribute='固定'
GROUP BY ISO_ID) AS joint_gd ON joint_gd.ISO_ID = isoInfo.ISO_ID
LEFT JOIN (SELECT COUNT(*) AS jointCount_hd,ISO_ID FROM PW_JointInfo
WHERE PW_JointInfo.JOT_JointAttribute='活动'
GROUP BY ISO_ID) AS joint_hd ON joint_hd.ISO_ID = isoInfo.ISO_ID
GO
CREATE PROCEDURE [dbo].[sp_rpt_PointTrustCheckTaskList]
@projectId nvarchar(50)=NULL,
@unitId nvarchar(50)=NULL,
@workAreaId nvarchar(50)=NULL
AS
/*******现场点口/委托检测任务单*********/
SELECT jointInfo.JOT_ID,
jointInfo.ProjectId,
jointInfo.ISO_ID,
isoInfo.UnitId,
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,
trustItem.CH_TrustCode,
trustItem.CH_TrustDate,
trustItem.DetectionTypeCode,
NULL AS ConUnitNoPoint, --施工单位未点口
NULL AS Scaffold,--脚手架
NULL AS UnweldedOnTrust,--未焊接已委托
jointInfo.JOT_Remark,
(CASE WHEN jointInfo.PW_PointID IS NULL THEN 1 ELSE NULL END) AS PointCount--现场实际点口数(道)
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 BS_Welder AS cellWelder ON cellWelder.WED_ID = jointInfo.JOT_CellWelder
LEFT JOIN BS_Welder AS floorWelder ON floorWelder.WED_ID = jointInfo.JOT_FloorWelder
LEFT JOIN (SELECT DISTINCT CH_TrustCode,CH_TrustDate,DetectionTypeCode,JOT_ID FROM CH_TrustItem
LEFT JOIN CH_Trust ON CH_Trust.CH_TrustID = CH_TrustItem.CH_TrustID
LEFT JOIN Base_DetectionType ON Base_DetectionType.DetectionTypeId = CH_Trust.CH_NDTMethod
WHERE CH_Trust.CH_TrustType='1') AS trustItem ON trustItem.JOT_ID = jointInfo.JOT_ID
--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
WHERE (jointInfo.ProjectId=@projectId OR @projectId IS NULL)
AND (isoInfo.UnitId=@unitId OR @unitId IS NULL)
AND (isoInfo.WorkAreaId=@workAreaId OR @workAreaId IS NULL)
GO
CREATE PROCEDURE [dbo].[sp_rpt_RepairStatistics]
@projectId nvarchar(50)=NULL,
@unitId nvarchar(50)=NULL,
@workAreaId nvarchar(50)=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,
NULL 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,JOT_ID FROM CH_CheckItem
LEFT JOIN CH_Check ON CH_Check.CHT_CheckID = CH_CheckItem.CHT_CheckID
WHERE CH_Check.RepairTrustId IS NULL) AS RepairCheck ON RepairCheck.JOT_ID = jointInfo.JOT_ID
WHERE trust.CH_TrustType='2'
AND (jointInfo.ProjectId=@projectId OR @projectId IS NULL)
AND (isoInfo.UnitId=@unitId OR @unitId IS NULL)
AND (isoInfo.WorkAreaId=@workAreaId OR @workAreaId IS NULL)
GO