检查通知超时审批不触发后续流程

This commit is contained in:
何美荣 2026-03-27 10:44:32 +08:00
parent f234a5a857
commit 68f49d4c4d
2 changed files with 74 additions and 68 deletions

View File

@ -11393,13 +11393,17 @@ namespace APT.BaseData.Services.DomainServices
}
else
{
var entity = this.GetEntity<T_SK_SECURITY_INSPECTION_NOTICE>(modelApp != null ? modelApp.DATA_ID : entityInt.DATA_ID, "Nav_CheckType");
entity.STATUS = PFStandardStatus.Sign;
var entityDetails = this.GetEntities<T_SK_SECURITY_INSPECTION_NOTICE_DETAIL>(t => t.SECURITY_INSPECTION_NOTICE_ID == entity.ID, new BaseFilter(entity.ORG_ID), "Nav_CheckNoticeDetailUsers");
List<T_FM_NOTIFICATION_TASK> sendNotices = new List<T_FM_NOTIFICATION_TASK>();
List<Guid> userIds = new List<Guid>();
List<Guid> applyUserIds = new List<Guid>();
List<T_SK_SECURITY_INSPECTION_NOTICE_DETAIL_USER> detailUsers = new List<T_SK_SECURITY_INSPECTION_NOTICE_DETAIL_USER>();
var entity = this.GetEntity<T_SK_SECURITY_INSPECTION_NOTICE>(modelApp != null ? modelApp.DATA_ID : entityInt.DATA_ID, "Nav_CheckType");
entity.STATUS = PFStandardStatus.Approving;
if (DateTime.Now > entity.CHECK_TIME)
{ }
else
{
var entityDetails = this.GetEntities<T_SK_SECURITY_INSPECTION_NOTICE_DETAIL>(t => t.SECURITY_INSPECTION_NOTICE_ID == entity.ID, new BaseFilter(entity.ORG_ID), "Nav_CheckNoticeDetailUsers");
if (entityDetails != null && entityDetails.Any())
{
foreach (var user in entityDetails)
@ -11460,6 +11464,7 @@ namespace APT.BaseData.Services.DomainServices
{
entity.STATUS = PFStandardStatus.Archived;
}
}
UnifiedCommit(() =>
{
if (modelApp != null)

View File

@ -790,7 +790,7 @@ namespace APT.PP.WebApi.Controllers.Api
var day = dtNow.Day;
var week = dtNow.DayOfWeek;
filter.IgnoreDataRule = true;
//查记录表,检查时间第二天12点自动转为已办
//查记录表,检查时间第二天自动转为已办
List<T_FM_NOTIFICATION_TASK> tasks = new List<T_FM_NOTIFICATION_TASK>();
List<T_FM_NOTIFICATION_TASK> noticeTasks = new List<T_FM_NOTIFICATION_TASK>();
List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY> summarys = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY>();
@ -810,11 +810,12 @@ namespace APT.PP.WebApi.Controllers.Api
// "Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers.ISMAINCHECK","Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers.CHECKTIME","Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers.ISCHECK",
// "Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers.SECURITY_INSPECTION_RECORD_DETAIL_ID","Nav_CheckRecordDetails.Nav_CheckRecordDetailBasics.SECURITY_INSPECTION_RECORD_DETAIL_ID",
// "Nav_CheckRecordDetails.Nav_CheckRecordDetailBasics.LAW_ID" }; //指定字段,包括导航属性
var notices = GetEntities<T_SK_SECURITY_INSPECTION_NOTICE>(i => i.CHECK_TIME.Value.AddDays(1).Date == dtNow.Date && i.CHECK_TIME.Value.AddDays(1).Hour == dtNow.Hour && i.Nav_CheckType != null && !i.Nav_CheckType.NAME.Contains("岗位排查"), baseFilter);
var notices = GetEntities<T_SK_SECURITY_INSPECTION_NOTICE>(i => i.CHECK_TIME.Value.AddDays(1).Date == dtNow.Date && i.CHECK_TIME.Value.AddDays(1).Hour == dtNow.Hour && i.Nav_CheckType != null && !i.Nav_CheckType.NAME.Contains("岗位排查") && (i.STATUS == PFStandardStatus.Archived || i.STATUS == PFStandardStatus.Sign), baseFilter);
var noticeIds = notices.Select(t => t.ID).ToList();
var sumNoticeIds = GetEntities<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY>(t => t.SECURITY_INSPECTION_NOTICE_ID != null && noticeIds.Contains((Guid)t.SECURITY_INSPECTION_NOTICE_ID), baseFilter).Select(m => m.SECURITY_INSPECTION_NOTICE_ID).Distinct().ToList();
var needDealIds = noticeIds.Where(t => !sumNoticeIds.Contains(t)).ToList();
var records = GetEntities<T_SK_SECURITY_INSPECTION_RECORD>(i => i.SECURITY_INSPECTION_NOTICE_ID != null && needDealIds.Contains((Guid)i.SECURITY_INSPECTION_NOTICE_ID), baseFilter).ToList();
var recordNoticeIds = records.Select(t => t.SECURITY_INSPECTION_NOTICE_ID).Distinct().ToList();
if (records != null && records.Any())
{
var recordIds = records.Select(i => i.ID).ToList();
@ -832,7 +833,7 @@ namespace APT.PP.WebApi.Controllers.Api
var recordDetailFiles = this.GetEntities<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_FILE>(t => recordDetailIds.Contains(t.SECURITY_INSPECTION_RECORD_DETAIL_ID), baseFilter);
var recordDetailBasics = this.GetEntities<T_SK_SECURITY_INSPECTION_RECORD_DETAIL_BASIC>(t => recordDetailIds.Contains(t.SECURITY_INSPECTION_RECORD_DETAIL_ID), baseFilter);
//触发汇总表
foreach (var id in needDealIds)
foreach (var id in recordNoticeIds)
{
var noticeFirst = notices.FirstOrDefault(t => t.ID == id);
var user = users.FirstOrDefault(t => t.ID == noticeFirst?.APPLY_USER_ID);