109 lines
		
	
	
		
			5.4 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
			
		
		
	
	
			109 lines
		
	
	
		
			5.4 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
| --安全的施工方案,url改成质量的施工方案
 | ||
| update sys_menu set url='CQMS/Solution/ConstructSolution.aspx' 
 | ||
| where url='HSSE/Solution/ConstructSolution.aspx' and menuname='施工方案' and MenuType='Menu_HSSE'
 | ||
| 
 | ||
| --创建游标将安全施工方案的数据插入质量的施工方案表
 | ||
| DECLARE @ConstructSolutionId nvarchar(50),
 | ||
| @ProjectId nvarchar(50),
 | ||
| @ConstructSolutionName nvarchar(50),--方案名称
 | ||
| @UnitId nvarchar(50),--施工单位
 | ||
| @SolutinType nvarchar(50),--方案类别
 | ||
| @ConstructSolutionCode nvarchar(50),--编号
 | ||
| @CompileDate datetime,--审批时间
 | ||
| @CompileMan nvarchar(50),--审批人
 | ||
| @States nvarchar(20),	--安全状态
 | ||
| @State nvarchar(20)--质量状态
 | ||
| 
 | ||
| 
 | ||
| DECLARE My_Cursor CURSOR --定义游标
 | ||
| FOR ( SELECT ConstructSolutionId, ProjectId,UnitId,SolutinType,ConstructSolutionCode
 | ||
| ,ConstructSolutionName,CompileDate,CompileMan,States FROM Solution_ConstructSolution ) 
 | ||
| OPEN My_Cursor;--打开游标 
 | ||
| FETCH NEXT  FROM My_Cursor INTO @ConstructSolutionId,@ProjectId,@UnitId,@SolutinType,@ConstructSolutionCode,
 | ||
| @ConstructSolutionName,
 | ||
| @CompileDate,@CompileMan,@States;--读取第一行数据
 | ||
| WHILE @@FETCH_STATUS=0
 | ||
|  --这里对游标的状态进行判断,如果为0,证明游标中有值
 | ||
| 		BEGIN
 | ||
| 		--状态已完成
 | ||
| 		if(@States='2')
 | ||
| 		begin
 | ||
| 			set @State='3'--状态已闭合
 | ||
| 		end
 | ||
| 		else
 | ||
| 		begin
 | ||
| 			set @State='1'--未闭合
 | ||
| 		end
 | ||
| 
 | ||
| 		--基础数据插入质量的施工方案主表
 | ||
| 		INSERT INTO Solution_CQMSConstructSolution(ConstructSolutionId,ProjectId,Code
 | ||
| 		,SolutionName,UnitId,SolutionType,CompileDate,CompileMan,State)
 | ||
| 		values(@ConstructSolutionId,@ProjectId,@ConstructSolutionCode,
 | ||
| 		@ConstructSolutionName,@UnitId,@SolutinType,
 | ||
| 		@CompileDate,@CompileMan,@State);
 | ||
| 		--插入附件表
 | ||
| 		insert into AttachFile(AttachFileId,ToKeyId,AttachSource,AttachUrl,menuid,AttachPath,ImageByte)
 | ||
| 		select newid(),ToKeyId,AttachSource,AttachUrl,'91C4BFDB-0A51-4992-99CC-EB4EC185593D',AttachPath,ImageByte from AttachFile
 | ||
| 		where ToKeyId=@ConstructSolutionId 
 | ||
| 		
 | ||
| 
 | ||
| 		FETCH NEXT 
 | ||
| 		FROM
 | ||
| 			My_Cursor INTO @ConstructSolutionId,@ProjectId,@UnitId,@SolutinType,@ConstructSolutionCode,
 | ||
| 		@ConstructSolutionName,
 | ||
| 		@CompileDate,@CompileMan,@States;
 | ||
| 		
 | ||
| 	END CLOSE My_Cursor;--关闭游标
 | ||
| DEALLOCATE My_Cursor;--释放游标
 | ||
| GO
 | ||
| 
 | ||
| --insert into Technique_CheckItemSet(CheckItemSetId,CheckItemName,SupCheckItem,CheckType,MapCode,IsEndLever,SortIndex)
 | ||
| --values('43594e1e-66e2-4664-bad7-feb12ea4844a','综合类','0','2','10','0','4')
 | ||
| --删除专项检查类别 -综合类型 -新型肺炎防控
 | ||
| delete from Check_CheckSpecial  where CheckItemSetId='43594e1e-66e2-4664-bad7-feb12ea4844a'
 | ||
| delete from Technique_CheckItemSet where CheckItemSetId='43594e1e-66e2-4664-bad7-feb12ea4844a'
 | ||
| go
 | ||
| delete from Check_CheckSpecial  where CheckItemSetId='4324d0f5-cf7b-4e89-be56-45ba131f5f2f'
 | ||
| delete from Technique_CheckItemSet where CheckItemSetId='4324d0f5-cf7b-4e89-be56-45ba131f5f2f'
 | ||
| go
 | ||
| 
 | ||
| --增加专项检查明细项字段-检查项内容、整改期限
 | ||
| alter table Check_CheckSpecialDetail add CheckItemSetId nvarchar(50)  null;
 | ||
| alter table Check_CheckSpecialDetail add CheckItemSetContent nvarchar(3000)  null;
 | ||
| alter table Check_CheckSpecialDetail add Rectification_Date datetime  null;
 | ||
| go
 | ||
| 
 | ||
| --为视图增加列
 | ||
| /*LEFT JOIN Sys_Const AS const ON const.ConstValue = detail.HandleStep and const.GroupId='HandleStep'*/
 | ||
| ALTER VIEW [dbo].[View_CheckSpecialDetail]
 | ||
| AS
 | ||
| SELECT  detail.CheckSpecialDetailId, detail.CheckSpecialId, detail.CheckItem, checkItemSet.CheckItemName, detail.Unqualified, 
 | ||
|                    detail.SortIndex, detail.UnitId, detail.HandleStep, detail.CompleteStatus, 
 | ||
|                    (CASE WHEN detail.CompleteStatus = 1 THEN '已整改' ELSE '待整改' END) AS CompleteStatusName, detail.LimitedDate, 
 | ||
|                    detail.CompletedDate, detail.CheckContent, detail.CheckArea, 
 | ||
|                    workArea.UnitWorkName + (CASE WHEN workArea.ProjectType = '1' THEN '(建筑)' WHEN workArea.ProjectType = '2' THEN '(安装)'
 | ||
|                     ELSE '' END) AS CheckAreaName, detail.DataId, detail.DataType, unit.UnitName, 
 | ||
|                    dbo.GetConstTextByIds(detail.HandleStep) AS HandleStepStr, 
 | ||
|                    (CASE WHEN detail.DataType LIKE '%1%' THEN '下发整改单:' +
 | ||
|                        (SELECT  RectifyNoticesCode
 | ||
|                         FROM       Check_RectifyNotices
 | ||
|                         WHERE    detail.DataId LIKE '%' + RectifyNoticesId + '%') ELSE '' END) 
 | ||
|                    + (CASE WHEN detail.DataType LIKE '%2%' THEN '下发处罚单:' +
 | ||
|                        (SELECT  PunishNoticeCode
 | ||
|                         FROM       Check_PunishNotice
 | ||
|                         WHERE    detail.DataId LIKE '%' + PunishNoticeId + '%') ELSE '' END) 
 | ||
|                    + (CASE WHEN detail.DataType = '3' THEN '下发暂停令:' +
 | ||
|                        (SELECT  PauseNoticeCode
 | ||
|                         FROM       Check_PauseNotice
 | ||
|                         WHERE    detail.DataId LIKE '%' + PauseNoticeId + '%') ELSE '' END) AS HandleStepLink, detail.HiddenHazardType, 
 | ||
|                    (CASE WHEN detail.HiddenHazardType = '3' THEN '重大' WHEN detail.HiddenHazardType = '2' THEN '较大' WHEN detail.HiddenHazardType
 | ||
|                     = '1' THEN '一般' ELSE '' END) AS HiddenHazardTypeName, detail.CheckItemSetId, detail.CheckItemSetContent, 
 | ||
|                    detail.Rectification_Date
 | ||
| FROM      dbo.Check_CheckSpecialDetail AS detail LEFT OUTER JOIN
 | ||
|                    dbo.Technique_CheckItemSet AS checkItemSet ON checkItemSet.CheckItemSetId = detail.CheckItem LEFT OUTER JOIN
 | ||
|                    dbo.Base_Unit AS unit ON unit.UnitId = detail.UnitId LEFT OUTER JOIN
 | ||
|                    dbo.WBS_UnitWork AS workArea ON detail.CheckArea = workArea.UnitWorkId
 | ||
| 
 | ||
| GO
 | ||
| 
 |