From d357bdb7d5fce4cbadfb89f6e535c2e32bdaf62b Mon Sep 17 00:00:00 2001
From: xiaju <1784803958@qq.com>
Date: Thu, 22 Oct 2026 19:09:46 +0800
Subject: [PATCH] =?UTF-8?q?=E4=B8=89=E5=BA=93=E8=A1=A5=E5=85=85=E5=AD=97?=
=?UTF-8?q?=E6=AE=B5?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../版本日志/SUBQHSE_V2026-10-21-xiaj.sql | 57 ++++
...HSE_V2026-10-21-xiaj(SP_SANKU_DATA_INIT).sql | 280 ++++++++++++++++++
.../SanKu/SanKuDataSummaryReportService.cs | 72 ++++-
.../SanKu/DangerousEngineering.aspx | 6 +
.../SanKu/DangerousEngineering.aspx.cs | 2 +-
SGGL/FineUIPro.Web/SanKu/GridPatrol.aspx | 10 +-
SGGL/FineUIPro.Web/SanKu/GridPatrol.aspx.cs | 2 +-
SGGL/FineUIPro.Web/SanKu/Hazard.aspx | 3 +
SGGL/FineUIPro.Web/SanKu/Hazard.aspx.cs | 2 +-
SGGL/FineUIPro.Web/SanKu/VioLation.aspx | 5 +-
SGGL/FineUIPro.Web/SanKu/VioLation.aspx.cs | 4 +-
SGGL/Model/Model.cs | 148 ++++++++-
SGGL/Model/SanKu/SankuDangerousEngineering.cs | 2 +
SGGL/Model/SanKu/SankuGridPatrol.cs | 2 +
SGGL/Model/SanKu/SankuHazard.cs | 1 +
SGGL/Model/SanKu/SankuViolation.cs | 1 +
16 files changed, 585 insertions(+), 12 deletions(-)
create mode 100644 DataBase/版本日志/SUBQHSE_V2026-10-21-xiaj.sql
create mode 100644 DataBase/版本日志/SUBQHSE_V2026-10-21-xiaj(SP_SANKU_DATA_INIT).sql
diff --git a/DataBase/版本日志/SUBQHSE_V2026-10-21-xiaj.sql b/DataBase/版本日志/SUBQHSE_V2026-10-21-xiaj.sql
new file mode 100644
index 00000000..31456429
--- /dev/null
+++ b/DataBase/版本日志/SUBQHSE_V2026-10-21-xiaj.sql
@@ -0,0 +1,57 @@
+
+--Î¥ÕÂ×÷Òµ£º²¹³äÎ¥Õ¼¶±ð
+IF NOT EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'SANKU_VIOLATION' AND COLUMN_NAME = 'VIOLATION_LEVEL')
+BEGIN
+ --Î¥Õ¼¶±ð
+ ALTER TABLE SANKU_VIOLATION ADD VIOLATION_LEVEL varchar(20);
+ EXEC sp_addextendedproperty 'MS_Description', N'Î¥Õ¼¶±ð','SCHEMA', N'dbo','TABLE', N'SANKU_VIOLATION','COLUMN', N'VIOLATION_LEVEL';
+END
+GO
+--Òþ»¼¼Ç¼£º²¹³äÕû¸ÄÍê³Éʱ¼ä
+IF NOT EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'SANKU_HAZARD' AND COLUMN_NAME = 'ECTIFICATION_COMPLETIONDATE')
+BEGIN
+ --Õû¸ÄÍê³Éʱ¼ä
+ ALTER TABLE SANKU_HAZARD ADD ECTIFICATION_COMPLETIONDATE datetime;
+ EXEC sp_addextendedproperty 'MS_Description', N'Õû¸ÄÍê³Éʱ¼ä','SCHEMA', N'dbo','TABLE', N'SANKU_HAZARD','COLUMN', N'ECTIFICATION_COMPLETIONDATE';
+END
+GO
+--Σ´ó¹¤³Ì£ºµÈ¼¶¡¢×´Ì¬
+IF NOT EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'SANKU_DANGEROUS_ENGINEERING' AND COLUMN_NAME = 'ENGINEERING_LEVEL')
+BEGIN
+ --µÈ¼¶
+ ALTER TABLE SANKU_DANGEROUS_ENGINEERING ADD ENGINEERING_LEVEL varchar(20);
+ EXEC sp_addextendedproperty 'MS_Description', N'µÈ¼¶','SCHEMA', N'dbo','TABLE', N'SANKU_DANGEROUS_ENGINEERING','COLUMN', N'ENGINEERING_LEVEL';
+ --״̬
+ ALTER TABLE SANKU_DANGEROUS_ENGINEERING ADD ENGINEERING_STATE varchar(20);
+ EXEC sp_addextendedproperty 'MS_Description', N'״̬','SCHEMA', N'dbo','TABLE', N'SANKU_DANGEROUS_ENGINEERING','COLUMN', N'ENGINEERING_STATE';
+END
+GO
+--Íø¸ñ»¯Ñ²²é£ºÑ²²é´ý°ìÊÂÏѲ²é´ý°ì½ÓÊÕÈÕÆÚ
+IF NOT EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'SANKU_GRID_PATROL' AND COLUMN_NAME = 'PATROL_WORKITEMS')
+BEGIN
+ --Ѳ²é´ý°ìÊÂÏî
+ ALTER TABLE SANKU_GRID_PATROL ADD PATROL_WORKITEMS varchar(200);
+ EXEC sp_addextendedproperty 'MS_Description', N'Ѳ²é´ý°ìÊÂÏî','SCHEMA', N'dbo','TABLE', N'SANKU_GRID_PATROL','COLUMN', N'PATROL_WORKITEMS';
+ --Ѳ²é´ý°ì½ÓÊÕÈÕÆÚ
+ ALTER TABLE SANKU_GRID_PATROL ADD PATROL_RECEIVEDATE datetime;
+ EXEC sp_addextendedproperty 'MS_Description', N'Ѳ²é´ý°ì½ÓÊÕÈÕÆÚ','SCHEMA', N'dbo','TABLE', N'SANKU_GRID_PATROL','COLUMN', N'PATROL_RECEIVEDATE';
+END
+GO
+
+--select* from Sys_Const where GroupId='ViolationPersonHandleStep'
+
+update Sys_Const set ConstValue=5,SortIndex=5
+where GroupId='ViolationPersonHandleStep' and ConstValue=3 and ConstText='·£¿î'
+
+
+GO
+
+
+--ÀúÊ·Êý¾Ý´¦Àí
+TRUNCATE TABLE SANKU_VIOLATION;
+TRUNCATE TABLE SANKU_DANGEROUS_ENGINEERING;
+TRUNCATE TABLE SANKU_GRID_PATROL;
+TRUNCATE TABLE SANKU_HAZARD;
+
+
+
diff --git a/DataBase/版本日志/SUBQHSE_V2026-10-21-xiaj(SP_SANKU_DATA_INIT).sql b/DataBase/版本日志/SUBQHSE_V2026-10-21-xiaj(SP_SANKU_DATA_INIT).sql
new file mode 100644
index 00000000..ec6d6b0d
--- /dev/null
+++ b/DataBase/版本日志/SUBQHSE_V2026-10-21-xiaj(SP_SANKU_DATA_INIT).sql
@@ -0,0 +1,280 @@
+
+
+ALTER PROCEDURE [dbo].[SP_SANKU_DATA_INIT]
+ @type VARCHAR(100) = NULL,
+ @op TINYINT
+AS
+BEGIN
+ SET NOCOUNT ON;
+ DECLARE @trimType VARCHAR(100) = LTRIM(RTRIM(ISNULL(@type, '')));
+
+ -- op=0 Çå¿ÕÂß¼
+ IF @op = 0
+ BEGIN
+ IF @trimType = 'SANKU_ACCIDENT_RECORD'
+ BEGIN
+ TRUNCATE TABLE SANKU_ACCIDENT_RECORD;
+ END
+ ELSE IF @trimType = 'SANKU_VIOLATION'
+ BEGIN
+ TRUNCATE TABLE SANKU_VIOLATION;
+ END
+ ELSE IF @trimType = 'SANKU_HAZARD'
+ BEGIN
+ TRUNCATE TABLE SANKU_HAZARD;
+ END
+ ELSE IF @trimType = 'SANKU_SAFETY_REWARD'
+ BEGIN
+ TRUNCATE TABLE SANKU_SAFETY_REWARD;
+ END
+ ELSE IF @trimType = 'SANKU_ADMIN_PENALTY'
+ BEGIN
+ TRUNCATE TABLE SANKU_ADMIN_PENALTY;
+ END
+ ELSE IF @trimType = 'SANKU_TRAINING'
+ BEGIN
+ TRUNCATE TABLE SANKU_TRAINING;
+ END
+ ELSE IF @trimType = 'SANKU_EXAMINATION'
+ BEGIN
+ TRUNCATE TABLE SANKU_EXAMINATION;
+ END
+ ELSE IF @trimType = 'SANKU_DANGEROUS_ENGINEERING'
+ BEGIN
+ TRUNCATE TABLE SANKU_DANGEROUS_ENGINEERING;
+ END
+ ELSE IF @trimType = 'SANKU_GRID_PATROL'
+ BEGIN
+ TRUNCATE TABLE SANKU_GRID_PATROL;
+ END
+ ELSE IF @trimType = '' -- type null/¿Õ£¬È«²¿Çå¿Õ
+ BEGIN
+ TRUNCATE TABLE SANKU_ACCIDENT_RECORD;
+ TRUNCATE TABLE SANKU_VIOLATION;
+ TRUNCATE TABLE SANKU_HAZARD;
+ TRUNCATE TABLE SANKU_SAFETY_REWARD;
+ TRUNCATE TABLE SANKU_ADMIN_PENALTY;
+ TRUNCATE TABLE SANKU_TRAINING;
+ TRUNCATE TABLE SANKU_EXAMINATION;
+ TRUNCATE TABLE SANKU_DANGEROUS_ENGINEERING;
+ TRUNCATE TABLE SANKU_GRID_PATROL;
+ END
+ END
+
+ -- op=1 ³õʼ»¯²åÈëÂß¼
+ IF @op = 1
+ BEGIN
+
+ -- typeΪNULL/¿Õ×Ö·û´®£ºËùÓгõʼ»¯½Å±¾¶¼Ö´ÐУ»·ñÔò°´type·ÖÖ§Ö´ÐÐ
+ IF @type = 'SANKU_ACCIDENT_RECORD' OR @trimType = ''
+ BEGIN
+ --ʹÊʼþÊý¾Ý³õʼ»¯
+ INSERT INTO SANKU_ACCIDENT_RECORD(ACCIDENT_ID,PROJECT_CODE,PROJECT_NAME,ACCIDENT_NAME,ACCIDENT_TIME,ACCIDENT_LEVEL,ACCIDENT_TYPE,ACCIDENT_LOCATION,ACCIDENT_DESCRIPTION,DEATH_COUNT,SERIOUS_INJURY_COUNT,MINOR_INJURY_COUNT
+ ,DIRECT_ECONOMIC_LOSS,INDIRECT_ECONOMIC_LOSS,CONTRACTING_RESPONSIBILITY,SUBCONTRACTOR_ID,SUBCONTRACTOR_CODE,SUBCONTRACTOR_NAME,POSITION_NAME,RESPONSIBILITY_TYPE,RESPONSIBILITY_DESC,PERSONNEL_ID_NUMBER,PERSONNEL_NAME,SUBMITTER_ID_NUMBER,SUBMITTER_NAME,UPDATE_TIME,CREATE_TIME)
+ SELECT tba.AccidentHandleId,pms.pro_code,pms.pro_name,tba.AccidentHandleName,tba.AccidentDate,tba.AccidentLevel,tba.AccidentType,tba.AccidentLocation,tba.AccidentDef,tba.DeathPersonNum,tba.InjuriesPersonNum,tba.MinorInjuriesPersonNum
+ ,tba.MoneyLoss,tba.IndirectMoneyLoss,tba.ContractingResponsibility
+ ,bu.MasterAdOrgCode,bu.CollCropCode,CASE WHEN bu.MasterAdOrgCode IS NULL OR LTRIM(RTRIM(bu.MasterAdOrgCode)) = '' THEN bu.UnitName ELSE bu.MasterAdOrgName END AS UnitName
+ ,tba.PositionName,tba.ResponsibilityType,tba.ResponsibilityDesc,su.IdentityCard,tba.ResponsibleManName,suc.IdentityCard,suc.UserName,tba.CompileDate,tba.CompileDate
+ FROM Accident_AccidentHandle AS tba WITH(NOLOCK)
+ LEFT JOIN Base_Unit AS bu WITH(NOLOCK) ON bu.UnitId = tba.UnitId --AND LEN(bu.CollCropCode)=18
+ LEFT JOIN Sys_User AS su WITH(NOLOCK) ON su.UserId = tba.ResponsibleMan
+ LEFT JOIN Sys_User AS suc WITH(NOLOCK) ON suc.UserId = tba.CompileMan
+ 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 bp.MasterSysId IS NOT NULL AND pms.pro_code IS NOT NULL AND tba.AccidentDate>='2026-01-01'
+ AND (bu.MasterAdOrgCode IS NOT NULL OR LEN(bu.CollCropCode)=18) AND LEN(suc.IdentityCard)=18 AND LEN(su.IdentityCard)=18
+ AND tba.AccidentHandleId NOT IN (SELECT ACCIDENT_ID FROM SANKU_ACCIDENT_RECORD WITH(NOLOCK));
+ END
+
+ IF @type = 'SANKU_VIOLATION' OR @trimType = ''
+ BEGIN
+ --Î¥ÕÂ×÷ÒµÊý¾Ý³õʼ»¯
+ INSERT INTO SANKU_VIOLATION(RECORD_ID,PROJECT_CODE,PROJECT_NAME,SUBCONTRACTOR_ID,SUBCONTRACTOR_CODE,SUBCONTRACTOR_NAME,PERSONNEL_ID_NUMBER,PERSONNEL_NAME,VIOLATION_DATE,VIOLATION_LEVEL,VIOLATION_TYPE,VIOLATION_CONTENT,PENALTY_RESULT,RECTIFICATION_STATUS,SUBMITTER_ID_NUMBER,SUBMITTER_NAME,UPDATE_TIME,CREATE_TIME)
+ SELECT tba.ViolationPersonId,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
+ ,spp.IdentityCard,spp.PersonName,tba.ViolationDate,tba.ViolationLevel
+ ,CASE tba.ViolationName WHEN '1' THEN vpn.ConstText+'-'+vpty1.ConstText WHEN '2' THEN vpn.ConstText+'-'+vpty2.ConstText ELSE '' END AS ViolationType
+ ,tba.ViolationDef,vphs.ConstText,tba.RectificationStatus,suc.IdentityCard,suc.UserName,tba.CompileDate,tba.CompileDate
+ FROM Check_ViolationPerson AS tba WITH(NOLOCK)
+ LEFT JOIN Base_Unit AS bu WITH(NOLOCK) ON bu.UnitId = tba.UnitId --AND LEN(bu.CollCropCode)=18
+ LEFT JOIN Sys_Const AS vpn WITH(NOLOCK) ON vpn.ConstValue = tba.ViolationName AND vpn.GroupId='ViolationName'
+ LEFT JOIN Sys_Const AS vpty1 WITH(NOLOCK) ON vpty1.ConstValue = tba.ViolationType AND tba.ViolationName='1' AND vpty1.GroupId='ViolationType'
+ LEFT JOIN Sys_Const AS vpty2 WITH(NOLOCK) ON vpty2.ConstValue = tba.ViolationType AND tba.ViolationName='2' AND vpty2.GroupId='ViolationTypeOther'
+ LEFT JOIN Sys_Const AS vphs WITH(NOLOCK) ON vphs.ConstValue = tba.HandleStep AND vphs.GroupId='ViolationPersonHandleStep'
+ LEFT JOIN SitePerson_Person AS spp WITH(NOLOCK) ON spp.PersonId = tba.PersonId AND LEN(spp.IdentityCard)=18
+ LEFT JOIN Sys_User AS suc WITH(NOLOCK) ON suc.UserId = tba.CompileMan
+ 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 bp.MasterSysId IS NOT NULL AND pms.pro_code IS NOT NULL AND tba.ViolationDate>='2026-01-01'
+ AND (bu.MasterAdOrgCode IS NOT NULL OR LEN(bu.CollCropCode)=18) AND LEN(suc.IdentityCard)=18 AND LEN(spp.IdentityCard)=18
+ AND tba.ViolationPersonId NOT IN (SELECT RECORD_ID FROM SANKU_VIOLATION WITH(NOLOCK));
+ END
+
+ IF @type = 'SANKU_SAFETY_REWARD' OR @trimType = ''
+ BEGIN
+ --°²È«½±³ÍÊý¾Ý³õʼ»¯
+ INSERT INTO SANKU_SAFETY_REWARD(RECORD_ID,PROJECT_CODE,PROJECT_NAME,PERSONNEL_ID_NUMBER,PERSONNEL_NAME,REWARD_DATE,REWARD_UNIT_ID,REWARD_UNIT_CODE,REWARD_UNIT_NAME,REWARD_TYPE,REWARD_CONTENT,REWARD_AMOUNT,REWARD_LEVEL,SUBMITTER_ID_NUMBER,SUBMITTER_NAME)
+ SELECT tba.RewardAndPunishID,pms.pro_code,pms.pro_name,spp.IdentityCard,spp.PersonName,tba.Date
+ ,bu.MasterAdOrgCode,bu.CollCropCode,CASE WHEN bu.MasterAdOrgCode IS NULL OR LTRIM(RTRIM(bu.MasterAdOrgCode)) = '' THEN bu.UnitName ELSE bu.MasterAdOrgName END AS UnitName
+ ,(CASE tba.Type WHEN 1 THEN '½±Àø' WHEN 2 THEN '´¦·£' ELSE '´¦·£' END) AS TYPE,tba.Description
+ ,(CASE WHEN tba.Type = 1 THEN ABS(tba.Money) WHEN tba.Type = 2 THEN -ABS(tba.Money) ELSE tba.Money END) AS Money
+ ,(CASE tba.Type
+ WHEN 1 THEN (SELECT ConstText FROM Sys_Const WHERE GroupId='RewardType' AND ConstValue=tba.RewardAndPunishType)
+ WHEN 2 THEN (SELECT ConstText FROM Sys_Const WHERE GroupId='PunishType' AND ConstValue=tba.RewardAndPunishType) END) AS TYPE
+ ,suc.IdentityCard,suc.UserName
+ FROM Check_RewardAndPunish AS tba WITH(NOLOCK)
+ LEFT JOIN SitePerson_Person AS spp WITH(NOLOCK) ON spp.PersonId = tba.RewardAndPunishMan --AND LEN(spp.IdentityCard)=18
+ LEFT JOIN Base_Unit AS bu WITH(NOLOCK) ON bu.UnitId = tba.ResponseUnit --AND LEN(bu.CollCropCode)=18
+ LEFT JOIN Sys_User AS suc WITH(NOLOCK) ON suc.UserId = tba.CreateMan
+ 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 bp.MasterSysId IS NOT NULL AND pms.pro_code IS NOT NULL AND tba.Date>='2026-01-01' AND tba.Type IN (1,2)
+ AND (bu.MasterAdOrgCode IS NOT NULL OR LEN(bu.CollCropCode)=18) AND LEN(spp.IdentityCard)=18 AND LEN(suc.IdentityCard)=18
+ AND tba.RewardAndPunishID NOT IN (SELECT RECORD_ID FROM SANKU_SAFETY_REWARD WITH(NOLOCK));
+ END
+
+ IF @type = 'SANKU_SAFETY_REWARD' OR @trimType = ''
+ BEGIN
+ --ÐÐÕþ´¦·£Êý¾Ý³õʼ»¯
+ INSERT INTO SANKU_ADMIN_PENALTY(RECORD_ID,PROJECT_CODE,PROJECT_NAME,SUBCONTRACTOR_ID,SUBCONTRACTOR_CODE,SUBCONTRACTOR_NAME,PENALTY_DATE,PENALTY_TYPE,PENALTY_CONTENT,PENALTY_AMOUNT,PENALTY_AUTHORITY,PENALTY_STATUS,SUBMITTER_ID_NUMBER,SUBMITTER_NAME,UPDATE_TIME,CREATE_TIME)
+ SELECT tba.PenaltyId,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
+ ,tba.PenaltyDate,tba.PenaltyType,tba.PenaltyContent,tba.PenaltyAmount,tba.PenaltyAuthority,tba.PenaltyStatus
+ ,suc.IdentityCard,suc.UserName,tba.PenaltyDate,tba.PenaltyDate
+ FROM Check_AdminPenalty AS tba WITH(NOLOCK)
+ LEFT JOIN Base_Unit AS bu WITH(NOLOCK) ON bu.UnitId = tba.UnitId --AND LEN(bu.CollCropCode)=18
+ LEFT JOIN Sys_User AS suc WITH(NOLOCK) ON suc.UserId = tba.CompileMan
+ 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 bp.MasterSysId IS NOT NULL AND pms.pro_code IS NOT NULL AND tba.PenaltyDate>='2026-01-01'
+ AND (bu.MasterAdOrgCode IS NOT NULL OR LEN(bu.CollCropCode)=18) AND LEN(suc.IdentityCard)=18
+ AND tba.PenaltyId NOT IN (SELECT RECORD_ID FROM SANKU_ADMIN_PENALTY WITH(NOLOCK));
+ END
+
+ IF @type = 'SANKU_HAZARD' OR @trimType = ''
+ BEGIN
+ --Òþ»¼¼Ç¼Êý¾Ý³õʼ»¯
+ INSERT INTO SANKU_HAZARD(RECORD_ID,PROJECT_CODE,PROJECT_NAME,SUBCONTRACTOR_ID,SUBCONTRACTOR_CODE,SUBCONTRACTOR_NAME,RESPONSIBLE_PERSONNEL_ID_NUMBER,RESPONSIBLE_PERSONNEL_NAME,RECTIFIER_PERSONNEL_ID_NUMBER,RECTIFIER_PERSONNEL_NAME
+ ,DISCOVERY_DATE,HAZARD_TYPE,HAZARD_LEVEL,HAZARD_CONTENT,RECTIFICATION_STATUS,ECTIFICATION_COMPLETIONDATE,RECTIFICATION_DEADLINE_ID,SUBMITTER_ID_NUMBER,SUBMITTER_NAME,UPDATE_TIME,CREATE_TIME)
+ SELECT tba.RectifyNoticesItemId,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
+ ,suzg.IdentityCard,suzg.UserName,suzg.IdentityCard,suzg.UserName,tbb.CheckedDate,rectify.RectifyName
+ ,(CASE tbb.HiddenHazardType WHEN 1 THEN 'Ò»°ãÒþ»¼' WHEN 2 THEN '½Ï´óÒþ»¼' WHEN 3 THEN 'ÖØ´óÒþ»¼' ELSE 'Ò»°ãÒþ»¼' END) AS TYPE,tba.WrongContent
+ ,(CASE WHEN tbb.States = 2 THEN 'δÕû¸Ä' WHEN tbb.States = 3 THEN 'Õû¸ÄÖÐ' WHEN States = 4 THEN 'ÒÑÕû¸Ä' WHEN States = 5 THEN 'ÒÑÑéÊÕ' ELSE 'δÕû¸Ä' END) AS StatesName
+ ,tbb.CompleteDate,tba.LimitTime,suc.IdentityCard,suc.UserName,tbb.CheckedDate,tbb.CheckedDate
+ FROM Check_RectifyNoticesItem AS tba WITH(NOLOCK)
+ LEFT JOIN Check_RectifyNotices AS tbb WITH(NOLOCK) ON tbb.RectifyNoticesId = tba.RectifyNoticesId
+ --LEFT JOIN Check_RectifyNoticesFlowOperate AS tbc WITH(NOLOCK) ON tbc.RectifyNoticesId = tba.RectifyNoticesId
+ LEFT JOIN Base_Unit AS bu WITH(NOLOCK) ON bu.UnitId = tbb.UnitId --AND LEN(bu.CollCropCode)=18
+ LEFT JOIN Sys_User AS suzg WITH(NOLOCK) ON suzg.UserId = tbb.DutyPersonId
+ LEFT JOIN Sys_User AS suc WITH(NOLOCK) ON suc.UserId = tbb.CompleteManId
+ LEFT JOIN Base_Project AS bp WITH(NOLOCK) ON bp.ProjectId = tbb.ProjectId
+ LEFT JOIN ads_pms_pro_info_build AS pms WITH(NOLOCK) ON pms.pro_id = bp.MasterSysId
+ LEFT JOIN Technique_Rectify AS rectify WITH(NOLOCK) ON tba.RectifyId = rectify.RectifyId
+ WHERE bp.MasterSysId IS NOT NULL AND pms.pro_code IS NOT NULL AND tbb.CheckedDate>='2026-01-01' AND tbb.States > 1
+ AND (bu.MasterAdOrgCode IS NOT NULL OR LEN(bu.CollCropCode)=18) AND LEN(suc.IdentityCard)=18 AND LEN(suzg.IdentityCard)=18 AND rectify.RectifyName IS NOT NULL
+ AND tba.RectifyNoticesItemId NOT IN (SELECT RECORD_ID FROM SANKU_HAZARD WITH(NOLOCK));
+ END
+
+ IF @type = 'SANKU_TRAINING' OR @trimType = ''
+ BEGIN
+ --½ÌÓýÅàѵÊý¾Ý³õʼ»¯
+ INSERT INTO SANKU_TRAINING(RECORD_ID,PROJECT_CODE,PROJECT_NAME,SUBCONTRACTOR_ID,SUBCONTRACTOR_CODE,SUBCONTRACTOR_NAME,PERSONNEL_ID_NUMBER,PERSONNEL_NAME,TRAINING_DATE,TRAINING_NAME,TRAINING_TYPE,TRAINING_DURATION,TRAINING_ORGANIZER,TRAINING_CONTENT,TRAINING_RESULT,SUBMITTER_ID_NUMBER,SUBMITTER_NAME,UPDATE_TIME,CREATE_TIME)
+ SELECT tba.TrainDetailId,pms.pro_code,pms.pro_name
+ ,spu.MasterAdOrgCode,spu.CollCropCode,CASE WHEN spu.MasterAdOrgCode IS NULL OR LTRIM(RTRIM(spu.MasterAdOrgCode)) = '' THEN spu.UnitName ELSE spu.MasterAdOrgName END AS UnitName
+ ,spp.IdentityCard,spp.PersonName,tbb.TrainStartDate
+ ,(CASE WHEN ISNULL(tbb.TrainTitle,'')='' THEN bty.TrainTypeName ELSE tbb.TrainTitle END) AS TrainName
+ ,bty.TrainTypeName,tbb.TeachHour,bu.UnitName
+ ,(CASE WHEN ISNULL(tbb.TrainContent,'')='' THEN bty.TrainTypeName ELSE tbb.TrainContent END) AS TrainContent
+ ,(CASE WHEN tba.CheckResult = 1 THEN 'ͨ¹ý' WHEN tba.CheckResult = 0 THEN 'δͨ¹ý' ELSE 'ȱ¿¼' END) AS CheckResult
+ ,suc.IdentityCard,suc.UserName,tbb.TrainStartDate,tbb.TrainStartDate
+ FROM EduTrain_TrainRecordDetail AS tba WITH(NOLOCK)
+ LEFT JOIN EduTrain_TrainRecord AS tbb WITH(NOLOCK) ON tbb.TrainingId = tba.TrainingId
+ LEFT JOIN Base_Unit AS bu WITH(NOLOCK) ON bu.UnitId = tbb.UnitIds --AND LEN(bu.CollCropCode)=18
+ LEFT JOIN SitePerson_Person AS spp WITH(NOLOCK) ON spp.PersonId = tba.PersonId
+ LEFT JOIN Base_Unit AS spu WITH(NOLOCK) ON spu.UnitId = spp.UnitId --AND LEN(spu.CollCropCode)=18
+ LEFT JOIN Base_TrainType AS bty WITH(NOLOCK) ON bty.TrainTypeId = tbb.TrainTypeId
+ LEFT JOIN Sys_User AS suc WITH(NOLOCK) ON suc.UserId = tbb.CompileMan
+ LEFT JOIN Base_Project AS bp WITH(NOLOCK) ON bp.ProjectId = tbb.ProjectId
+ LEFT JOIN ads_pms_pro_info_build AS pms WITH(NOLOCK) ON pms.pro_id = bp.MasterSysId
+ WHERE tbb.TrainStartDate>='2026-01-01' AND LEN(suc.IdentityCard)=18 AND LEN(spp.IdentityCard)=18
+ AND (spu.MasterAdOrgCode IS NOT NULL OR LEN(spu.CollCropCode)=18) AND bp.MasterSysId IS NOT NULL AND pms.pro_code IS NOT NULL
+ AND tba.TrainDetailId NOT IN (SELECT RECORD_ID FROM SANKU_TRAINING WITH(NOLOCK));
+ END
+
+ IF @type = 'SANKU_EXAMINATION' OR @trimType = ''
+ BEGIN
+ --¿¼ÊÔ¿¼ºËÊý¾Ý³õʼ»¯
+ INSERT INTO SANKU_EXAMINATION(RECORD_ID,PROJECT_CODE,PROJECT_NAME,SUBCONTRACTOR_ID,SUBCONTRACTOR_CODE,SUBCONTRACTOR_NAME,PERSONNEL_ID_NUMBER,PERSONNEL_NAME,EXAM_DATE,EXAM_NAME,EXAM_TYPE,EXAM_SCORE,EXAM_RESULT,EXAM_ORGANIZER,SUBMITTER_ID_NUMBER,SUBMITTER_NAME,UPDATE_TIME,CREATE_TIME)
+ SELECT tba.TestRecordId,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
+ ,spp.IdentityCard,spp.PersonName,tbb.TestEndTime,tbb.PlanName,'ÀíÂÛ¿¼ÊÔ',tba.TestScores
+ ,(CASE WHEN tba.TestScores = 0 THEN 'ȱ¿¼' WHEN tba.TestScores >=80 THEN 'ͨ¹ý' WHEN tba.TestScores < 80 THEN 'δͨ¹ý' ELSE 'ȱ¿¼' END) AS CheckResult,tbb.UnitNames
+ ,suc.IdentityCard,suc.UserName,tbb.TestEndTime,tbb.TestEndTime
+ FROM Training_TestRecord AS tba WITH(NOLOCK)
+ LEFT JOIN Training_TestPlan AS tbb WITH(NOLOCK) ON tbb.TestPlanId = tba.TestPlanId
+ LEFT JOIN SitePerson_Person AS spp WITH(NOLOCK) ON spp.PersonId = tba.TestManId
+ LEFT JOIN Base_Unit AS bu WITH(NOLOCK) ON bu.UnitId = spp.UnitId --AND LEN(bu.CollCropCode)=18
+ LEFT JOIN Sys_User AS suc WITH(NOLOCK) ON suc.UserId = tbb.PlanManId
+ LEFT JOIN Base_Project AS bp WITH(NOLOCK) ON bp.ProjectId = tbb.ProjectId
+ LEFT JOIN ads_pms_pro_info_build AS pms WITH(NOLOCK) ON pms.pro_id = bp.MasterSysId
+ WHERE tbb.TestEndTime>='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.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_LEVEL,ENGINEERING_STATE,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
+ ,(CASE tba.IsSuperLargerHazard WHEN 1 THEN '³¬¹æÄ£Î£´ó' WHEN 0 THEN 'ÆÕͨΣ´ó' ELSE 'ÆÕͨΣ´ó' END) AS Level
+ ,(CASE tba.States WHEN 1 THEN 'Ê©¹¤×¼±¸' WHEN 2 THEN 'ÕýÔÚÊ©¹¤' WHEN 3 THEN 'ÑéÊÕÍê³É' ELSE 'ÕýÔÚÊ©¹¤' END) AS State
+ ,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_GRID_PATROL' OR @trimType = ''
+ BEGIN
+ --Íø¸ñ»¯Ñ²²é¼Ç¼Êý¾Ý³õʼ»¯
+ WITH temp_data AS (
+ SELECT
+ tba.HazardRegisterId,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
+ ,suzg.IdentityCard AS pNumber,suzg.UserName AS pUser,ISNULL(wbsu.UnitWorkName,'') AS ItemName,DATEADD(DAY,-1,tba.CheckTime) AS ReceiveDate,tba.CheckTime,'ÒÑÍê³É' AS StatusStr,suzg.IdentityCard,suzg.UserName,tba.CheckTime AS UpdateTime,tba.CheckTime AS CreateTime,
+ ROW_NUMBER() OVER (
+ PARTITION BY tba.CheckManId, CAST(tba.CheckTime AS DATE)
+ ORDER BY tba.CheckTime ASC
+ ) AS rn
+ FROM HSSE_Hazard_HazardRegister AS tba WITH(NOLOCK)
+ 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
+ LEFT JOIN WBS_UnitWork AS wbsu WITH(NOLOCK) ON wbsu.UnitWorkId = tba.Place
+ LEFT JOIN Sys_User AS suzg WITH(NOLOCK) ON suzg.UserId = tba.CheckManId
+ LEFT JOIN Base_Unit AS bu WITH(NOLOCK) ON bu.UnitId = suzg.UnitId --AND LEN(bu.CollCropCode)=18
+ WHERE bp.MasterSysId IS NOT NULL AND pms.pro_code IS NOT NULL AND tba.CheckTime>='2026-01-01'
+ AND (bu.MasterAdOrgCode IS NOT NULL OR LEN(bu.CollCropCode)=18) AND LEN(suzg.IdentityCard)=18
+ )
+ --Íø¸ñ»¯Ñ²²é¼Ç¼Êý¾Ý³õʼ»¯
+ INSERT INTO SANKU_GRID_PATROL(RECORD_ID,PROJECT_CODE,PROJECT_NAME,SUBCONTRACTOR_ID,SUBCONTRACTOR_CODE,SUBCONTRACTOR_NAME,PERSONNEL_ID_NUMBER,PERSONNEL_NAME,PATROL_WORKITEMS,PATROL_RECEIVEDATE,PATROL_TIME,PATROL_STATUS,SUBMITTER_ID_NUMBER,SUBMITTER_NAME,UPDATE_TIME,CREATE_TIME)
+ SELECT HazardRegisterId,pro_code,pro_name,MasterAdOrgCode,CollCropCode,UnitName,pNumber,pUser,'Ѳ¼ìµ¥Î»¹¤³Ì£º'+ItemName,DATEADD(DAY,-1,CheckTime),CheckTime,StatusStr,IdentityCard,UserName,UpdateTime,CreateTime
+ FROM temp_data
+ WHERE rn = 1 AND HazardRegisterId NOT IN (SELECT RECORD_ID FROM SANKU_GRID_PATROL WITH(NOLOCK));
+ END
+
+ END
+END
+GO
+
+
diff --git a/SGGL/BLL/SanKu/SanKuDataSummaryReportService.cs b/SGGL/BLL/SanKu/SanKuDataSummaryReportService.cs
index a1de3503..e26d14f6 100644
--- a/SGGL/BLL/SanKu/SanKuDataSummaryReportService.cs
+++ b/SGGL/BLL/SanKu/SanKuDataSummaryReportService.cs
@@ -243,7 +243,8 @@ namespace BLL
PERSONNEL_ID_NUMBER = spp.IdentityCard,
PERSONNEL_NAME = spp.PersonName,
VIOLATION_DATE = (DateTime)tba.ViolationDate,
- VIOLATION_TYPE = tba.ViolationLevel,
+ VIOLATION_LEVEL = tba.ViolationLevel,
+ VIOLATION_TYPE = ViolatioType(tba.ViolationName, tba.ViolationType),
VIOLATION_CONTENT = tba.ViolationDef,
PENALTY_RESULT = tba.RectificationStatus,
RECTIFICATION_STATUS = ViolatioResult(tba.HandleStep),
@@ -295,6 +296,7 @@ namespace BLL
exist.PERSONNEL_ID_NUMBER = model.PERSONNEL_ID_NUMBER;
exist.PERSONNEL_NAME = model.PERSONNEL_NAME;
exist.VIOLATION_DATE = model.VIOLATION_DATE;
+ exist.VIOLATION_LEVEL = model.VIOLATION_LEVEL;
exist.VIOLATION_TYPE = model.VIOLATION_TYPE;
exist.VIOLATION_CONTENT = model.VIOLATION_CONTENT;
exist.PENALTY_RESULT = model.PENALTY_RESULT;
@@ -319,6 +321,7 @@ namespace BLL
newModel.PERSONNEL_ID_NUMBER = model.PERSONNEL_ID_NUMBER;
newModel.PERSONNEL_NAME = model.PERSONNEL_NAME;
newModel.VIOLATION_DATE = model.VIOLATION_DATE;
+ newModel.VIOLATION_LEVEL = model.VIOLATION_LEVEL;
newModel.VIOLATION_TYPE = model.VIOLATION_TYPE;
newModel.VIOLATION_CONTENT = model.VIOLATION_CONTENT;
newModel.PENALTY_RESULT = model.PENALTY_RESULT;
@@ -338,6 +341,29 @@ namespace BLL
}
}
+ ///
+ /// è¿�ç« ä½œä¸šç±»åž‹
+ ///
+ ///
+ public static string ViolatioType(string name, string type)
+ {
+ string result = string.Empty;
+ var constObj = new Sys_Const();
+ if (name == "1")
+ {
+ constObj = BLL.ConstValue.GetConstByConstValueAndGroupId(type, BLL.ConstValue.Group_ViolationType);
+ }
+ else if (name == "2")
+ {
+ constObj = BLL.ConstValue.GetConstByConstValueAndGroupId(type, BLL.ConstValue.Group_ViolationTypeOther);
+ }
+ if (constObj != null)
+ {
+ result = constObj.ConstText;
+ }
+ return result;
+ }
+
///
/// è¿�ç« ä½œä¸šå¤„ç�†ç»“æžœ
///
@@ -706,6 +732,7 @@ namespace BLL
HAZARD_LEVEL = HazardLevel(tbb.HiddenHazardType),
HAZARD_CONTENT = tba.WrongContent,
RECTIFICATION_STATUS = HazardState(tbb.States),
+ ECTIFICATION_COMPLETIONDATE = tbb.CompleteDate,
RECTIFICATION_DEADLINE_ID = tba.LimitTime == null ? DateTime.Now.AddDays(7) : (DateTime)tba.LimitTime,
SUBMITTER_ID_NUMBER = suc.IdentityCard,
SUBMITTER_NAME = suc.UserName,
@@ -759,6 +786,7 @@ namespace BLL
exist.HAZARD_LEVEL = model.HAZARD_LEVEL;
exist.HAZARD_CONTENT = model.HAZARD_CONTENT;
exist.RECTIFICATION_STATUS = model.RECTIFICATION_STATUS;
+ exist.ECTIFICATION_COMPLETIONDATE = model.ECTIFICATION_COMPLETIONDATE;
exist.RECTIFICATION_DEADLINE_ID = model.RECTIFICATION_DEADLINE_ID;
exist.SUBMITTER_ID_NUMBER = model.SUBMITTER_ID_NUMBER;
exist.SUBMITTER_NAME = model.SUBMITTER_NAME;
@@ -787,6 +815,7 @@ namespace BLL
newModel.HAZARD_LEVEL = model.HAZARD_LEVEL;
newModel.HAZARD_CONTENT = model.HAZARD_CONTENT;
newModel.RECTIFICATION_STATUS = model.RECTIFICATION_STATUS;
+ newModel.ECTIFICATION_COMPLETIONDATE = model.ECTIFICATION_COMPLETIONDATE;
newModel.RECTIFICATION_DEADLINE_ID = model.RECTIFICATION_DEADLINE_ID;
newModel.SUBMITTER_ID_NUMBER = model.SUBMITTER_ID_NUMBER;
newModel.SUBMITTER_NAME = model.SUBMITTER_NAME;
@@ -1459,6 +1488,8 @@ namespace BLL
ENGINEERING_DATE = tba.ExpectedTime == null ? DateTime.Now : (DateTime)tba.ExpectedTime,
ENGINEERING_NAME = tba.HazardName,
ENGINEERING_TYPE = LargerHazardType(tba.HazardType),
+ ENGINEERING_LEVEL = tba.IsSuperLargerHazard != null && tba.IsSuperLargerHazard == true ? "超规模�大" : "普通�大",
+ ENGINEERING_STATE = LargerHazardState(tba.States),
ENGINEERING_ADDRESS = tba.Address,
ENGINEERING_DESC = tba.Descriptions,
STANDBY_PERSONNEL_ID_NUMBER = spp.IdentityCard,
@@ -1512,6 +1543,8 @@ namespace BLL
exist.ENGINEERING_DATE = model.ENGINEERING_DATE;
exist.ENGINEERING_NAME = model.ENGINEERING_NAME;
exist.ENGINEERING_TYPE = model.ENGINEERING_TYPE;
+ exist.ENGINEERING_LEVEL = model.ENGINEERING_LEVEL;
+ exist.ENGINEERING_STATE = model.ENGINEERING_STATE;
exist.ENGINEERING_ADDRESS = model.ENGINEERING_ADDRESS;
exist.ENGINEERING_DESC = model.ENGINEERING_DESC;
exist.STANDBY_PERSONNEL_ID_NUMBER = model.STANDBY_PERSONNEL_ID_NUMBER;
@@ -1538,6 +1571,8 @@ namespace BLL
newModel.ENGINEERING_DATE = model.ENGINEERING_DATE;
newModel.ENGINEERING_NAME = model.ENGINEERING_NAME;
newModel.ENGINEERING_TYPE = model.ENGINEERING_TYPE;
+ newModel.ENGINEERING_LEVEL = model.ENGINEERING_LEVEL;
+ newModel.ENGINEERING_STATE = model.ENGINEERING_STATE;
newModel.ENGINEERING_ADDRESS = model.ENGINEERING_ADDRESS;
newModel.ENGINEERING_DESC = model.ENGINEERING_DESC;
newModel.STANDBY_PERSONNEL_ID_NUMBER = model.STANDBY_PERSONNEL_ID_NUMBER;
@@ -1558,6 +1593,34 @@ namespace BLL
}
}
+ ///
+ /// �大工程状�
+ ///
+ ///
+ ///
+ public static string LargerHazardState(string value)
+ {
+ string result = string.Empty;
+ if (!string.IsNullOrWhiteSpace(value))
+ {
+ switch (value)
+ {
+ case "1":
+ result = "施工准备";
+ break;
+ case "2":
+ result = "æ£åœ¨æ–½å·¥";
+ break;
+ case "3":
+ result = "验收完�";
+ break;
+ default:
+ result = "æ£åœ¨æ–½å·¥";
+ break;
+ }
+ }
+ return result;
+ }
///
/// �大工程类型
@@ -1602,6 +1665,7 @@ namespace BLL
var models = from tba in db.HSSE_Hazard_HazardRegister
join bp in db.Base_Project on tba.ProjectId equals bp.ProjectId
join pms in db.Ads_pms_pro_info_build on bp.MasterSysId equals pms.Pro_id
+ join wbsu in db.WBS_UnitWork on tba.Place equals wbsu.UnitWorkId
join suzg in db.Sys_User on tba.CheckManId equals suzg.UserId
join bu in db.Base_Unit on suzg.UnitId equals bu.UnitId
where tba.HazardRegisterId == hazardId
@@ -1615,6 +1679,8 @@ namespace BLL
SUBCONTRACTOR_NAME = bu.UnitName,
PERSONNEL_ID_NUMBER = suzg.IdentityCard,
PERSONNEL_NAME = suzg.UserName,
+ PATROL_WORKITEMS = "巡检��工程:" + wbsu.UnitWorkName,
+ PATROL_RECEIVEDATE = tba.CheckTime == null ? DateTime.Now.AddDays(-1) : ((DateTime)tba.CheckTime).AddDays(-1),
PATROL_TIME = tba.CheckTime == null ? DateTime.Now : (DateTime)tba.CheckTime,
PATROL_STATUS = "已完�",
SUBMITTER_ID_NUMBER = suzg.IdentityCard,
@@ -1666,11 +1732,13 @@ namespace BLL
newModel.RECORD_ID = model.RECORD_ID;
newModel.PROJECT_CODE = model.PROJECT_CODE;
newModel.PROJECT_NAME = model.PROJECT_NAME;
- exist.SUBCONTRACTOR_ID = model.SUBCONTRACTOR_ID;
+ newModel.SUBCONTRACTOR_ID = model.SUBCONTRACTOR_ID;
newModel.SUBCONTRACTOR_CODE = model.SUBCONTRACTOR_CODE;
newModel.SUBCONTRACTOR_NAME = model.SUBCONTRACTOR_NAME;
newModel.PERSONNEL_ID_NUMBER = model.PERSONNEL_ID_NUMBER;
newModel.PERSONNEL_NAME = model.PERSONNEL_NAME;
+ newModel.PATROL_WORKITEMS = model.PATROL_WORKITEMS;
+ newModel.PATROL_RECEIVEDATE = model.PATROL_RECEIVEDATE;
newModel.PATROL_TIME = model.PATROL_TIME;
newModel.PATROL_STATUS = model.PATROL_STATUS;
//newModel.SOURCE_SYSTEM_ID = model.SOURCE_SYSTEM_ID;
diff --git a/SGGL/FineUIPro.Web/SanKu/DangerousEngineering.aspx b/SGGL/FineUIPro.Web/SanKu/DangerousEngineering.aspx
index 1b82463b..35ae4619 100644
--- a/SGGL/FineUIPro.Web/SanKu/DangerousEngineering.aspx
+++ b/SGGL/FineUIPro.Web/SanKu/DangerousEngineering.aspx
@@ -80,6 +80,12 @@
+
+
+
+
diff --git a/SGGL/FineUIPro.Web/SanKu/DangerousEngineering.aspx.cs b/SGGL/FineUIPro.Web/SanKu/DangerousEngineering.aspx.cs
index a93b5519..301bc3b8 100644
--- a/SGGL/FineUIPro.Web/SanKu/DangerousEngineering.aspx.cs
+++ b/SGGL/FineUIPro.Web/SanKu/DangerousEngineering.aspx.cs
@@ -38,7 +38,7 @@ namespace FineUIPro.Web.SanKu
///
private void BindGrid()
{
- string strSql = @"SELECT tba.RECORD_ID,tba.DANGEROUS_ID,tba.PROJECT_CODE,tba.PROJECT_NAME,tba.SUBCONTRACTOR_ID,tba.SUBCONTRACTOR_NAME,tba.ENGINEERING_DATE,tba.ENGINEERING_NAME,tba.ENGINEERING_TYPE,tba.ENGINEERING_ADDRESS,tba.STANDBY_PERSONNEL_NAME,tba.ReportDate
+ string strSql = @"SELECT tba.RECORD_ID,tba.DANGEROUS_ID,tba.PROJECT_CODE,tba.PROJECT_NAME,tba.SUBCONTRACTOR_ID,tba.SUBCONTRACTOR_NAME,tba.ENGINEERING_DATE,tba.ENGINEERING_NAME,tba.ENGINEERING_TYPE,tba.ENGINEERING_LEVEL,tba.ENGINEERING_STATE,tba.ENGINEERING_ADDRESS,tba.STANDBY_PERSONNEL_NAME,tba.ReportDate
FROM SANKU_DANGEROUS_ENGINEERING AS tba WITH(NOLOCK)
WHERE 1=1 ";
List listStr = new List();
diff --git a/SGGL/FineUIPro.Web/SanKu/GridPatrol.aspx b/SGGL/FineUIPro.Web/SanKu/GridPatrol.aspx
index 00c92b6a..60aeea68 100644
--- a/SGGL/FineUIPro.Web/SanKu/GridPatrol.aspx
+++ b/SGGL/FineUIPro.Web/SanKu/GridPatrol.aspx
@@ -76,7 +76,7 @@
-
-
+
+
+
+
private void BindGrid()
{
- string strSql = @"SELECT tba.RECORD_ID,tba.PATROL_ID,tba.PROJECT_CODE,tba.PROJECT_NAME,tba.SUBCONTRACTOR_ID,tba.SUBCONTRACTOR_NAME,tba.PERSONNEL_ID_NUMBER,tba.PERSONNEL_NAME,tba.PATROL_TIME,tba.PATROL_STATUS,tba.ReportDate
+ string strSql = @"SELECT tba.RECORD_ID,tba.PATROL_ID,tba.PROJECT_CODE,tba.PROJECT_NAME,tba.SUBCONTRACTOR_ID,tba.SUBCONTRACTOR_NAME,tba.PERSONNEL_ID_NUMBER,tba.PERSONNEL_NAME,tba.PATROL_WORKITEMS,tba.PATROL_RECEIVEDATE,tba.PATROL_TIME,tba.PATROL_STATUS,tba.ReportDate
FROM SANKU_GRID_PATROL AS tba WITH(NOLOCK)
WHERE 1=1 ";
List listStr = new List();
diff --git a/SGGL/FineUIPro.Web/SanKu/Hazard.aspx b/SGGL/FineUIPro.Web/SanKu/Hazard.aspx
index dd7bf04b..0318a6c3 100644
--- a/SGGL/FineUIPro.Web/SanKu/Hazard.aspx
+++ b/SGGL/FineUIPro.Web/SanKu/Hazard.aspx
@@ -120,6 +120,9 @@
+
+
diff --git a/SGGL/FineUIPro.Web/SanKu/Hazard.aspx.cs b/SGGL/FineUIPro.Web/SanKu/Hazard.aspx.cs
index 723c4735..95b91f00 100644
--- a/SGGL/FineUIPro.Web/SanKu/Hazard.aspx.cs
+++ b/SGGL/FineUIPro.Web/SanKu/Hazard.aspx.cs
@@ -39,7 +39,7 @@ namespace FineUIPro.Web.SanKu
///
private void BindGrid()
{
- string strSql = @"SELECT tba.HAZARD_ID,tba.RECORD_ID,tba.PROJECT_CODE,tba.PROJECT_NAME,tba.SUBCONTRACTOR_ID,tba.SUBCONTRACTOR_NAME,tba.RESPONSIBLE_PERSONNEL_NAME,tba.RECTIFIER_PERSONNEL_NAME,tba.DISCOVERY_DATE,tba.HAZARD_TYPE,tba.HAZARD_CONTENT,tba.HAZARD_LEVEL,tba.RECTIFICATION_STATUS,tba.RECTIFICATION_DEADLINE_ID,tba.ReportDate
+ string strSql = @"SELECT tba.HAZARD_ID,tba.RECORD_ID,tba.PROJECT_CODE,tba.PROJECT_NAME,tba.SUBCONTRACTOR_ID,tba.SUBCONTRACTOR_NAME,tba.RESPONSIBLE_PERSONNEL_NAME,tba.RECTIFIER_PERSONNEL_NAME,tba.DISCOVERY_DATE,tba.HAZARD_TYPE,tba.HAZARD_CONTENT,tba.HAZARD_LEVEL,tba.RECTIFICATION_STATUS,tba.ECTIFICATION_COMPLETIONDATE,tba.RECTIFICATION_DEADLINE_ID,tba.ReportDate
FROM SANKU_HAZARD AS tba WITH(NOLOCK)
WHERE 1=1 ";
List listStr = new List();
diff --git a/SGGL/FineUIPro.Web/SanKu/VioLation.aspx b/SGGL/FineUIPro.Web/SanKu/VioLation.aspx
index 2f515d00..52f0a86d 100644
--- a/SGGL/FineUIPro.Web/SanKu/VioLation.aspx
+++ b/SGGL/FineUIPro.Web/SanKu/VioLation.aspx
@@ -99,7 +99,10 @@
-
+
+
private void BindGrid()
{
- string strSql = @"SELECT tba.VIOLATION_ID,tba.RECORD_ID,tba.PROJECT_CODE,tba.PROJECT_NAME,tba.SUBCONTRACTOR_ID,tba.SUBCONTRACTOR_NAME,tba.PERSONNEL_NAME,tba.VIOLATION_DATE,tba.VIOLATION_TYPE,tba.VIOLATION_CONTENT,tba.PENALTY_RESULT,tba.RECTIFICATION_STATUS,tba.ReportDate
+ string strSql = @"SELECT tba.VIOLATION_ID,tba.RECORD_ID,tba.PROJECT_CODE,tba.PROJECT_NAME,tba.SUBCONTRACTOR_ID,tba.SUBCONTRACTOR_NAME,tba.PERSONNEL_NAME,tba.VIOLATION_DATE,tba.VIOLATION_LEVEL,tba.VIOLATION_TYPE,tba.VIOLATION_CONTENT,tba.PENALTY_RESULT,tba.RECTIFICATION_STATUS,tba.ReportDate
FROM SANKU_VIOLATION AS tba WITH(NOLOCK)
WHERE 1=1 ";
List listStr = new List();
@@ -64,7 +64,7 @@ namespace FineUIPro.Web.SanKu
string rectificationStatus = this.drpRectificationStatus.SelectedValue.Trim();
if (!string.IsNullOrWhiteSpace(violationLevel))
{
- strSql += " AND tba.VIOLATION_TYPE = @ViolationLevel";
+ strSql += " AND tba.VIOLATION_LEVEL = @ViolationLevel";
listStr.Add(new SqlParameter("@ViolationLevel", violationLevel));
}
if (!string.IsNullOrWhiteSpace(rectificationStatus))
diff --git a/SGGL/Model/Model.cs b/SGGL/Model/Model.cs
index bc670ad6..1c151b9a 100644
--- a/SGGL/Model/Model.cs
+++ b/SGGL/Model/Model.cs
@@ -232888,7 +232888,7 @@ namespace Model
}
}
- [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PlanName", DbType="NVarChar(50)")]
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PlanName", DbType="NVarChar(200)")]
public string PlanName
{
get
@@ -232968,7 +232968,7 @@ namespace Model
}
}
- [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Remarks", DbType="NVarChar(50)")]
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Remarks", DbType="NVarChar(200)")]
public string Remarks
{
get
@@ -354240,6 +354240,10 @@ namespace Model
private System.Nullable _ReportDate;
+ private string _ENGINEERING_LEVEL;
+
+ private string _ENGINEERING_STATE;
+
#region �扩展性方法定义
partial void OnLoaded();
partial void OnValidate(System.Data.Linq.ChangeAction action);
@@ -354292,6 +354296,10 @@ namespace Model
partial void OnUnitNameChanged();
partial void OnReportDateChanging(System.Nullable value);
partial void OnReportDateChanged();
+ partial void OnENGINEERING_LEVELChanging(string value);
+ partial void OnENGINEERING_LEVELChanged();
+ partial void OnENGINEERING_STATEChanging(string value);
+ partial void OnENGINEERING_STATEChanged();
#endregion
public SANKU_DANGEROUS_ENGINEERING()
@@ -354779,6 +354787,46 @@ namespace Model
}
}
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ENGINEERING_LEVEL", DbType="VarChar(20)")]
+ public string ENGINEERING_LEVEL
+ {
+ get
+ {
+ return this._ENGINEERING_LEVEL;
+ }
+ set
+ {
+ if ((this._ENGINEERING_LEVEL != value))
+ {
+ this.OnENGINEERING_LEVELChanging(value);
+ this.SendPropertyChanging();
+ this._ENGINEERING_LEVEL = value;
+ this.SendPropertyChanged("ENGINEERING_LEVEL");
+ this.OnENGINEERING_LEVELChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ENGINEERING_STATE", DbType="VarChar(20)")]
+ public string ENGINEERING_STATE
+ {
+ get
+ {
+ return this._ENGINEERING_STATE;
+ }
+ set
+ {
+ if ((this._ENGINEERING_STATE != value))
+ {
+ this.OnENGINEERING_STATEChanging(value);
+ this.SendPropertyChanging();
+ this._ENGINEERING_STATE = value;
+ this.SendPropertyChanged("ENGINEERING_STATE");
+ this.OnENGINEERING_STATEChanged();
+ }
+ }
+ }
+
public event PropertyChangingEventHandler PropertyChanging;
public event PropertyChangedEventHandler PropertyChanged;
@@ -355486,6 +355534,10 @@ namespace Model
private System.Nullable _ReportDate;
+ private string _PATROL_WORKITEMS;
+
+ private System.Nullable _PATROL_RECEIVEDATE;
+
#region �扩展性方法定义
partial void OnLoaded();
partial void OnValidate(System.Data.Linq.ChangeAction action);
@@ -355532,6 +355584,10 @@ namespace Model
partial void OnUnitNameChanged();
partial void OnReportDateChanging(System.Nullable value);
partial void OnReportDateChanged();
+ partial void OnPATROL_WORKITEMSChanging(string value);
+ partial void OnPATROL_WORKITEMSChanged();
+ partial void OnPATROL_RECEIVEDATEChanging(System.Nullable value);
+ partial void OnPATROL_RECEIVEDATEChanged();
#endregion
public SANKU_GRID_PATROL()
@@ -355959,6 +356015,46 @@ namespace Model
}
}
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PATROL_WORKITEMS", DbType="VarChar(200)")]
+ public string PATROL_WORKITEMS
+ {
+ get
+ {
+ return this._PATROL_WORKITEMS;
+ }
+ set
+ {
+ if ((this._PATROL_WORKITEMS != value))
+ {
+ this.OnPATROL_WORKITEMSChanging(value);
+ this.SendPropertyChanging();
+ this._PATROL_WORKITEMS = value;
+ this.SendPropertyChanged("PATROL_WORKITEMS");
+ this.OnPATROL_WORKITEMSChanged();
+ }
+ }
+ }
+
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PATROL_RECEIVEDATE", DbType="DateTime")]
+ public System.Nullable PATROL_RECEIVEDATE
+ {
+ get
+ {
+ return this._PATROL_RECEIVEDATE;
+ }
+ set
+ {
+ if ((this._PATROL_RECEIVEDATE != value))
+ {
+ this.OnPATROL_RECEIVEDATEChanging(value);
+ this.SendPropertyChanging();
+ this._PATROL_RECEIVEDATE = value;
+ this.SendPropertyChanged("PATROL_RECEIVEDATE");
+ this.OnPATROL_RECEIVEDATEChanged();
+ }
+ }
+ }
+
public event PropertyChangingEventHandler PropertyChanging;
public event PropertyChangedEventHandler PropertyChanged;
@@ -356040,6 +356136,8 @@ namespace Model
private System.Nullable _ReportDate;
+ private System.Nullable _ECTIFICATION_COMPLETIONDATE;
+
#region �扩展性方法定义
partial void OnLoaded();
partial void OnValidate(System.Data.Linq.ChangeAction action);
@@ -356098,6 +356196,8 @@ namespace Model
partial void OnUnitNameChanged();
partial void OnReportDateChanging(System.Nullable value);
partial void OnReportDateChanged();
+ partial void OnECTIFICATION_COMPLETIONDATEChanging(System.Nullable value);
+ partial void OnECTIFICATION_COMPLETIONDATEChanged();
#endregion
public SANKU_HAZARD()
@@ -356645,6 +356745,26 @@ namespace Model
}
}
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ECTIFICATION_COMPLETIONDATE", DbType="DateTime")]
+ public System.Nullable ECTIFICATION_COMPLETIONDATE
+ {
+ get
+ {
+ return this._ECTIFICATION_COMPLETIONDATE;
+ }
+ set
+ {
+ if ((this._ECTIFICATION_COMPLETIONDATE != value))
+ {
+ this.OnECTIFICATION_COMPLETIONDATEChanging(value);
+ this.SendPropertyChanging();
+ this._ECTIFICATION_COMPLETIONDATE = value;
+ this.SendPropertyChanged("ECTIFICATION_COMPLETIONDATE");
+ this.OnECTIFICATION_COMPLETIONDATEChanged();
+ }
+ }
+ }
+
public event PropertyChangingEventHandler PropertyChanging;
public event PropertyChangedEventHandler PropertyChanged;
@@ -358202,6 +358322,8 @@ namespace Model
private System.Nullable _ReportDate;
+ private string _VIOLATION_LEVEL;
+
#region �扩展性方法定义
partial void OnLoaded();
partial void OnValidate(System.Data.Linq.ChangeAction action);
@@ -358254,6 +358376,8 @@ namespace Model
partial void OnUnitNameChanged();
partial void OnReportDateChanging(System.Nullable value);
partial void OnReportDateChanged();
+ partial void OnVIOLATION_LEVELChanging(string value);
+ partial void OnVIOLATION_LEVELChanged();
#endregion
public SANKU_VIOLATION()
@@ -358741,6 +358865,26 @@ namespace Model
}
}
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_VIOLATION_LEVEL", DbType="VarChar(20)")]
+ public string VIOLATION_LEVEL
+ {
+ get
+ {
+ return this._VIOLATION_LEVEL;
+ }
+ set
+ {
+ if ((this._VIOLATION_LEVEL != value))
+ {
+ this.OnVIOLATION_LEVELChanging(value);
+ this.SendPropertyChanging();
+ this._VIOLATION_LEVEL = value;
+ this.SendPropertyChanged("VIOLATION_LEVEL");
+ this.OnVIOLATION_LEVELChanged();
+ }
+ }
+ }
+
public event PropertyChangingEventHandler PropertyChanging;
public event PropertyChangedEventHandler PropertyChanged;
diff --git a/SGGL/Model/SanKu/SankuDangerousEngineering.cs b/SGGL/Model/SanKu/SankuDangerousEngineering.cs
index 8eaf8c7d..4912a551 100644
--- a/SGGL/Model/SanKu/SankuDangerousEngineering.cs
+++ b/SGGL/Model/SanKu/SankuDangerousEngineering.cs
@@ -48,6 +48,8 @@ namespace Model
public DateTime ENGINEERING_DATE { get; set; }
public string ENGINEERING_NAME { get; set; }
public string ENGINEERING_TYPE { get; set; }
+ public string ENGINEERING_LEVEL { get; set; }
+ public string ENGINEERING_STATE { get; set; }
public string ENGINEERING_ADDRESS { get; set; }
public string ENGINEERING_DESC { get; set; }
public string STANDBY_PERSONNEL_ID_NUMBER { get; set; }
diff --git a/SGGL/Model/SanKu/SankuGridPatrol.cs b/SGGL/Model/SanKu/SankuGridPatrol.cs
index ac448f32..527078e5 100644
--- a/SGGL/Model/SanKu/SankuGridPatrol.cs
+++ b/SGGL/Model/SanKu/SankuGridPatrol.cs
@@ -47,6 +47,8 @@ namespace Model
public string SUBCONTRACTOR_NAME { get; set; }
public string PERSONNEL_ID_NUMBER { get; set; }
public string PERSONNEL_NAME { get; set; }
+ public string PATROL_WORKITEMS { get; set; }
+ public DateTime PATROL_RECEIVEDATE { get; set; }
public DateTime PATROL_TIME { get; set; }
public string PATROL_STATUS { get; set; }
//public string SOURCE_SYSTEM_ID { get; set; }
diff --git a/SGGL/Model/SanKu/SankuHazard.cs b/SGGL/Model/SanKu/SankuHazard.cs
index 8df08cc0..8b26b558 100644
--- a/SGGL/Model/SanKu/SankuHazard.cs
+++ b/SGGL/Model/SanKu/SankuHazard.cs
@@ -54,6 +54,7 @@ namespace Model
public string HAZARD_LEVEL { get; set; }
public string HAZARD_CONTENT { get; set; }
public string RECTIFICATION_STATUS { get; set; }
+ public DateTime? ECTIFICATION_COMPLETIONDATE { get; set; }
public DateTime RECTIFICATION_DEADLINE_ID { get; set; }
//public string SOURCE_SYSTEM_ID { get; set; }
//public string SOURCE_SYSTEM_NAME { get; set; }
diff --git a/SGGL/Model/SanKu/SankuViolation.cs b/SGGL/Model/SanKu/SankuViolation.cs
index 8cdde720..4d2e0c8b 100644
--- a/SGGL/Model/SanKu/SankuViolation.cs
+++ b/SGGL/Model/SanKu/SankuViolation.cs
@@ -48,6 +48,7 @@ namespace Model
public string PERSONNEL_ID_NUMBER { get; set; }
public string PERSONNEL_NAME { get; set; }
public DateTime VIOLATION_DATE { get; set; }
+ public string VIOLATION_LEVEL { get; set; }
public string VIOLATION_TYPE { get; set; }
public string VIOLATION_CONTENT { get; set; }
public string PENALTY_RESULT { get; set; }