HJGL_DS/DataBase/版本日志/HJGLDB_DS_2024-06-21_bwj.sql

104 lines
5.2 KiB
Transact-SQL
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

ALTER PROCEDURE [dbo].[HJGL_sp_rpt_Trust]
(
@CH_TrustID NVARCHAR(50)
)
AS
/******项目管理部焊缝检测委托单主表Todo*******/
SELECT Trust.CH_TrustID,
Trust.ProjectId,
--记录编号
Unit.UnitName, --使用单位
Project.ProjectCode, --项目号
Project.ProjectName, --项目名称
Project.ShortName,
Trust.CH_TrustCode,--委托单号
Installation.InstallationCode, --装置号
Installation.InstallationName,--装置名称
--isoClass.ISC_IsoName,--分项工程
'' AS ISC_IsoName,--分项工程
--检测时机
(SELECT TOP 1 CheckAddress FROM HJGL_BO_BatchDetail bd
LEFT JOIN HJGL_CH_TrustItem ti ON ti.BatchDetailId=bd.BatchDetailId WHERE ti.CH_TrustID=Trust.CH_TrustID) AS CheckAddress, --检测地点
--检件编号
Trust.CH_ItemName,--检件名称
--(CASE IsoInfo.IsHot WHEN '1' THEN '是' ELSE '否' END) AS IsHot,--热处理状态
'' AS IsHot,--热处理状态
NDTType.NDT_Code,--检测方法
WeldMethod.WME_Code,--焊接方法
SlopeType.JST_Name,--坡口形式
NDTRate.NDTR_Name,--检测比例
Trust.CH_NDTCriteria,--检测标准
--IsoInfoView.ISO_Executive, --验收标准
'' AS ISO_Executive, --验收标准
(CASE WHEN (NDTType.NDT_Code='MT' OR NDTType.NDT_Code='PT')
AND (SELECT TOP 1 joty.JOTY_Group FROM dbo.HJGL_CH_TrustItem trustItem LEFT JOIN HJGL_PW_JointInfo jot ON jot.JOT_ID=trustItem.JOT_ID LEFT JOIN dbo.HJGL_BS_JointType joty ON joty.JOTY_ID = jot.JOTY_ID
WHERE trustItem.CH_TrustID = @CH_TrustID)='1' THEN ''
ELSE (SELECT TOP 1 jot.JOT_QualifiedLevel FROM dbo.HJGL_CH_TrustItem trustItem LEFT JOIN HJGL_PW_JointInfo jot ON jot.JOT_ID=trustItem.JOT_ID
WHERE trustItem.CH_TrustID = @CH_TrustID) END) AS AcceptGrade,--合格级别
User1.UserName AS TrustManName,--委托人
User2.UserName AS AuditManName,--审核人
--接收人
CONVERT(VARCHAR(100), Trust.CH_TrustDate, 111) AS CH_TrustDate,--日期
User1.UserName+'/'+CONVERT(VARCHAR(10),YEAR(Trust.CH_TrustDate))+''+CONVERT(VARCHAR(10),MONTH(Trust.CH_TrustDate))+''+CONVERT(VARCHAR(10),DAY(Trust.CH_TrustDate))+'' AS ManAndTrustDate, --委托人/日期
checkUnit.UnitName AS CheckUnitName
FROM HJGL_CH_Trust AS Trust
LEFT JOIN dbo.Base_Unit AS Unit ON Unit.UnitId = Trust.CH_TrustUnit
LEFT JOIN dbo.Base_Project AS Project ON Project.ProjectId = Trust.ProjectId
--LEFT JOIN dbo.HJGL_PW_IsoInfo AS IsoInfo ON IsoInfo.ISO_ID = Trust.ISO_ID
--LEFT JOIN dbo.HJGL_View_IsoInfo AS IsoInfoView ON IsoInfoView.ISO_ID = Trust.ISO_ID
LEFT JOIN dbo.Project_Installation AS Installation ON Installation.InstallationId = Trust.InstallationId
LEFT JOIN dbo.Sys_User AS User1 ON User1.UserId = Trust.CH_TrustMan
LEFT JOIN dbo.Sys_User AS User2 ON User2.UserId = Trust.CH_AuditMan
LEFT JOIN dbo.HJGL_BO_Batch AS batch ON batch.BatchId = Trust.BatchId
LEFT JOIN dbo.HJGL_BS_NDTRate AS NDTRate ON NDTRate.NDTR_ID = batch.NDTR_ID
LEFT JOIN dbo.HJGL_BS_SlopeType AS SlopeType ON SlopeType.JST_ID = Trust.CH_SlopeType
LEFT JOIN dbo.HJGL_BS_WeldMethod AS WeldMethod ON WeldMethod.WME_ID = Trust.CH_WeldMethod
LEFT JOIN dbo.HJGL_BS_NDTType AS NDTType ON NDTType.NDT_ID = Trust.CH_NDTMethod
LEFT JOIN Base_Unit AS checkUnit ON checkUnit.UnitId = Trust.CH_CheckUnit
--LEFT JOIN dbo.HJGL_BS_IsoClass AS isoClass ON isoClass.ISC_ID = batch.ISC_ID
WHERE Trust.CH_TrustID=@CH_TrustID
GO
ALTER PROCEDURE [dbo].[HJGL_sp_rpt_TrustItem]
(
@CH_TrustID NVARCHAR(50)
)
AS
/******项目管理部焊缝检测委托单明细表*******/
SELECT ROW_NUMBER() OVER(ORDER BY JointInfo.Sort1,JointInfo.Sort2,JointInfo.Sort3,JointInfo.Sort4,JointInfo.Sort5) as Number,
TrustItem.CH_TrustItemID,
TrustItem.CH_TrustID,
iso.ISO_IsoNo,JointInfo.JOT_JointDesc,--焊缝规格
batch.BatchCode,
(CASE WHEN batchDetail.PointType=2
THEN JointInfo.JOT_JointNo+'K' ELSE JointInfo.JOT_JointNo END) AS JOT_JointNo,--焊缝编号
(CASE WHEN JointInfo.JOT_CellWelder!=JointInfo.JOT_FloorWelder THEN Welder1.WED_Code+'/'+Welder2.WED_Code ELSE Welder1.WED_Code END) AS WED_Code,--焊工号
(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 WHEN (TrustItem.CH_Remark IS NULL OR TrustItem.CH_Remark='') AND jotR.JOT_JointNo IS NOT NULL
THEN isoR.ISO_IsoNo+','+jotR.JOT_JointNo+' 返修' ELSE batchDetail.CheckAddress END) AS CH_Remark, --备注
isoClass.ISC_IsoName
FROM HJGL_CH_TrustItem AS TrustItem
LEFT JOIN dbo.HJGL_PW_JointInfo AS JointInfo ON JointInfo.JOT_ID = TrustItem.JOT_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_PW_IsoInfo iso on iso.ISO_ID=JointInfo.ISO_ID
LEFT JOIN dbo.HJGL_BS_Steel AS Steel ON Steel.STE_ID = JointInfo.STE_ID
LEFT JOIN dbo.HJGL_BS_Steel AS Steel2 ON Steel2.STE_ID=JointInfo.STE_ID2
LEFT JOIN dbo.HJGL_BS_Welder AS Welder1 ON Welder1.WED_ID = JointInfo.JOT_CellWelder
LEFT JOIN dbo.HJGL_BS_Welder AS Welder2 ON Welder2.WED_ID = JointInfo.JOT_FloorWelder
LEFT JOIN dbo.HJGL_CH_RepairItemRecord AS repair ON batchDetail.ToRepairId=repair.RepairItemRecordId
LEFT JOIN dbo.HJGL_PW_JointInfo AS jotR ON jotR.JOT_ID = repair.JOT_ID
LEFT JOIN dbo.HJGL_PW_IsoInfo AS isoR ON isoR.ISO_ID = repair.ISO_ID
LEFT JOIN HJGL_BS_IsoClass AS isoClass ON isoClass.ISC_ID = iso.ISC_ID
WHERE TrustItem.CH_TrustID=@CH_TrustID
GO