Files
SGGL_SHJ/DataBase/版本日志/已更新脚本/SGGLDB_V2022-09-05.sql
T
2022-09-09 09:53:55 +08:00

230 lines
13 KiB
Transact-SQL

ALTER VIEW [dbo].[View_APP_GetToDoItems]
AS
/*待办事项信息视图*/
SELECT ProjectId,PersonId,PersonName,MenuName
FROM
(SELECT HazardRegisterId AS DataId,'安全巡检' AS MenuName,PersonId,users.PersonName,register.ProjectId
FROM HSSE_Hazard_HazardRegister AS register
LEFT JOIN Person_Persons AS users ON users.PersonId =register.ResponsibleMan
WHERE PersonId IS NOT NULL AND register.states = '1'
UNION ALL
SELECT HazardRegisterId AS DataId,'安全巡检' AS MenuName,PersonId,users.PersonName,register.ProjectId
FROM HSSE_Hazard_HazardRegister AS register
LEFT JOIN Person_Persons AS users ON users.PersonId = register.CheckManId
WHERE PersonId IS NOT NULL AND register.states = '2'
UNION ALL
SELECT PlanId AS DataId,'培训计划' AS MenuName,PersonId,users.PersonName,p.ProjectId
FROM Training_Plan AS p
LEFT JOIN Person_Persons AS users ON p.DesignerId= users.PersonId
WHERE PersonId IS NOT NULL AND (States = '0' OR States = '1')
UNION ALL
SELECT TestPlanId AS DataId ,'考试计划' AS MenuName,PersonId,users.PersonName,TPlan.ProjectId
FROM Training_TestPlan AS TPlan
LEFT JOIN Person_Persons AS users ON users.PersonId =TPlan.PlanManId
WHERE PersonId IS NOT NULL AND (States = '0' OR States = '1' )
UNION ALL
SELECT FireWorkId AS DataId,'动火作业' AS MenuName,PersonId,users.PersonName,License.ProjectId
FROM License_FireWork AS License
LEFT JOIN Person_Persons AS users ON (users.PersonId =License.NextManId OR License.NextManId LIKE '%'+ users.PersonId+'%')
WHERE PersonId IS NOT NULL AND (States = '0' OR States = '1')
UNION ALL
SELECT HeightWorkId AS DataId,'高处作业' AS MenuName,PersonId,users.PersonName,License.ProjectId
FROM License_HeightWork AS License
LEFT JOIN Person_Persons AS users ON (users.PersonId =License.NextManId OR License.NextManId LIKE '%'+ users.PersonId+'%')
WHERE PersonId IS NOT NULL AND (States = '0' OR States = '1')
UNION ALL
SELECT LimitedSpaceId AS DataId,'受限空间' AS MenuName,PersonId,users.PersonName,License.ProjectId
FROM License_LimitedSpace AS License
LEFT JOIN Person_Persons AS users ON (users.PersonId =License.NextManId OR License.NextManId LIKE '%'+ users.PersonId+'%')
WHERE PersonId IS NOT NULL AND (States = '0' OR States = '1')
UNION ALL
SELECT RadialWorkId AS DataId,'射线作业' AS MenuName,PersonId,users.PersonName,License.ProjectId
FROM License_RadialWork AS License
LEFT JOIN Person_Persons AS users ON (users.PersonId =License.NextManId OR License.NextManId LIKE '%'+ users.PersonId+'%')
WHERE PersonId IS NOT NULL AND (States = '0' OR States = '1')
UNION ALL
SELECT OpenCircuitId AS DataId,'断路(占道)' AS MenuName,PersonId,users.PersonName,License.ProjectId
FROM License_OpenCircuit AS License
LEFT JOIN Person_Persons AS users ON (users.PersonId =License.NextManId OR License.NextManId LIKE '%'+ users.PersonId+'%')
WHERE PersonId IS NOT NULL AND (States = '0' OR States = '1')
UNION ALL
SELECT BreakGroundId AS DataId,'动土作业' AS MenuName,PersonId,users.PersonName,License.ProjectId
FROM License_BreakGround AS License
LEFT JOIN Person_Persons AS users ON (users.PersonId =License.NextManId OR License.NextManId LIKE '%'+ users.PersonId+'%')
WHERE PersonId IS NOT NULL AND (States = '0' OR States = '1')
UNION ALL
SELECT NightWorkId AS DataId,'夜间施工' AS MenuName,PersonId,users.PersonName,License.ProjectId
FROM License_NightWork AS License
LEFT JOIN Person_Persons AS users ON (users.PersonId =License.NextManId OR License.NextManId LIKE '%'+ users.PersonId+'%')
WHERE PersonId IS NOT NULL AND (States = '0' OR States = '1')
UNION ALL
SELECT LiftingWorkId AS DataId,'吊装作业' AS MenuName,PersonId,users.PersonName,License.ProjectId
FROM License_LiftingWork AS License
LEFT JOIN Person_Persons AS users ON (users.PersonId =License.NextManId OR License.NextManId LIKE '%'+ users.PersonId+'%')
WHERE PersonId IS NOT NULL AND (States = '0' OR States = '1')
UNION ALL
SELECT Person.PersonId AS DataId,'现场人员' AS MenuName,Person.PersonId,users.PersonName,Person.ProjectId
FROM SitePerson_Person AS Person
LEFT JOIN Person_Persons AS users ON Person.AuditorId =users.PersonId
WHERE Person.PersonId IS NOT NULL AND Person.States ='0'
UNION ALL
SELECT PersonQualityId AS DataId,'特种作业人员' AS MenuName,users.PersonId,users.PersonName,Person.ProjectId
FROM QualityAudit_PersonQuality AS p
LEFT JOIN SitePerson_Person AS Person ON Person.PersonId =p.PersonId
LEFT JOIN Person_Persons AS users ON users.PersonId =p.AuditorId
WHERE Person.PersonId IS NOT NULL AND p.States ='1'
UNION ALL
SELECT SafePersonQualityId AS DataId,'安管人员' AS MenuName,users.PersonId,users.PersonName,Person.ProjectId
FROM QualityAudit_SafePersonQuality AS p
LEFT JOIN SitePerson_Person AS Person ON Person.PersonId =p.PersonId
LEFT JOIN Person_Persons AS users ON users.PersonId =p.AuditorId
WHERE Person.PersonId IS NOT NULL AND p.States ='1'
UNION ALL
SELECT EquipmentPersonQualityId AS DataId,'特种设备作业人员' AS MenuName,users.PersonId,users.PersonName,Person.ProjectId
FROM QualityAudit_EquipmentPersonQuality AS p
LEFT JOIN SitePerson_Person AS Person ON Person.PersonId =p.PersonId
LEFT JOIN Person_Persons AS users ON users.PersonId =p.AuditorId
WHERE Person.PersonId IS NOT NULL AND p.States ='1'
UNION ALL
SELECT TaskId AS DataId,'培训任务' AS MenuName,users.PersonId,users.PersonName,Task.ProjectId
FROM Training_Task AS Task
LEFT JOIN Person_Persons AS users ON users.PersonId =Task.UserId
WHERE users.PersonId IS NOT NULL AND (Task.States IS NULL OR Task.States != 2)
UNION ALL
SELECT RectifyNoticesId AS DataId,'隐患整改' AS MenuName,users.PersonId,users.PersonName,Rectify.ProjectId
FROM Check_RectifyNotices AS Rectify
LEFT JOIN Person_Persons AS users ON Rectify.CompleteManId = users.PersonId
WHERE PersonId IS NOT NULL AND ISNULL(Rectify.States,0) =0
UNION ALL
(SELECT RectifyNoticesId AS DataId,'隐患整改' AS MenuName,users.PersonId,users.PersonName,Rectify.ProjectId
FROM Check_RectifyNotices AS Rectify
LEFT JOIN Person_Persons AS users ON Rectify.SignPerson= users.PersonId
WHERE PersonId IS NOT NULL AND Rectify.States =1
UNION ALL
SELECT RectifyNoticesId AS DataId,'隐患整改' AS MenuName,users.PersonId,users.PersonName,Rectify.ProjectId
FROM Check_RectifyNotices AS Rectify
LEFT JOIN Person_Persons AS users ON Rectify.DutyPersonId= users.PersonId
WHERE PersonId IS NOT NULL AND Rectify.States =2
UNION ALL
SELECT RectifyNoticesId AS DataId,'隐患整改' AS MenuName,users.PersonId,users.PersonName,Rectify.ProjectId
FROM Check_RectifyNotices AS Rectify
LEFT JOIN Person_Persons AS users ON Rectify.UnitHeadManId =users.PersonId
WHERE PersonId IS NOT NULL AND Rectify.States =3
UNION ALL
SELECT RectifyNoticesId AS DataId,'隐患整改' AS MenuName,users.PersonId,users.PersonName,Rectify.ProjectId
FROM Check_RectifyNotices AS Rectify
LEFT JOIN Person_Persons AS users ON Rectify.CheckPerson =users.PersonId
WHERE PersonId IS NOT NULL AND Rectify.States =4
UNION ALL
SELECT RectifyNoticesId AS DataId,'隐患整改' AS MenuName,users.PersonId,users.PersonName,Rectify.ProjectId
FROM Check_RectifyNotices AS Rectify
LEFT JOIN Person_Persons AS users ON Rectify.ProfessionalEngineerId =users.PersonId
WHERE PersonId IS NOT NULL AND Rectify.States <> 5 AND (ProfessionalEngineerTime1 IS NULL OR ProfessionalEngineerTime2 IS NULL)
UNION ALL
SELECT RectifyNoticesId AS DataId,'隐患整改' AS MenuName,users.PersonId,users.PersonName,Rectify.ProjectId
FROM Check_RectifyNotices AS Rectify
LEFT JOIN Person_Persons AS users ON Rectify.ConstructionManagerId =users.PersonId
WHERE PersonId IS NOT NULL AND Rectify.States <> 5 AND (ConstructionManagerTime1 IS NULL OR ConstructionManagerTime2 IS NULL)
UNION ALL
SELECT RectifyNoticesId AS DataId,'隐患整改' AS MenuName,users.PersonId,users.PersonName,Rectify.ProjectId
FROM Check_RectifyNotices AS Rectify
LEFT JOIN Person_Persons AS users ON Rectify.ProjectManagerId =users.PersonId
WHERE PersonId IS NOT NULL AND Rectify.States <> 5 AND (ProjectManagerTime1 IS NULL OR ProjectManagerTime2 IS NULL))
UNION ALL
(SELECT PauseNoticeId AS DataId,'暂停令' AS MenuName,users.PersonId,users.PersonName,PauseNotice.ProjectId
FROM Check_PauseNotice AS PauseNotice
LEFT JOIN Person_Persons AS users ON PauseNotice.CompileManId = users.PersonId
WHERE PersonId IS NOT NULL AND ISNULL(PauseNotice.PauseStates,0) =0
UNION ALL
SELECT PauseNoticeId AS DataId,'暂停令' AS MenuName,users.PersonId,users.PersonName,PauseNotice.ProjectId
FROM Check_PauseNotice AS PauseNotice
LEFT JOIN Person_Persons AS users ON PauseNotice.SignManId= users.PersonId
WHERE PersonId IS NOT NULL AND PauseNotice.PauseStates =1
UNION ALL
SELECT PauseNoticeId AS DataId,'暂停令' AS MenuName,users.PersonId,users.PersonName,PauseNotice.ProjectId
FROM Check_PauseNotice AS PauseNotice
LEFT JOIN Person_Persons AS users ON PauseNotice.ApproveManId= users.PersonId
WHERE PersonId IS NOT NULL AND PauseNotice.PauseStates =2
UNION ALL
SELECT PauseNoticeId AS DataId,'暂停令' AS MenuName,users.PersonId,users.PersonName,PauseNotice.ProjectId
FROM Check_PauseNotice AS PauseNotice
LEFT JOIN Person_Persons AS users ON PauseNotice.DutyPersonId =users.PersonId
WHERE PersonId IS NOT NULL AND PauseNotice.PauseStates =3
UNION ALL
SELECT PauseNoticeId AS DataId,'暂停令' AS MenuName,users.PersonId,users.PersonName,PauseNotice.ProjectId
FROM Check_PauseNotice AS PauseNotice
LEFT JOIN Person_Persons AS users ON PauseNotice.ProfessionalEngineerId =users.PersonId
WHERE PersonId IS NOT NULL AND PauseNotice.PauseStates <> 4 AND ProfessionalEngineerTime IS NULL
UNION ALL
SELECT PauseNoticeId AS DataId,'暂停令' AS MenuName,users.PersonId,users.PersonName,PauseNotice.ProjectId
FROM Check_PauseNotice AS PauseNotice
LEFT JOIN Person_Persons AS users ON PauseNotice.ConstructionManagerId =users.PersonId
WHERE PersonId IS NOT NULL AND PauseNotice.PauseStates <> 4 AND ConstructionManagerTime IS NULL
UNION ALL
SELECT PauseNoticeId AS DataId,'暂停令' AS MenuName,users.PersonId,users.PersonName,PauseNotice.ProjectId
FROM Check_PauseNotice AS PauseNotice
LEFT JOIN Person_Persons AS users ON PauseNotice.UnitHeadManId =users.PersonId
WHERE PersonId IS NOT NULL AND PauseNotice.PauseStates <> 4 AND UnitHeadManTime IS NULL
UNION ALL
SELECT PauseNoticeId AS DataId,'暂停令' AS MenuName,users.PersonId,users.PersonName,PauseNotice.ProjectId
FROM Check_PauseNotice AS PauseNotice
LEFT JOIN Person_Persons AS users ON PauseNotice.SupervisorManId =users.PersonId
WHERE PersonId IS NOT NULL AND PauseNotice.PauseStates <> 4 AND SupervisorManTime IS NULL
UNION ALL
SELECT PauseNoticeId AS DataId,'暂停令' AS MenuName,users.PersonId,users.PersonName,PauseNotice.ProjectId
FROM Check_PauseNotice AS PauseNotice
LEFT JOIN Person_Persons AS users ON PauseNotice.OwnerId =users.PersonId
WHERE PersonId IS NOT NULL AND PauseNotice.PauseStates <> 4 AND OwnerTime IS NULL)
) AS V
GO
CREATE TABLE [dbo].[Person_PersonContract](
[PersonContractId] [nvarchar](50) NOT NULL,
[PersonId] [nvarchar](50) NULL,
[UnitId] [nvarchar](50) NULL,
[ProjectId] [nvarchar](50) NULL,
[LeadManId] [nvarchar](50) NULL,
[Telephone] [nvarchar](50) NULL,
[ContractType] [nvarchar](50) NULL,
[StartDate] [datetime] NULL,
[EndDate] [datetime] NULL,
CONSTRAINT [PK_Person_PersonContract] PRIMARY KEY CLUSTERED
(
[PersonContractId] 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
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_PersonContract', @level2type=N'COLUMN',@level2name=N'PersonContractId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'人员ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_PersonContract', @level2type=N'COLUMN',@level2name=N'PersonId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'单位ID(甲方)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_PersonContract', @level2type=N'COLUMN',@level2name=N'UnitId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_PersonContract', @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'Person_PersonContract', @level2type=N'COLUMN',@level2name=N'LeadManId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'联系电话' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_PersonContract', @level2type=N'COLUMN',@level2name=N'Telephone'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'合同类型' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_PersonContract', @level2type=N'COLUMN',@level2name=N'ContractType'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'培训日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_PersonContract', @level2type=N'COLUMN',@level2name=N'StartDate'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'人员合同表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person_PersonContract'
GO