Files
Basf_TCC7/DataBase/版本日志/已完成/HJGLDB_2024.01.22.sql
T

184 lines
8.9 KiB
Transact-SQL
Raw Normal View History

2024-05-08 10:02:08 +08:00
INSERT INTO dbo.Base_UnitType(UnitTypeId, UnitTypeName)
VALUES ( '6','管理公司' )
GO
ALTER PROCEDURE [dbo].[sp_TrustReport]
(
@TrustBatchId NVARCHAR(50)
)
AS
SELECT
('工程名称:'+pro.ProjectName) AS ProjectName,pro.EnProjectName,trust.TrustDate,
('单元名称:'+area.WorkAreaName) AS WorkAreaName, area.EnWorkAreaName,
(SELECT unit.UnitName FROM dbo.Project_Unit punit LEFT JOIN dbo.Base_Unit unit ON unit.UnitId = punit.UnitId WHERE ProjectId= trust.ProjectId AND punit.UnitType='1') AS TrustUnit,
trust.TrustBatchCode,nde.DetectionTypeCode,trust.SurfaceState,nde.TestStandard,rate.DetectionRateCode, nde.TechLevel,
(CASE WHEN trust.NDEUuit IS NOT NULL THEN unit.UnitName ELSE (SELECT UnitName FROM dbo.Base_Unit WHERE UnitId=(SELECT TOP 1 UnitId FROM dbo.Project_Unit WHERE ProjectId= trust.ProjectId AND UnitType='4')) END) AS NDEUnit,
mat.WeldingMethodCode,groove.GrooveTypeCode,pipe.PipelineCode,trust.DetectionTiming,
(CASE WHEN nde.SysType='渗透检测' THEN '' ELSE (CASE WHEN nde.SysType='超声波检测' THEN '' ELSE (CASE WHEN rate.DetectionRateCode='5%' OR rate.DetectionRateCode='10%' THEN '' ELSE '' END) END)END) AS QueClass,
trust.QuaCertFile,--质量证明文件编号
trust.AcceptStandard--制造/验收标准
FROM dbo.Batch_BatchTrust trust
LEFT JOIN dbo.Base_Project pro ON pro.ProjectId = trust.ProjectId
--LEFT JOIN dbo.Project_Installation ins ON ins.InstallationId = trust.InstallationId
LEFT JOIN dbo.Project_WorkArea area ON area.WorkAreaId = trust.WorkAreaId
LEFT JOIN dbo.Base_Unit unit ON unit.UnitId = trust.NDEUuit
LEFT JOIN dbo.Base_Unit cunit ON cunit.UnitId = trust.UnitId
--LEFT JOIN dbo.Base_Unit tunit ON tunit.UnitId = ins.SupervisorUnitId
LEFT JOIN dbo.Base_DetectionType nde ON nde.DetectionTypeId = trust.DetectionTypeId
LEFT JOIN dbo.Base_WeldingMethod mat ON mat.WeldingMethodId = trust.WeldingMethodId
LEFT JOIN dbo.Base_GrooveType groove ON groove.GrooveTypeId = trust.GrooveTypeId
LEFT JOIN dbo.Pipeline_Pipeline pipe ON pipe.PipelineId = trust.PipelineId
LEFT JOIN dbo.Base_DetectionRate rate ON rate.DetectionRateId = pipe.DetectionRateId
WHERE trust.TrustBatchId=@TrustBatchId
GO
ALTER PROCEDURE [dbo].[TrustItemReport]
(
@TrustBatchId NVARCHAR(50)
)
AS
/******焊缝检测委托单明细表*******/
SELECT ROW_NUMBER() OVER(ORDER BY jot.WeldJointCode) AS Number,
BatchTrustItem.TrustBatchItemId,
BatchTrustItem.TrustBatchId,
pipe.PipelineCode, --管线号
pipe.SingleNumber, --单线号
(CASE WHEN PointBatchItem.PointState='2' then (CASE WHEN jot.JointAttribute='固定F' THEN 'F'+jot.WeldJointCode ELSE 'S'+jot.WeldJointCode END)+'K'
ELSE (CASE WHEN jot.JointAttribute='固定F' THEN 'F'+jot.WeldJointCode ELSE 'S'+jot.WeldJointCode END) END) AS WeldJointCode, --焊口号
jot.Specification, --焊缝规格
(CASE WHEN mat1.MaterialCode IS NOT NULL AND mat2.MaterialCode IS NOT NULL
THEN mat1.MaterialCode + '/' + mat2.MaterialCode
ELSE (ISNULL(mat1.MaterialCode,'') + ISNULL(mat2.MaterialCode,'')) END) AS MaterialCode, --材质
(CASE WHEN jot.BackingWelderId!=jot.CoverWelderId THEN backingWelder.WelderCode+'/'+coverWelder.WelderCode ELSE backingWelder.WelderCode END) AS WelderCode,--焊工号
rate.DetectionRateCode AS DetectionRateCode,--检测比例
PointBatchItem.AcceptLevel AS AcceptLevel, --验收等级
(case when PointBatchItem.IsWelderFirst=1 then '首三件' else '' end) as Remark,
jot.HeartNo1,--炉批1号
jot.HeartNo2,--炉批2号
(case jot.IsHotProess when 1 then '' else '' end) as IsHotProessName--是否热处理
FROM dbo.Batch_BatchTrustItem AS BatchTrustItem
LEFT JOIN Batch_PointBatchItem AS PointBatchItem ON PointBatchItem.PointBatchItemId=BatchTrustItem.PointBatchItemId
LEFT JOIN dbo.Batch_PointBatch point ON point.PointBatchId = PointBatchItem.PointBatchId
LEFT JOIN dbo.Base_DetectionRate rate ON rate.DetectionRateId = point.DetectionRateId
LEFT JOIN dbo.Pipeline_WeldJoint jot ON jot.WeldJointId = BatchTrustItem.WeldJointId
LEFT JOIN dbo.Pipeline_Pipeline pipe ON pipe.PipelineId = jot.PipelineId
LEFT JOIN dbo.Welder_Welder backingWelder ON backingWelder.WelderId = jot.BackingWelderId
LEFT JOIN dbo.Welder_Welder coverWelder ON coverWelder.WelderId = jot.CoverWelderId
LEFT JOIN Base_Material AS mat1 ON mat1.MaterialId = jot.Material1Id
LEFT JOIN Base_Material AS mat2 ON mat2.MaterialId = jot.Material2Id
WHERE BatchTrustItem.TrustBatchId=@TrustBatchId and BatchTrustItem.IsCancelTrust is null
GO
------------------------------------已下已更新---------------------------------------------
ALTER TABLE dbo.Batch_BatchTrust ADD GrooveTypeId NVARCHAR(50) NULL
ALTER TABLE dbo.Batch_BatchTrust ADD WeldingMethodId NVARCHAR(50) NULL
ALTER TABLE dbo.Batch_BatchTrust ADD IsWelderFirst BIT NULL
GO
ALTER VIEW [dbo].[View_GenerateTrust_FJ]
AS
-------正常点口生成委托-----------
SELECT point.ProjectId,point.InstallationId,pipe.WorkAreaId ,point.UnitId,pointItem.PointBatchId,
point.DetectionTypeId,point.PipelineId,jot.WeldingMethodId,jot.GrooveTypeId,
(CASE WHEN pointItem.IsWelderFirst=1 THEN 1 ELSE 0 END) AS IsWelderFirst
FROM dbo.Batch_PointBatchItem pointItem
LEFT JOIN dbo.Batch_PointBatch point ON point.PointBatchId = pointItem.PointBatchId
LEFT JOIN dbo.Batch_BatchTrustItem trustItem ON trustItem.PointBatchItemId = pointItem.PointBatchItemId
LEFT JOIN dbo.Pipeline_Pipeline pipe ON pipe.PipelineId = point.PipelineId
LEFT JOIN dbo.Pipeline_WeldJoint jot ON jot.WeldJointId = pointItem.WeldJointId
WHERE pointItem.CutDate IS NULL AND pointItem.PointDate IS NOT NULL
AND trustItem.TrustBatchItemId IS NULL
AND pointItem.PointState='1'
AND pointItem.JLAudit<>'' AND pointItem.JLAudit IS NOT NULL
AND pointItem.GLGSAudit<>'' AND pointItem.GLGSAudit IS NOT NULL
GROUP BY point.ProjectId,point.InstallationId,pipe.WorkAreaId,point.UnitId,pointItem.PointBatchId,point.DetectionTypeId,
point.PipelineId,jot.WeldingMethodId,jot.GrooveTypeId,CASE WHEN pointItem.IsWelderFirst=1 THEN 1 ELSE 0 END
GO
ALTER VIEW [dbo].[View_GenerateTrustItem_FJ]
AS
SELECT point.ProjectId,point.InstallationId,pipe.WorkAreaId ,point.UnitId,point.DetectionTypeId,
point.PipelineId,jot.WeldingMethodId,jot.GrooveTypeId,
(CASE WHEN pointItem.IsWelderFirst=1 THEN 1 ELSE 0 END) AS IsWelderFirst,
--上面是条件
rate.DetectionRateValue,pointItem.PointBatchItemId,pointItem.PointBatchId,pointItem.WeldJointId,jot.Dia
FROM dbo.Batch_PointBatchItem pointItem
LEFT JOIN dbo.Pipeline_WeldJoint jot ON jot.WeldJointId = pointItem.WeldJointId
LEFT JOIN dbo.Batch_PointBatch point ON point.PointBatchId = pointItem.PointBatchId
LEFT JOIN dbo.Batch_BatchTrustItem trustItem ON trustItem.PointBatchItemId = pointItem.PointBatchItemId
LEFT JOIN dbo.Pipeline_Pipeline pipe ON pipe.PipelineId = point.PipelineId
LEFT JOIN dbo.Base_DetectionRate rate ON rate.DetectionRateId = point.DetectionRateId
WHERE pointItem.CutDate IS NULL AND pointItem.PointDate IS NOT NULL
AND pointItem.PointState='1'
AND trustItem.TrustBatchItemId IS NULL
AND pointItem.JLAudit<>'' AND pointItem.JLAudit IS NOT NULL
AND pointItem.GLGSAudit<>'' AND pointItem.GLGSAudit IS NOT NULL
GO
ALTER VIEW [dbo].[View_Batch_BatchTrust]
AS
/********无损委托********/
SELECT BatchTrust.TrustBatchId,
BatchTrust.TrustBatchCode,
(CASE WHEN BatchTrust.TrustType='1' THEN BatchTrust.TrustBatchCode
WHEN BatchTrust.TrustType='2' THEN BatchTrust.TrustBatchCode+'K1'
WHEN BatchTrust.TrustType='3' THEN BatchTrust.TrustBatchCode+'R1' END) AS NewTrustBatchCode,
BatchTrust.TrustDate,
BatchTrust.NDEUuit,
BatchTrust.ProjectId,
project.ProjectCode,
BatchTrust.UnitId,
BatchTrust.InstallationId,
BatchTrust.PipelineId,
pipe.PipelineCode,
BatchTrust.DetectionTypeId,
BatchTrust.IsCheck,
BatchTrust.TopointBatch,
BatchTrust.SurfaceState,
BatchTrust.DetectionTiming,
BatchTrust.QuaCertFile,
BatchTrust.AcceptStandard,
Unit.UnitCode,
Unit.UnitName,
Installation.InstallationName,
Installation.InstallationCode,
DetectionType.DetectionTypeCode,
ndtCheck.TrustBatchId AS CheckTrustBatchId,
DetectionType.TestStandard,
DetectionType.TechLevel,
rate.DetectionRateCode,
groove.GrooveTypeCode,
'巴斯夫一体化基地(广东)有限公司' AS TrustUnit,
mat.WeldingMethodCode
FROM Batch_BatchTrust AS BatchTrust
LEFT JOIN dbo.Base_Project project ON project.ProjectId = BatchTrust.ProjectId
LEFT JOIN Base_Unit AS Unit ON Unit.UnitId=BatchTrust.UnitId
LEFT JOIN Project_Installation AS Installation ON Installation.InstallationId=BatchTrust.InstallationId
LEFT JOIN dbo.Pipeline_Pipeline pipe ON pipe.PipelineId = BatchTrust.PipelineId
LEFT JOIN Base_DetectionType AS DetectionType ON DetectionType.DetectionTypeId=BatchTrust.DetectionTypeId
LEFT JOIN dbo.Base_DetectionRate rate ON rate.DetectionRateId=pipe.DetectionRateId
LEFT JOIN dbo.Base_WeldingMethod mat ON mat.WeldingMethodId = BatchTrust.WeldingMethodId
LEFT JOIN dbo.Base_GrooveType groove ON groove.GrooveTypeId = BatchTrust.GrooveTypeId
LEFT JOIN dbo.Batch_NDE ndtCheck ON ndtCheck.TrustBatchId = BatchTrust.TrustBatchId
WHERE (SELECT COUNT(TrustBatchItemId) FROM Batch_BatchTrustItem WHERE IsCancelTrust IS NULL AND TrustBatchId=BatchTrust.TrustBatchId)>0
GO