200 lines
11 KiB
Transact-SQL
200 lines
11 KiB
Transact-SQL
INSERT INTO dbo.Sys_Menu(MenuId, MenuName, Url, SortIndex, SuperMenu,MenuModule)
|
|
VALUES('93BBEACB-90BE-45B2-BA38-3250EA52A40E','检验批查询','HJGL/WeldingManage/PointManageMove.aspx',15,'4F07D4BF-5971-4D3C-6666-B2ACA8CD82FF','3')
|
|
GO
|
|
INSERT INTO dbo.Sys_Menu(MenuId, MenuName, Url, SortIndex, SuperMenu,MenuModule)
|
|
VALUES('CDBAD816-2591-4FDC-BFA2-3D076F47E17B','统计样表','HJGL/WeldingReport/StatisticsSampleTable.aspx',170,'F3B157B7-9BEE-4150-6666-087828F1C51D','3')
|
|
GO
|
|
|
|
CREATE PROCEDURE [dbo].[spRT_CheckResult]
|
|
(
|
|
@BatchId NVARCHAR(50)
|
|
)
|
|
AS
|
|
--射线检测结果确认表
|
|
SELECT v1.JotNum AS JotNum,v1.FilmNum, --一次检测合格焊口数和合格片子数
|
|
v2.JotNum AS NoJotNum,v2.FilmNum AS NoFilmNum, --一次检测不合格焊口数和不合格片子数
|
|
v3.JotNum AS ExpJotNum,v3.FilmNum AS ExpFilmNum, --扩透合格焊口数和合格片子数
|
|
v4.JotNum AS ExpNoJotNum,v4.FilmNum AS ExpNoFilmNum, --扩透不合格焊口数和不合格片子数
|
|
(ISNULL(v1.JotNum,0)+ISNULL(v3.JotNum,0)) AS RealJotNum, --实际
|
|
(ISNULL(v1.FilmNum,0)+ISNULL(v3.FilmNum,0)) AS RealFilmNum,
|
|
iso.ISO_IsoNo,m.STE_Code,
|
|
(SELECT TOP 1 j.JOT_JointDesc FROM dbo.HJGL_PW_JointInfo j WHERE j.ISO_ID=iso.ISO_ID) AS IsoDesc, --规格
|
|
(SELECT TOP 1 Joty_Level FROM dbo.HJGL_BS_WeldControl c1
|
|
WHERE c1.ExecStandardId=iso.ISO_Executive AND c1.ISC_ID=iso.ISC_ID) AS JotyLevel, --合格等级
|
|
(SELECT TOP 1 rate.NDTR_Name FROM dbo.HJGL_BS_WeldControl c2
|
|
LEFT JOIN dbo.HJGL_BS_NDTRate rate ON rate.NDTR_ID = c2.Joty_Rate
|
|
WHERE c2.ExecStandardId=iso.ISO_Executive AND c2.ISC_ID=iso.ISC_ID) AS NDTR_Name --探伤比例
|
|
FROM
|
|
|
|
(SELECT COUNT(trustItem.JOT_ID) AS JotNum ,SUM(c.FilmNum) AS FilmNum,batch.BatchId,iso.ISO_ID
|
|
from dbo.HJGL_CH_TrustItem trustItem
|
|
LEFT JOIN dbo.HJGL_CH_Trust trust ON trust.CH_TrustID = trustItem.CH_TrustID
|
|
LEFT JOIN dbo.HJGL_PW_JointInfo jot ON jot.JOT_ID=trustItem.JOT_ID
|
|
LEFT JOIN dbo.HJGL_PW_IsoInfo iso ON iso.ISO_ID=jot.ISO_ID
|
|
LEFT JOIN dbo.HJGL_BO_BatchDetail batchDetail ON batchDetail.BatchDetailId = trustItem.BatchDetailId
|
|
LEFT JOIN dbo.HJGL_BO_Batch batch ON batch.BatchId = batchDetail.BatchId
|
|
LEFT JOIN dbo.HJGL_BS_NDTType ndt ON ndt.NDT_ID=trust.CH_NDTMethod
|
|
LEFT JOIN (SELECT JOT_ID, COUNT(*) AS FilmNum FROM dbo.HJGL_BO_QualityRating GROUP BY JOT_ID)
|
|
c ON c.JOT_ID=trustItem.JOT_ID
|
|
WHERE batchDetail.PointType='1' and ndt.NDT_Code LIKE '%RT%'
|
|
GROUP BY batch.BatchId, iso.ISO_ID) v1
|
|
|
|
LEFT JOIN
|
|
|
|
(SELECT COUNT(trustItem.JOT_ID) AS JotNum ,SUM(c.FilmNum) AS FilmNum,batch.BatchId,iso.ISO_ID
|
|
from dbo.HJGL_CH_TrustItem trustItem
|
|
LEFT JOIN dbo.HJGL_CH_Trust trust ON trust.CH_TrustID = trustItem.CH_TrustID
|
|
LEFT JOIN dbo.HJGL_PW_JointInfo jot ON jot.JOT_ID=trustItem.JOT_ID
|
|
LEFT JOIN dbo.HJGL_PW_IsoInfo iso ON iso.ISO_ID=jot.ISO_ID
|
|
LEFT JOIN dbo.HJGL_BO_BatchDetail batchDetail ON batchDetail.BatchDetailId = trustItem.BatchDetailId
|
|
LEFT JOIN dbo.HJGL_BO_Batch batch ON batch.BatchId = batchDetail.BatchId
|
|
LEFT JOIN dbo.HJGL_BS_NDTType ndt ON ndt.NDT_ID=trust.CH_NDTMethod
|
|
LEFT JOIN (SELECT JOT_ID, COUNT(*) AS FilmNum FROM dbo.HJGL_BO_QualityRating WHERE IsPass='不合格' GROUP BY JOT_ID)
|
|
c ON c.JOT_ID=trustItem.JOT_ID
|
|
WHERE batchDetail.PointType='1' and ndt.NDT_Code LIKE '%RT%' AND trustItem.ReportNoticeDate IS NOT null
|
|
GROUP BY batch.BatchId, iso.ISO_ID) v2 ON v1.ISO_ID=v2.ISO_ID AND v1.BatchId=v2.BatchId
|
|
|
|
LEFT JOIN
|
|
|
|
(SELECT COUNT(trustItem.JOT_ID) AS JotNum ,SUM(c.FilmNum) AS FilmNum,batch.BatchId,iso.ISO_ID
|
|
from dbo.HJGL_CH_TrustItem trustItem
|
|
LEFT JOIN dbo.HJGL_CH_Trust trust ON trust.CH_TrustID = trustItem.CH_TrustID
|
|
LEFT JOIN dbo.HJGL_PW_JointInfo jot ON jot.JOT_ID=trustItem.JOT_ID
|
|
LEFT JOIN dbo.HJGL_PW_IsoInfo iso ON iso.ISO_ID=jot.ISO_ID
|
|
LEFT JOIN dbo.HJGL_BO_BatchDetail batchDetail ON batchDetail.BatchDetailId = trustItem.BatchDetailId
|
|
LEFT JOIN dbo.HJGL_BO_Batch batch ON batch.BatchId = batchDetail.BatchId
|
|
LEFT JOIN dbo.HJGL_BS_NDTType ndt ON ndt.NDT_ID=trust.CH_NDTMethod
|
|
LEFT JOIN (SELECT JOT_ID, COUNT(*) AS FilmNum FROM dbo.HJGL_BO_QualityRating GROUP BY JOT_ID)
|
|
c ON c.JOT_ID=trustItem.JOT_ID
|
|
WHERE batchDetail.PointType='2' and ndt.NDT_Code LIKE '%RT%'
|
|
GROUP BY batch.BatchId, iso.ISO_ID) v3 ON v1.ISO_ID=v3.ISO_ID AND v1.BatchId=v3.BatchId
|
|
|
|
LEFT JOIN
|
|
|
|
(SELECT COUNT(trustItem.JOT_ID) AS JotNum ,SUM(c.FilmNum) AS FilmNum,batch.BatchId,iso.ISO_ID
|
|
from dbo.HJGL_CH_TrustItem trustItem
|
|
LEFT JOIN dbo.HJGL_CH_Trust trust ON trust.CH_TrustID = trustItem.CH_TrustID
|
|
LEFT JOIN dbo.HJGL_PW_JointInfo jot ON jot.JOT_ID=trustItem.JOT_ID
|
|
LEFT JOIN dbo.HJGL_PW_IsoInfo iso ON iso.ISO_ID=jot.ISO_ID
|
|
LEFT JOIN dbo.HJGL_BO_BatchDetail batchDetail ON batchDetail.BatchDetailId = trustItem.BatchDetailId
|
|
LEFT JOIN dbo.HJGL_BO_Batch batch ON batch.BatchId = batchDetail.BatchId
|
|
LEFT JOIN dbo.HJGL_BS_NDTType ndt ON ndt.NDT_ID=trust.CH_NDTMethod
|
|
LEFT JOIN (SELECT JOT_ID, COUNT(*) AS FilmNum FROM dbo.HJGL_BO_QualityRating WHERE IsPass='不合格' GROUP BY JOT_ID)
|
|
c ON c.JOT_ID=trustItem.JOT_ID
|
|
WHERE batchDetail.PointType='2' and ndt.NDT_Code LIKE '%RT%' AND trustItem.ReportNoticeDate IS NOT null
|
|
GROUP BY batch.BatchId, iso.ISO_ID) v4 ON v1.ISO_ID=v4.ISO_ID AND v1.BatchId=v4.BatchId
|
|
|
|
LEFT JOIN dbo.HJGL_PW_IsoInfo iso ON iso.ISO_ID=v1.ISO_ID
|
|
LEFT JOIN dbo.HJGL_BS_Steel m ON m.STE_ID=iso.STE_ID
|
|
|
|
WHERE v1.BatchId=@BatchId
|
|
|
|
GO
|
|
|
|
Create PROCEDURE [dbo].[spRT_CheckRepairResult]
|
|
(
|
|
@BatchId NVARCHAR(50)
|
|
)
|
|
AS
|
|
--射线检测结果确认表(返修)
|
|
SELECT
|
|
(SELECT COUNT(DISTINCT(r1.JOT_ID)) FROM dbo.HJGL_CH_RepairItemRecord r1 WHERE r1.RepairMark='R1' and r1.BatchId=@BatchId) AS JotNumR1,
|
|
(SELECT COUNT(r1.JOT_ID) FROM dbo.HJGL_CH_RepairItemRecord r1 WHERE r1.RepairMark='R1' and r1.BatchId=@BatchId) AS FilmNumR1,
|
|
(SELECT COUNT(DISTINCT(r2.JOT_ID)) FROM dbo.HJGL_CH_RepairItemRecord r2 WHERE r2.RepairMark='R2' and r2.BatchId=@BatchId) AS JotNumR2,
|
|
(SELECT COUNT(r2.JOT_ID) FROM dbo.HJGL_CH_RepairItemRecord r2 WHERE r2.RepairMark='R2' and r2.BatchId=@BatchId) AS FilmNumR2,
|
|
(SELECT COUNT(DISTINCT(r3.JOT_ID)) FROM dbo.HJGL_CH_RepairItemRecord r3 WHERE r3.RepairMark='R3' and r3.BatchId=@BatchId) AS JotNumR3,
|
|
(SELECT COUNT(r3.JOT_ID) FROM dbo.HJGL_CH_RepairItemRecord r3 WHERE r3.RepairMark='R3' and r3.BatchId=@BatchId) AS FilmNumR3
|
|
|
|
GO
|
|
|
|
|
|
CREATE PROC [dbo].[HJGL_sp_StatisticsSampleTable]
|
|
@projectId NVARCHAR(50) = NULL,
|
|
@iso_isoNo VARCHAR(50) = NULL
|
|
AS
|
|
/*********统计样表********/
|
|
SELECT
|
|
project.ProjectCode, --施工号
|
|
IsoInfo.PressureTestPackageNo,--试压包编号
|
|
IsoInfo.ISO_ID,
|
|
IsoInfo.ISO_IsoNo, --管线号
|
|
JointInfo.JOT_JointNo, --焊缝编号
|
|
Welder.WED_Code,--焊工号
|
|
Steel.STE_Code,--材质
|
|
NDTRate.NDTR_Name,--对应检测比例
|
|
WeldReportMain.JOT_WeldDate,--焊接日期
|
|
JointInfo.JOT_Size,--寸经
|
|
Batch.BatchCode,--批次
|
|
(CASE WHEN BatchDetail.PointType=2 THEN 'K' ELSE '' END) AS PointType,--扩拍号
|
|
JointInfo.JOT_Dia,--直径
|
|
JointInfo.JOT_Sch, --壁厚
|
|
(CASE WHEN BatchDetail.NDT LIKE '%'+(SELECT TOP 1 rt.NDT_ID FROM dbo.HJGL_BS_NDTType rt WHERE rt.NDT_Code LIKE '%RT%')+'%'
|
|
THEN '√' ELSE '' END) AS RTTrust, --RT委托
|
|
(SELECT TOP 1 trust.CH_TrustDate 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 n ON n.NDT_ID=trust.CH_NDTMethod
|
|
WHERE trustItem.BatchDetailId=BatchDetail.BatchDetailId AND n.NDT_Code LIKE '%RT%')
|
|
AS RTTrustDate, --射线检测委托日期
|
|
(SELECT TOP 1 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 n ON n.NDT_ID=trust.CH_NDTMethod
|
|
WHERE trustItem.BatchDetailId=BatchDetail.BatchDetailId AND n.NDT_Code LIKE '%RT%')
|
|
AS RTTestResult,--RT检测结果
|
|
|
|
(CASE WHEN BatchDetail.NDT LIKE '%'+(SELECT TOP 1 ut.NDT_ID FROM dbo.HJGL_BS_NDTType ut WHERE ut.NDT_Code LIKE '%UT%')+'%'
|
|
THEN '√' ELSE '' END) UTTrust,--UT委托
|
|
(SELECT TOP 1 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 n ON n.NDT_ID=trust.CH_NDTMethod
|
|
WHERE trustItem.BatchDetailId=BatchDetail.BatchDetailId AND n.NDT_Code LIKE '%UT%')
|
|
AS UTTestResult,--UT检测结果
|
|
|
|
(CASE WHEN BatchDetail.NDT LIKE '%'+(SELECT TOP 1 mt.NDT_ID FROM dbo.HJGL_BS_NDTType mt WHERE mt.NDT_Code LIKE '%MT%')+'%'
|
|
THEN '√' ELSE '' END) AS MTTrust,--MT委托
|
|
(SELECT TOP 1 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 n ON n.NDT_ID=trust.CH_NDTMethod
|
|
WHERE trustItem.BatchDetailId=BatchDetail.BatchDetailId AND n.NDT_Code LIKE '%MT%')
|
|
AS MTTestResult,--MT检测结果
|
|
|
|
(CASE WHEN BatchDetail.NDT LIKE '%'+(SELECT TOP 1 pt.NDT_ID FROM dbo.HJGL_BS_NDTType pt WHERE pt.NDT_Code LIKE '%PT%')+'%'
|
|
THEN '√' ELSE '' END) AS PTTrust,--PT委托
|
|
(SELECT TOP 1 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 n ON n.NDT_ID=trust.CH_NDTMethod
|
|
WHERE trustItem.BatchDetailId=BatchDetail.BatchDetailId AND n.NDT_Code LIKE '%PT%')
|
|
AS PTTestResult,--PT检测结果
|
|
|
|
'' AS HotProessResult,--热处理委托
|
|
'' AS HotProessTrustDate,--热处理委托时间
|
|
'' AS HotProessResultOK, --热处理合格
|
|
--热处理反馈时间
|
|
'' AS HotProessResultNotOK,--热处理不合格
|
|
'' AS HardTestResult,--硬度委托
|
|
'' AS HardTrustDate,--硬度委托时间
|
|
'' AS HardTestResultOK,--硬度合格
|
|
--硬度反馈时间
|
|
'' AS HardTestResultNotOK --硬度不合格
|
|
|
|
FROM dbo.HJGL_BO_BatchDetail AS BatchDetail
|
|
LEFT JOIN DBO.HJGL_PW_IsoInfo AS IsoInfo ON IsoInfo.ISO_ID = BatchDetail.ISO_ID
|
|
LEFT JOIN DBO.HJGL_PW_JointInfo AS JointInfo ON JointInfo.JOT_ID = BatchDetail.JOT_ID
|
|
LEFT JOIN DBO.HJGL_BO_Batch AS Batch ON Batch.BatchId = BatchDetail.BatchId
|
|
LEFT JOIN dbo.Base_Project project ON project.ProjectId=Batch.ProjectId
|
|
LEFT JOIN dbo.HJGL_BS_Steel AS Steel ON Steel.STE_ID = Batch.STE_ID
|
|
LEFT JOIN DBO.HJGL_BS_Welder AS Welder ON Welder.WED_ID = JointInfo.JOT_CellWelder
|
|
LEFT JOIN DBO.HJGL_BO_WeldReportMain AS WeldReportMain ON WeldReportMain.DReportID = JointInfo.DReportID
|
|
LEFT JOIN dbo.HJGL_BS_NDTRate AS NDTRate ON NDTRate.NDTR_ID = JointInfo.NDTR_ID
|
|
|
|
--LEFT JOIN DBO.HJGL_CH_HotProessTrustItem AS HotProessTrustItem ON HotProessTrustItem.JOT_ID= BatchDetail.
|
|
--LEFT JOIN DBO.HJGL_CH_HotProessResult AS HotProessResult ON HotProessResult.JOT_ID = BatchDetail.JOT_ID
|
|
--LEFT JOIN DBO.HJGL_CH_HardTestResult AS HardTestResult ON HardTestResult.JOT_ID = BatchDetail.JOT_ID
|
|
--LEFT JOIN DBO.HJGL_CH_HardTestReport AS HardTestReport ON HardTestReport.HardTestReportId = HardTestResult.HardTestReportId
|
|
|
|
WHERE (Batch.ProjectId=@projectId OR @projectId IS NULL)
|
|
AND (IsoInfo.ISO_IsoNo =@iso_isoNo OR @iso_isoNo IS NULL)
|
|
ORDER BY project.ProjectCode,IsoInfo.ISO_IsoNo,JointInfo.JOT_JointNo
|
|
|
|
|
|
GO
|