diff --git a/APT.MicroApi/APT.FO.WebApi/Controllers/PreShiftMeetingRecordController.cs b/APT.MicroApi/APT.FO.WebApi/Controllers/PreShiftMeetingRecordController.cs index a51b4ce..6a7402a 100644 --- a/APT.MicroApi/APT.FO.WebApi/Controllers/PreShiftMeetingRecordController.cs +++ b/APT.MicroApi/APT.FO.WebApi/Controllers/PreShiftMeetingRecordController.cs @@ -332,56 +332,52 @@ namespace APT.FO.WebApi.Controllers.Api.FO T_FO_PRE_SHIFT_MEETING_RECORD modelLast = null; if (entity.RATE.Equals("SaveAndNotify")) { - try + if (finishNotice != null && finishNotice.NOTICE_STATUS == 2) { - if (finishNotice != null && finishNotice.NOTICE_STATUS == 2) + //如果班长提交的时候已经超时了 直接单子超时 + entity.OVERTIME = FOISOVERTIME.超时; + } + if (entity.TEAM_ID.HasValue) + { + //上一个 班前会 是否超时标记 + //entity.OVERTIME = FOISOVERTIME.未统计; + //未统计 = 0, //未超时 = 1, //超时 = 2 + BasePageFilter basf = new BasePageFilter(1, 1); + basf.Order = DbOrder.DESC; + basf.Sort = "MEETING_TIME"; + basf.OrgId = entity.ORG_ID; + DateTime dtMin = entity.START_TIME.AddMonths(-1);//一个月以内的 + var lastRecord = GetOrderPageEntities(e => e.TEAM_ID.HasValue && e.TEAM_ID.Value == entity.TEAM_ID.Value && e.START_TIME != e.END_TIME && dtMin <= e.START_TIME && e.START_TIME < entity.START_TIME, basf, null); + if (lastRecord.Data != null && lastRecord.Data.Count() > 0) + modelLast = lastRecord.Data.ToList()[0]; + if (modelLast != null && modelLast.OVERTIME == FOISOVERTIME.未统计) { - //如果班长提交的时候已经超时了 直接单子超时 - entity.OVERTIME = FOISOVERTIME.超时; - } - if (entity.TEAM_ID.HasValue) - { - //上一个 班前会 是否超时标记 - //entity.OVERTIME = FOISOVERTIME.未统计; - //未统计 = 0, //未超时 = 1, //超时 = 2 - BasePageFilter basf = new BasePageFilter(1, 1); - basf.Order = DbOrder.DESC; - basf.Sort = "MEETING_TIME"; - basf.OrgId = entity.ORG_ID; - DateTime dtMin = entity.START_TIME.AddMonths(-1);//一个月以内的 - var lastRecord = GetOrderPageEntities(e => e.TEAM_ID.HasValue && e.TEAM_ID.Value == entity.TEAM_ID.Value && e.START_TIME != e.END_TIME && dtMin <= e.START_TIME && e.START_TIME < entity.START_TIME, basf, null); - if (lastRecord.Data != null && lastRecord.Data.Count() > 0) - modelLast = lastRecord.Data.ToList()[0]; - if (modelLast != null && modelLast.OVERTIME == FOISOVERTIME.未统计) + Expression> expressionCheck = e => !e.IS_DELETED && !e.ISCANCEL && e.SOURCE_DATA_ID.HasValue && e.SOURCE_DATA_ID == modelLast.ID && (e.SOURCE_FORMCODE == "FO003_SHOWPRINT" || e.SOURCE_FORMCODE == "FO003"); + //if (finishNotice != null) + //{ + // expressionCheck = expressionCheck.And(e => e.CREATE_TIME.HasValue && e.CREATE_TIME < finishNotice.CREATE_TIME); + //} + var listCheckTask = GetEntities(expressionCheck, null, null); + if (listCheckTask != null) { - Expression> expressionCheck = e => !e.IS_DELETED && !e.ISCANCEL && e.SOURCE_DATA_ID.HasValue && e.SOURCE_DATA_ID == modelLast.ID && (e.SOURCE_FORMCODE == "FO003_SHOWPRINT" || e.SOURCE_FORMCODE == "FO003"); - //if (finishNotice != null) - //{ - // expressionCheck = expressionCheck.And(e => e.CREATE_TIME.HasValue && e.CREATE_TIME < finishNotice.CREATE_TIME); - //} - var listCheckTask = GetEntities(expressionCheck, null, null); - if (listCheckTask != null) + var checkT = listCheckTask.FirstOrDefault(e => e.NOTICE_STATUS == 2 || e.NOTICE_STATUS == 0); + if (checkT != null) { - var checkT = listCheckTask.FirstOrDefault(e => e.NOTICE_STATUS == 2 || e.NOTICE_STATUS == 0); + modelLast.OVERTIME = FOISOVERTIME.超时; + modelLast.MODIFY_TIME = DateTime.Now; + } + else + { + checkT = listCheckTask.FirstOrDefault(e => e.NOTICE_STATUS == 1); if (checkT != null) { - modelLast.OVERTIME = FOISOVERTIME.超时; + modelLast.OVERTIME = FOISOVERTIME.未超时; modelLast.MODIFY_TIME = DateTime.Now; } - else - { - checkT = listCheckTask.FirstOrDefault(e => e.NOTICE_STATUS == 1); - if (checkT != null) - { - modelLast.OVERTIME = FOISOVERTIME.未超时; - modelLast.MODIFY_TIME = DateTime.Now; - } - } } } } } - catch { } } #endregion