From 1ea7046ede88355e68afeda75ea90bbc8113b080 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BD=95=E7=BE=8E=E8=8D=A3?= <10755671+mei-rong-he@user.noreply.gitee.com> Date: Sat, 25 Oct 2025 14:45:05 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E9=97=AE=E9=A2=98=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Api/SecurityInspectionRecordController.cs | 64 +++++++++++-------- ...curityInspectionRecordSummaryController.cs | 22 +++++-- 2 files changed, 54 insertions(+), 32 deletions(-) diff --git a/APT.MicroApi/APT.SK.WebApi/Controllers/Api/SecurityInspectionRecordController.cs b/APT.MicroApi/APT.SK.WebApi/Controllers/Api/SecurityInspectionRecordController.cs index da8e38d..73b9fd0 100644 --- a/APT.MicroApi/APT.SK.WebApi/Controllers/Api/SecurityInspectionRecordController.cs +++ b/APT.MicroApi/APT.SK.WebApi/Controllers/Api/SecurityInspectionRecordController.cs @@ -509,25 +509,25 @@ namespace APT.SK.WebApi.Controllers.Api { item.HIDDEN_LEVEL = null; } - var isExsists = details.FirstOrDefault(t => t.CHECK_RESULT == SKCheckResultEnum.Yes && t.CHECK_QUESTION_ID == null); + var isExsists = details.FirstOrDefault(t => t.CHECK_RESULT == SKCheckResultEnum.Yes && (t.CHECK_QUESTION_ID == null || t.HIDDEN_LEVEL == null || t.HIDDEN_PLACE == null)); if (isExsists != null) { - throw new Exception("有隐患必须选择隐患描述"); - } - var isExsistTwos = details.FirstOrDefault(t => t.CHECK_RESULT == SKCheckResultEnum.Yes && t.HIDDEN_LEVEL == null); - if (isExsistTwos != null) - { - throw new Exception("有隐患必须填写隐患等级"); + throw new Exception("有隐患必须选择隐患描述和隐患等级隐患地点"); } var isExsistFirsts = details.FirstOrDefault(t => t.CHECK_RESULT == SKCheckResultEnum.Yes && (t.Nav_CheckRecordDetailFiles == null || !t.Nav_CheckRecordDetailFiles.Any())); if (isExsistFirsts != null) { throw new Exception("有隐患必须上传隐患照片"); } - var noExsists = details.FirstOrDefault(t => t.CHECK_RESULT == SKCheckResultEnum.None && t.CHECK_QUESTION_ID != null); + var noExsists = details.FirstOrDefault(t => t.CHECK_RESULT != SKCheckResultEnum.None && (t.CHECK_QUESTION_ID != null|| t.HIDDEN_LEVEL != null || t.HIDDEN_PLACE != null)); if (noExsists != null) { - throw new Exception("无隐患无需填写隐患描述,请确认检查情况"); + throw new Exception("无隐患、不涉及无需填写隐患描述和隐患等级隐患地点,请确认检查情况"); + } + var noExsistTwos = details.FirstOrDefault(t => t.CHECK_RESULT != SKCheckResultEnum.Yes && t.Nav_CheckRecordDetailFiles != null && t.Nav_CheckRecordDetailFiles.Where(m=>!m.IS_DELETED).Any()); + if (noExsistTwos != null) + { + throw new Exception("无隐患、不涉及无需上传隐患照片"); } if (item.Nav_CheckRecordDetailUsers != null && item.Nav_CheckRecordDetailUsers.Any()) { @@ -739,27 +739,29 @@ namespace APT.SK.WebApi.Controllers.Api } } } - var groupDetails = tempDetails.GroupBy(t => new { t.RISK_AREA_ID, t.CHECK_CONTENTS_ID, t.CHECK_QUESTION_ID }); + var groupDetails = tempDetails.Where(t => t.CHECK_RESULT == SKCheckResultEnum.Yes).ToList(); + var groupDetailNos = tempDetails.Where(t=>t.CHECK_RESULT != SKCheckResultEnum.Yes).GroupBy(t => new { t.RISK_AREA_ID, t.CHECK_CONTENTS_ID, t.CHECK_QUESTION_ID }).Select(g=>g.FirstOrDefault()).ToList(); + groupDetails.AddRange(groupDetailNos); if (groupDetails.Any()) { foreach (var itemDetail in groupDetails) { - var ids = tempDetails.Where(t => t.RISK_AREA_ID == itemDetail.Key.RISK_AREA_ID && t.CHECK_CONTENTS_ID == itemDetail.Key.CHECK_CONTENTS_ID && t.CHECK_QUESTION_ID == itemDetail.Key.CHECK_QUESTION_ID).Select(m => m.ID).ToList(); + var ids = tempDetails.Where(t => t.RISK_AREA_ID == itemDetail.RISK_AREA_ID && t.CHECK_CONTENTS_ID == itemDetail.CHECK_CONTENTS_ID && t.CHECK_QUESTION_ID == itemDetail.CHECK_QUESTION_ID).Select(m => m.ID).ToList(); T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL summaryDetail = new T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL(); summaryDetail.ORG_ID = entity.ORG_ID; summaryDetail.SECURITY_INSPECTION_RECORD_SUMMARY_ID = summary.ID; - summaryDetail.RISK_AREA_ID = itemDetail.Key.RISK_AREA_ID; - summaryDetail.CHECK_CONTENTS_ID = itemDetail.Key.CHECK_CONTENTS_ID; - summaryDetail.CHECK_QUESTION_ID = itemDetail.Key.CHECK_QUESTION_ID; - summaryDetail.CHECKCONTENT = itemDetail.FirstOrDefault().CHECKCONTENT; - summaryDetail.CHECKPROOF = itemDetail.FirstOrDefault().CHECKPROOF; - summaryDetail.CHECKSTANDARD = itemDetail.FirstOrDefault().CHECKSTANDARD; - summaryDetail.CHECK_RESULT = itemDetail.FirstOrDefault().CHECK_RESULT; - summaryDetail.HIDDEN_DESCRIPTION = string.IsNullOrEmpty(itemDetail.FirstOrDefault().HIDDEN_DESCRIPTION) ? itemDetail.FirstOrDefault().Nav_Question?.DESCREPTION : itemDetail.FirstOrDefault().HIDDEN_DESCRIPTION; - summaryDetail.HIDDEN_LEVEL = itemDetail.FirstOrDefault().HIDDEN_LEVEL; - summaryDetail.HIDDEN_PLACE = itemDetail.FirstOrDefault().HIDDEN_PLACE; - summaryDetail.MARK = itemDetail.FirstOrDefault().MARK; - summaryDetail.NUM = itemDetail.FirstOrDefault().NUM; + summaryDetail.RISK_AREA_ID = itemDetail.RISK_AREA_ID; + summaryDetail.CHECK_CONTENTS_ID = itemDetail.CHECK_CONTENTS_ID; + summaryDetail.CHECK_QUESTION_ID = itemDetail.CHECK_QUESTION_ID; + summaryDetail.CHECKCONTENT = itemDetail.CHECKCONTENT; + summaryDetail.CHECKPROOF = itemDetail.CHECKPROOF; + summaryDetail.CHECKSTANDARD = itemDetail.CHECKSTANDARD; + summaryDetail.CHECK_RESULT = itemDetail.CHECK_RESULT; + summaryDetail.HIDDEN_DESCRIPTION = string.IsNullOrEmpty(itemDetail.HIDDEN_DESCRIPTION) ? itemDetail.Nav_Question?.DESCREPTION : itemDetail.HIDDEN_DESCRIPTION; + summaryDetail.HIDDEN_LEVEL = itemDetail.HIDDEN_LEVEL; + summaryDetail.HIDDEN_PLACE = itemDetail.HIDDEN_PLACE; + summaryDetail.MARK = itemDetail.MARK; + summaryDetail.NUM = itemDetail.NUM; sumdetails.Add(summaryDetail); var groupUsers = tempDetailUsers.Where(t => ids.Contains(t.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID)).Select(m => m.USER_ID).Distinct().ToList(); if (groupUsers.Any()) @@ -952,18 +954,24 @@ namespace APT.SK.WebApi.Controllers.Api } if (sumdetails.Any()) { - var detailTemps = sumdetails.Where(t => t.CHECK_RESULT != SKCheckResultEnum.Yes).Distinct(m => new { m.RISK_AREA_ID, m.CHECK_CONTENTS_ID, m.CHECKCONTENT, m.CHECKSTANDARD, m.CHECK_QUESTION_ID, m.CHECK_RESULT, m.HIDDEN_DESCRIPTION, m.HIDDEN_LEVEL, m.HIDDEN_PLACE }).ToList(); - var detailTempNews = sumdetails.Where(t => t.CHECK_RESULT == SKCheckResultEnum.Yes).ToList(); - summaryDetails.AddRange(detailTemps); + var detailTempNews = sumdetails.Where(t => t.CHECK_RESULT == SKCheckResultEnum.Yes).ToList(); summaryDetails.AddRange(detailTempNews); + var detailTemps = sumdetails.Where(t => t.CHECK_RESULT != SKCheckResultEnum.Yes).Distinct(m => new { m.RISK_AREA_ID, m.CHECK_CONTENTS_ID }).ToList(); + foreach (var item in detailTemps) + { + var already = detailTempNews.FirstOrDefault(t => t.RISK_AREA_ID == item.RISK_AREA_ID && t.CHECK_CONTENTS_ID == item.CHECK_CONTENTS_ID); + if (already == null) + { + summaryDetails.Add(item); + } + } var detailIds = summaryDetails.Select(m => m.ID).ToList(); summaryDetailBasics = summaryDetailBasics.Where(t => detailIds.Contains(t.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID)).ToList(); summaryDetailFiles = summaryDetailFiles.Where(t => detailIds.Contains(t.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID)).ToList(); summaryDetailUsers = summaryDetailUsers.Where(t => detailIds.Contains(t.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID)).ToList(); } - var departName = this.GetEntity(t => t.ID == entity.APPLY_DEPARTMENT_ID && t.ENABLE_STATUS == 0)?.NAME; //发消息 - var noticeTemp = NotificationTaskService.InsertUserNoticeTaskModel("安全检查记录汇总(" + departName + DateTime.Now.ToShortDateString().Replace("/", "") + ")", summary.ID, entity.ORG_ID, user.ID, user.NAME, DateTime.Now, + var noticeTemp = NotificationTaskService.InsertUserNoticeTaskModel("安全检查记录汇总-" + entity.DEPARTMENT_TYPE.GetDescription() + DateTime.Now.Month.PadLeft(2,'0') + DateTime.Now.Day.PadLeft(2,'0'), summary.ID, entity.ORG_ID, user.ID, user.NAME, DateTime.Now, DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum.消息, "SK012"); notices.Add(noticeTemp); } diff --git a/APT.MicroApi/APT.SK.WebApi/Controllers/Api/SecurityInspectionRecordSummaryController.cs b/APT.MicroApi/APT.SK.WebApi/Controllers/Api/SecurityInspectionRecordSummaryController.cs index 8667b66..84b1cf7 100644 --- a/APT.MicroApi/APT.SK.WebApi/Controllers/Api/SecurityInspectionRecordSummaryController.cs +++ b/APT.MicroApi/APT.SK.WebApi/Controllers/Api/SecurityInspectionRecordSummaryController.cs @@ -61,6 +61,15 @@ namespace APT.SK.WebApi.Controllers.Api List fileList = new List(); if (details != null && details.Any()) { + var groupDetails = details.Where(m => m.CHECK_RESULT == SKCheckResultEnum.Yes).GroupBy(t => new { t.RISK_AREA_ID, t.CHECK_CONTENTS_ID, t.CHECK_QUESTION_ID }).ToList(); + foreach (var group in groupDetails) + { + var haveRecord = details.Where(t => t.RISK_AREA_ID == group.Key.RISK_AREA_ID && t.CHECK_CONTENTS_ID == group.Key.CHECK_CONTENTS_ID && t.CHECK_QUESTION_ID == group.Key.CHECK_QUESTION_ID).ToList(); + if (haveRecord.Count > 1) + { + throw new Exception("检查内容"+haveRecord.FirstOrDefault()?.Nav_Contents?.CHECKCONTENT+"有重复的隐患,请删除重复"); + } + } var evaluationIsExist = this.GetEntity(t => t.ID == entity.ID, new string[] { "Nav_CheckRecordDetails", "Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers", "Nav_CheckRecordDetails.Nav_CheckRecordDetailFiles", "Nav_CheckRecordDetails.Nav_CheckRecordDetailBasics" }); if (evaluationIsExist != null && evaluationIsExist.Nav_CheckRecordDetails != null && evaluationIsExist.Nav_CheckRecordDetails.Any()) { @@ -84,6 +93,7 @@ namespace APT.SK.WebApi.Controllers.Api deleteDetailIds.Add(t.ID); }); } + foreach (var item in details) { if (item.CHECK_RESULT == null) @@ -145,8 +155,10 @@ namespace APT.SK.WebApi.Controllers.Api item.Nav_Contents = null; } } + var delFileIds = this.GetEntities(t => t.SECURITY_INSPECTION_RECORD_SUMMARY_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList(); if (files != null && files.Any()) { + files = files.Where(t => !t.IS_DELETED).ToList(); foreach (var item in files) { item.ORG_ID = entity.ORG_ID; @@ -257,7 +269,7 @@ namespace APT.SK.WebApi.Controllers.Api } var departName = this.GetEntity(t => t.ID == entity.APPLY_DEPARTMENT_ID && t.ENABLE_STATUS == 0)?.NAME; //发消息 - var notice = NotificationTaskService.InsertUserNoticeTaskModel("隐患上报(" + departName + entity.Nav_CheckType?.NAME + ")", report.ID, report.ORG_ID, (Guid)entity.APPLY_USER_ID, entity.Nav_ApplyUser?.NAME, DateTime.Now, + var notice = NotificationTaskService.InsertUserNoticeTaskModel("隐患上报-" + entity.DEPARTMENT_TYPE.GetDescription(), report.ID, report.ORG_ID, (Guid)entity.APPLY_USER_ID, entity.Nav_ApplyUser?.NAME, DateTime.Now, DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum.消息, "SK014"); notices.Add(notice); } @@ -287,7 +299,9 @@ namespace APT.SK.WebApi.Controllers.Api if (deleteFileIds != null && deleteFileIds.Any()) this.BantchDeleteEntityNoCommit(deleteFileIds); if (deleteDetailIds != null && deleteDetailIds.Any()) - this.BantchDeleteEntityNoCommit(deleteDetailIds); + this.BantchDeleteEntityNoCommit(deleteDetailIds); + if (delFileIds != null && delFileIds.Any()) + this.BantchDeleteEntityNoCommit(delFileIds); if (details != null && details.Any()) BantchSaveEntityNoCommit(details); if (userList != null && userList.Any()) @@ -427,7 +441,7 @@ namespace APT.SK.WebApi.Controllers.Api } var departName = this.GetEntity(t => t.ID == record.APPLY_DEPARTMENT_ID && t.ENABLE_STATUS == 0)?.NAME; //发消息 - var notice = NotificationTaskService.InsertUserNoticeTaskModel("隐患上报(" + departName + DateTime.Now.ToShortDateString().Replace("/", "") + ")", report.ID, report.ORG_ID, (Guid)record.APPLY_USER_ID, record.Nav_ApplyUser?.NAME, DateTime.Now, + var notice = NotificationTaskService.InsertUserNoticeTaskModel("隐患上报-" + record.DEPARTMENT_TYPE.GetDescription() + DateTime.Now.Month.PadLeft(2,'0')+ DateTime.Now.Day.PadLeft(2, '0'), report.ID, report.ORG_ID, (Guid)record.APPLY_USER_ID, record.Nav_ApplyUser?.NAME, DateTime.Now, DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum.消息, "SK014"); notices.Add(notice); } @@ -597,7 +611,7 @@ namespace APT.SK.WebApi.Controllers.Api filter.IgnoreDataRule = true; var result = this.GetEntity(id, new string[] {"Nav_ApplyUser","Nav_ApplyDepartment","Nav_CheckType", "Nav_CheckRecordDetails","Nav_CheckRecordDetails.Nav_RiskArea","Nav_CheckRecordDetails.Nav_Contents","Nav_CheckRecordDetails.Nav_Question","Nav_CheckRecordDetails.Nav_CheckRecordDetailBasics.Nav_Law", - "Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers.Nav_User", "Nav_CheckRecordDetails.Nav_CheckRecordDetailFiles.Nav_ImgFile", + "Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers.Nav_User.Nav_UserSignFiles.Nav_ImgFile", "Nav_CheckRecordDetails.Nav_CheckRecordDetailFiles.Nav_ImgFile", "Nav_CheckRecordFiles","Nav_CheckRecordFiles.Nav_ImgFile","Nav_ProductionUnit"}); //var taskId = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "TASK_ID").Value; if (result != null && result.Nav_CheckRecordDetails != null && result.Nav_CheckRecordDetails.Any())// && taskId != null From 634a3d0e8b872545ad873a5054e3cf353415b86e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BD=95=E7=BE=8E=E8=8D=A3?= <10755671+mei-rong-he@user.noreply.gitee.com> Date: Sun, 26 Oct 2025 01:31:46 +0800 Subject: [PATCH 2/3] 1 --- .../Services/PF/PFApproveCallBackService.cs | 261 ++++++++++++++++-- .../HiddenDangerRectifyRecordController.cs | 5 +- .../Api/SecurityInspectionRecordController.cs | 109 +++++++- 3 files changed, 340 insertions(+), 35 deletions(-) diff --git a/APT.BaseData.Services/Services/PF/PFApproveCallBackService.cs b/APT.BaseData.Services/Services/PF/PFApproveCallBackService.cs index 1d6caa1..984b80d 100644 --- a/APT.BaseData.Services/Services/PF/PFApproveCallBackService.cs +++ b/APT.BaseData.Services/Services/PF/PFApproveCallBackService.cs @@ -11337,27 +11337,36 @@ namespace APT.BaseData.Services.DomainServices { var entity = this.GetEntity(modelApp != null ? modelApp.DATA_ID : entityInt.DATA_ID); entity.STATUS = PFStandardStatus.Archived; - var reportDetails = this.GetEntities(t => t.HIDDEN_DANGER_REPORT_ID == entity.ID, new BaseFilter(entity.ORG_ID), "Nav_ReportDetailFiles", "Nav_ReportDetailBasics"); + var reportDetails = this.GetEntities(t => t.HIDDEN_DANGER_REPORT_ID == entity.ID, new BaseFilter(entity.ORG_ID), "Nav_ReportDetailFiles", "Nav_ReportDetailBasics", "Nav_ReportDetailReasons"); //List reportDetails = new List(); List sendNotices = new List(); List records = new List(); List photoList = new List(); - List basicList = new List(); + List basicList = new List(); + List notices = new List(); List nfileList = new List(); List noticeDetails = new List(); List noticeBasicList = new List(); - List noticeFileList = new List(); - List prevents = new List(); - List fileList = new List(); + List noticeFileList = new List(); + List noticeReasonList = new List(); + List reasonList = new List(); if (entity != null && reportDetails != null && reportDetails.Any()) { - var users = this.GetEntities(t => t.ENABLE_STATUS == 0, new BaseFilter(entity.ORG_ID), "Nav_ApproveRole"); + var users = this.GetEntities(t => t.ENABLE_STATUS == 0, new BaseFilter(entity.ORG_ID), "Nav_ApproveRole"); + var departs = this.GetEntities(t => t.ENABLE_STATUS == 0, new BaseFilter(entity.ORG_ID), "Nav_User"); var random = new Random(); foreach (var detail in reportDetails) - { + { + var departId = users.FirstOrDefault(t => t.ID == detail.RECITIFY_USER_ID).DEPARTMENT_ID; + var departUserId = departs.FirstOrDefault(t => t.ID == departId)?.USER_ID; if (detail.RECITIFY_USER_ID == entity.APPLY_USER_ID) - { + { + var acceptUser = users.FirstOrDefault(t => t.DEPARTMENT_ID == departId && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME.Contains("安全员")); + if (acceptUser == null || (acceptUser != null && acceptUser.ID == detail.RECITIFY_USER_ID)) + { + acceptUser = users.FirstOrDefault(t => t.DEPARTMENT_ID == departId && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME.Contains("负责人")); + } var user = users.FirstOrDefault(t => t.ID == entity.APPLY_USER_ID); detail.ISCHECK = true; detail.CHECKTIME = DateTime.Now; @@ -11374,9 +11383,11 @@ namespace APT.BaseData.Services.DomainServices record.RISK_AREA_ID = detail.RISK_AREA_ID; record.HIDDEN_PLACE = detail.HIDDEN_PLACE; record.HIDDEN_DESCRIPTION = detail.HIDDEN_DESCRIPTION; - record.HIDDEN_LEVEL = detail.HIDDEN_LEVEL; - record.RECITIFY_TIME = detail.RECITIFY_TIME; - record.RECITIFY_USER_ID = detail.RECITIFY_USER_ID; + record.HIDDEN_LEVEL = detail.HIDDEN_LEVEL; + record.RECITIFY_TIME = detail.RECITIFY_TIME; + record.RECITIFY_USER_ID = detail.RECITIFY_USER_ID; + record.IMPLEMENT_USER_ID = detail.RECITIFY_USER_ID; + record.ACCEPT_USER_ID = acceptUser.ID; record.CHECK_PERSON = entity.CHECK_PERSON; record.CHECK_TYPE_ID = entity.CHECK_TYPE_ID; record.CHECK_QUESTION_ID = detail.CHECK_QUESTION_ID; @@ -11405,6 +11416,17 @@ namespace APT.BaseData.Services.DomainServices basicList.Add(file); } } + if (detail.Nav_ReportDetailReasons != null && detail.Nav_ReportDetailReasons.Any()) + { + foreach (var item in detail.Nav_ReportDetailReasons) + { + T_SK_HIDDEN_DANGER_RECTIFY_RECORD_REASON file = new T_SK_HIDDEN_DANGER_RECTIFY_RECORD_REASON(); + file.ORG_ID = item.ORG_ID; + file.REASON_ID = item.REASON_ID; + file.HIDDEN_DANGER_RECTIFY_RECORD_ID = record.ID; + reasonList.Add(file); + } + } var endtime = DateTime.Now.AddDays(3); if (record.RECITIFY_TIME != null && record.RECITIFY_TIME != DateTime.MinValue) { @@ -11416,6 +11438,84 @@ namespace APT.BaseData.Services.DomainServices detail.Nav_ReportDetailFiles = null; detail.Nav_ReportDetailBasics = null; //reportDetails.Add(detail); + } + else if (departUserId != null && detail.RECITIFY_USER_ID != departUserId) + { + var acceptUser = users.FirstOrDefault(t => t.DEPARTMENT_ID == departId && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME.Contains("安全员")); + if (acceptUser == null || (acceptUser != null && acceptUser.ID == detail.RECITIFY_USER_ID)) + { + acceptUser = users.FirstOrDefault(t => t.DEPARTMENT_ID == departId && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME.Contains("负责人")); + } + var user = users.FirstOrDefault(t => t.ID == detail.RECITIFY_USER_ID); + detail.ISCHECK = true; + detail.CHECKTIME = DateTime.Now; + T_SK_HIDDEN_DANGER_RECTIFY_RECORD record = new T_SK_HIDDEN_DANGER_RECTIFY_RECORD(); + record.ORG_ID = detail.ORG_ID; + record.APPLY_USER_ID = entity.APPLY_USER_ID; + record.APPLY_DEPARTMENT_ID = entity.APPLY_DEPARTMENT_ID; + record.HIDDEN_DANGER_REPORT_ID = entity.ID; + record.HIDDEN_DANGER_REPORT_DETAIL_ID = detail.ID; + record.HIDDEN_DANGER_CONFIRM_ID = null; + record.CODE = "YHZG" + DateTime.Now.ToShortDateString().Replace("/", "") + random.Next(1, 999); + record.MineType = entity.MineType; + record.RISK_AREA_ID = detail.RISK_AREA_ID; + record.HIDDEN_PLACE = detail.HIDDEN_PLACE; + record.HIDDEN_DESCRIPTION = detail.HIDDEN_DESCRIPTION; + record.HIDDEN_LEVEL = detail.HIDDEN_LEVEL; + record.PRODUCTION_UNIT_ID = entity.PRODUCTION_UNIT_ID; + record.RECITIFY_TIME = detail.RECITIFY_TIME; + record.RECITIFY_USER_ID = detail.RECITIFY_USER_ID; + record.IMPLEMENT_USER_ID = detail.RECITIFY_USER_ID; + record.ACCEPT_USER_ID = acceptUser.ID; + record.CHECK_PERSON = entity.CHECK_PERSON; + record.CHECK_TYPE_ID = entity.CHECK_TYPE_ID; + record.CHECK_QUESTION_ID = detail.CHECK_QUESTION_ID; + record.CHECK_CONTENTS_ID = detail.CHECK_CONTENTS_ID; + record.CHECK_TIME = entity.CHECK_TIME; + records.Add(record); + if (detail.Nav_ReportDetailFiles != null && detail.Nav_ReportDetailFiles.Any()) + { + foreach (var item in detail.Nav_ReportDetailFiles) + { + T_SK_HIDDEN_DANGER_RECTIFY_RECORD_PHOTOA file = new T_SK_HIDDEN_DANGER_RECTIFY_RECORD_PHOTOA(); + file.ORG_ID = item.ORG_ID; + file.IMG_FILE_ID = item.IMG_FILE_ID; + file.HIDDEN_DANGER_RECTIFY_RECORD_ID = record.ID; + photoList.Add(file); + } + } + if (detail.Nav_ReportDetailBasics != null && detail.Nav_ReportDetailBasics.Any()) + { + foreach (var item in detail.Nav_ReportDetailBasics) + { + T_SK_HIDDEN_DANGER_RECTIFY_RECORD_BASIC file = new T_SK_HIDDEN_DANGER_RECTIFY_RECORD_BASIC(); + file.ORG_ID = item.ORG_ID; + file.LAW_ID = item.LAW_ID; + file.HIDDEN_DANGER_RECTIFY_RECORD_ID = record.ID; + basicList.Add(file); + } + } + if (detail.Nav_ReportDetailReasons != null && detail.Nav_ReportDetailReasons.Any()) + { + foreach (var item in detail.Nav_ReportDetailReasons) + { + T_SK_HIDDEN_DANGER_RECTIFY_RECORD_REASON file = new T_SK_HIDDEN_DANGER_RECTIFY_RECORD_REASON(); + file.ORG_ID = item.ORG_ID; + file.REASON_ID = item.REASON_ID; + file.HIDDEN_DANGER_RECTIFY_RECORD_ID = record.ID; + reasonList.Add(file); + } + } + var endtime = DateTime.Now.AddDays(3); + if (record.RECITIFY_TIME != null && record.RECITIFY_TIME != DateTime.MinValue) + { + endtime = DateTime.Parse(record.RECITIFY_TIME.Value.ToShortDateString() + " 23:59:59"); + } + var sendNotice = NotificationTaskService.InsertUserNoticeTaskModel("隐患整改记录表", record.ID, record.ORG_ID, user.ID, user.NAME, DateTime.Now, + endtime, (int)FMNoticeTypeEnum.消息, "SK022"); + sendNotices.Add(sendNotice); + detail.Nav_ReportDetailFiles = null; + detail.Nav_ReportDetailBasics = null; } else { @@ -11481,8 +11581,18 @@ namespace APT.BaseData.Services.DomainServices file.HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_ID = noticeDetail.ID; noticeBasicList.Add(file); } + } + if (detail.Nav_ReportDetailReasons != null && detail.Nav_ReportDetailReasons.Any()) + { + foreach (var item in detail.Nav_ReportDetailReasons) + { + T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_REASON file = new T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_REASON(); + file.ORG_ID = item.ORG_ID; + file.REASON_ID = item.REASON_ID; + file.HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_ID = noticeDetail.ID; + noticeReasonList.Add(file); + } } - var departId = users.FirstOrDefault(t => t.ID == detail.RECITIFY_USER_ID).DEPARTMENT_ID; var user = users.FirstOrDefault(t => t.DEPARTMENT_ID == departId && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME.Contains("安全员")); if (user == null) { @@ -11497,7 +11607,7 @@ namespace APT.BaseData.Services.DomainServices var checkUser = users.FirstOrDefault(t => t.ID == detail.RECITIFY_USER_ID); if (checkUser != null) { - var sendNotice = NotificationTaskService.InsertUserNoticeTaskModel("隐患上报表(" + DateTime.Now.ToShortDateString().Replace("/", "") + ")-确认", entity.ID, entity.ORG_ID, checkUser.ID, checkUser.NAME, DateTime.Now, + var sendNotice = NotificationTaskService.InsertUserNoticeTaskModel("隐患上报表" + DateTime.Now.Month.PadLeft(2,'0')+ DateTime.Now.Day.PadLeft(2, '0') + "-确认", entity.ID, entity.ORG_ID, checkUser.ID, checkUser.NAME, DateTime.Now, DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum.消息, "SK014_SHOWPRINT"); sendNotices.Add(sendNotice); } @@ -11573,16 +11683,16 @@ namespace APT.BaseData.Services.DomainServices this.BantchSaveEntityNoCommit(photoList); if (basicList != null && basicList.Any()) this.BantchSaveEntityNoCommit(basicList); + if (reasonList != null && reasonList.Any()) + this.BantchSaveEntityNoCommit(reasonList); if (noticeDetails != null && noticeDetails.Any()) this.BantchSaveEntityNoCommit(noticeDetails); if (noticeFileList != null && noticeFileList.Any()) this.BantchSaveEntityNoCommit(noticeFileList); if (noticeBasicList != null && noticeBasicList.Any()) this.BantchSaveEntityNoCommit(noticeBasicList); - if (prevents != null && prevents.Any()) - this.BantchSaveEntityNoCommit(prevents); - if (fileList != null && fileList.Any()) - this.BantchSaveEntityNoCommit(fileList); + if (noticeReasonList != null && noticeReasonList.Any()) + this.BantchSaveEntityNoCommit(noticeReasonList); }); } return true; @@ -11618,7 +11728,7 @@ namespace APT.BaseData.Services.DomainServices } else { - var entity = this.GetEntity(modelApp != null ? modelApp.DATA_ID : entityInt.DATA_ID, "Nav_Report"); + var entity = this.GetEntity(modelApp != null ? modelApp.DATA_ID : entityInt.DATA_ID, "Nav_Report", "Nav_Reasons"); entity.STATUS = PFStandardStatus.Archived; var photos = this.GetEntities(t => t.HIDDEN_DANGER_CONFIRM_ID == entity.ID, new BaseFilter(entity.ORG_ID)); var users = this.GetEntities(t => t.ENABLE_STATUS == 0, new BaseFilter(entity.ORG_ID), "Nav_ApproveRole"); @@ -11629,7 +11739,9 @@ namespace APT.BaseData.Services.DomainServices List photoList = new List(); T_SK_HIDDEN_DANGER_RECTIFY_NOTICE notice = null; List noticeDetails = new List(); - List noticeFileList = new List(); + List noticeFileList = new List(); + List noticeReasonList = new List(); + List reasonList = new List(); //if (entity != null && entity.IS_STORE == SKIsStoreEnum.Yes && entity.RECITIFY_USER_ID != null) //{ // //触发双重预防机制 @@ -11672,9 +11784,16 @@ namespace APT.BaseData.Services.DomainServices // } //} if (entity != null && entity.RECITIFY_USER_ID != null) - { + { + var departId = users.FirstOrDefault(t => t.ID == entity.RECITIFY_USER_ID).DEPARTMENT_ID; + var departUserId = this.GetEntity(t => t.ID == departId)?.USER_ID; if (entity.RECITIFY_USER_ID == entity.APPLY_USER_ID) - { + { + var acceptUser = users.FirstOrDefault(t => t.DEPARTMENT_ID == departId && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME.Contains("安全员")); + if (acceptUser == null || (acceptUser != null && acceptUser.ID == entity.RECITIFY_USER_ID)) + { + acceptUser = users.FirstOrDefault(t => t.DEPARTMENT_ID == departId && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME.Contains("负责人")); + } var user = users.FirstOrDefault(t => t.ID == entity.APPLY_USER_ID); record = new T_SK_HIDDEN_DANGER_RECTIFY_RECORD(); record.APPLY_DEPARTMENT_ID = entity.APPLY_DEPARTMENT_ID; @@ -11695,7 +11814,9 @@ namespace APT.BaseData.Services.DomainServices record.RECITIFY_USER_ID = entity.RECITIFY_USER_ID; record.CHECK_TYPE_ID = entity.CHECK_TYPE_ID; record.CHECK_TIME = entity.Nav_Report?.CREATE_TIME; - record.CHECK_PERSON = user.NAME; + record.CHECK_PERSON = user.NAME; + record.IMPLEMENT_USER_ID = entity.RECITIFY_USER_ID; + record.ACCEPT_USER_ID = acceptUser.ID; record.RECTIFICATION_MEASURES = entity.RECTIFICATION_MEASURES; if (photos != null && photos.Any()) { @@ -11707,6 +11828,17 @@ namespace APT.BaseData.Services.DomainServices file.HIDDEN_DANGER_RECTIFY_RECORD_ID = record.ID; photoList.Add(file); } + } + if (entity.Nav_Reasons != null && entity.Nav_Reasons.Any()) + { + foreach (var item in entity.Nav_Reasons) + { + T_SK_HIDDEN_DANGER_RECTIFY_RECORD_REASON file = new T_SK_HIDDEN_DANGER_RECTIFY_RECORD_REASON(); + file.ORG_ID = item.ORG_ID; + file.REASON_ID = item.REASON_ID; + file.HIDDEN_DANGER_RECTIFY_RECORD_ID = record.ID; + reasonList.Add(file); + } } var endtime = DateTime.Now.AddDays(3); if (record.RECITIFY_TIME != null && record.RECITIFY_TIME != DateTime.MinValue) @@ -11716,6 +11848,71 @@ namespace APT.BaseData.Services.DomainServices var sendNotice = NotificationTaskService.InsertUserNoticeTaskModel("隐患整改记录表", record.ID, record.ORG_ID, user.ID, user.NAME, DateTime.Now, endtime, (int)FMNoticeTypeEnum.消息, "SK022"); sendNotices.Add(sendNotice); + } + else if (departUserId != null && entity.RECITIFY_USER_ID != departUserId) + { + var user = users.FirstOrDefault(t => t.ID == entity.RECITIFY_USER_ID); + if (user != null) + { + var acceptUser = users.FirstOrDefault(t => t.DEPARTMENT_ID == departId && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME.Contains("安全员")); + if (acceptUser == null || (acceptUser != null && acceptUser.ID == entity.RECITIFY_USER_ID)) + { + acceptUser = users.FirstOrDefault(t => t.DEPARTMENT_ID == departId && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME.Contains("负责人")); + } + record = new T_SK_HIDDEN_DANGER_RECTIFY_RECORD(); + record.APPLY_DEPARTMENT_ID = entity.APPLY_DEPARTMENT_ID; + record.APPLY_USER_ID = entity.APPLY_USER_ID; + record.ORG_ID = entity.ORG_ID; + record.HIDDEN_DANGER_REPORT_ID = entity.Nav_Report?.ID; + record.HIDDEN_DANGER_CONFIRM_ID = entity.ID; + record.CODE = "YHZG" + DateTime.Now.ToShortDateString().Replace("/", "") + new Random().Next(1, 999); + record.MineType = entity.MineType; + record.PRODUCTION_UNIT_ID = entity.PRODUCTION_UNIT_ID; + record.RISK_AREA_ID = entity.RISK_AREA_ID; + record.HIDDEN_PLACE = entity.HIDDEN_PLACE; + record.CHECK_CONTENTS_ID = entity.CHECK_CONTENTS_ID; + record.CHECK_QUESTION_ID = entity.CHECK_QUESTION_ID; + record.HIDDEN_DESCRIPTION = entity.HIDDEN_DESCRIPTION; + record.HIDDEN_LEVEL = entity.HIDDEN_LEVEL; + record.RECITIFY_TIME = entity.RECITIFY_TIME; + record.RECITIFY_USER_ID = entity.RECITIFY_USER_ID; + record.CHECK_TYPE_ID = entity.CHECK_TYPE_ID; + record.CHECK_TIME = entity.Nav_Report?.CREATE_TIME; + record.CHECK_PERSON = user.NAME; + record.IMPLEMENT_USER_ID = entity.RECITIFY_USER_ID; + record.ACCEPT_USER_ID = acceptUser.ID; + record.RECTIFICATION_MEASURES = entity.RECTIFICATION_MEASURES; + if (photos != null && photos.Any()) + { + foreach (var item in photos) + { + T_SK_HIDDEN_DANGER_RECTIFY_RECORD_PHOTOA file = new T_SK_HIDDEN_DANGER_RECTIFY_RECORD_PHOTOA(); + file.ORG_ID = item.ORG_ID; + file.IMG_FILE_ID = item.IMG_FILE_ID; + file.HIDDEN_DANGER_RECTIFY_RECORD_ID = record.ID; + photoList.Add(file); + } + } + if (entity.Nav_Reasons != null && entity.Nav_Reasons.Any()) + { + foreach (var item in entity.Nav_Reasons) + { + T_SK_HIDDEN_DANGER_RECTIFY_RECORD_REASON file = new T_SK_HIDDEN_DANGER_RECTIFY_RECORD_REASON(); + file.ORG_ID = item.ORG_ID; + file.REASON_ID = item.REASON_ID; + file.HIDDEN_DANGER_RECTIFY_RECORD_ID = record.ID; + reasonList.Add(file); + } + } + var endtime = DateTime.Now.AddDays(3); + if (record.RECITIFY_TIME != null && record.RECITIFY_TIME != DateTime.MinValue) + { + endtime = DateTime.Parse(record.RECITIFY_TIME.Value.ToShortDateString() + " 23:59:59"); + } + var sendNotice = NotificationTaskService.InsertUserNoticeTaskModel("隐患整改记录表", record.ID, record.ORG_ID, user.ID, user.NAME, DateTime.Now, + endtime, (int)FMNoticeTypeEnum.消息, "SK022"); + sendNotices.Add(sendNotice); + } } else { @@ -11759,7 +11956,17 @@ namespace APT.BaseData.Services.DomainServices noticeFileList.Add(file); } } - var departId = users.FirstOrDefault(t => t.ID == entity.RECITIFY_USER_ID).DEPARTMENT_ID; + if (entity.Nav_Reasons != null && entity.Nav_Reasons.Any()) + { + foreach (var item in entity.Nav_Reasons) + { + T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_REASON file = new T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_REASON(); + file.ORG_ID = item.ORG_ID; + file.REASON_ID = item.REASON_ID; + file.HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_ID = noticeDetail.ID; + noticeReasonList.Add(file); + } + } var user = users.FirstOrDefault(t => t.DEPARTMENT_ID == departId && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME.Contains("安全员")); if (user == null) { @@ -11794,13 +12001,17 @@ namespace APT.BaseData.Services.DomainServices if (record != null) this.UpdateEntityNoCommit(record); if (photoList != null && photoList.Any()) - this.BantchSaveEntityNoCommit(photoList); + this.BantchSaveEntityNoCommit(photoList); + if (reasonList != null && reasonList.Any()) + this.BantchSaveEntityNoCommit(reasonList); if (notice != null) this.UpdateEntityNoCommit(notice); if (noticeDetails != null && noticeDetails.Any()) this.BantchSaveEntityNoCommit(noticeDetails); if (noticeFileList != null && noticeFileList.Any()) - this.BantchSaveEntityNoCommit(noticeFileList); + this.BantchSaveEntityNoCommit(noticeFileList); + if (noticeReasonList != null && noticeReasonList.Any()) + this.BantchSaveEntityNoCommit(noticeReasonList); }); } return true; diff --git a/APT.MicroApi/APT.SK.WebApi/Controllers/Api/HiddenDangerRectifyRecordController.cs b/APT.MicroApi/APT.SK.WebApi/Controllers/Api/HiddenDangerRectifyRecordController.cs index 3ac949e..b3c7e11 100644 --- a/APT.MicroApi/APT.SK.WebApi/Controllers/Api/HiddenDangerRectifyRecordController.cs +++ b/APT.MicroApi/APT.SK.WebApi/Controllers/Api/HiddenDangerRectifyRecordController.cs @@ -126,7 +126,10 @@ namespace APT.SK.WebApi.Controllers { if (entity.ACCEPT_USER_ID != null) { - entity.STATUS = PFStandardStatus.Sign; + entity.STATUS = PFStandardStatus.Sign; + entity.ACCEPT_OPINION = null; + entity.ACCEPT_RESULTE = SKAcceptResultEnum.Yes; + entity.ACCEPT_DATE = DateTime.Now; var departName = this.GetEntity(t => t.ID == entity.APPLY_DEPARTMENT_ID && t.ENABLE_STATUS == 0)?.NAME; var UserNames = new List(); var user = this.GetEntity(t => t.ENABLE_STATUS == (int)FMEnableStatusEnum.启用 && t.ID == entity.ACCEPT_USER_ID); diff --git a/APT.MicroApi/APT.SK.WebApi/Controllers/Api/SecurityInspectionRecordController.cs b/APT.MicroApi/APT.SK.WebApi/Controllers/Api/SecurityInspectionRecordController.cs index 73b9fd0..5c10f0b 100644 --- a/APT.MicroApi/APT.SK.WebApi/Controllers/Api/SecurityInspectionRecordController.cs +++ b/APT.MicroApi/APT.SK.WebApi/Controllers/Api/SecurityInspectionRecordController.cs @@ -469,10 +469,12 @@ namespace APT.SK.WebApi.Controllers.Api List deleteUserIds = new List(); List deleteFileIds = new List(); List deleteBasicIds = new List(); - List deleteDetailIds = new List(); + List deleteDetailIds = new List(); + List deleteReasonIds = new List(); List userList = new List(); List basicList = new List(); - List fileList = new List(); + List fileList = new List(); + List reasonList = new List(); if (details != null && details.Any()) { var evaluationIsExist = this.GetEntity(t => t.ID == entity.ID, new string[] { "Nav_CheckRecordDetails", "Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers", "Nav_CheckRecordDetails.Nav_CheckRecordDetailFiles", "Nav_CheckRecordDetails.Nav_CheckRecordDetailBasics" }); @@ -495,6 +497,11 @@ namespace APT.SK.WebApi.Controllers.Api { var tempIds = t.Nav_CheckRecordDetailBasics.Select(m => m.ID).ToList(); deleteBasicIds.AddRange(tempIds); + } + if (t.Nav_CheckRecordDetailReasons != null && t.Nav_CheckRecordDetailReasons.Any()) + { + var tempIds = t.Nav_CheckRecordDetailReasons.Select(m => m.ID).ToList(); + deleteReasonIds.AddRange(tempIds); } deleteDetailIds.Add(t.ID); }); @@ -562,6 +569,16 @@ namespace APT.SK.WebApi.Controllers.Api item2.Nav_Law = null; basicList.Add(item2); } + } + if (item.Nav_CheckRecordDetailReasons != null && item.Nav_CheckRecordDetailReasons.Any()) + { + foreach (var item2 in item.Nav_CheckRecordDetailReasons) + { + item2.ORG_ID = entity.ORG_ID; + item2.SECURITY_INSPECTION_RECORD_DETAIL_ID = item.ID; + item2.Nav_Reason = null; + reasonList.Add(item2); + } } item.ORG_ID = entity.ORG_ID; item.SECURITY_INSPECTION_RECORD_ID = entity.ID; @@ -608,12 +625,14 @@ namespace APT.SK.WebApi.Controllers.Api List summaryFiles = new List(); List summaryDetails = new List(); List summaryDetailUsers = new List(); - List summaryDetailBasics = new List(); + List summaryDetailBasics = new List(); + List summaryDetailReasons = new List(); List summaryDetailFiles = new List(); T_SK_HIDDEN_DANGER_REPORT report = null; List reportDetails = new List(); List reportDetailFiles = new List(); - List reportDetailBasics = new List(); + List reportDetailBasics = new List(); + List reportDetailReasons = new List(); if (entity.PUBLISH != null && entity.PUBLISH.Equals("SaveAndNotify")) { var checkTypeIds = this.GetEntities(t => t.NAME.Contains("岗位排查"), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList(); @@ -668,7 +687,8 @@ namespace APT.SK.WebApi.Controllers.Api { var tempDetails = new List(); var tempDetailUsers = new List(); - var tempDetailBasics = new List(); + var tempDetailBasics = new List(); + var tempDetailReasons = new List(); var tempDetailFiles = new List(); var recordFileTemps = this.GetEntities(t => recordTempIds.Contains(t.SECURITY_INSPECTION_RECORD_ID), new BaseFilter(entity.ORG_ID)).ToList(); recordFileTemps.AddRange(files); @@ -682,7 +702,7 @@ namespace APT.SK.WebApi.Controllers.Api summaryFiles.Add(summaryFile); } summaryFiles = summaryFiles.Distinct(t => t.IMG_FILE_ID).ToList(); - var recordDetailTemps = this.GetEntities(t => recordTempIds.Contains(t.SECURITY_INSPECTION_RECORD_ID), new BaseFilter(entity.ORG_ID), "Nav_CheckRecordDetailUsers", "Nav_CheckRecordDetailBasics", "Nav_CheckRecordDetailFiles").ToList(); + var recordDetailTemps = this.GetEntities(t => recordTempIds.Contains(t.SECURITY_INSPECTION_RECORD_ID), new BaseFilter(entity.ORG_ID), "Nav_CheckRecordDetailUsers", "Nav_CheckRecordDetailBasics", "Nav_CheckRecordDetailFiles", "Nav_CheckRecordDetailReasons").ToList(); recordDetailTemps.AddRange(details); foreach (var itemDetail in recordDetailTemps) { @@ -737,6 +757,18 @@ namespace APT.SK.WebApi.Controllers.Api summaryFile.IMG_FILE_ID = itemFile.IMG_FILE_ID; tempDetailFiles.Add(summaryFile); } + } + if (itemDetail.Nav_CheckRecordDetailReasons != null && itemDetail.Nav_CheckRecordDetailReasons.Any()) + { + foreach (var itemFile in itemDetail.Nav_CheckRecordDetailReasons) + { + T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_REASON summaryFile = new T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_REASON(); + summaryFile.ORG_ID = entity.ORG_ID; + summaryFile.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID = summaryDetail.ID; + summaryFile.Nav_Reason = null; + summaryFile.REASON_ID = itemFile.REASON_ID; + tempDetailReasons.Add(summaryFile); + } } } var groupDetails = tempDetails.Where(t => t.CHECK_RESULT == SKCheckResultEnum.Yes).ToList(); @@ -789,6 +821,19 @@ namespace APT.SK.WebApi.Controllers.Api summaryDetailBasics.Add(summaryBasic); } } + var groupReasons = tempDetailReasons.Where(t => ids.Contains(t.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID)).Select(m => m.REASON_ID).Distinct().ToList(); + if (groupReasons.Any()) + { + foreach (var itemBasic in groupReasons) + { + T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_REASON summaryBasic = new T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_REASON(); + summaryBasic.ORG_ID = entity.ORG_ID; + summaryBasic.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID = summaryDetail.ID; + summaryBasic.Nav_Reason = null; + summaryBasic.REASON_ID = itemBasic; + summaryDetailReasons.Add(summaryBasic); + } + } var groupFiles = tempDetailFiles.Where(t => ids.Contains(t.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID)).Select(m => m.IMG_FILE_ID).Distinct().ToList(); if (groupFiles.Any()) { @@ -874,6 +919,18 @@ namespace APT.SK.WebApi.Controllers.Api summaryFile.IMG_FILE_ID = itemFile.IMG_FILE_ID; summaryDetailFiles.Add(summaryFile); } + } + if (itemDetail.Nav_CheckRecordDetailReasons != null && itemDetail.Nav_CheckRecordDetailReasons.Any()) + { + foreach (var itemFile in itemDetail.Nav_CheckRecordDetailReasons) + { + T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_REASON summaryFile = new T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_REASON(); + summaryFile.ORG_ID = entity.ORG_ID; + summaryFile.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID = summaryDetail.ID; + summaryFile.Nav_Reason = null; + summaryFile.REASON_ID = itemFile.REASON_ID; + summaryDetailReasons.Add(summaryFile); + } } } } @@ -948,6 +1005,18 @@ namespace APT.SK.WebApi.Controllers.Api summaryFile.IMG_FILE_ID = itemFile.IMG_FILE_ID; summaryDetailFiles.Add(summaryFile); } + } + if (itemDetail.Nav_CheckRecordDetailReasons != null && itemDetail.Nav_CheckRecordDetailReasons.Any()) + { + foreach (var itemFile in itemDetail.Nav_CheckRecordDetailReasons) + { + T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_REASON summaryFile = new T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_REASON(); + summaryFile.ORG_ID = entity.ORG_ID; + summaryFile.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID = summaryDetail.ID; + summaryFile.Nav_Reason = null; + summaryFile.REASON_ID = itemFile.REASON_ID; + summaryDetailReasons.Add(summaryFile); + } } } } @@ -967,6 +1036,7 @@ namespace APT.SK.WebApi.Controllers.Api } var detailIds = summaryDetails.Select(m => m.ID).ToList(); summaryDetailBasics = summaryDetailBasics.Where(t => detailIds.Contains(t.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID)).ToList(); + summaryDetailReasons = summaryDetailReasons.Where(t => detailIds.Contains(t.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID)).ToList(); summaryDetailFiles = summaryDetailFiles.Where(t => detailIds.Contains(t.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID)).ToList(); summaryDetailUsers = summaryDetailUsers.Where(t => detailIds.Contains(t.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID)).ToList(); } @@ -1047,6 +1117,18 @@ namespace APT.SK.WebApi.Controllers.Api reportDetailBasics.Add(file); } } + if (item.Nav_CheckRecordDetailReasons != null && item.Nav_CheckRecordDetailReasons.Any()) + { + foreach (var item2 in item.Nav_CheckRecordDetailReasons) + { + T_SK_HIDDEN_DANGER_REPORT_DETAIL_REASON file = new T_SK_HIDDEN_DANGER_REPORT_DETAIL_REASON(); + file.ORG_ID = item2.ORG_ID; + file.HIDDEN_DANGER_REPORT_DETAIL_ID = detail.ID; + file.REASON_ID = item2.REASON_ID; + file.Nav_Reason = null; + reportDetailReasons.Add(file); + } + } } //发消息 var notice = NotificationTaskService.InsertUserNoticeTaskModel("岗位排查表-隐患上报", report.ID, report.ORG_ID, (Guid)monitor.USER_ID, monitor.Nav_User?.NAME, DateTime.Now, @@ -1065,6 +1147,7 @@ namespace APT.SK.WebApi.Controllers.Api t.Nav_Question = null; t.Nav_Contents = null; t.Nav_CheckRecordDetailBasics = null; + t.Nav_CheckRecordDetailReasons = null; //t.Nav_CheckRecordDetailFiles = null; t.Nav_CheckRecordDetailUsers = null; }); @@ -1077,7 +1160,9 @@ namespace APT.SK.WebApi.Controllers.Api if (deleteUserIds != null && deleteUserIds.Any()) this.BantchDeleteEntityNoCommit(deleteUserIds); if (deleteBasicIds != null && deleteBasicIds.Any()) - this.BantchDeleteEntityNoCommit(deleteBasicIds); + this.BantchDeleteEntityNoCommit(deleteBasicIds); + if (deleteReasonIds != null && deleteReasonIds.Any()) + this.BantchDeleteEntityNoCommit(deleteReasonIds); if (deleteFileIds != null && deleteFileIds.Any()) this.BantchDeleteEntityNoCommit(deleteFileIds); if (deleteDetailIds != null && deleteDetailIds.Any()) @@ -1088,6 +1173,8 @@ namespace APT.SK.WebApi.Controllers.Api BantchSaveEntityNoCommit(userList); if (basicList != null && basicList.Any()) BantchSaveEntityNoCommit(basicList); + if (reasonList != null && reasonList.Any()) + BantchSaveEntityNoCommit(reasonList); if (fileList != null && fileList.Any()) BantchSaveEntityNoCommit(fileList); if (files != null && files.Any()) @@ -1099,7 +1186,9 @@ namespace APT.SK.WebApi.Controllers.Api if (summaryDetails != null && summaryDetails.Any()) BantchSaveEntityNoCommit(summaryDetails); if (summaryDetailUsers != null && summaryDetailUsers.Any()) - BantchSaveEntityNoCommit(summaryDetailUsers); + BantchSaveEntityNoCommit(summaryDetailUsers); + if (summaryDetailReasons != null && summaryDetailReasons.Any()) + BantchSaveEntityNoCommit(summaryDetailReasons); if (summaryDetailBasics != null && summaryDetailBasics.Any()) BantchSaveEntityNoCommit(summaryDetailBasics); if (summaryFiles != null && summaryFiles.Any()) @@ -1113,7 +1202,9 @@ namespace APT.SK.WebApi.Controllers.Api if (reportDetailFiles != null && reportDetailFiles.Any()) BantchSaveEntityNoCommit(reportDetailFiles); if (reportDetailBasics != null && reportDetailBasics.Any()) - BantchSaveEntityNoCommit(reportDetailBasics); + BantchSaveEntityNoCommit(reportDetailBasics); + if (reportDetailReasons != null && reportDetailReasons.Any()) + BantchSaveEntityNoCommit(reportDetailReasons); }); return true; }); From 1ce70315b01fb474c47722f226310767612b4968 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BD=95=E7=BE=8E=E8=8D=A3?= <10755671+mei-rong-he@user.noreply.gitee.com> Date: Sun, 26 Oct 2025 01:54:19 +0800 Subject: [PATCH 3/3] 2 --- .../Api/HiddenDangerConfirmController.cs | 19 ++++- .../HiddenDangerRectifyNoticeController.cs | 55 +++++++++++++-- .../HiddenDangerRectifyRecordController.cs | 21 +++++- ...curityInspectionRecordSummaryController.cs | 70 ++++++++++++++++--- 4 files changed, 144 insertions(+), 21 deletions(-) diff --git a/APT.MicroApi/APT.SK.WebApi/Controllers/Api/HiddenDangerConfirmController.cs b/APT.MicroApi/APT.SK.WebApi/Controllers/Api/HiddenDangerConfirmController.cs index c20cb2c..b786f6b 100644 --- a/APT.MicroApi/APT.SK.WebApi/Controllers/Api/HiddenDangerConfirmController.cs +++ b/APT.MicroApi/APT.SK.WebApi/Controllers/Api/HiddenDangerConfirmController.cs @@ -53,6 +53,8 @@ namespace APT.SK.WebApi.Controllers.Api entity.Nav_Files = null; var basics = entity.Nav_Basics; entity.Nav_Basics = null; + var reasons = entity.Nav_Reasons; + entity.Nav_Reasons = null; entity.ApplyDepartmentName = this.GetEntity(t => t.ID == departId).NAME; entity.ApplyPostName = this.GetEntity(t => t.ID == userId, "Nav_Person.Nav_Post")?.Nav_Person?.Nav_Post?.NAME; if (string.IsNullOrEmpty(entity.HIDDEN_DESCRIPTION)) @@ -85,6 +87,15 @@ namespace APT.SK.WebApi.Controllers.Api item.HIDDEN_DANGER_CONFIRM_ID = entity.ID; item.Nav_Law = null; } + } + if (reasons != null && reasons.Any()) + { + foreach (var item in reasons) + { + item.ORG_ID = entity.ORG_ID; + item.HIDDEN_DANGER_CONFIRM_ID = entity.ID; + item.Nav_Reason = null; + } } if (entity.RECITIFY_TIME.HasValue && entity.RECITIFY_TIME.Value.Date < DateTime.Now.Date) { @@ -137,7 +148,9 @@ namespace APT.SK.WebApi.Controllers.Api if (files != null && files.Any()) BantchSaveEntityNoCommit(files); if (basics != null && basics.Any()) - BantchSaveEntityNoCommit(basics); + BantchSaveEntityNoCommit(basics); + if (reasons != null && reasons.Any()) + BantchSaveEntityNoCommit(reasons); }, null, null, null, null, null, "SK018_SHOWPRINT", null, level + "隐患确认单审批"); return true; } @@ -150,7 +163,9 @@ namespace APT.SK.WebApi.Controllers.Api if (files != null && files.Any()) BantchSaveEntityNoCommit(files); if (basics != null && basics.Any()) - BantchSaveEntityNoCommit(basics); + BantchSaveEntityNoCommit(basics); + if (reasons != null && reasons.Any()) + BantchSaveEntityNoCommit(reasons); }); return true; }); diff --git a/APT.MicroApi/APT.SK.WebApi/Controllers/Api/HiddenDangerRectifyNoticeController.cs b/APT.MicroApi/APT.SK.WebApi/Controllers/Api/HiddenDangerRectifyNoticeController.cs index 924130d..62b7b91 100644 --- a/APT.MicroApi/APT.SK.WebApi/Controllers/Api/HiddenDangerRectifyNoticeController.cs +++ b/APT.MicroApi/APT.SK.WebApi/Controllers/Api/HiddenDangerRectifyNoticeController.cs @@ -52,10 +52,12 @@ namespace APT.SK.WebApi.Controllers.Api entity.ApplyDepartmentName = this.GetEntity(t => t.ID == departId).NAME; entity.ApplyPostName = this.GetEntity(t => t.ID == userId, "Nav_Person.Nav_Post")?.Nav_Person?.Nav_Post?.NAME; List deleteFileIds = new List(); - List deleteBasicIds = new List(); + List deleteBasicIds = new List(); + List deleteReasonIds = new List(); List deleteDetailIds = new List(); List fileList = new List(); - List basicList = new List(); + List basicList = new List(); + List reasonList = new List(); if (details != null && details.Any()) { var evaluationIsExist = this.GetEntity(t => t.ID == entity.ID, new string[] { "Nav_RectifyDetails", "Nav_RectifyDetails.Nav_RectifyDetailFiles", "Nav_RectifyDetails.Nav_RectifyDetailBasics" }); @@ -72,6 +74,11 @@ namespace APT.SK.WebApi.Controllers.Api { var tempIds = t.Nav_RectifyDetailBasics.Select(m => m.ID).ToList(); deleteBasicIds.AddRange(tempIds); + } + if (t.Nav_RectifyDetailReasons != null && t.Nav_RectifyDetailReasons.Any()) + { + var tempIds = t.Nav_RectifyDetailReasons.Select(m => m.ID).ToList(); + deleteReasonIds.AddRange(tempIds); } deleteDetailIds.Add(t.ID); }); @@ -113,9 +120,25 @@ namespace APT.SK.WebApi.Controllers.Api basicList.Add(basic); } } + } + if (item.Nav_RectifyDetailReasons != null && item.Nav_RectifyDetailReasons.Any()) + { + foreach (var item2 in item.Nav_RectifyDetailReasons) + { + if (!item2.IS_DELETED) + { + T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_REASON basic = new T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_REASON(); + basic.ORG_ID = entity.ORG_ID; + basic.HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_ID = item.ID; + basic.REASON_ID = item2.REASON_ID; + basic.Nav_Reason = null; + reasonList.Add(basic); + } + } } item.Nav_RectifyDetailBasics = null; - item.Nav_RectifyDetailFiles = null; + item.Nav_RectifyDetailFiles = null; + item.Nav_RectifyDetailReasons = null; item.Nav_Contents = null; item.Nav_RecitifyUser = null; item.Nav_AcceptUser = null; @@ -160,6 +183,8 @@ namespace APT.SK.WebApi.Controllers.Api } this.UnifiedCommit(() => { + if (deleteReasonIds != null && deleteReasonIds.Any()) + this.BantchDeleteEntityNoCommit(deleteReasonIds); if (deleteBasicIds != null && deleteBasicIds.Any()) this.BantchDeleteEntityNoCommit(deleteBasicIds); if (deleteFileIds != null && deleteFileIds.Any()) @@ -179,7 +204,9 @@ namespace APT.SK.WebApi.Controllers.Api if (fileList != null && fileList.Any()) BantchSaveEntityNoCommit(fileList); if (basicList != null && basicList.Any()) - BantchSaveEntityNoCommit(basicList); + BantchSaveEntityNoCommit(basicList); + if (reasonList != null && reasonList.Any()) + BantchSaveEntityNoCommit(reasonList); }); return true; }); @@ -524,7 +551,7 @@ namespace APT.SK.WebApi.Controllers.Api userId = currTask.USER_ID; } } - var details = this.GetEntities(t => t.HIDDEN_DANGER_RECTIFY_NOTICE_ID == notice.ID && t.ACCEPT_USER_ID == userId, new BaseFilter(notice.ORG_ID), "Nav_RectifyDetailFiles").ToList(); + var details = this.GetEntities(t => t.HIDDEN_DANGER_RECTIFY_NOTICE_ID == notice.ID && t.ACCEPT_USER_ID == userId, new BaseFilter(notice.ORG_ID), "Nav_RectifyDetailFiles", "Nav_RectifyDetailReasons").ToList(); details.ForEach(t => { t.ISCHECK = true; @@ -532,7 +559,8 @@ namespace APT.SK.WebApi.Controllers.Api }); List sendNotices = new List(); List records = new List(); - List photoList = new List(); + List photoList = new List(); + List reasonList = new List(); var todoCount = this.GetCount(t => notice.ID == t.HIDDEN_DANGER_RECTIFY_NOTICE_ID && t.ACCEPT_USER_ID != userId && t.ISCHECK == false, new BaseFilter(notice.ORG_ID)); if (todoCount == 0) { @@ -585,6 +613,17 @@ namespace APT.SK.WebApi.Controllers.Api file.HIDDEN_DANGER_RECTIFY_RECORD_ID = record.ID; photoList.Add(file); } + } + if (detail.Nav_RectifyDetailReasons != null && detail.Nav_RectifyDetailReasons.Any()) + { + foreach (var item in detail.Nav_RectifyDetailReasons) + { + T_SK_HIDDEN_DANGER_RECTIFY_RECORD_REASON file = new T_SK_HIDDEN_DANGER_RECTIFY_RECORD_REASON(); + file.ORG_ID = item.ORG_ID; + file.REASON_ID = item.REASON_ID; + file.HIDDEN_DANGER_RECTIFY_RECORD_ID = record.ID; + reasonList.Add(file); + } } var endtime = DateTime.Now.AddDays(3); if (record.RECITIFY_TIME != null && record.RECITIFY_TIME != DateTime.MinValue) @@ -614,7 +653,9 @@ namespace APT.SK.WebApi.Controllers.Api if (records != null && records.Any()) this.BantchSaveEntityNoCommit(records); if (photoList != null && photoList.Any()) - this.BantchSaveEntityNoCommit(photoList); + this.BantchSaveEntityNoCommit(photoList); + if (reasonList != null && reasonList.Any()) + this.BantchSaveEntityNoCommit(reasonList); if (sendNotices != null && sendNotices.Any()) this.BantchSaveEntityNoCommit(sendNotices); }); diff --git a/APT.MicroApi/APT.SK.WebApi/Controllers/Api/HiddenDangerRectifyRecordController.cs b/APT.MicroApi/APT.SK.WebApi/Controllers/Api/HiddenDangerRectifyRecordController.cs index b3c7e11..6ae87ae 100644 --- a/APT.MicroApi/APT.SK.WebApi/Controllers/Api/HiddenDangerRectifyRecordController.cs +++ b/APT.MicroApi/APT.SK.WebApi/Controllers/Api/HiddenDangerRectifyRecordController.cs @@ -81,7 +81,9 @@ namespace APT.SK.WebApi.Controllers var files = entity.Nav_RectifyFiles; entity.Nav_RectifyFiles = null; var basics = entity.Nav_RectifyBasics; - entity.Nav_RectifyBasics = null; + entity.Nav_RectifyBasics = null; + var reasons = entity.Nav_RectifyReasons; + entity.Nav_RectifyReasons = null; if (photoas != null && photoas.Any()) { foreach (var item in photoas) @@ -117,6 +119,15 @@ namespace APT.SK.WebApi.Controllers item.HIDDEN_DANGER_RECTIFY_RECORD_ID = entity.ID; item.Nav_Law = null; } + } + if (reasons != null && reasons.Any()) + { + foreach (var item in reasons) + { + item.ORG_ID = entity.ORG_ID; + item.HIDDEN_DANGER_RECTIFY_RECORD_ID = entity.ID; + item.Nav_Reason = null; + } } T_FM_NOTIFICATION_TASK notice = null; T_FM_NOTIFICATION_TASK task = null; @@ -202,7 +213,9 @@ namespace APT.SK.WebApi.Controllers if (files != null && files.Any()) BantchSaveEntityNoCommit(files); if (basics != null && basics.Any()) - BantchSaveEntityNoCommit(basics); + BantchSaveEntityNoCommit(basics); + if (reasons != null && reasons.Any()) + BantchSaveEntityNoCommit(reasons); if (notice != null) UpdateEntityNoCommit(notice); }, null, null, null, null, null, "SK022_SHOWPRINT", null); @@ -229,7 +242,9 @@ namespace APT.SK.WebApi.Controllers if (files != null && files.Any()) BantchSaveEntityNoCommit(files); if (basics != null && basics.Any()) - BantchSaveEntityNoCommit(basics); + BantchSaveEntityNoCommit(basics); + if (reasons != null && reasons.Any()) + BantchSaveEntityNoCommit(reasons); if (notice != null) UpdateEntityNoCommit(notice); }); diff --git a/APT.MicroApi/APT.SK.WebApi/Controllers/Api/SecurityInspectionRecordSummaryController.cs b/APT.MicroApi/APT.SK.WebApi/Controllers/Api/SecurityInspectionRecordSummaryController.cs index 84b1cf7..991acf4 100644 --- a/APT.MicroApi/APT.SK.WebApi/Controllers/Api/SecurityInspectionRecordSummaryController.cs +++ b/APT.MicroApi/APT.SK.WebApi/Controllers/Api/SecurityInspectionRecordSummaryController.cs @@ -54,10 +54,12 @@ namespace APT.SK.WebApi.Controllers.Api List userIds = new List(); List deleteUserIds = new List(); List deleteFileIds = new List(); - List deleteBasicIds = new List(); + List deleteBasicIds = new List(); + List deleteReasonIds = new List(); List deleteDetailIds = new List(); List userList = new List(); - List basicList = new List(); + List basicList = new List(); + List reasonList = new List(); List fileList = new List(); if (details != null && details.Any()) { @@ -89,6 +91,11 @@ namespace APT.SK.WebApi.Controllers.Api { var tempIds = t.Nav_CheckRecordDetailBasics.Select(m => m.ID).ToList(); deleteBasicIds.AddRange(tempIds); + } + if (t.Nav_CheckRecordDetailReasons != null && t.Nav_CheckRecordDetailReasons.Any()) + { + var tempIds = t.Nav_CheckRecordDetailReasons.Select(m => m.ID).ToList(); + deleteReasonIds.AddRange(tempIds); } deleteDetailIds.Add(t.ID); }); @@ -146,6 +153,16 @@ namespace APT.SK.WebApi.Controllers.Api item2.Nav_Law = null; basicList.Add(item2); } + } + if (item.Nav_CheckRecordDetailReasons != null && item.Nav_CheckRecordDetailReasons.Any()) + { + foreach (var item2 in item.Nav_CheckRecordDetailReasons) + { + item2.ORG_ID = entity.ORG_ID; + item2.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID = item.ID; + item2.Nav_Reason = null; + reasonList.Add(item2); + } } item.ORG_ID = entity.ORG_ID; item.SECURITY_INSPECTION_RECORD_SUMMARY_ID = entity.ID; @@ -172,7 +189,8 @@ namespace APT.SK.WebApi.Controllers.Api List reportFiles = new List(); List reportDetails = new List(); List reportDetailFiles = new List(); - List reportDetailBasics = new List(); + List reportDetailBasics = new List(); + List reportDetailReasons = new List(); if (entity.PUBLISH != null && entity.PUBLISH.Equals("SaveAndNotify")) { userIds = userIds.Distinct().ToList(); @@ -266,6 +284,18 @@ namespace APT.SK.WebApi.Controllers.Api reportDetailBasics.Add(file); } } + if (item.Nav_CheckRecordDetailReasons != null && item.Nav_CheckRecordDetailReasons.Any()) + { + foreach (var item2 in item.Nav_CheckRecordDetailReasons) + { + T_SK_HIDDEN_DANGER_REPORT_DETAIL_REASON file = new T_SK_HIDDEN_DANGER_REPORT_DETAIL_REASON(); + file.ORG_ID = item2.ORG_ID; + file.HIDDEN_DANGER_REPORT_DETAIL_ID = detail.ID; + file.REASON_ID = item2.REASON_ID; + file.Nav_Reason = null; + reportDetailReasons.Add(file); + } + } } var departName = this.GetEntity(t => t.ID == entity.APPLY_DEPARTMENT_ID && t.ENABLE_STATUS == 0)?.NAME; //发消息 @@ -285,6 +315,7 @@ namespace APT.SK.WebApi.Controllers.Api t.Nav_CheckRecordDetailFiles = null; t.Nav_CheckRecordDetailBasics = null; t.Nav_CheckRecordDetailUsers = null; + t.Nav_CheckRecordDetailReasons = null; }); this.UnifiedCommit(() => { @@ -293,7 +324,9 @@ namespace APT.SK.WebApi.Controllers.Api if (entity != null) UpdateEntityNoCommit(entity); if (deleteUserIds != null && deleteUserIds.Any()) - this.BantchDeleteEntityNoCommit(deleteUserIds); + this.BantchDeleteEntityNoCommit(deleteUserIds); + if (deleteReasonIds != null && deleteReasonIds.Any()) + this.BantchDeleteEntityNoCommit(deleteReasonIds); if (deleteBasicIds != null && deleteBasicIds.Any()) this.BantchDeleteEntityNoCommit(deleteBasicIds); if (deleteFileIds != null && deleteFileIds.Any()) @@ -307,7 +340,9 @@ namespace APT.SK.WebApi.Controllers.Api if (userList != null && userList.Any()) BantchSaveEntityNoCommit(userList); if (basicList != null && basicList.Any()) - BantchSaveEntityNoCommit(basicList); + BantchSaveEntityNoCommit(basicList); + if (reasonList != null && reasonList.Any()) + BantchSaveEntityNoCommit(reasonList); if (fileList != null && fileList.Any()) BantchSaveEntityNoCommit(fileList); if (files != null && files.Any()) @@ -319,7 +354,9 @@ namespace APT.SK.WebApi.Controllers.Api if (reportDetailFiles != null && reportDetailFiles.Any()) this.BantchSaveEntityNoCommit(reportDetailFiles); if (reportDetailBasics != null && reportDetailBasics.Any()) - this.BantchSaveEntityNoCommit(reportDetailBasics); + this.BantchSaveEntityNoCommit(reportDetailBasics); + if (reportDetailReasons != null && reportDetailReasons.Any()) + this.BantchSaveEntityNoCommit(reportDetailReasons); if (notices != null && notices.Any()) BantchSaveEntityNoCommit(notices); }); @@ -342,8 +379,9 @@ namespace APT.SK.WebApi.Controllers.Api List reportFiles = new List(); List reportDetails = new List(); List reportDetailFiles = new List(); - List reportDetailBasics = new List(); - var record = this.GetEntity(entity.ID, "Nav_CheckRecordFiles", "Nav_ApplyUser", "Nav_CheckRecordDetails", "Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers.Nav_User", "Nav_CheckRecordDetails.Nav_CheckRecordDetailFiles", "Nav_CheckRecordDetails.Nav_CheckRecordDetailBasics"); + List reportDetailBasics = new List(); + List reportDetailReasons = new List(); + var record = this.GetEntity(entity.ID, "Nav_CheckRecordFiles", "Nav_ApplyUser", "Nav_CheckRecordDetails", "Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers.Nav_User", "Nav_CheckRecordDetails.Nav_CheckRecordDetailFiles", "Nav_CheckRecordDetails.Nav_CheckRecordDetailBasics", "Nav_CheckRecordDetails.Nav_CheckRecordDetailReasons"); var userId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID; if (entity.TaskID != Guid.Empty) { @@ -437,6 +475,18 @@ namespace APT.SK.WebApi.Controllers.Api file.Nav_Law = null; reportDetailBasics.Add(file); } + } + if (item.Nav_CheckRecordDetailReasons != null && item.Nav_CheckRecordDetailReasons.Any()) + { + foreach (var item2 in item.Nav_CheckRecordDetailReasons) + { + T_SK_HIDDEN_DANGER_REPORT_DETAIL_REASON file = new T_SK_HIDDEN_DANGER_REPORT_DETAIL_REASON(); + file.ORG_ID = item2.ORG_ID; + file.HIDDEN_DANGER_REPORT_DETAIL_ID = detail.ID; + file.REASON_ID = item2.REASON_ID; + file.Nav_Reason = null; + reportDetailReasons.Add(file); + } } } var departName = this.GetEntity(t => t.ID == record.APPLY_DEPARTMENT_ID && t.ENABLE_STATUS == 0)?.NAME; @@ -469,7 +519,9 @@ namespace APT.SK.WebApi.Controllers.Api if (reportDetailFiles != null && reportDetailFiles.Any()) this.BantchSaveEntityNoCommit(reportDetailFiles); if (reportDetailBasics != null && reportDetailBasics.Any()) - this.BantchSaveEntityNoCommit(reportDetailBasics); + this.BantchSaveEntityNoCommit(reportDetailBasics); + if (reportDetailReasons != null && reportDetailReasons.Any()) + this.BantchSaveEntityNoCommit(reportDetailReasons); if (notices != null && notices.Any()) this.BantchSaveEntityNoCommit(notices); });