diff --git a/DataBase/版本日志/SGGLDB_V2023-12-01.sql b/DataBase/版本日志/SGGLDB_V2023-12-01.sql index 8befafad..b8c53655 100644 --- a/DataBase/版本日志/SGGLDB_V2023-12-01.sql +++ b/DataBase/版本日志/SGGLDB_V2023-12-01.sql @@ -276,3 +276,180 @@ LEFT JOIN dbo.Base_Material AS mat ON mat.MaterialId=pipeline.MaterialId GO +ALTER VIEW [dbo].[View_HJGL_WeldJoint] +AS +SELECT jot.[ProjectId] --ÏîÄ¿Id + ,pipe.[UnitWorkId] --µ¥Î»¹¤³ÌId + ,uw.UnitWorkName --µ¥Î»¹¤³Ì + ,pipe.[UnitId] --µ¥Î»Id + ,unit.UnitName --µ¥Î» + ,jot.[PipelineCode] --¹ÜÏߺŠ+ ,pipe.[SingleNumber] --µ¥ÏßͼºÅ + ,pipe.[SingleName] --ͼֽÃû³Æ + ,pipe.[MediumId] --½éÖÊId + ,medium.MediumCode + ,medium.MediumName --½éÖÊÃû³Æ + ,pipe.[PipingClassId] --¹ÜµÀµÈ¼¶Id + ,pipingClass.PipingClassCode --¹ÜµÀµÈ¼¶ + ,pipe.[DetectionRateId] --̽É˱ÈÀýId + ,dr.DetectionRateCode --̽É˱ÈÀý£¨ÀýÈç5£¬10£¬20£© + ,pipe.DetectionType --̽ÉËÀàÐÍId(¿ÉÄܶà¸ö£¬ÖмäÓÃ|·Ö¸ô) + ,STUFF((SELECT ',' + DetectionTypeCode FROM Base_DetectionType + WHERE CHARINDEX('|'+LTRIM(DetectionTypeId)+'|','|'+ pipe.DetectionType + '|') > 0 FOR XML PATH('') ), 1, 1, '') AS DetectionTypeStr --̽ÉËÀàÐÍ£¨¿ÉÄܶà¸ö£¬ÖмäÓÃ,·Ö¸ô£© + ,pipe.DesignTemperature --Éè¼ÆÎ¶ȡæ + ,pipe.DesignPress --Éè¼ÆÑ¹Á¦Mpa(g) + ,pipe.TestMedium --ѹÁ¦ÊÔÑé½éÖÊId + ,tm.MediumName AS TestMediumName --ѹÁ¦ÊÔÑé½éÖÊ + ,pipe.TestPressure --ѹÁ¦ÊÔÑéѹÁ¦Mpa(g) + ,pipe.PressurePipingClassId --ѹÁ¦¹ÜµÀ¼¶±ðId + ,ppc.PressurePipingClassCode --ѹÁ¦¹ÜµÀ¼¶±ð + ,pipe.PipeLenth --¹ÜÏß³¤¶È(m) + ,pipe.LeakMedium --й¶ÐÔÊÔÑé½éÖÊId + ,tm2.MediumName AS LeakMediumName --й¶ÐÔÊÔÑé½éÖÊ + ,pipe.LeakPressure --й¶ÐÔÊÔÑéѹÁ¦Mpa(g) + ,pipe.PCMedium --´µÏ´ÒªÇóId + ,pm.PurgeMethodCode --´µÏ´ÒªÇó + ,pipe.VacuumPressure --Õæ¿ÕÊÔÑéѹÁ¦Kpa(a) + ,pipe.MaterialId --²ÄÖÊId + ,mat.MaterialCode AS PipeMaterialCode --²ÄÖÊ + ,pipe.Remark AS PipeRemark --±¸×¢ + ,pipe.FlowingSection as FlowingSection --Á÷Ë®¶Î + ,jot.[WeldJointId] --º¸¿ÚId + ,jot.[WeldJointCode] --º¸¿ÚºÅ + ,jot.[Material1Id] --²ÄÖÊ1Id + ,mat1.MaterialCode AS Material1Code --²ÄÖÊ1 + ,jot.[Material2Id] --²ÄÖÊ2Id + ,mat2.MaterialCode AS Material2Code --²ÄÖÊ2 + ,jot.[Dia] --Íâ¾¶ + ,jot.DNDia --DN¹«³ÆÖ±¾¶ + ,jot.[Size] --´ïÒò + ,jot.[Thickness] --±Úºñ + ,jot.[Specification] --¹æ¸ñ + ,jot.[WeldTypeId] --º¸·ìÀàÐÍId + ,WeldType.WeldTypeCode --º¸·ìÀàÐÍ + ,jot.[DetectionTypeId] --¼ì²âÀàÐÍId + ,ndt.DetectionTypeCode --¼ì²âÀàÐÍ + ,jot.[Components1Id] --×é¼þ1ºÅId + ,com1.ComponentsCode AS ComponentsCode1 --×é¼þ1ºÅ + ,jot.[Components2Id] --×é¼þ2ºÅId + ,com2.ComponentsCode AS ComponentsCode2 --×é¼þ2ºÅ + ,jot.DesignIsHotProess --ÊÇ·ñÈÈ´¦Àí + ,CASE jot.DesignIsHotProess WHEN 1 THEN 'ÊÇ' ELSE '·ñ' END AS DesignIsHotProessStr --ÊÇ·ñÈÈ´¦Àí + ,jot.[WeldingMethodId] --º¸½Ó·½·¨Id + ,WeldingMethod.WeldingMethodCode --º¸½Ó·½·¨ + ,jot.WPQId --WPSµÄId + ,wps.WPQCode --WPS±àºÅ + ,jot.[GrooveTypeId] --ÆÂ¿ÚÀàÐÍId + ,GrooveType.GrooveTypeCode --ÆÂ¿ÚÀàÐÍ + ,jot.[WeldingRod] --º¸ÌõId + ,rod.ConsumablesCode AS WeldingRodCode --º¸Ìõ + ,jot.[WeldingWire] --º¸Ë¿Id + ,wire.ConsumablesCode AS WeldingWireCode --º¸Ë¿ + ,jot.PreTemperature --Ô¤ÈÈÎÂ¶È + ,jot.[JointAttribute] --º¸¿ÚÊôÐÔ + ,jot.TwoJointType --¶þ´Îº¸¿ÚÐÂÔöÀàÐÍ + ,pipe.PipeArea --¹¤³§Ô¤ÖÆ/ÏÖ³¡°²×° + ,daily.WeldingDate as WeldingDateD + ,CONVERT(VARCHAR(100), daily.WeldingDate, 23) AS WeldingDate --º¸½ÓÈÕÆÚ + ,BackingWelder.WelderCode AS BackingWelderCode --´òµ×º¸¹¤ + ,CoverWelder.WelderCode AS CoverWelderCode --¸ÇÃæº¸¹¤ + ,(CASE (SELECT COUNT(*) FROM [dbo].[HJGL_HotProess_TrustItem] hpti + WHERE hpti.WeldJointId=jot.WeldJointId) WHEN 0 THEN '' ELSE (SELECT TOP 1 ISNULL(ReportNo,'') FROM [dbo].[HJGL_HotProess_Trust] hpt + LEFT JOIN [dbo].[HJGL_HotProess_TrustItem] hpti ON hpti.HotProessTrustId=hpt.HotProessTrustId + WHERE hpti.WeldJointId=jot.WeldJointId) END) AS HotProessReportNo --ÈÈ´¦Àí±¨¸æ±àºÅ + ,(CASE (SELECT TOP 1 IsCompleted FROM [dbo].[HJGL_HotProess_TrustItem] hpti + WHERE hpti.WeldJointId=jot.WeldJointId) WHEN 1 THEN 'Íê³É' WHEN 0 THEN 'δÍê³É' ELSE 'δÈÈ´¦Àí' END) AS HotProessResult --ÈÈ´¦Àí¼ì²â½á¹û + ,(CASE (SELECT COUNT(*) FROM [dbo].HJGL_Hard_TrustItem hti + WHERE hti.WeldJointId=jot.WeldJointId) WHEN 0 THEN '' ELSE (SELECT TOP 1 ISNULL(InspectionNum,'') FROM [dbo].HJGL_Hard_Trust ht + LEFT JOIN [dbo].HJGL_Hard_TrustItem hti ON hti.HardTrustID=ht.HardTrustID + WHERE hti.WeldJointId=jot.WeldJointId) END) AS HardReportNo --Ó²¶È±¨¸æ±àºÅ + ,(CASE (SELECT TOP 1 IsPass FROM [dbo].HJGL_Hard_TrustItem hti + WHERE hti.WeldJointId=jot.WeldJointId) WHEN 1 THEN 'ºÏ¸ñ' WHEN 0 THEN '²»ºÏ¸ñ' ELSE '´ý¼ì²â' END) AS HardResult --Ó²¶È¼ì²â½á¹û + ,(CASE (SELECT COUNT(*) FROM [dbo].HJGL_Batch_BatchTrustItem bti + WHERE bti.WeldJointId=jot.WeldJointId) WHEN 0 THEN '' ELSE (SELECT TOP 1 TrustBatchCode FROM [dbo].HJGL_Batch_BatchTrust bt + LEFT JOIN [dbo].HJGL_Batch_BatchTrustItem bti ON bti.TrustBatchId=bt.TrustBatchId + WHERE bti.WeldJointId=jot.WeldJointId) END) AS TrustBatchCode --ίÍе¥±àºÅ + ,(CASE (SELECT COUNT(*) FROM [dbo].HJGL_Batch_NDEItem ndei + LEFT JOIN [dbo].HJGL_Batch_BatchTrustItem bti ON bti.TrustBatchItemId=ndei.TrustBatchItemId + WHERE bti.WeldJointId=jot.WeldJointId) WHEN 0 THEN '' ELSE (SELECT TOP 1 ISNULL(NDECode,'') FROM [dbo].HJGL_Batch_NDE nde + LEFT JOIN [dbo].HJGL_Batch_NDEItem ndei ON ndei.NDEID=nde.NDEID + LEFT JOIN [dbo].HJGL_Batch_BatchTrustItem bti ON bti.TrustBatchItemId=ndei.TrustBatchItemId + WHERE bti.WeldJointId=jot.WeldJointId) END) AS NDECode --¼ì²âµ¥±àºÅ + ,(CASE (SELECT TOP 1 CheckResult FROM [dbo].HJGL_Batch_NDEItem ndei + LEFT JOIN [dbo].HJGL_Batch_BatchTrustItem bti ON bti.TrustBatchItemId=ndei.TrustBatchItemId + WHERE bti.WeldJointId=jot.WeldJointId) WHEN '1' THEN 'ºÏ¸ñ' WHEN '2' THEN '²»ºÏ¸ñ' ELSE '' END) AS CheckResult --¼ì²â½á¹û + ,jot.PipelineId + ,jot.[JointArea] + ,jot.[WeldingLocationId] + ,jot.[HeartNo1] + ,jot.[HeartNo2] + ,jot.[IsHotProess] + ,jot.[WeldingDailyId] + ,jot.[BackingWelderId] + ,jot.[CoverWelderId] + ,jot.WeldingMode + ,jot.Remark + ,jot.IsTwoJoint + ,jot.SubmitMan + ,jot.AuditMan + ,jot.AuditMan2 + ,jot.AuditDate + ,jot.AuditDate2 + ,WeldingLocation.WeldingLocationCode + ,CASE WHEN jot.WeldingDailyId IS NULL THEN '·ñ' ELSE 'ÊÇ' END AS IsWelding + ,CASE WHEN jot.WeldingDailyId IS NULL THEN 'δÍê³É' ELSE 'ÒÑÍê³É' END AS IsWeldOK + ,CASE WHEN jot.IsHotProess=1 THEN 'ÊÇ' ELSE '·ñ' END AS IsHotProessStr, + BackingWelder.PersonName AS BackingWelderName, + CoverWelder.PersonName AS CoverWelderName, + (CASE WHEN CoverWelder.WelderCode IS NOT NULL AND BackingWelder.WelderCode IS NOT NULL + THEN CoverWelder.WelderCode + '/' + BackingWelder.WelderCode + ELSE (ISNULL(CoverWelder.WelderCode,'') + ISNULL(BackingWelder.WelderCode,'')) END) AS WelderCode, --º¸¹¤ + (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, --²ÄÖÊ + + daily.WeldingDailyCode, + pointItem.PointBatchId, + point.PointBatchCode, + (CASE WHEN pointItem.PointState='1' THEN 'Òѵã¿Ú' WHEN pointItem.PointState='2' THEN 'ÒÑÀ©Í¸' ELSE '' END) AS IsPoint + FROM [dbo].[HJGL_WeldJoint] jot +LEFT JOIN dbo.HJGL_Pipeline pipe ON pipe.PipelineId=jot.PipelineId +LEFT JOIN dbo.WBS_UnitWork uw ON uw.UnitWorkId=pipe.UnitWorkId +LEFT JOIN dbo.HJGL_WeldingDaily AS daily ON daily.WeldingDailyId=jot.WeldingDailyId +LEFT JOIN dbo.Base_Unit unit ON unit.UnitId=daily.UnitId +LEFT JOIN Base_WeldType AS WeldType ON WeldType.WeldTypeId=jot.WeldTypeId +LEFT JOIN dbo.Base_DetectionRate dr ON dr.DetectionRateId = pipe.DetectionRateId +LEFT JOIN Base_TestMedium tm ON tm.TestMediumId=pipe.TestMedium +LEFT JOIN Base_TestMedium tm2 ON tm2.TestMediumId=pipe.LeakMedium +LEFT JOIN Base_PurgeMethod pm ON pm.PurgeMethodId=pipe.PCMedium +LEFT JOIN Base_PressurePipingClass ppc ON ppc.PressurePipingClassId=pipe.PressurePipingClassId +LEFT JOIN Base_Material AS mat ON mat.MaterialId = pipe.MaterialId +LEFT JOIN Base_Material AS mat1 ON mat1.MaterialId = jot.Material1Id +LEFT JOIN Base_Material AS mat2 ON mat2.MaterialId = jot.Material2Id +LEFT JOIN Base_WeldingMethod AS WeldingMethod ON WeldingMethod.WeldingMethodId=jot.WeldingMethodId +LEFT JOIN Base_WeldingLocation AS WeldingLocation ON WeldingLocation.WeldingLocationId=jot.WeldingLocationId +LEFT JOIN Base_Consumables AS wire ON wire.ConsumablesId=jot.WeldingWire +LEFT JOIN Base_Consumables AS rod ON rod.ConsumablesId=jot.WeldingRod +LEFT JOIN Base_GrooveType AS GrooveType ON GrooveType.GrooveTypeId=jot.GrooveTypeId +LEFT JOIN Base_Components AS com1 ON com1.ComponentsId = jot.Components1Id +LEFT JOIN Base_Components AS com2 ON com2.ComponentsId = jot.Components2Id +LEFT JOIN SitePerson_Person AS BackingWelder ON BackingWelder.PersonId=jot.BackingWelderId and BackingWelder.ProjectId=jot.ProjectId +LEFT JOIN SitePerson_Person AS CoverWelder ON CoverWelder.PersonId=jot.CoverWelderId and CoverWelder.ProjectId=jot.ProjectId +LEFT JOIN Base_PipingClass AS pipingClass ON pipingClass.PipingClassId=pipe.PipingClassId +LEFT JOIN dbo.Base_Medium medium ON medium.MediumId = pipe.MediumId +LEFT JOIN dbo.Base_DetectionType ndt ON ndt.DetectionTypeId = jot.DetectionTypeId +LEFT JOIN dbo.WPQ_WPQList wps ON wps.WPQId = jot.WPQId +LEFT JOIN dbo.HJGL_Batch_PointBatchItem pointItem ON pointItem.WeldJointId = jot.WeldJointId +LEFT JOIN dbo.HJGL_Batch_PointBatch point ON point.PointBatchId = pointItem.PointBatchId + + + + + + +GO + + + + +