SGGL_SHJ/DataBase/版本日志/已更新脚本/SGGLDB_V2022-05-17-001.sql

722 lines
40 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.

-- 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 --探伤比例例如51020
,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