CNCEC_SUBQHSE_WUHUAN/DataBase/版本日志/SGGLDB_WH_V2024-09-11-bwj.sql

111 lines
4.4 KiB
Transact-SQL

insert into Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
values('FB94A120-921B-4AAB-B54F-EC11B6F561FD','单位分部分项工程划分、裁剪','CQMS/WBS/Control/DivisionDivideAndCrop.aspx',15,'3B322232-38A1-4291-9832-CD4A01C2A975','Menu_CQMS',0,1,1)
go
insert into Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex)
values('3829D89E-BFDE-4956-BC25-E00729DFCE62','FB94A120-921B-4AAB-B54F-EC11B6F561FD','保存',1)
go
insert into Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
values('BA250432-492B-49A3-8BB6-D04BF74D2EDD','单位分部分项工程划分表','CQMS/WBS/Control/DivisionDivideList.aspx',16,'3B322232-38A1-4291-9832-CD4A01C2A975','Menu_CQMS',0,1,1)
go
CREATE TABLE [dbo].[WBS_DivisionDivide](
[DivisionDivideId] [nvarchar](50) NOT NULL,
[ProjectId] [nvarchar](50) NULL,
[UnitWorkId] [nvarchar](50) NULL,
[DivisionId] [varchar](50) NULL,
CONSTRAINT [PK_Division_DivisionDivide] PRIMARY KEY CLUSTERED
(
[DivisionDivideId] 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].[WBS_DivisionDivide] WITH CHECK ADD CONSTRAINT [FK_WBS_DivisionDivide_Base_Project] FOREIGN KEY([ProjectId])
REFERENCES [dbo].[Base_Project] ([ProjectId])
GO
ALTER TABLE [dbo].[WBS_DivisionDivide] CHECK CONSTRAINT [FK_WBS_DivisionDivide_Base_Project]
GO
ALTER TABLE [dbo].[WBS_DivisionDivide] WITH CHECK ADD CONSTRAINT [FK_WBS_DivisionDivide_Division_SubProjects] FOREIGN KEY([DivisionId])
REFERENCES [dbo].[Division_SubProjects] ([DivisionId])
GO
ALTER TABLE [dbo].[WBS_DivisionDivide] CHECK CONSTRAINT [FK_WBS_DivisionDivide_Division_SubProjects]
GO
ALTER TABLE [dbo].[WBS_DivisionDivide] WITH CHECK ADD CONSTRAINT [FK_WBS_DivisionDivide_WBS_UnitWork] FOREIGN KEY([UnitWorkId])
REFERENCES [dbo].[WBS_UnitWork] ([UnitWorkId])
GO
ALTER TABLE [dbo].[WBS_DivisionDivide] CHECK CONSTRAINT [FK_WBS_DivisionDivide_WBS_UnitWork]
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WBS_DivisionDivide', @level2type=N'COLUMN',@level2name=N'DivisionDivideId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WBS_DivisionDivide', @level2type=N'COLUMN',@level2name=N'ProjectId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'单位工程/子单位工程Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WBS_DivisionDivide', @level2type=N'COLUMN',@level2name=N'UnitWorkId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'分部分项' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WBS_DivisionDivide', @level2type=N'COLUMN',@level2name=N'DivisionId'
GO
CREATE VIEW View_WBS_DivisionDivide
AS
/*********单位分部分项工程划分表*********/
SELECT
DD.DivisionDivideId,
DD.ProjectId,
DD.UnitWorkId,
DD.DivisionId,
SupUW.UnitWorkCode AS SupUnitWorkCode,
SupUW.UnitWorkName AS SupUnitWorkName,
NULL AS ChildUnitWorkCode,
NULL AS ChildUnitWorkName,
SupUW.SuperUnitWork,
SP.BranchEngineeringCode,
SP.BranchEngineeringName,
SP.SubBranchEngineeringName,
SP.ProEngineeringCode,
SP.ProEngineeringName,
SP.ProEngineeringNum,
SP.DivisionLevel,
SP.Sort,
SP.ParentId
FROM WBS_DivisionDivide DD
LEFT JOIN WBS_UnitWork AS SupUW ON SupUW.UnitWorkId=DD.UnitWorkId
LEFT JOIN WBS_UnitWork AS ChildUW ON ChildUW.SuperUnitWork = SupUW.UnitWorkId
LEFT JOIN Division_SubProjects AS SP ON SP.DivisionId = DD.DivisionId
WHERE (SupUW.SuperUnitWork='0' or SupUW.SuperUnitWork is null)
UNION
SELECT
DD.DivisionDivideId,
DD.ProjectId,
DD.UnitWorkId,
DD.DivisionId,
SupUW.UnitWorkCode AS SupUnitWorkCode,
SupUW.UnitWorkName AS SupUnitWorkName,
ChildUW.UnitWorkCode AS ChildUnitWorkCode,
ChildUW.UnitWorkName AS ChildUnitWorkName,
ChildUW.SuperUnitWork,
SP.BranchEngineeringCode,
SP.BranchEngineeringName,
SP.SubBranchEngineeringName,
SP.ProEngineeringCode,
SP.ProEngineeringName,
SP.ProEngineeringNum,
SP.DivisionLevel,
SP.Sort,
SP.ParentId
FROM WBS_DivisionDivide DD
LEFT JOIN WBS_UnitWork AS ChildUW ON ChildUW.UnitWorkId = DD.UnitWorkId
LEFT JOIN WBS_UnitWork AS SupUW ON SupUW.UnitWorkId=ChildUW.SuperUnitWork
LEFT JOIN Division_SubProjects AS SP ON SP.DivisionId = DD.DivisionId
WHERE ChildUW.SuperUnitWork <> '0' AND ChildUW.SuperUnitWork IS NOT NULL
Go