-- 1.数据导入 UPDATE dbo.Sys_Menu SET SortIndex=12,MenuName='数据导入' WHERE MenuId='8IDKGJE2-09B1-4607-DCS2-DCC3O48F080F' GO INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) VALUES('B13BFFA5-3112-4209-8562-5329B78B405C','三维模型导入','HJGL/DataImport/TDMImport.aspx',3,'8IDKGJE2-09B1-4607-DCS2-DCC3O48F080F','Menu_HJGL',0,1,1) GO INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) VALUES('5CBE9258-6FE9-47A8-BFDD-3BDD90F7DECC','图纸导入','HJGL/DataImport/DrawingImport.aspx',6,'8IDKGJE2-09B1-4607-DCS2-DCC3O48F080F','Menu_HJGL',0,1,1) GO --焊接过程管理 UPDATE dbo.Sys_Menu SET MenuName='焊接过程管理' WHERE MenuId='4D36E99E-B3D8-4C61-826A-CBD98EC51515' GO INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) VALUES('E6F6982A-48C7-455C-8EBB-CC7088EBF15A','焊接施工计划','HJGL/WeldingManage/WeldingPlan.aspx',2,'4D36E99E-B3D8-4C61-826A-CBD98EC51515','Menu_HJGL',0,1,1) GO /*焊接施工计划*/ INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('4544DB07-3E1F-48F5-BE33-7DAFF58AB70B','E6F6982A-48C7-455C-8EBB-CC7088EBF15A','增加',1) INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('EC1A7982-3561-4E0B-9431-DEFD944F4ADE','E6F6982A-48C7-455C-8EBB-CC7088EBF15A','修改',2) INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('0DAA2A85-F157-4BE9-A123-7AE190557070','E6F6982A-48C7-455C-8EBB-CC7088EBF15A','保存',3) INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('9FC17B46-0CDC-4586-9518-8EF44B60B546','E6F6982A-48C7-455C-8EBB-CC7088EBF15A','查看',4) INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('43AE415C-39DC-4A6C-A4C0-B91BAC3A1515','E6F6982A-48C7-455C-8EBB-CC7088EBF15A','删除',5) GO --SELECT NEWID() INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) VALUES('ADC7EA61-6313-4DF9-913F-E9207F6525CA','焊材匹配','HJGL/WeldingManage/WeldMatMatch.aspx',5,'4D36E99E-B3D8-4C61-826A-CBD98EC51515','Menu_HJGL',0,1,1) GO INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) VALUES('C1EACB23-A029-4DE7-886D-7772D9DDE735','焊口二次设计','HJGL/WeldingManage/JotTwoDesign.aspx',7,'4D36E99E-B3D8-4C61-826A-CBD98EC51515','Menu_HJGL',0,1,1) GO /*焊口二次设计*/ INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('AABCAF1C-EC53-47F0-B05E-B7F75D09754E','C1EACB23-A029-4DE7-886D-7772D9DDE735','增加',1) INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('B6E76705-89C4-4AF9-AA74-34679D081D5D','C1EACB23-A029-4DE7-886D-7772D9DDE735','修改',2) INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('D28EC0A5-47DF-4D5A-A9E2-403C3F216A6C','C1EACB23-A029-4DE7-886D-7772D9DDE735','保存',3) INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('77CBE6BE-B9A6-433F-AB8D-9A5F569162FA','C1EACB23-A029-4DE7-886D-7772D9DDE735','查看',4) INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('1EFCCFC0-72F9-4A31-8D2C-D3F8D7DAD8E7','C1EACB23-A029-4DE7-886D-7772D9DDE735','删除',5) INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('27A2030E-DC56-4133-A0B7-7FBEFD049B52','C1EACB23-A029-4DE7-886D-7772D9DDE735','审核',6) GO -- 2.预制设计 INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) VALUES('1E36EA73-D536-4215-BFB9-A8771937BD89','预制设计','',15,'0','Menu_HJGL',0,0,1) GO INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) VALUES('1EE36752-6077-47C9-AFF0-5372B862FF61','管线划分','HJGL/PreDesign/PipelingDivide.aspx',10,'1E36EA73-D536-4215-BFB9-A8771937BD89','Menu_HJGL',0,1,1) GO INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('B7D3BB25-F83E-47C6-9F1F-6D265ACED4F2','1EE36752-6077-47C9-AFF0-5372B862FF61','保存',1) GO INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) VALUES('C6129D23-1A49-441B-906C-BE94D4150CFE','预制管理','HJGL/PreDesign/PrePipeline.aspx',20,'1E36EA73-D536-4215-BFB9-A8771937BD89','Menu_HJGL',0,1,1) GO /*'预制管理*/ INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('23B9FC28-2FE9-4152-92D4-31A126B397BE','C6129D23-1A49-441B-906C-BE94D4150CFE','增加',1) INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('9D8D553E-B15C-4810-8E41-0DF902EB0CDB','C6129D23-1A49-441B-906C-BE94D4150CFE','修改',2) INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('6912C121-6FA0-4042-AFD4-AE54445742F0','C6129D23-1A49-441B-906C-BE94D4150CFE','保存',3) INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('A2252AF4-83EC-4281-9449-A5024468C259','C6129D23-1A49-441B-906C-BE94D4150CFE','查看',4) INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('8C5B0025-B142-470A-896C-1A0CDA665703','C6129D23-1A49-441B-906C-BE94D4150CFE','删除',5) GO INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) VALUES('43F92EA7-462F-41E6-8D8A-243C03A5317E','信息查询','',25,'0','Menu_HJGL',0,0,1) GO INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) VALUES('A98C7295-5735-4C8A-9565-7635A9C5D258','管线信息总览','HJGL/InfoQuery/PipelineQuery.aspx',10,'43F92EA7-462F-41E6-8D8A-243C03A5317E','Menu_HJGL',0,1,1) GO INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('D11B9160-D28F-418E-BCC1-0B29BE16F4A0','A98C7295-5735-4C8A-9565-7635A9C5D258','查看',1) GO INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) VALUES('F4275A19-A72E-448E-B0C1-07DB2FCEE224','焊口台账总览','HJGL/InfoQuery/JointQuery.aspx',20,'43F92EA7-462F-41E6-8D8A-243C03A5317E','Menu_HJGL',0,1,1) GO INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('EA0A1B4B-502B-416E-948A-DFBD893E40F5','F4275A19-A72E-448E-B0C1-07DB2FCEE224','查看',1) GO INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) VALUES('55DB671A-7DEB-4DA4-8429-E66AA69DBE7D','材料编码库','HJGL/BaseInfo/MaterialCodeLib.aspx',50,'60F4B988-4D1D-48D6-A959-2EA4BD2978A1','Menu_HJGL',0,1,1) GO /* 材料编码库*/ INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('EBEF9402-D193-430E-9A97-9E6AC3F31881','55DB671A-7DEB-4DA4-8429-E66AA69DBE7D','增加',1) INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('9A78F83F-B1F0-4DD1-B3BD-E6993A87CCB1','55DB671A-7DEB-4DA4-8429-E66AA69DBE7D','修改',2) INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('A653D260-A085-4FC6-827F-97509A28E36B','55DB671A-7DEB-4DA4-8429-E66AA69DBE7D','删除',3) INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('1301956D-DC29-4D26-ACBE-75B20370FFA9','55DB671A-7DEB-4DA4-8429-E66AA69DBE7D','保存',4) INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('1D975FE2-6AAE-47F2-9EA2-55F8F42DF05F','55DB671A-7DEB-4DA4-8429-E66AA69DBE7D','查看',5) GO INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) VALUES('EAD61207-E396-45B0-A1D2-7A5F0498AACC','管道预制率分析','HJGL/WeldingReport/PipePrefabricationRateStatistics.aspx',80,'F3B157B7-9BEE-4150-80CB-087828F1C51D','Menu_HJGL',0,1,1) GO INSERT INTO Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) VALUES('F17794E8-5ECC-4CCE-9BBF-0BC7A1E09CAF','EAD61207-E396-45B0-A1D2-7A5F0498AACC','查看',1) GO ALTER TABLE dbo.HJGL_Pipeline ADD PipeArea NCHAR(1) NULL GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'管线焊接区域(1-工厂预制,2-现场施工)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_Pipeline', @level2type=N'COLUMN',@level2name=N'PipeArea' GO ALTER TABLE dbo.HJGL_Pipeline ADD WBSId NVARCHAR(20) NULL GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'WBSId' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_Pipeline', @level2type=N'COLUMN',@level2name=N'WBSId' GO ALTER TABLE dbo.HJGL_Pipeline ADD PlanStartDate DATETIME NULL GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划开始日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_Pipeline', @level2type=N'COLUMN',@level2name=N'PlanStartDate' GO ALTER TABLE dbo.HJGL_Pipeline ADD PlanEndDate DATETIME NULL GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划结束日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_Pipeline', @level2type=N'COLUMN',@level2name=N'PlanEndDate' GO ALTER TABLE dbo.HJGL_Pipeline ADD ActStartDate DATETIME NULL GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'实际开始日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_Pipeline', @level2type=N'COLUMN',@level2name=N'ActStartDate' GO ALTER TABLE dbo.HJGL_Pipeline ADD ActEndDate DATETIME NULL GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'实际结束日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_Pipeline', @level2type=N'COLUMN',@level2name=N'ActEndDate' GO ALTER TABLE dbo.HJGL_Pipeline ADD IsFinished BIT NULL GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'是否完成' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_Pipeline', @level2type=N'COLUMN',@level2name=N'IsFinished' GO ALTER TABLE dbo.HJGL_WeldJoint ADD IsTwoJoint BIT NULL GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'是否二次焊口' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_WeldJoint', @level2type=N'COLUMN',@level2name=N'IsTwoJoint' GO ALTER TABLE dbo.HJGL_WeldJoint ADD SubmitMan NVARCHAR(50) NULL GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'提交人' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_WeldJoint', @level2type=N'COLUMN',@level2name=N'SubmitMan' GO ALTER TABLE dbo.HJGL_WeldJoint ADD AuditMan NVARCHAR(50) NULL GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'审核人' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_WeldJoint', @level2type=N'COLUMN',@level2name=N'AuditMan' GO ALTER TABLE dbo.HJGL_WeldJoint ADD AuditDate DATETIME NULL GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'审核日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_WeldJoint', @level2type=N'COLUMN',@level2name=N'AuditDate' GO --预制管线组件表 CREATE TABLE [dbo].[HJGL_Pipeline_Component]( [PipelineComponentId] [NVARCHAR](50) NOT NULL, [PipelineId] [NVARCHAR](50) NULL, [PreUnit] [NVARCHAR](50) NULL, [PipelineComponentCode] [NVARCHAR](50) NULL, [BoxNumber] [NVARCHAR](50) NULL, [AssembleUnit] [NVARCHAR](50) NULL, CONSTRAINT [PK_HJGL_Pipeline_Component] PRIMARY KEY CLUSTERED ( [PipelineComponentId] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] GO ALTER TABLE [dbo].[HJGL_Pipeline_Component] WITH CHECK ADD CONSTRAINT [FK_HJGL_Pipeline_Component_HJGL_Pipeline] FOREIGN KEY([PipelineId]) REFERENCES [dbo].[HJGL_Pipeline] ([PipelineId]) GO ALTER TABLE [dbo].[HJGL_Pipeline_Component] CHECK CONSTRAINT [FK_HJGL_Pipeline_Component_HJGL_Pipeline] GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'预制管线组件ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_Pipeline_Component', @level2type=N'COLUMN',@level2name=N'PipelineComponentId' GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'管线ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_Pipeline_Component', @level2type=N'COLUMN',@level2name=N'PipelineId' GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'预制单位' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_Pipeline_Component', @level2type=N'COLUMN',@level2name=N'PreUnit' GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'组件编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_Pipeline_Component', @level2type=N'COLUMN',@level2name=N'PipelineComponentCode' GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'物流箱号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_Pipeline_Component', @level2type=N'COLUMN',@level2name=N'BoxNumber' GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'组装单位' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_Pipeline_Component', @level2type=N'COLUMN',@level2name=N'AssembleUnit' GO UPDATE dbo.HJGL_WeldJoint SET JointAttribute ='预制口' WHERE JointAttribute='活动口' UPDATE dbo.HJGL_WeldJoint SET JointAttribute ='安装口' WHERE JointAttribute='固定口' GO DELETE FROM dbo.HJGL_Hard_TrustItem WHERE HardTrustItemID IN ('aae1fdda-d307-474b-b2f8-20f4a70aead1','c8240903-4399-4e36-8d59-8a2900205d13','b4a91023-1295-4f27-80e4-95545f5b67a6') GO -- 焊口台账 CREATE VIEW [dbo].[View_HJGL_JointInfoQuery] AS SELECT pipe.ProjectId,pipe.UnitWorkId,work.UnitWorkCode,unit.UnitName,pipe.PipelineId, pipe.PipelineCode,jot.WeldJointId,jot.WeldJointCode,met.WeldingMethodName,wps.WPQCode, mat1.MaterialCode AS Material1Code,mat2.MaterialCode AS Material2Code,jot.[Dia],jot.[Size],jot.[Thickness],jot.[Specification],WeldType.WeldTypeCode, gv.GrooveTypeCode,rod.ConsumablesName AS WeldingRod,wire.ConsumablesName AS WeldingWire, jot.PreTemperature,jot.JointAttribute,daily.WeldingDate,bWelder.WelderCode AS BackingWelder, cWelder.WelderCode AS CoverWelder,(CASE WHEN hotItem.IsPass =1 THEN '合格' ELSE '' END) AS HotIsPass, hot.HotProessTrustNo,(CASE WHEN hardItem.IsPass=1 THEN '合格' ELSE '' END) AS HardIsPass, hard.InspectionNum AS HardReportNo, trust.TrustBatchCode,nde.NDECode,(CASE WHEN ndtItem.CheckResult='1' THEN '合格' WHEN ndtItem.CheckResult='2' THEN '不合格' ELSE '' END) AS CheckResult FROM dbo.HJGL_WeldJoint jot LEFT JOIN dbo.HJGL_Pipeline pipe ON pipe.PipelineId = jot.PipelineId LEFT JOIN dbo.WBS_UnitWork work ON work.UnitWorkId = pipe.UnitWorkId LEFT JOIN dbo.Base_Unit unit ON unit.UnitId = pipe.UnitId 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_WeldType AS WeldType ON WeldType.WeldTypeId=jot.WeldTypeId LEFT JOIN dbo.Base_WeldingMethod met ON met.WeldingMethodId = jot.WeldingMethodId LEFT JOIN dbo.WPQ_WPQList wps ON wps.WPQId = jot.WPQId LEFT JOIN dbo.Base_GrooveType gv ON gv.GrooveTypeId = jot.GrooveTypeId LEFT JOIN dbo.Base_Consumables wire ON wire.ConsumablesId = jot.WeldingWire LEFT JOIN dbo.Base_Consumables rod ON rod.ConsumablesId = jot.WeldingRod LEFT JOIN dbo.HJGL_WeldingDaily daily ON daily.WeldingDailyId = jot.WeldingDailyId LEFT JOIN dbo.SitePerson_Person bWelder ON bWelder.PersonId = jot.BackingWelderId LEFT JOIN dbo.SitePerson_Person cWelder ON cWelder.PersonId = jot.CoverWelderId LEFT JOIN dbo.HJGL_HotProess_TrustItem hotItem ON hotItem.WeldJointId = jot.WeldJointId LEFT JOIN dbo.HJGL_HotProess_Trust hot ON hot.HotProessTrustId = hotItem.HotProessTrustId LEFT JOIN dbo.HJGL_Hard_TrustItem hardItem ON hardItem.HotProessTrustItemId = hotItem.HotProessTrustItemId LEFT JOIN dbo.HJGL_Hard_Trust hard ON hard.HardTrustID = hardItem.HardTrustID LEFT JOIN (SELECT t.TrustBatchId,item.TrustBatchItemId,t.TrustBatchCode,item.WeldJointId,t.DetectionTypeId FROM dbo.HJGL_Batch_BatchTrustItem item LEFT JOIN dbo.HJGL_Batch_BatchTrust t ON t.TrustBatchId = item.TrustBatchId WHERE t.DetectionTypeId='79c2fbc6-385a-421e-98fa-6d074db712d9' AND item.PointBatchItemId IS NOT NULL AND t.PointBatchId IS NOT NULL ) trust ON trust.WeldJointId = jot.WeldJointId LEFT JOIN dbo.HJGL_Batch_NDEItem ndtItem ON ndtItem.TrustBatchItemId = trust.TrustBatchItemId LEFT JOIN dbo.HJGL_Batch_NDE nde ON nde.NDEID = ndtItem.NDEID GO --材料编码库 CREATE TABLE [dbo].[HJGL_MaterialCodeLib]( [MaterialCode] [NVARCHAR](15) NOT NULL, [ProjectId] [NVARCHAR](50) NULL, [MaterialName] [NVARCHAR](30) NULL, [MaterialSpec] [NVARCHAR](20) NULL, [MaterialMade] [NVARCHAR](50) NULL, [MaterialDef] [NVARCHAR](300) NULL, [PipeGrade] [NVARCHAR](50) NULL, CONSTRAINT [PK_HJGL_MaterialCodeLib] PRIMARY KEY CLUSTERED ( [MaterialCode] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] GO ALTER TABLE [dbo].[HJGL_MaterialCodeLib] WITH CHECK ADD CONSTRAINT [FK_HJGL_MaterialCodeLib_Base_Project] FOREIGN KEY([ProjectId]) REFERENCES [dbo].[Base_Project] ([ProjectId]) GO ALTER TABLE [dbo].[HJGL_MaterialCodeLib] CHECK CONSTRAINT [FK_HJGL_MaterialCodeLib_Base_Project] GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'材质编码' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_MaterialCodeLib', @level2type=N'COLUMN',@level2name=N'MaterialCode' GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'元件类型' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_MaterialCodeLib', @level2type=N'COLUMN',@level2name=N'MaterialName' GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'规格' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_MaterialCodeLib', @level2type=N'COLUMN',@level2name=N'MaterialSpec' GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'材质' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_MaterialCodeLib', @level2type=N'COLUMN',@level2name=N'MaterialMade' GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'描述' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_MaterialCodeLib', @level2type=N'COLUMN',@level2name=N'MaterialDef' GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'管道等级' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_MaterialCodeLib', @level2type=N'COLUMN',@level2name=N'PipeGrade' GO --管线材料表 CREATE TABLE [dbo].[HJGL_PipeLineMat]( [PipeLineMatId] [NVARCHAR](50) NOT NULL, [PipelineId] [NVARCHAR](50) NULL, [MaterialCode] [NVARCHAR](15) NULL, [Number] [DECIMAL](9, 2) NULL, CONSTRAINT [PK_HJGL_PipeLineMat] PRIMARY KEY CLUSTERED ( [PipeLineMatId] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] GO ALTER TABLE [dbo].[HJGL_PipeLineMat] WITH CHECK ADD CONSTRAINT [FK_HJGL_PipeLineMat_HJGL_MaterialCodeLib] FOREIGN KEY([MaterialCode]) REFERENCES [dbo].[HJGL_MaterialCodeLib] ([MaterialCode]) GO ALTER TABLE [dbo].[HJGL_PipeLineMat] CHECK CONSTRAINT [FK_HJGL_PipeLineMat_HJGL_MaterialCodeLib] GO ALTER TABLE [dbo].[HJGL_PipeLineMat] WITH CHECK ADD CONSTRAINT [FK_HJGL_PipeLineMat_HJGL_Pipeline] FOREIGN KEY([PipelineId]) REFERENCES [dbo].[HJGL_Pipeline] ([PipelineId]) GO ALTER TABLE [dbo].[HJGL_PipeLineMat] CHECK CONSTRAINT [FK_HJGL_PipeLineMat_HJGL_Pipeline] GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主建' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_PipeLineMat', @level2type=N'COLUMN',@level2name=N'PipeLineMatId' GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'管线ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_PipeLineMat', @level2type=N'COLUMN',@level2name=N'PipelineId' GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'材料编码' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_PipeLineMat', @level2type=N'COLUMN',@level2name=N'MaterialCode' GO EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'数量' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'HJGL_PipeLineMat', @level2type=N'COLUMN',@level2name=N'Number' GO ALTER VIEW [dbo].[View_HJGL_Pipeline] AS /*************管线视图*****************/ SELECT pipeline.PipelineId, pipeline.ProjectId, pipeline.UnitId, pipeline.UnitWorkId, pipeline.PipelineCode, pipeline.SingleName, pipeline.SingleNumber, pipeline.PipingClassId, pipeline.MediumId, pipingClass.PipingClassCode, pipeline.DetectionRateId, rate.DetectionRateCode, pipeline.DetectionType, pipeline.TestPressure, pipeline.TestMedium, pipeline.PressurePipingClassId, pc.PressurePipingClassCode, pipeline.PipeLenth, pipeline.DesignPress, pipeline.DesignTemperature, pipeline.Remark, pipeline.LeakPressure, pipeline.LeakMedium, pipeline.VacuumPressure, pipeline.PCMedium , pipeline.PCtype, pipeline.MaterialId, pipeline.PipeArea, mat.MaterialCode, lea.MediumName AS LeakMediumName, pur.PurgeMethodName AS PCMediumName, CAST((SELECT SUM(ISNULL(Size,0)) FROM dbo.HJGL_WeldJoint WHERE PipelineId=pipeline.PipelineId) AS DECIMAL(8,3)) AS TotalDin, CAST((SELECT ISNULL(SUM(ISNULL(jot.Size,0)),0) FROM dbo.HJGL_WeldJoint jot WHERE jot.PipelineId=pipeline.PipelineId AND jot.WeldingDailyId IS NOT NULL) AS DECIMAL(8,3)) AS FinishSize, (SELECT COUNT(WeldJointId) FROM dbo.HJGL_WeldJoint WHERE PipelineId=pipeline.PipelineId) AS JointCount, unit.UnitName, workArea.UnitWorkCode, medium.MediumCode, medium.MediumName AS MediumName, testMedium.MediumCode AS TestMediumCode, pipeline.ActEndDate AS FinishedDate, pipeline.IsFinished FROM dbo.HJGL_Pipeline AS pipeline LEFT JOIN Base_PipingClass AS pipingClass ON pipingClass.PipingClassId=pipeline.PipingClassId LEFT JOIN dbo.Base_Unit AS unit ON unit.UnitId=pipeline.UnitId LEFT JOIN WBS_UnitWork AS workArea ON workArea.UnitWorkId=pipeline.UnitWorkId LEFT JOIN Base_Medium AS medium ON medium.MediumId=pipeline.MediumId LEFT JOIN dbo.Base_TestMedium AS testMedium ON testMedium.TestMediumId=pipeline.TestMedium LEFT JOIN dbo.Base_DetectionRate rate ON rate.DetectionRateId = pipeline.DetectionRateId LEFT JOIN dbo.Base_PressurePipingClass pc ON pc.PressurePipingClassId = pipeline.PressurePipingClassId LEFT JOIN dbo.Base_TestMedium AS lea ON lea.TestMediumId=pipeline.LeakMedium LEFT JOIN dbo.Base_PurgeMethod AS pur ON pur.PurgeMethodId=pipeline.PCMedium 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 --备注 ,jot.[WeldJointId] --焊口Id ,jot.[WeldJointCode] --焊口号 ,jot.[Material1Id] --材质1Id ,mat1.MaterialCode AS Material1Code --材质1 ,jot.[Material2Id] --材质2Id ,mat2.MaterialCode AS Material2Code --材质2 ,jot.[Dia] --外径 ,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] --焊口属性 ,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.AuditDate ,WeldingLocation.WeldingLocationCode ,CASE WHEN jot.WeldingDailyId IS NULL THEN '否' ELSE '是' END AS IsWelding ,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.Base_Unit unit ON unit.UnitId=pipe.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 LEFT JOIN SitePerson_Person AS CoverWelder ON CoverWelder.PersonId=jot.CoverWelderId LEFT JOIN dbo.HJGL_WeldingDaily AS daily ON daily.WeldingDailyId=jot.WeldingDailyId 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 ALTER PROC [dbo].[sp_rpt_WelderPerformance] @unitcode NVARCHAR(50) = NULL, @UnitWorkId NVARCHAR(50) = NULL, @steel NVARCHAR(50) = NULL, @wloName NVARCHAR(50) = NULL, @date1 DATETIME = NULL, @date2 DATETIME = NULL, @projectId NVARCHAR(50) = NULL AS /*焊工业绩分析*/ SELECT welder.ProjectId, welder.WelderCode,-- 焊工代码 welder.PersonName,--焊工名称 (CASE WHEN welder.Sex ='2' THEN '女' ELSE '男' END) AS Sex, --性别 -------------本期start CAST(ISNULL(nowtotal_din.nowtotal_din,0) AS DECIMAL(19,2)) AS nowtotal_din, --本期总达因值 ISNULL(nowtotal_din.nowtotal_jot,0) AS nowtotal_jot, --本期总焊口 ISNULL(nowtotal_Rt.Rt_JotNum,0) AS rt_total_Jot, -- 本期已RT焊口数 ISNULL(nowtotal_repairjot.nowtotal_repairjot,0) AS nowtotal_repairjot, -- 本期RT返修焊口数 CONVERT(NVARCHAR(10),(CAST((CASE ISNULL(nowtotal_Rt.Rt_JotNum,0) WHEN 0 THEN 0 ELSE 100.0 * ISNULL(nowtotal_repairjot.nowtotal_repairjot,0)/(1.0 * nowtotal_Rt.Rt_JotNum) END) AS DECIMAL(8,1))))+'%' AS nowrepairrate, -- 本期RT返修率(焊口) ISNULL(nowtotalfilm.nowtotalfilm,0) AS nowtotalfilm, --本期RT拍片总数 ISNULL(nowtotalfilm.nopassfilm,0) AS nopassfilm, --本期RT不合格拍片数 CONVERT(NVARCHAR(10),(CAST((CASE ISNULL(nowtotalfilm.nowtotalfilm,0) WHEN 0 THEN 0 ELSE 100.0 * ISNULL(nowtotalfilm.nopassfilm,0)/(1.0 * nowtotalfilm.nowtotalfilm) END) AS DECIMAL(8,1))))+'%' AS nopassfilmrate , ---本期RT返修率(片数) teamGroup.TeamGroupName AS education, --所在班组 welder.IsUsed --在岗状态 FROM SitePerson_Person AS welder left join ProjectData_TeamGroup as teamGroup on teamGroup.TeamGroupId=welder.TeamGroupId --本期总达因值 --本期总焊口 LEFT JOIN (SELECT SUM(jot.Size) AS nowtotal_din ,COUNT(*) AS nowtotal_jot ,jot.CoverWelderId FROM dbo.HJGL_WeldJoint jot LEFT JOIN dbo.HJGL_Pipeline pipe ON pipe.PipelineId = jot.PipelineId LEFT JOIN dbo.HJGL_WeldingDaily daily ON daily.WeldingDailyId = jot.WeldingDailyId LEFT JOIN WBS_UnitWork UnitWork ON UnitWork.UnitWorkId = pipe.UnitWorkId WHERE jot.WeldingDailyId IS NOT NULL AND (daily.WeldingDate >= @date1 OR @date1 IS NULL) AND (daily.WeldingDate <= @date2 OR @date2 IS NULL) AND (pipe.UnitWorkId =@UnitWorkId OR @UnitWorkId IS NULL) AND (jot.Material1Id=@steel OR @steel IS NULL) GROUP BY jot.CoverWelderId) AS nowtotal_din ON nowtotal_din.CoverWelderId = welder.PersonId --本期已Rt焊口数 LEFT JOIN (SELECT COUNT(pointItem.PointBatchItemId) AS Rt_JotNum --RT焊口数 ,jot.CoverWelderId FROM dbo.HJGL_Batch_PointBatchItem pointItem LEFT JOIN dbo.HJGL_WeldJoint jot ON jot.WeldJointId = pointItem.WeldJointId LEFT JOIN dbo.HJGL_Batch_PointBatch point ON point.PointBatchId = pointItem.PointBatchId LEFT JOIN Base_DetectionType ndeType ON ndeType.DetectionTypeId = point.DetectionTypeId LEFT JOIN dbo.HJGL_Pipeline pipe ON pipe.PipelineId = jot.PipelineId LEFT JOIN dbo.HJGL_WeldingDaily daily ON daily.WeldingDailyId = jot.WeldingDailyId WHERE pointItem.PointDate IS NOT NULL AND ndeType.DetectionTypeCode='RT' --表示RT类型 AND (daily.WeldingDate >= @date1 OR @date1 IS NULL) AND (daily.WeldingDate <= @date2 OR @date2 IS NULL) AND (pipe.UnitWorkId =@UnitWorkId OR @UnitWorkId IS NULL) AND (jot.Material1Id=@steel OR @steel IS NULL) GROUP BY jot.CoverWelderId) AS nowtotal_Rt ON nowtotal_Rt.CoverWelderId = welder.PersonId -- 本期RT返口数 LEFT JOIN (SELECT COUNT(pointItem.PointBatchItemId) AS nowtotal_repairjot --返修口数 ,jot.CoverWelderId FROM dbo.HJGL_Batch_PointBatchItem pointItem LEFT JOIN dbo.HJGL_WeldJoint jot ON jot.WeldJointId = pointItem.WeldJointId LEFT JOIN dbo.HJGL_Batch_PointBatch point ON point.PointBatchId = pointItem.PointBatchId LEFT JOIN Base_DetectionType ndeType ON ndeType.DetectionTypeId = point.DetectionTypeId LEFT JOIN dbo.HJGL_Pipeline pipe ON pipe.PipelineId = jot.PipelineId LEFT JOIN dbo.HJGL_WeldingDaily daily ON daily.WeldingDailyId = jot.WeldingDailyId LEFT JOIN dbo.HJGL_Batch_BatchTrustItem trustItem ON trustItem.PointBatchItemId = pointItem.PointBatchItemId LEFT JOIN dbo.HJGL_Batch_NDEItem ndeItem ON ndeItem.TrustBatchItemId = trustItem.TrustBatchItemId WHERE pointItem.PointDate IS NOT NULL AND ndeType.DetectionTypeCode='RT' --表示RT类型 AND ndeItem.CheckResult='2' AND (daily.WeldingDate >= @date1 OR @date1 IS NULL) AND (daily.WeldingDate <= @date2 OR @date2 IS NULL) AND (pipe.UnitWorkId =@UnitWorkId OR @UnitWorkId IS NULL) AND (jot.Material1Id=@steel OR @steel IS NULL) GROUP BY jot.CoverWelderId) AS nowtotal_repairjot ON nowtotal_repairjot.CoverWelderId = welder.PersonId --本期RT总片数 LEFT JOIN (SELECT SUM(ndeItem.TotalFilm) AS nowtotalfilm ,SUM(ndeItem.PassFilm) AS nowpassfilm ,SUM(ndeItem.TotalFilm-ndeItem.PassFilm) AS nopassfilm, jot.CoverWelderId FROM dbo.HJGL_Batch_NDEItem ndeItem LEFT JOIN dbo.HJGL_Batch_BatchTrustItem trustItem ON trustItem.TrustBatchItemId = ndeItem.TrustBatchItemId LEFT JOIN dbo.HJGL_Batch_PointBatchItem pointItem ON pointItem.PointBatchItemId = trustItem.PointBatchItemId LEFT JOIN dbo.HJGL_Batch_PointBatch point ON point.PointBatchId = pointItem.PointBatchId LEFT JOIN Base_DetectionType ndeType ON ndeType.DetectionTypeId = point.DetectionTypeId LEFT JOIN dbo.HJGL_WeldJoint jot ON jot.WeldJointId = pointItem.WeldJointId LEFT JOIN dbo.HJGL_WeldingDaily daily ON daily.WeldingDailyId = jot.WeldingDailyId WHERE ndeType.DetectionTypeCode='RT' AND ndeItem.CheckResult IS NOT NULL --表示有检测结果 AND jot.WeldingDailyId IS NOT NULL AND (point.UnitWorkId=@UnitWorkId OR @UnitWorkId IS NULL) AND (jot.Material1Id=@steel OR @steel IS NULL) AND (daily.WeldingDate >= @date1 OR @date1 IS NULL) AND (daily.WeldingDate <= @date2 OR @date2 IS NULL) GROUP BY jot.CoverWelderId) AS nowtotalfilm ON nowtotalfilm.CoverWelderId = welder.PersonId WHERE (welder.WelderCode IS NOT NULL AND welder.WelderCode!='') AND (welder.ProjectId = @projectId OR @projectId IS NULL) AND (welder.UnitId=@unitcode OR @unitcode IS NULL) AND (welder.WorkPostId='19B8F2A9-28D3-4F20-867A-1B2237C2E228') AND (welder.PersonId=@wloName OR @wloname IS NULL) ORDER BY welder.WelderCode GO CREATE PROCEDURE Sp_HJGL_PreRateStatistic @ProjectId NVARCHAR(50), @ProjectType NCHAR(1), @Flag NVARCHAR(2) AS IF(@Flag='1') -- 管线 BEGIN SELECT v.ProjectId,v.UnitWorkName,v.ProjectType,v.TotalPipeNum, (CONVERT(NVARCHAR(6), CONVERT(DECIMAL(6,2), ISNULL(v1.PrePipeNum,0)*100.0/v.TotalPipeNum))+'%') AS PreRate FROM (SELECT u.UnitWorkName,pipe.ProjectId,u.ProjectType,COUNT(pipe.PipelineId) AS TotalPipeNum FROM dbo.HJGL_Pipeline pipe LEFT JOIN dbo.WBS_UnitWork u ON u.UnitWorkId = pipe.UnitWorkId WHERE pipe.ProjectId=@ProjectId AND u.ProjectType=@ProjectType GROUP BY u.UnitWorkName,pipe.ProjectId,u.ProjectType) v LEFT JOIN (SELECT u.UnitWorkName,pipe.ProjectId,u.ProjectType,COUNT(pipe.PipelineId) AS PrePipeNum FROM dbo.HJGL_Pipeline pipe LEFT JOIN dbo.WBS_UnitWork u ON u.UnitWorkId = pipe.UnitWorkId WHERE pipe.ProjectId=@ProjectId AND u.ProjectType=@ProjectType AND pipe.PipeArea='1' GROUP BY u.UnitWorkName,pipe.ProjectId,u.ProjectType) v1 ON v1.ProjectId = v.ProjectId AND v1.ProjectType = v.ProjectType AND v1.UnitWorkName = v.UnitWorkName END ELSE BEGIN SELECT v.ProjectId,v.UnitWorkName,v.ProjectType,v.TotalJointNum, (CONVERT(NVARCHAR(6), CONVERT(DECIMAL(6,2), ISNULL(v1.PreJointNum,0)*100.0/v.TotalJointNum))+'%') AS PreRate FROM (SELECT u.UnitWorkName,pipe.ProjectId,u.ProjectType,COUNT(jot.WeldJointId) AS TotalJointNum FROM dbo.HJGL_WeldJoint jot LEFT JOIN dbo.HJGL_Pipeline pipe ON pipe.PipelineId = jot.PipelineId LEFT JOIN dbo.WBS_UnitWork u ON u.UnitWorkId = pipe.UnitWorkId WHERE pipe.ProjectId=@ProjectId AND u.ProjectType=@ProjectType GROUP BY u.UnitWorkName,pipe.ProjectId,u.ProjectType) v LEFT JOIN (SELECT u.UnitWorkName,pipe.ProjectId,u.ProjectType,COUNT(jot.WeldJointId) AS PreJointNum FROM dbo.HJGL_WeldJoint jot LEFT JOIN dbo.HJGL_Pipeline pipe ON pipe.PipelineId = jot.PipelineId LEFT JOIN dbo.WBS_UnitWork u ON u.UnitWorkId = pipe.UnitWorkId WHERE pipe.ProjectId=@ProjectId AND u.ProjectType=@ProjectType AND jot.JointAttribute='预制口' GROUP BY u.UnitWorkName,pipe.ProjectId,u.ProjectType) v1 ON v1.ProjectId = v.ProjectId AND v1.ProjectType = v.ProjectType AND v1.UnitWorkName = v.UnitWorkName END GO