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

722 lines
40 KiB
Transact-SQL
Raw Normal View History

2022-09-05 16:36:31 +08:00
-- 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