This commit is contained in:
wyw 2025-10-27 09:31:33 +08:00
commit 757dffa807
6 changed files with 538 additions and 88 deletions

View File

@ -11337,27 +11337,36 @@ namespace APT.BaseData.Services.DomainServices
{ {
var entity = this.GetEntity<T_SK_HIDDEN_DANGER_REPORT>(modelApp != null ? modelApp.DATA_ID : entityInt.DATA_ID); var entity = this.GetEntity<T_SK_HIDDEN_DANGER_REPORT>(modelApp != null ? modelApp.DATA_ID : entityInt.DATA_ID);
entity.STATUS = PFStandardStatus.Archived; entity.STATUS = PFStandardStatus.Archived;
var reportDetails = this.GetEntities<T_SK_HIDDEN_DANGER_REPORT_DETAIL>(t => t.HIDDEN_DANGER_REPORT_ID == entity.ID, new BaseFilter(entity.ORG_ID), "Nav_ReportDetailFiles", "Nav_ReportDetailBasics"); var reportDetails = this.GetEntities<T_SK_HIDDEN_DANGER_REPORT_DETAIL>(t => t.HIDDEN_DANGER_REPORT_ID == entity.ID, new BaseFilter(entity.ORG_ID), "Nav_ReportDetailFiles", "Nav_ReportDetailBasics", "Nav_ReportDetailReasons");
//List<T_SK_HIDDEN_DANGER_REPORT_DETAIL> reportDetails = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL>(); //List<T_SK_HIDDEN_DANGER_REPORT_DETAIL> reportDetails = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL>();
List<T_FM_NOTIFICATION_TASK> sendNotices = new List<T_FM_NOTIFICATION_TASK>(); List<T_FM_NOTIFICATION_TASK> sendNotices = new List<T_FM_NOTIFICATION_TASK>();
List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD> records = new List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD>(); List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD> records = new List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD>();
List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD_PHOTOA> photoList = new List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD_PHOTOA>(); List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD_PHOTOA> photoList = new List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD_PHOTOA>();
List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD_BASIC> basicList = new List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD_BASIC>(); List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD_BASIC> basicList = new List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD_BASIC>();
List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE> notices = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE>(); List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE> notices = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE>();
List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_FILE> nfileList = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_FILE>(); List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_FILE> nfileList = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_FILE>();
List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL> noticeDetails = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL>(); List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL> noticeDetails = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL>();
List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_BASIC> noticeBasicList = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_BASIC>(); List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_BASIC> noticeBasicList = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_BASIC>();
List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_FILE> noticeFileList = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_FILE>(); List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_FILE> noticeFileList = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_FILE>();
List<T_SK_DOUBLE_PREVENT_MECHANISM> prevents = new List<T_SK_DOUBLE_PREVENT_MECHANISM>(); List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_REASON> noticeReasonList = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_REASON>();
List<T_SK_DOUBLE_PREVENT_MECHANISM_FILE> fileList = new List<T_SK_DOUBLE_PREVENT_MECHANISM_FILE>(); List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD_REASON> reasonList = new List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD_REASON>();
if (entity != null && reportDetails != null && reportDetails.Any()) if (entity != null && reportDetails != null && reportDetails.Any())
{ {
var users = this.GetEntities<T_FM_USER>(t => t.ENABLE_STATUS == 0, new BaseFilter(entity.ORG_ID), "Nav_ApproveRole"); var users = this.GetEntities<T_FM_USER>(t => t.ENABLE_STATUS == 0, new BaseFilter(entity.ORG_ID), "Nav_ApproveRole");
var departs = this.GetEntities<T_FM_DEPARTMENT>(t => t.ENABLE_STATUS == 0, new BaseFilter(entity.ORG_ID), "Nav_User");
var random = new Random(); var random = new Random();
foreach (var detail in reportDetails) 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) 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); var user = users.FirstOrDefault(t => t.ID == entity.APPLY_USER_ID);
detail.ISCHECK = true; detail.ISCHECK = true;
detail.CHECKTIME = DateTime.Now; detail.CHECKTIME = DateTime.Now;
@ -11377,6 +11386,8 @@ namespace APT.BaseData.Services.DomainServices
record.HIDDEN_LEVEL = detail.HIDDEN_LEVEL; record.HIDDEN_LEVEL = detail.HIDDEN_LEVEL;
record.RECITIFY_TIME = detail.RECITIFY_TIME; record.RECITIFY_TIME = detail.RECITIFY_TIME;
record.RECITIFY_USER_ID = detail.RECITIFY_USER_ID; 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_PERSON = entity.CHECK_PERSON;
record.CHECK_TYPE_ID = entity.CHECK_TYPE_ID; record.CHECK_TYPE_ID = entity.CHECK_TYPE_ID;
record.CHECK_QUESTION_ID = detail.CHECK_QUESTION_ID; record.CHECK_QUESTION_ID = detail.CHECK_QUESTION_ID;
@ -11405,6 +11416,17 @@ namespace APT.BaseData.Services.DomainServices
basicList.Add(file); 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); var endtime = DateTime.Now.AddDays(3);
if (record.RECITIFY_TIME != null && record.RECITIFY_TIME != DateTime.MinValue) if (record.RECITIFY_TIME != null && record.RECITIFY_TIME != DateTime.MinValue)
{ {
@ -11417,6 +11439,84 @@ namespace APT.BaseData.Services.DomainServices
detail.Nav_ReportDetailBasics = null; detail.Nav_ReportDetailBasics = null;
//reportDetails.Add(detail); //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 else
{ {
T_SK_HIDDEN_DANGER_RECTIFY_NOTICE notice = new T_SK_HIDDEN_DANGER_RECTIFY_NOTICE(); T_SK_HIDDEN_DANGER_RECTIFY_NOTICE notice = new T_SK_HIDDEN_DANGER_RECTIFY_NOTICE();
@ -11482,7 +11582,17 @@ namespace APT.BaseData.Services.DomainServices
noticeBasicList.Add(file); noticeBasicList.Add(file);
} }
} }
var departId = users.FirstOrDefault(t => t.ID == detail.RECITIFY_USER_ID).DEPARTMENT_ID; 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 user = users.FirstOrDefault(t => t.DEPARTMENT_ID == departId && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME.Contains("安全员")); var user = users.FirstOrDefault(t => t.DEPARTMENT_ID == departId && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME.Contains("安全员"));
if (user == null) if (user == null)
{ {
@ -11497,7 +11607,7 @@ namespace APT.BaseData.Services.DomainServices
var checkUser = users.FirstOrDefault(t => t.ID == detail.RECITIFY_USER_ID); var checkUser = users.FirstOrDefault(t => t.ID == detail.RECITIFY_USER_ID);
if (checkUser != null) 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"); DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum., "SK014_SHOWPRINT");
sendNotices.Add(sendNotice); sendNotices.Add(sendNotice);
} }
@ -11573,16 +11683,16 @@ namespace APT.BaseData.Services.DomainServices
this.BantchSaveEntityNoCommit(photoList); this.BantchSaveEntityNoCommit(photoList);
if (basicList != null && basicList.Any()) if (basicList != null && basicList.Any())
this.BantchSaveEntityNoCommit(basicList); this.BantchSaveEntityNoCommit(basicList);
if (reasonList != null && reasonList.Any())
this.BantchSaveEntityNoCommit(reasonList);
if (noticeDetails != null && noticeDetails.Any()) if (noticeDetails != null && noticeDetails.Any())
this.BantchSaveEntityNoCommit(noticeDetails); this.BantchSaveEntityNoCommit(noticeDetails);
if (noticeFileList != null && noticeFileList.Any()) if (noticeFileList != null && noticeFileList.Any())
this.BantchSaveEntityNoCommit(noticeFileList); this.BantchSaveEntityNoCommit(noticeFileList);
if (noticeBasicList != null && noticeBasicList.Any()) if (noticeBasicList != null && noticeBasicList.Any())
this.BantchSaveEntityNoCommit(noticeBasicList); this.BantchSaveEntityNoCommit(noticeBasicList);
if (prevents != null && prevents.Any()) if (noticeReasonList != null && noticeReasonList.Any())
this.BantchSaveEntityNoCommit(prevents); this.BantchSaveEntityNoCommit(noticeReasonList);
if (fileList != null && fileList.Any())
this.BantchSaveEntityNoCommit(fileList);
}); });
} }
return true; return true;
@ -11618,7 +11728,7 @@ namespace APT.BaseData.Services.DomainServices
} }
else else
{ {
var entity = this.GetEntity<T_SK_HIDDEN_DANGER_CONFIRM>(modelApp != null ? modelApp.DATA_ID : entityInt.DATA_ID, "Nav_Report"); var entity = this.GetEntity<T_SK_HIDDEN_DANGER_CONFIRM>(modelApp != null ? modelApp.DATA_ID : entityInt.DATA_ID, "Nav_Report", "Nav_Reasons");
entity.STATUS = PFStandardStatus.Archived; entity.STATUS = PFStandardStatus.Archived;
var photos = this.GetEntities<T_SK_HIDDEN_DANGER_CONFIRM_PHOTO>(t => t.HIDDEN_DANGER_CONFIRM_ID == entity.ID, new BaseFilter(entity.ORG_ID)); var photos = this.GetEntities<T_SK_HIDDEN_DANGER_CONFIRM_PHOTO>(t => t.HIDDEN_DANGER_CONFIRM_ID == entity.ID, new BaseFilter(entity.ORG_ID));
var users = this.GetEntities<T_FM_USER>(t => t.ENABLE_STATUS == 0, new BaseFilter(entity.ORG_ID), "Nav_ApproveRole"); var users = this.GetEntities<T_FM_USER>(t => t.ENABLE_STATUS == 0, new BaseFilter(entity.ORG_ID), "Nav_ApproveRole");
@ -11630,6 +11740,8 @@ namespace APT.BaseData.Services.DomainServices
T_SK_HIDDEN_DANGER_RECTIFY_NOTICE notice = null; T_SK_HIDDEN_DANGER_RECTIFY_NOTICE notice = null;
List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL> noticeDetails = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL>(); List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL> noticeDetails = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL>();
List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_FILE> noticeFileList = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_FILE>(); List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_FILE> noticeFileList = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_FILE>();
List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_REASON> noticeReasonList = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_REASON>();
List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD_REASON> reasonList = new List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD_REASON>();
//if (entity != null && entity.IS_STORE == SKIsStoreEnum.Yes && entity.RECITIFY_USER_ID != null) //if (entity != null && entity.IS_STORE == SKIsStoreEnum.Yes && entity.RECITIFY_USER_ID != null)
//{ //{
// //触发双重预防机制 // //触发双重预防机制
@ -11673,8 +11785,15 @@ namespace APT.BaseData.Services.DomainServices
//} //}
if (entity != null && entity.RECITIFY_USER_ID != null) 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_FM_DEPARTMENT>(t => t.ID == departId)?.USER_ID;
if (entity.RECITIFY_USER_ID == entity.APPLY_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); var user = users.FirstOrDefault(t => t.ID == entity.APPLY_USER_ID);
record = new T_SK_HIDDEN_DANGER_RECTIFY_RECORD(); record = new T_SK_HIDDEN_DANGER_RECTIFY_RECORD();
record.APPLY_DEPARTMENT_ID = entity.APPLY_DEPARTMENT_ID; record.APPLY_DEPARTMENT_ID = entity.APPLY_DEPARTMENT_ID;
@ -11696,6 +11815,8 @@ namespace APT.BaseData.Services.DomainServices
record.CHECK_TYPE_ID = entity.CHECK_TYPE_ID; record.CHECK_TYPE_ID = entity.CHECK_TYPE_ID;
record.CHECK_TIME = entity.Nav_Report?.CREATE_TIME; 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; record.RECTIFICATION_MEASURES = entity.RECTIFICATION_MEASURES;
if (photos != null && photos.Any()) if (photos != null && photos.Any())
{ {
@ -11708,6 +11829,17 @@ namespace APT.BaseData.Services.DomainServices
photoList.Add(file); 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); var endtime = DateTime.Now.AddDays(3);
if (record.RECITIFY_TIME != null && record.RECITIFY_TIME != DateTime.MinValue) if (record.RECITIFY_TIME != null && record.RECITIFY_TIME != DateTime.MinValue)
{ {
@ -11717,6 +11849,71 @@ namespace APT.BaseData.Services.DomainServices
endtime, (int)FMNoticeTypeEnum., "SK022"); endtime, (int)FMNoticeTypeEnum., "SK022");
sendNotices.Add(sendNotice); 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 else
{ {
notice = new T_SK_HIDDEN_DANGER_RECTIFY_NOTICE(); notice = new T_SK_HIDDEN_DANGER_RECTIFY_NOTICE();
@ -11759,7 +11956,17 @@ namespace APT.BaseData.Services.DomainServices
noticeFileList.Add(file); 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("安全员")); var user = users.FirstOrDefault(t => t.DEPARTMENT_ID == departId && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME.Contains("安全员"));
if (user == null) if (user == null)
{ {
@ -11795,12 +12002,16 @@ namespace APT.BaseData.Services.DomainServices
this.UpdateEntityNoCommit(record); this.UpdateEntityNoCommit(record);
if (photoList != null && photoList.Any()) if (photoList != null && photoList.Any())
this.BantchSaveEntityNoCommit(photoList); this.BantchSaveEntityNoCommit(photoList);
if (reasonList != null && reasonList.Any())
this.BantchSaveEntityNoCommit(reasonList);
if (notice != null) if (notice != null)
this.UpdateEntityNoCommit(notice); this.UpdateEntityNoCommit(notice);
if (noticeDetails != null && noticeDetails.Any()) if (noticeDetails != null && noticeDetails.Any())
this.BantchSaveEntityNoCommit(noticeDetails); this.BantchSaveEntityNoCommit(noticeDetails);
if (noticeFileList != null && noticeFileList.Any()) if (noticeFileList != null && noticeFileList.Any())
this.BantchSaveEntityNoCommit(noticeFileList); this.BantchSaveEntityNoCommit(noticeFileList);
if (noticeReasonList != null && noticeReasonList.Any())
this.BantchSaveEntityNoCommit(noticeReasonList);
}); });
} }
return true; return true;

View File

@ -53,6 +53,8 @@ namespace APT.SK.WebApi.Controllers.Api
entity.Nav_Files = null; entity.Nav_Files = null;
var basics = entity.Nav_Basics; var basics = entity.Nav_Basics;
entity.Nav_Basics = null; entity.Nav_Basics = null;
var reasons = entity.Nav_Reasons;
entity.Nav_Reasons = null;
entity.ApplyDepartmentName = this.GetEntity<T_FM_DEPARTMENT>(t => t.ID == departId).NAME; entity.ApplyDepartmentName = this.GetEntity<T_FM_DEPARTMENT>(t => t.ID == departId).NAME;
entity.ApplyPostName = this.GetEntity<T_FM_USER>(t => t.ID == userId, "Nav_Person.Nav_Post")?.Nav_Person?.Nav_Post?.NAME; entity.ApplyPostName = this.GetEntity<T_FM_USER>(t => t.ID == userId, "Nav_Person.Nav_Post")?.Nav_Person?.Nav_Post?.NAME;
if (string.IsNullOrEmpty(entity.HIDDEN_DESCRIPTION)) if (string.IsNullOrEmpty(entity.HIDDEN_DESCRIPTION))
@ -86,6 +88,15 @@ namespace APT.SK.WebApi.Controllers.Api
item.Nav_Law = null; 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) if (entity.RECITIFY_TIME.HasValue && entity.RECITIFY_TIME.Value.Date < DateTime.Now.Date)
{ {
throw new Exception("整改期限不得早于当前时间"); throw new Exception("整改期限不得早于当前时间");
@ -138,6 +149,8 @@ namespace APT.SK.WebApi.Controllers.Api
BantchSaveEntityNoCommit(files); BantchSaveEntityNoCommit(files);
if (basics != null && basics.Any()) 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 + "隐患确认单审批"); }, null, null, null, null, null, "SK018_SHOWPRINT", null, level + "隐患确认单审批");
return true; return true;
} }
@ -151,6 +164,8 @@ namespace APT.SK.WebApi.Controllers.Api
BantchSaveEntityNoCommit(files); BantchSaveEntityNoCommit(files);
if (basics != null && basics.Any()) if (basics != null && basics.Any())
BantchSaveEntityNoCommit(basics); BantchSaveEntityNoCommit(basics);
if (reasons != null && reasons.Any())
BantchSaveEntityNoCommit(reasons);
}); });
return true; return true;
}); });

View File

@ -53,9 +53,11 @@ namespace APT.SK.WebApi.Controllers.Api
entity.ApplyPostName = this.GetEntity<T_FM_USER>(t => t.ID == userId, "Nav_Person.Nav_Post")?.Nav_Person?.Nav_Post?.NAME; entity.ApplyPostName = this.GetEntity<T_FM_USER>(t => t.ID == userId, "Nav_Person.Nav_Post")?.Nav_Person?.Nav_Post?.NAME;
List<Guid> deleteFileIds = new List<Guid>(); List<Guid> deleteFileIds = new List<Guid>();
List<Guid> deleteBasicIds = new List<Guid>(); List<Guid> deleteBasicIds = new List<Guid>();
List<Guid> deleteReasonIds = new List<Guid>();
List<Guid> deleteDetailIds = new List<Guid>(); List<Guid> deleteDetailIds = new List<Guid>();
List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_FILE> fileList = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_FILE>(); List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_FILE> fileList = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_FILE>();
List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_BASIC> basicList = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_BASIC>(); List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_BASIC> basicList = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_BASIC>();
List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_REASON> reasonList = new List<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_REASON>();
if (details != null && details.Any()) if (details != null && details.Any())
{ {
var evaluationIsExist = this.GetEntity<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE>(t => t.ID == entity.ID, new string[] { "Nav_RectifyDetails", "Nav_RectifyDetails.Nav_RectifyDetailFiles", "Nav_RectifyDetails.Nav_RectifyDetailBasics" }); var evaluationIsExist = this.GetEntity<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE>(t => t.ID == entity.ID, new string[] { "Nav_RectifyDetails", "Nav_RectifyDetails.Nav_RectifyDetailFiles", "Nav_RectifyDetails.Nav_RectifyDetailBasics" });
@ -73,6 +75,11 @@ namespace APT.SK.WebApi.Controllers.Api
var tempIds = t.Nav_RectifyDetailBasics.Select(m => m.ID).ToList(); var tempIds = t.Nav_RectifyDetailBasics.Select(m => m.ID).ToList();
deleteBasicIds.AddRange(tempIds); 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); deleteDetailIds.Add(t.ID);
}); });
} }
@ -114,8 +121,24 @@ namespace APT.SK.WebApi.Controllers.Api
} }
} }
} }
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_RectifyDetailBasics = null;
item.Nav_RectifyDetailFiles = null; item.Nav_RectifyDetailFiles = null;
item.Nav_RectifyDetailReasons = null;
item.Nav_Contents = null; item.Nav_Contents = null;
item.Nav_RecitifyUser = null; item.Nav_RecitifyUser = null;
item.Nav_AcceptUser = null; item.Nav_AcceptUser = null;
@ -160,6 +183,8 @@ namespace APT.SK.WebApi.Controllers.Api
} }
this.UnifiedCommit(() => this.UnifiedCommit(() =>
{ {
if (deleteReasonIds != null && deleteReasonIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_REASON>(deleteReasonIds);
if (deleteBasicIds != null && deleteBasicIds.Any()) if (deleteBasicIds != null && deleteBasicIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_BASIC>(deleteBasicIds); this.BantchDeleteEntityNoCommit<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL_BASIC>(deleteBasicIds);
if (deleteFileIds != null && deleteFileIds.Any()) if (deleteFileIds != null && deleteFileIds.Any())
@ -180,6 +205,8 @@ namespace APT.SK.WebApi.Controllers.Api
BantchSaveEntityNoCommit(fileList); BantchSaveEntityNoCommit(fileList);
if (basicList != null && basicList.Any()) if (basicList != null && basicList.Any())
BantchSaveEntityNoCommit(basicList); BantchSaveEntityNoCommit(basicList);
if (reasonList != null && reasonList.Any())
BantchSaveEntityNoCommit(reasonList);
}); });
return true; return true;
}); });
@ -524,7 +551,7 @@ namespace APT.SK.WebApi.Controllers.Api
userId = currTask.USER_ID; userId = currTask.USER_ID;
} }
} }
var details = this.GetEntities<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL>(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_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL>(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 => details.ForEach(t =>
{ {
t.ISCHECK = true; t.ISCHECK = true;
@ -533,6 +560,7 @@ namespace APT.SK.WebApi.Controllers.Api
List<T_FM_NOTIFICATION_TASK> sendNotices = new List<T_FM_NOTIFICATION_TASK>(); List<T_FM_NOTIFICATION_TASK> sendNotices = new List<T_FM_NOTIFICATION_TASK>();
List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD> records = new List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD>(); List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD> records = new List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD>();
List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD_PHOTOA> photoList = new List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD_PHOTOA>(); List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD_PHOTOA> photoList = new List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD_PHOTOA>();
List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD_REASON> reasonList = new List<T_SK_HIDDEN_DANGER_RECTIFY_RECORD_REASON>();
var todoCount = this.GetCount<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL>(t => notice.ID == t.HIDDEN_DANGER_RECTIFY_NOTICE_ID && t.ACCEPT_USER_ID != userId && t.ISCHECK == false, new BaseFilter(notice.ORG_ID)); var todoCount = this.GetCount<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL>(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) if (todoCount == 0)
{ {
@ -586,6 +614,17 @@ namespace APT.SK.WebApi.Controllers.Api
photoList.Add(file); 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); var endtime = DateTime.Now.AddDays(3);
if (record.RECITIFY_TIME != null && record.RECITIFY_TIME != DateTime.MinValue) if (record.RECITIFY_TIME != null && record.RECITIFY_TIME != DateTime.MinValue)
{ {
@ -615,6 +654,8 @@ namespace APT.SK.WebApi.Controllers.Api
this.BantchSaveEntityNoCommit(records); this.BantchSaveEntityNoCommit(records);
if (photoList != null && photoList.Any()) if (photoList != null && photoList.Any())
this.BantchSaveEntityNoCommit(photoList); this.BantchSaveEntityNoCommit(photoList);
if (reasonList != null && reasonList.Any())
this.BantchSaveEntityNoCommit(reasonList);
if (sendNotices != null && sendNotices.Any()) if (sendNotices != null && sendNotices.Any())
this.BantchSaveEntityNoCommit(sendNotices); this.BantchSaveEntityNoCommit(sendNotices);
}); });

View File

@ -82,6 +82,8 @@ namespace APT.SK.WebApi.Controllers
entity.Nav_RectifyFiles = null; entity.Nav_RectifyFiles = null;
var basics = entity.Nav_RectifyBasics; 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()) if (photoas != null && photoas.Any())
{ {
foreach (var item in photoas) foreach (var item in photoas)
@ -118,6 +120,15 @@ namespace APT.SK.WebApi.Controllers
item.Nav_Law = null; 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 notice = null;
T_FM_NOTIFICATION_TASK task = null; T_FM_NOTIFICATION_TASK task = null;
if (entity.PUBLISH != null && entity.PUBLISH.Equals("SaveAndNotify")) if (entity.PUBLISH != null && entity.PUBLISH.Equals("SaveAndNotify"))
@ -127,6 +138,9 @@ namespace APT.SK.WebApi.Controllers
if (entity.ACCEPT_USER_ID != null) 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_FM_DEPARTMENT>(t => t.ID == entity.APPLY_DEPARTMENT_ID && t.ENABLE_STATUS == 0)?.NAME; var departName = this.GetEntity<T_FM_DEPARTMENT>(t => t.ID == entity.APPLY_DEPARTMENT_ID && t.ENABLE_STATUS == 0)?.NAME;
var UserNames = new List<string>(); var UserNames = new List<string>();
var user = this.GetEntity<T_FM_USER>(t => t.ENABLE_STATUS == (int)FMEnableStatusEnum. && t.ID == entity.ACCEPT_USER_ID); var user = this.GetEntity<T_FM_USER>(t => t.ENABLE_STATUS == (int)FMEnableStatusEnum. && t.ID == entity.ACCEPT_USER_ID);
@ -200,6 +214,8 @@ namespace APT.SK.WebApi.Controllers
BantchSaveEntityNoCommit(files); BantchSaveEntityNoCommit(files);
if (basics != null && basics.Any()) if (basics != null && basics.Any())
BantchSaveEntityNoCommit(basics); BantchSaveEntityNoCommit(basics);
if (reasons != null && reasons.Any())
BantchSaveEntityNoCommit(reasons);
if (notice != null) if (notice != null)
UpdateEntityNoCommit(notice); UpdateEntityNoCommit(notice);
}, null, null, null, null, null, "SK022_SHOWPRINT", null); }, null, null, null, null, null, "SK022_SHOWPRINT", null);
@ -227,6 +243,8 @@ namespace APT.SK.WebApi.Controllers
BantchSaveEntityNoCommit(files); BantchSaveEntityNoCommit(files);
if (basics != null && basics.Any()) if (basics != null && basics.Any())
BantchSaveEntityNoCommit(basics); BantchSaveEntityNoCommit(basics);
if (reasons != null && reasons.Any())
BantchSaveEntityNoCommit(reasons);
if (notice != null) if (notice != null)
UpdateEntityNoCommit(notice); UpdateEntityNoCommit(notice);
}); });

View File

@ -470,9 +470,11 @@ namespace APT.SK.WebApi.Controllers.Api
List<Guid> deleteFileIds = new List<Guid>(); List<Guid> deleteFileIds = new List<Guid>();
List<Guid> deleteBasicIds = new List<Guid>(); List<Guid> deleteBasicIds = new List<Guid>();
List<Guid> deleteDetailIds = new List<Guid>(); List<Guid> deleteDetailIds = new List<Guid>();
List<Guid> deleteReasonIds = new List<Guid>();
List<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_USER> userList = new List<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_USER>(); List<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_USER> userList = new List<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_USER>();
List<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_BASIC> basicList = new List<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_BASIC>(); List<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_BASIC> basicList = new List<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_BASIC>();
List<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_FILE> fileList = new List<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_FILE>(); List<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_FILE> fileList = new List<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_FILE>();
List<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_REASON> reasonList = new List<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_REASON>();
if (details != null && details.Any()) if (details != null && details.Any())
{ {
var evaluationIsExist = this.GetEntity<T_SK_SECURITY_INSPECTION_RECORD>(t => t.ID == entity.ID, new string[] { "Nav_CheckRecordDetails", "Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers", "Nav_CheckRecordDetails.Nav_CheckRecordDetailFiles", "Nav_CheckRecordDetails.Nav_CheckRecordDetailBasics" }); var evaluationIsExist = this.GetEntity<T_SK_SECURITY_INSPECTION_RECORD>(t => t.ID == entity.ID, new string[] { "Nav_CheckRecordDetails", "Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers", "Nav_CheckRecordDetails.Nav_CheckRecordDetailFiles", "Nav_CheckRecordDetails.Nav_CheckRecordDetailBasics" });
@ -496,6 +498,11 @@ namespace APT.SK.WebApi.Controllers.Api
var tempIds = t.Nav_CheckRecordDetailBasics.Select(m => m.ID).ToList(); var tempIds = t.Nav_CheckRecordDetailBasics.Select(m => m.ID).ToList();
deleteBasicIds.AddRange(tempIds); 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); deleteDetailIds.Add(t.ID);
}); });
} }
@ -509,25 +516,25 @@ namespace APT.SK.WebApi.Controllers.Api
{ {
item.HIDDEN_LEVEL = null; 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) if (isExsists != null)
{ {
throw new Exception("有隐患必须选择隐患描述"); throw new Exception("有隐患必须选择隐患描述和隐患等级隐患地点");
}
var isExsistTwos = details.FirstOrDefault(t => t.CHECK_RESULT == SKCheckResultEnum.Yes && t.HIDDEN_LEVEL == null);
if (isExsistTwos != null)
{
throw new Exception("有隐患必须填写隐患等级");
} }
var isExsistFirsts = details.FirstOrDefault(t => t.CHECK_RESULT == SKCheckResultEnum.Yes && (t.Nav_CheckRecordDetailFiles == null || !t.Nav_CheckRecordDetailFiles.Any())); var isExsistFirsts = details.FirstOrDefault(t => t.CHECK_RESULT == SKCheckResultEnum.Yes && (t.Nav_CheckRecordDetailFiles == null || !t.Nav_CheckRecordDetailFiles.Any()));
if (isExsistFirsts != null) if (isExsistFirsts != null)
{ {
throw new Exception("有隐患必须上传隐患照片"); 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) 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()) if (item.Nav_CheckRecordDetailUsers != null && item.Nav_CheckRecordDetailUsers.Any())
{ {
@ -563,6 +570,16 @@ namespace APT.SK.WebApi.Controllers.Api
basicList.Add(item2); 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.ORG_ID = entity.ORG_ID;
item.SECURITY_INSPECTION_RECORD_ID = entity.ID; item.SECURITY_INSPECTION_RECORD_ID = entity.ID;
//item.Nav_Question = null; //item.Nav_Question = null;
@ -609,11 +626,13 @@ namespace APT.SK.WebApi.Controllers.Api
List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL> summaryDetails = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL>(); List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL> summaryDetails = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL>();
List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_USER> summaryDetailUsers = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_USER>(); List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_USER> summaryDetailUsers = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_USER>();
List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_BASIC> summaryDetailBasics = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_BASIC>(); List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_BASIC> summaryDetailBasics = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_BASIC>();
List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_REASON> summaryDetailReasons = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_REASON>();
List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_FILE> summaryDetailFiles = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_FILE>(); List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_FILE> summaryDetailFiles = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_FILE>();
T_SK_HIDDEN_DANGER_REPORT report = null; T_SK_HIDDEN_DANGER_REPORT report = null;
List<T_SK_HIDDEN_DANGER_REPORT_DETAIL> reportDetails = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL>(); List<T_SK_HIDDEN_DANGER_REPORT_DETAIL> reportDetails = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL>();
List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_FILE> reportDetailFiles = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_FILE>(); List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_FILE> reportDetailFiles = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_FILE>();
List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_BASIC> reportDetailBasics = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_BASIC>(); List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_BASIC> reportDetailBasics = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_BASIC>();
List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_REASON> reportDetailReasons = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_REASON>();
if (entity.PUBLISH != null && entity.PUBLISH.Equals("SaveAndNotify")) if (entity.PUBLISH != null && entity.PUBLISH.Equals("SaveAndNotify"))
{ {
var checkTypeIds = this.GetEntities<T_SK_CHECK_TYPE>(t => t.NAME.Contains("岗位排查"), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList(); var checkTypeIds = this.GetEntities<T_SK_CHECK_TYPE>(t => t.NAME.Contains("岗位排查"), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
@ -669,6 +688,7 @@ namespace APT.SK.WebApi.Controllers.Api
var tempDetails = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL>(); var tempDetails = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL>();
var tempDetailUsers = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_USER>(); var tempDetailUsers = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_USER>();
var tempDetailBasics = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_BASIC>(); var tempDetailBasics = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_BASIC>();
var tempDetailReasons = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_REASON>();
var tempDetailFiles = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_FILE>(); var tempDetailFiles = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_FILE>();
var recordFileTemps = this.GetEntities<T_SK_SECURITY_INSPECTION_RECORD_FILE>(t => recordTempIds.Contains(t.SECURITY_INSPECTION_RECORD_ID), new BaseFilter(entity.ORG_ID)).ToList(); var recordFileTemps = this.GetEntities<T_SK_SECURITY_INSPECTION_RECORD_FILE>(t => recordTempIds.Contains(t.SECURITY_INSPECTION_RECORD_ID), new BaseFilter(entity.ORG_ID)).ToList();
recordFileTemps.AddRange(files); recordFileTemps.AddRange(files);
@ -682,7 +702,7 @@ namespace APT.SK.WebApi.Controllers.Api
summaryFiles.Add(summaryFile); summaryFiles.Add(summaryFile);
} }
summaryFiles = summaryFiles.Distinct(t => t.IMG_FILE_ID).ToList(); summaryFiles = summaryFiles.Distinct(t => t.IMG_FILE_ID).ToList();
var recordDetailTemps = this.GetEntities<T_SK_SECURITY_INSPECTION_RECORD_DETAIL>(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_SK_SECURITY_INSPECTION_RECORD_DETAIL>(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); recordDetailTemps.AddRange(details);
foreach (var itemDetail in recordDetailTemps) foreach (var itemDetail in recordDetailTemps)
{ {
@ -738,28 +758,42 @@ namespace APT.SK.WebApi.Controllers.Api
tempDetailFiles.Add(summaryFile); 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.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()) if (groupDetails.Any())
{ {
foreach (var itemDetail in groupDetails) 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(); T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL summaryDetail = new T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL();
summaryDetail.ORG_ID = entity.ORG_ID; summaryDetail.ORG_ID = entity.ORG_ID;
summaryDetail.SECURITY_INSPECTION_RECORD_SUMMARY_ID = summary.ID; summaryDetail.SECURITY_INSPECTION_RECORD_SUMMARY_ID = summary.ID;
summaryDetail.RISK_AREA_ID = itemDetail.Key.RISK_AREA_ID; summaryDetail.RISK_AREA_ID = itemDetail.RISK_AREA_ID;
summaryDetail.CHECK_CONTENTS_ID = itemDetail.Key.CHECK_CONTENTS_ID; summaryDetail.CHECK_CONTENTS_ID = itemDetail.CHECK_CONTENTS_ID;
summaryDetail.CHECK_QUESTION_ID = itemDetail.Key.CHECK_QUESTION_ID; summaryDetail.CHECK_QUESTION_ID = itemDetail.CHECK_QUESTION_ID;
summaryDetail.CHECKCONTENT = itemDetail.FirstOrDefault().CHECKCONTENT; summaryDetail.CHECKCONTENT = itemDetail.CHECKCONTENT;
summaryDetail.CHECKPROOF = itemDetail.FirstOrDefault().CHECKPROOF; summaryDetail.CHECKPROOF = itemDetail.CHECKPROOF;
summaryDetail.CHECKSTANDARD = itemDetail.FirstOrDefault().CHECKSTANDARD; summaryDetail.CHECKSTANDARD = itemDetail.CHECKSTANDARD;
summaryDetail.CHECK_RESULT = itemDetail.FirstOrDefault().CHECK_RESULT; summaryDetail.CHECK_RESULT = itemDetail.CHECK_RESULT;
summaryDetail.HIDDEN_DESCRIPTION = string.IsNullOrEmpty(itemDetail.FirstOrDefault().HIDDEN_DESCRIPTION) ? itemDetail.FirstOrDefault().Nav_Question?.DESCREPTION : itemDetail.FirstOrDefault().HIDDEN_DESCRIPTION; summaryDetail.HIDDEN_DESCRIPTION = string.IsNullOrEmpty(itemDetail.HIDDEN_DESCRIPTION) ? itemDetail.Nav_Question?.DESCREPTION : itemDetail.HIDDEN_DESCRIPTION;
summaryDetail.HIDDEN_LEVEL = itemDetail.FirstOrDefault().HIDDEN_LEVEL; summaryDetail.HIDDEN_LEVEL = itemDetail.HIDDEN_LEVEL;
summaryDetail.HIDDEN_PLACE = itemDetail.FirstOrDefault().HIDDEN_PLACE; summaryDetail.HIDDEN_PLACE = itemDetail.HIDDEN_PLACE;
summaryDetail.MARK = itemDetail.FirstOrDefault().MARK; summaryDetail.MARK = itemDetail.MARK;
summaryDetail.NUM = itemDetail.FirstOrDefault().NUM; summaryDetail.NUM = itemDetail.NUM;
sumdetails.Add(summaryDetail); sumdetails.Add(summaryDetail);
var groupUsers = tempDetailUsers.Where(t => ids.Contains(t.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID)).Select(m => m.USER_ID).Distinct().ToList(); var groupUsers = tempDetailUsers.Where(t => ids.Contains(t.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID)).Select(m => m.USER_ID).Distinct().ToList();
if (groupUsers.Any()) if (groupUsers.Any())
@ -787,6 +821,19 @@ namespace APT.SK.WebApi.Controllers.Api
summaryDetailBasics.Add(summaryBasic); 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(); 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()) if (groupFiles.Any())
{ {
@ -873,6 +920,18 @@ namespace APT.SK.WebApi.Controllers.Api
summaryDetailFiles.Add(summaryFile); 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);
}
}
} }
} }
} }
@ -947,23 +1006,42 @@ namespace APT.SK.WebApi.Controllers.Api
summaryDetailFiles.Add(summaryFile); 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);
}
}
} }
} }
} }
if (sumdetails.Any()) 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(); var detailTempNews = sumdetails.Where(t => t.CHECK_RESULT == SKCheckResultEnum.Yes).ToList();
summaryDetails.AddRange(detailTemps);
summaryDetails.AddRange(detailTempNews); 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(); var detailIds = summaryDetails.Select(m => m.ID).ToList();
summaryDetailBasics = summaryDetailBasics.Where(t => detailIds.Contains(t.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_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(); 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(); summaryDetailUsers = summaryDetailUsers.Where(t => detailIds.Contains(t.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID)).ToList();
} }
var departName = this.GetEntity<T_FM_DEPARTMENT>(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"); DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum., "SK012");
notices.Add(noticeTemp); notices.Add(noticeTemp);
} }
@ -1039,6 +1117,18 @@ namespace APT.SK.WebApi.Controllers.Api
reportDetailBasics.Add(file); 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, var notice = NotificationTaskService.InsertUserNoticeTaskModel("岗位排查表-隐患上报", report.ID, report.ORG_ID, (Guid)monitor.USER_ID, monitor.Nav_User?.NAME, DateTime.Now,
@ -1057,6 +1147,7 @@ namespace APT.SK.WebApi.Controllers.Api
t.Nav_Question = null; t.Nav_Question = null;
t.Nav_Contents = null; t.Nav_Contents = null;
t.Nav_CheckRecordDetailBasics = null; t.Nav_CheckRecordDetailBasics = null;
t.Nav_CheckRecordDetailReasons = null;
//t.Nav_CheckRecordDetailFiles = null; //t.Nav_CheckRecordDetailFiles = null;
t.Nav_CheckRecordDetailUsers = null; t.Nav_CheckRecordDetailUsers = null;
}); });
@ -1070,6 +1161,8 @@ namespace APT.SK.WebApi.Controllers.Api
this.BantchDeleteEntityNoCommit<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_USER>(deleteUserIds); this.BantchDeleteEntityNoCommit<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_USER>(deleteUserIds);
if (deleteBasicIds != null && deleteBasicIds.Any()) if (deleteBasicIds != null && deleteBasicIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_BASIC>(deleteBasicIds); this.BantchDeleteEntityNoCommit<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_BASIC>(deleteBasicIds);
if (deleteReasonIds != null && deleteReasonIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_REASON>(deleteReasonIds);
if (deleteFileIds != null && deleteFileIds.Any()) if (deleteFileIds != null && deleteFileIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_FILE>(deleteFileIds); this.BantchDeleteEntityNoCommit<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_FILE>(deleteFileIds);
if (deleteDetailIds != null && deleteDetailIds.Any()) if (deleteDetailIds != null && deleteDetailIds.Any())
@ -1080,6 +1173,8 @@ namespace APT.SK.WebApi.Controllers.Api
BantchSaveEntityNoCommit(userList); BantchSaveEntityNoCommit(userList);
if (basicList != null && basicList.Any()) if (basicList != null && basicList.Any())
BantchSaveEntityNoCommit(basicList); BantchSaveEntityNoCommit(basicList);
if (reasonList != null && reasonList.Any())
BantchSaveEntityNoCommit(reasonList);
if (fileList != null && fileList.Any()) if (fileList != null && fileList.Any())
BantchSaveEntityNoCommit(fileList); BantchSaveEntityNoCommit(fileList);
if (files != null && files.Any()) if (files != null && files.Any())
@ -1092,6 +1187,8 @@ namespace APT.SK.WebApi.Controllers.Api
BantchSaveEntityNoCommit(summaryDetails); BantchSaveEntityNoCommit(summaryDetails);
if (summaryDetailUsers != null && summaryDetailUsers.Any()) if (summaryDetailUsers != null && summaryDetailUsers.Any())
BantchSaveEntityNoCommit(summaryDetailUsers); BantchSaveEntityNoCommit(summaryDetailUsers);
if (summaryDetailReasons != null && summaryDetailReasons.Any())
BantchSaveEntityNoCommit(summaryDetailReasons);
if (summaryDetailBasics != null && summaryDetailBasics.Any()) if (summaryDetailBasics != null && summaryDetailBasics.Any())
BantchSaveEntityNoCommit(summaryDetailBasics); BantchSaveEntityNoCommit(summaryDetailBasics);
if (summaryFiles != null && summaryFiles.Any()) if (summaryFiles != null && summaryFiles.Any())
@ -1106,6 +1203,8 @@ namespace APT.SK.WebApi.Controllers.Api
BantchSaveEntityNoCommit(reportDetailFiles); BantchSaveEntityNoCommit(reportDetailFiles);
if (reportDetailBasics != null && reportDetailBasics.Any()) if (reportDetailBasics != null && reportDetailBasics.Any())
BantchSaveEntityNoCommit(reportDetailBasics); BantchSaveEntityNoCommit(reportDetailBasics);
if (reportDetailReasons != null && reportDetailReasons.Any())
BantchSaveEntityNoCommit(reportDetailReasons);
}); });
return true; return true;
}); });

View File

@ -55,12 +55,23 @@ namespace APT.SK.WebApi.Controllers.Api
List<Guid> deleteUserIds = new List<Guid>(); List<Guid> deleteUserIds = new List<Guid>();
List<Guid> deleteFileIds = new List<Guid>(); List<Guid> deleteFileIds = new List<Guid>();
List<Guid> deleteBasicIds = new List<Guid>(); List<Guid> deleteBasicIds = new List<Guid>();
List<Guid> deleteReasonIds = new List<Guid>();
List<Guid> deleteDetailIds = new List<Guid>(); List<Guid> deleteDetailIds = new List<Guid>();
List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_USER> userList = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_USER>(); List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_USER> userList = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_USER>();
List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_BASIC> basicList = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_BASIC>(); List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_BASIC> basicList = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_BASIC>();
List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_REASON> reasonList = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_REASON>();
List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_FILE> fileList = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_FILE>(); List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_FILE> fileList = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_FILE>();
if (details != null && details.Any()) 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_SK_SECURITY_INSPECTION_RECORD_SUMMARY>(t => t.ID == entity.ID, new string[] { "Nav_CheckRecordDetails", "Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers", "Nav_CheckRecordDetails.Nav_CheckRecordDetailFiles", "Nav_CheckRecordDetails.Nav_CheckRecordDetailBasics" }); var evaluationIsExist = this.GetEntity<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY>(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()) if (evaluationIsExist != null && evaluationIsExist.Nav_CheckRecordDetails != null && evaluationIsExist.Nav_CheckRecordDetails.Any())
{ {
@ -81,9 +92,15 @@ namespace APT.SK.WebApi.Controllers.Api
var tempIds = t.Nav_CheckRecordDetailBasics.Select(m => m.ID).ToList(); var tempIds = t.Nav_CheckRecordDetailBasics.Select(m => m.ID).ToList();
deleteBasicIds.AddRange(tempIds); 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); deleteDetailIds.Add(t.ID);
}); });
} }
foreach (var item in details) foreach (var item in details)
{ {
if (item.CHECK_RESULT == null) if (item.CHECK_RESULT == null)
@ -137,6 +154,16 @@ namespace APT.SK.WebApi.Controllers.Api
basicList.Add(item2); 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.ORG_ID = entity.ORG_ID;
item.SECURITY_INSPECTION_RECORD_SUMMARY_ID = entity.ID; item.SECURITY_INSPECTION_RECORD_SUMMARY_ID = entity.ID;
//item.Nav_CheckRecordDetailUsers = null; //item.Nav_CheckRecordDetailUsers = null;
@ -145,8 +172,10 @@ namespace APT.SK.WebApi.Controllers.Api
item.Nav_Contents = null; item.Nav_Contents = null;
} }
} }
var delFileIds = this.GetEntities<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_FILE>(t => t.SECURITY_INSPECTION_RECORD_SUMMARY_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
if (files != null && files.Any()) if (files != null && files.Any())
{ {
files = files.Where(t => !t.IS_DELETED).ToList();
foreach (var item in files) foreach (var item in files)
{ {
item.ORG_ID = entity.ORG_ID; item.ORG_ID = entity.ORG_ID;
@ -161,6 +190,7 @@ namespace APT.SK.WebApi.Controllers.Api
List<T_SK_HIDDEN_DANGER_REPORT_DETAIL> reportDetails = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL>(); List<T_SK_HIDDEN_DANGER_REPORT_DETAIL> reportDetails = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL>();
List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_FILE> reportDetailFiles = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_FILE>(); List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_FILE> reportDetailFiles = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_FILE>();
List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_BASIC> reportDetailBasics = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_BASIC>(); List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_BASIC> reportDetailBasics = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_BASIC>();
List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_REASON> reportDetailReasons = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_REASON>();
if (entity.PUBLISH != null && entity.PUBLISH.Equals("SaveAndNotify")) if (entity.PUBLISH != null && entity.PUBLISH.Equals("SaveAndNotify"))
{ {
userIds = userIds.Distinct().ToList(); userIds = userIds.Distinct().ToList();
@ -254,10 +284,22 @@ namespace APT.SK.WebApi.Controllers.Api
reportDetailBasics.Add(file); 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_FM_DEPARTMENT>(t => t.ID == entity.APPLY_DEPARTMENT_ID && t.ENABLE_STATUS == 0)?.NAME; var departName = this.GetEntity<T_FM_DEPARTMENT>(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"); DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum., "SK014");
notices.Add(notice); notices.Add(notice);
} }
@ -273,6 +315,7 @@ namespace APT.SK.WebApi.Controllers.Api
t.Nav_CheckRecordDetailFiles = null; t.Nav_CheckRecordDetailFiles = null;
t.Nav_CheckRecordDetailBasics = null; t.Nav_CheckRecordDetailBasics = null;
t.Nav_CheckRecordDetailUsers = null; t.Nav_CheckRecordDetailUsers = null;
t.Nav_CheckRecordDetailReasons = null;
}); });
this.UnifiedCommit(() => this.UnifiedCommit(() =>
{ {
@ -282,18 +325,24 @@ namespace APT.SK.WebApi.Controllers.Api
UpdateEntityNoCommit(entity); UpdateEntityNoCommit(entity);
if (deleteUserIds != null && deleteUserIds.Any()) if (deleteUserIds != null && deleteUserIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_USER>(deleteUserIds); this.BantchDeleteEntityNoCommit<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_USER>(deleteUserIds);
if (deleteReasonIds != null && deleteReasonIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_REASON>(deleteReasonIds);
if (deleteBasicIds != null && deleteBasicIds.Any()) if (deleteBasicIds != null && deleteBasicIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_BASIC>(deleteBasicIds); this.BantchDeleteEntityNoCommit<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_BASIC>(deleteBasicIds);
if (deleteFileIds != null && deleteFileIds.Any()) if (deleteFileIds != null && deleteFileIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_FILE>(deleteFileIds); this.BantchDeleteEntityNoCommit<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_FILE>(deleteFileIds);
if (deleteDetailIds != null && deleteDetailIds.Any()) if (deleteDetailIds != null && deleteDetailIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL>(deleteDetailIds); this.BantchDeleteEntityNoCommit<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL>(deleteDetailIds);
if (delFileIds != null && delFileIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_FILE>(delFileIds);
if (details != null && details.Any()) if (details != null && details.Any())
BantchSaveEntityNoCommit(details); BantchSaveEntityNoCommit(details);
if (userList != null && userList.Any()) if (userList != null && userList.Any())
BantchSaveEntityNoCommit(userList); BantchSaveEntityNoCommit(userList);
if (basicList != null && basicList.Any()) if (basicList != null && basicList.Any())
BantchSaveEntityNoCommit(basicList); BantchSaveEntityNoCommit(basicList);
if (reasonList != null && reasonList.Any())
BantchSaveEntityNoCommit(reasonList);
if (fileList != null && fileList.Any()) if (fileList != null && fileList.Any())
BantchSaveEntityNoCommit(fileList); BantchSaveEntityNoCommit(fileList);
if (files != null && files.Any()) if (files != null && files.Any())
@ -306,6 +355,8 @@ namespace APT.SK.WebApi.Controllers.Api
this.BantchSaveEntityNoCommit(reportDetailFiles); this.BantchSaveEntityNoCommit(reportDetailFiles);
if (reportDetailBasics != null && reportDetailBasics.Any()) if (reportDetailBasics != null && reportDetailBasics.Any())
this.BantchSaveEntityNoCommit(reportDetailBasics); this.BantchSaveEntityNoCommit(reportDetailBasics);
if (reportDetailReasons != null && reportDetailReasons.Any())
this.BantchSaveEntityNoCommit(reportDetailReasons);
if (notices != null && notices.Any()) if (notices != null && notices.Any())
BantchSaveEntityNoCommit(notices); BantchSaveEntityNoCommit(notices);
}); });
@ -329,7 +380,8 @@ namespace APT.SK.WebApi.Controllers.Api
List<T_SK_HIDDEN_DANGER_REPORT_DETAIL> reportDetails = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL>(); List<T_SK_HIDDEN_DANGER_REPORT_DETAIL> reportDetails = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL>();
List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_FILE> reportDetailFiles = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_FILE>(); List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_FILE> reportDetailFiles = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_FILE>();
List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_BASIC> reportDetailBasics = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_BASIC>(); List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_BASIC> reportDetailBasics = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_BASIC>();
var record = this.GetEntity<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY>(entity.ID, "Nav_CheckRecordFiles", "Nav_ApplyUser", "Nav_CheckRecordDetails", "Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers.Nav_User", "Nav_CheckRecordDetails.Nav_CheckRecordDetailFiles", "Nav_CheckRecordDetails.Nav_CheckRecordDetailBasics"); List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_REASON> reportDetailReasons = new List<T_SK_HIDDEN_DANGER_REPORT_DETAIL_REASON>();
var record = this.GetEntity<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY>(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; var userId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
if (entity.TaskID != Guid.Empty) if (entity.TaskID != Guid.Empty)
{ {
@ -424,10 +476,22 @@ namespace APT.SK.WebApi.Controllers.Api
reportDetailBasics.Add(file); 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_FM_DEPARTMENT>(t => t.ID == record.APPLY_DEPARTMENT_ID && t.ENABLE_STATUS == 0)?.NAME; var departName = this.GetEntity<T_FM_DEPARTMENT>(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"); DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum., "SK014");
notices.Add(notice); notices.Add(notice);
} }
@ -456,6 +520,8 @@ namespace APT.SK.WebApi.Controllers.Api
this.BantchSaveEntityNoCommit(reportDetailFiles); this.BantchSaveEntityNoCommit(reportDetailFiles);
if (reportDetailBasics != null && reportDetailBasics.Any()) if (reportDetailBasics != null && reportDetailBasics.Any())
this.BantchSaveEntityNoCommit(reportDetailBasics); this.BantchSaveEntityNoCommit(reportDetailBasics);
if (reportDetailReasons != null && reportDetailReasons.Any())
this.BantchSaveEntityNoCommit(reportDetailReasons);
if (notices != null && notices.Any()) if (notices != null && notices.Any())
this.BantchSaveEntityNoCommit(notices); this.BantchSaveEntityNoCommit(notices);
}); });
@ -597,7 +663,7 @@ namespace APT.SK.WebApi.Controllers.Api
filter.IgnoreDataRule = true; filter.IgnoreDataRule = true;
var result = this.GetEntity<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY>(id, new string[] {"Nav_ApplyUser","Nav_ApplyDepartment","Nav_CheckType", var result = this.GetEntity<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY>(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_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"}); "Nav_CheckRecordFiles","Nav_CheckRecordFiles.Nav_ImgFile","Nav_ProductionUnit"});
//var taskId = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "TASK_ID").Value; //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 if (result != null && result.Nav_CheckRecordDetails != null && result.Nav_CheckRecordDetails.Any())// && taskId != null