This commit is contained in:
2026-11-06 10:47:24 +08:00
parent ae52e422f9
commit 0b549c49ec
@@ -285,25 +285,6 @@ BEGIN
AND tba.TestRecordId NOT IN (SELECT RECORD_ID FROM SANKU_EXAMINATION WITH(NOLOCK));
END
IF @type = 'SANKU_DANGEROUS_ENGINEERING' OR @trimType = ''
BEGIN
--危大工程数据初始化
INSERT INTO SANKU_DANGEROUS_ENGINEERING(RECORD_ID,PROJECT_CODE,PROJECT_NAME,SUBCONTRACTOR_ID,SUBCONTRACTOR_CODE,SUBCONTRACTOR_NAME,ENGINEERING_DATE,ENGINEERING_NAME,ENGINEERING_TYPE,ENGINEERING_ADDRESS,ENGINEERING_DESC,STANDBY_PERSONNEL_ID_NUMBER,STANDBY_PERSONNEL_NAME,SUBMITTER_ID_NUMBER,SUBMITTER_NAME,UPDATE_TIME,CREATE_TIME)
SELECT tba.HazardId,pms.pro_code,pms.pro_name
,bu.MasterAdOrgCode,bu.CollCropCode,CASE WHEN bu.MasterAdOrgCode IS NULL OR LTRIM(RTRIM(bu.MasterAdOrgCode)) = '' THEN bu.UnitName ELSE bu.MasterAdOrgName END AS UnitName
,ISNULL(tba.ExpectedTime,GETDATE()) AS ExpectedTime,tba.HazardName,sc.ConstText,tba.Address,tba.Descriptions,spp.IdentityCard,spp.PersonName,suc.IdentityCard,suc.UserName,tba.RecordTime,tba.RecordTime
FROM Solution_LargerHazard AS tba WITH(NOLOCK)
LEFT JOIN Base_Unit AS bu WITH(NOLOCK) ON bu.UnitId = tba.UnitId --AND LEN(bu.CollCropCode)=18
LEFT JOIN SitePerson_Person AS spp WITH(NOLOCK) ON spp.PersonId = tba.StandbyPersonnelId
LEFT JOIN Sys_Const AS sc WITH(NOLOCK) ON sc.GroupId='LargerHazardType' AND sc.ConstValue= tba.HazardType
LEFT JOIN Sys_User AS suc WITH(NOLOCK) ON suc.UserId = tba.RecardMan
LEFT JOIN Base_Project AS bp WITH(NOLOCK) ON bp.ProjectId = tba.ProjectId
LEFT JOIN ads_pms_pro_info_build AS pms WITH(NOLOCK) ON pms.pro_id = bp.MasterSysId
WHERE tba.RecordTime>='2026-01-01' AND LEN(suc.IdentityCard)=18 AND LEN(spp.IdentityCard)=18
AND (bu.MasterAdOrgCode IS NOT NULL OR LEN(bu.CollCropCode)=18) AND bp.MasterSysId IS NOT NULL AND pms.pro_code IS NOT NULL
AND tba.HazardId NOT IN (SELECT RECORD_ID FROM SANKU_DANGEROUS_ENGINEERING WITH(NOLOCK));
END
IF @type = 'SANKU_DANGEROUS_ENGINEERING' OR @trimType = ''
BEGIN
--危大工程数据初始化
@@ -323,6 +304,29 @@ BEGIN
AND tba.HazardId NOT IN (SELECT RECORD_ID FROM SANKU_DANGEROUS_ENGINEERING WITH(NOLOCK));
END
IF @type = 'SANKU_DANGEROUS_ENGINEERING_DUTY_RECORD' OR @trimType = ''
BEGIN
--危大工程履职记录
INSERT INTO SANKU_DANGEROUS_ENGINEERING_DUTY_RECORD(DANGEROUS_ID,RECORD_ID,PROJECT_CODE,PROJECT_NAME,SUBCONTRACTOR_ID,SUBCONTRACTOR_CODE,SUBCONTRACTOR_NAME,DUTY_START_TIME,DUTY_END_TIME,DUTY_LEVEL,DUTY_ROLE,DUTY_PERSONNEL,ID_NUMBER,SUBMITTER_ID_NUMBER,SUBMITTER_NAME,UPDATE_TIME,CREATE_TIME)
SELECT tba.DANGEROUS_ID,slh.HazardId,tba.PROJECT_CODE,tba.PROJECT_NAME,bu.MasterAdOrgCode,bu.CollCropCode,
CASE WHEN bu.MasterAdOrgCode IS NULL OR LTRIM(RTRIM(bu.MasterAdOrgCode)) = '' THEN bu.UnitName ELSE bu.MasterAdOrgName END AS UnitName,
slh.ExpectedTime,slh.ExpectedTime,CASE WHEN pput.UnitType = '1' THEN '总包履职' WHEN pput.UnitType = '2' THEN '分包履职' ELSE '其他' END AS DutyLevel,
ISNULL(sr.RoleName,'其他'),ppusu.UserName,ppusu.IdentityCard,suc.IdentityCard,suc.UserName,ISNULL(slh.RecordTime,slh.ExpectedTime) AS CompileDate1,ISNULL(slh.RecordTime,slh.ExpectedTime) AS CompileDate2
FROM SANKU_DANGEROUS_ENGINEERING AS tba WITH(NOLOCK)
LEFT JOIN Solution_LargerHazard AS slh WITH(NOLOCK) ON slh.HazardId = tba.RECORD_ID
LEFT JOIN Sys_User AS suc WITH(NOLOCK) ON suc.UserId = slh.RecardMan
LEFT JOIN Project_ProjectUser AS ppu WITH(NOLOCK) ON ppu.ProjectId = slh.ProjectId
LEFT JOIN Project_ProjectUnit AS pput WITH(NOLOCK) ON pput.UnitId = ppu.UnitId AND pput.ProjectId = slh.ProjectId
LEFT JOIN Base_Unit AS bu WITH(NOLOCK) ON bu.UnitId = ppu.UnitId
LEFT JOIN Sys_User AS ppusu WITH(NOLOCK) ON ppusu.UserId = ppu.UserId
LEFT JOIN Sys_Role AS sr WITH(NOLOCK) ON sr.RoleId = ppu.RoleId
WHERE ppusu.UserId IS NOT NULL AND LEN(ppusu.IdentityCard) = 18 AND ppu.IsPost = 1 AND (bu.MasterAdOrgCode IS NOT NULL OR LEN(bu.CollCropCode) = 18)
AND (sr.RoleName like '%经理%' OR sr.RoleName like '%安全员%' OR sr.RoleName like '%负责%' )
AND NOT EXISTS (SELECT 1 FROM SANKU_DANGEROUS_ENGINEERING_DUTY_RECORD AS bp WITH(NOLOCK) WHERE bp.RECORD_ID = slh.HazardId AND bp.ID_NUMBER = ppusu.IdentityCard )
ORDER BY tba.DANGEROUS_ID;
END
IF @type = 'SANKU_GRID_PATROL' OR @trimType = ''
BEGIN
--网格化巡查记录数据初始化