检查跑批优化
This commit is contained in:
parent
c0420dc78f
commit
abc49bb29e
@ -579,8 +579,9 @@ namespace APT.PP.WebApi.Controllers.Api
|
||||
if (filter.Parameter1 != null)
|
||||
{
|
||||
dtNow = DateTime.Parse(filter.Parameter1);
|
||||
}
|
||||
//filter.IgnoreDataRule = false;
|
||||
}
|
||||
//filter.IgnoreDataRule = false;
|
||||
List<T_SK_SECURITY_INSPECTION_NOTICE> updateNotices = new List<T_SK_SECURITY_INSPECTION_NOTICE>();
|
||||
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> records = new List<T_SK_SECURITY_INSPECTION_RECORD>();
|
||||
@ -598,7 +599,7 @@ namespace APT.PP.WebApi.Controllers.Api
|
||||
baseFilter.SelectField = new string[] { "ID", "PRODUCTION_UNIT_ID","NOTICE_CODE", "CHECK_TYPE_ID","APPLY_DEPARTMENT_ID","APPLY_USER_ID","PLANCHECKFREQUENCY","DEPARTMENT_TYPE","CHECK_TIME","CHECK_PERSON",
|
||||
"Nav_CheckNoticeDetails.RISK_AREA_ID","Nav_CheckNoticeDetails.CHECK_CONTENTS_ID","Nav_CheckNoticeDetails.CHECKCONTENT","Nav_CheckNoticeDetails.CHECKPROOF","Nav_CheckNoticeDetails.CHECKSTANDARD",
|
||||
"Nav_CheckNoticeFiles.IMG_FILE_ID", "Nav_CheckNoticeDetails.Nav_CheckNoticeDetailUsers.USER_ID", "Nav_CheckNoticeDetails.Nav_CheckNoticeDetailBasics.LAW_ID" }; //指定字段,包括导航属性
|
||||
Expression<Func<T_SK_SECURITY_INSPECTION_NOTICE, bool>> expression = i => i.IS_DELETED == false && i.CHECK_TIME != null && i.CHECK_TIME.Value.Date == DateTime.Now.Date && i.CHECK_TIME.Value.Hour == dtNow.Hour && i.STATUS == PFStandardStatus.Archived;
|
||||
Expression<Func<T_SK_SECURITY_INSPECTION_NOTICE, bool>> expression = i => i.IS_DELETED == false && i.CHECK_TIME != null && i.CHECK_TIME.Value.Date == dtNow.Date && i.CHECK_TIME <= dtNow && (i.STATUS == PFStandardStatus.Archived || i.STATUS == PFStandardStatus.Sign);
|
||||
List<T_SK_SECURITY_INSPECTION_NOTICE> notices = this.GetOrderEntities(expression, baseFilter).ToList();
|
||||
var noticeExsisIds = notices.Select(t => t.ID).ToList();
|
||||
baseFilter.SelectField = new string[] { "ID", "SECURITY_INSPECTION_NOTICE_ID" }; //指定字段,包括导航属性
|
||||
@ -720,16 +721,29 @@ namespace APT.PP.WebApi.Controllers.Api
|
||||
var noticeIds = notices.Select(i => i.ID).ToList();
|
||||
tasks = this.GetEntities<T_FM_NOTIFICATION_TASK>(t => noticeIds.Contains((Guid)t.SOURCE_DATA_ID) && t.NOTICE_STATUS == 0, new BaseFilter(filter.OrgId)).ToList();
|
||||
tasks.ForEach(t => t.NOTICE_STATUS = 4);
|
||||
var sourceIds = tasks.Select(i => i.SOURCE_DATA_ID).ToList();
|
||||
notices.ForEach(m => {
|
||||
m.Nav_CheckNoticeDetails = null;
|
||||
m.Nav_CheckNoticeFiles = null;
|
||||
});
|
||||
var newFilter = new BaseFilter(filter.GetOrgId());
|
||||
newFilter.IgnoreDataRule = true;
|
||||
updateNotices = this.GetEntities<T_SK_SECURITY_INSPECTION_NOTICE>(t => noticeIds.Contains(t.ID) && t.STATUS == PFStandardStatus.Sign, newFilter).ToList();
|
||||
updateNotices.ForEach(t => t.STATUS = PFStandardStatus.Close);
|
||||
//var sourceIds = tasks.Select(i => i.SOURCE_DATA_ID).ToList();
|
||||
//notices.ForEach(m => {
|
||||
// m.Nav_CheckNoticeDetails = null;
|
||||
// m.Nav_CheckNoticeFiles = null;
|
||||
//});
|
||||
//notices.Where(t => sourceIds.Contains(t.ID)).ForEach(m => m.STATUS = PFStandardStatus.Close);
|
||||
//notices.Where(t => !sourceIds.Contains(t.ID)).ForEach(m => m.STATUS = PFStandardStatus.Archived);
|
||||
}
|
||||
else
|
||||
{
|
||||
var newFilter = new BaseFilter(filter.GetOrgId());
|
||||
newFilter.IgnoreDataRule = true;
|
||||
updateNotices = this.GetEntities<T_SK_SECURITY_INSPECTION_NOTICE>(t => recordExsisIds.Contains(t.ID) && t.STATUS == PFStandardStatus.Sign, newFilter).ToList();
|
||||
updateNotices.ForEach(t => t.STATUS = PFStandardStatus.Close);
|
||||
}
|
||||
UnifiedCommit(() =>
|
||||
{
|
||||
{
|
||||
if (updateNotices != null && updateNotices.Any())
|
||||
BantchSaveEntityNoCommit(updateNotices);
|
||||
//if (notices != null && notices.Any())
|
||||
// BantchSaveEntityNoCommit(notices);
|
||||
if (tasks != null && tasks.Any())
|
||||
@ -828,6 +842,7 @@ namespace APT.PP.WebApi.Controllers.Api
|
||||
sum.ORG_ID = noticeFirst.ORG_ID;
|
||||
sum.SECURITY_INSPECTION_NOTICE_ID = id;
|
||||
sum.APPLY_DEPARTMENT_ID = noticeFirst.APPLY_DEPARTMENT_ID;
|
||||
sum.PRODUCTION_UNIT_ID = noticeFirst.PRODUCTION_UNIT_ID;
|
||||
sum.APPLY_USER_ID = noticeFirst.APPLY_USER_ID;
|
||||
sum.CHECK_PERSON = noticeFirst.CHECK_PERSON;
|
||||
sum.CHECK_TIME = noticeFirst.CHECK_TIME;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user