|
|
@@ -4079,17 +4079,20 @@ namespace Business.ResourceExamineManagement
|
|
|
//如果产线有准备时间记录且准备开始时间在当前时间之前,说明已在排产中,此时不需要重新获取产线
|
|
|
if (curRecord != null && curRecord.StartTime < actStart)
|
|
|
{
|
|
|
- var curLine = lines.First(p=>p.Line == curRecord.Line);
|
|
|
- //计算产线实际开始时间
|
|
|
- //产线工作日历:当前产线的工作日历 + 默认工作日历
|
|
|
- var curCalendars = calendars.Where(p => p.ProdLine == curLine.Line || string.IsNullOrEmpty(p.ProdLine)).ToList();
|
|
|
- var curQtyDtls = qualityLines.Where(p => p.ProdLine == curLine.Line).ToList();
|
|
|
- actStart = CalcActStartTime(curLine.Line, actStart, curCalendars, curQtyDtls);
|
|
|
- lineStart.RecID = curLine.RecID;
|
|
|
- lineStart.Line = curLine.Line;
|
|
|
- lineStart.StartTime = actStart;
|
|
|
- lineStart.setupTime = curLine.SetupTime;
|
|
|
- lineStart.Rate = curLine.Rate;
|
|
|
+ var curLine = lines.FirstOrDefault(p=>p.Line == curRecord.Line);
|
|
|
+ if (curLine != null)
|
|
|
+ {
|
|
|
+ //计算产线实际开始时间
|
|
|
+ //产线工作日历:当前产线的工作日历 + 默认工作日历
|
|
|
+ var curCalendars = calendars.Where(p => p.ProdLine == curLine.Line || string.IsNullOrEmpty(p.ProdLine)).ToList();
|
|
|
+ var curQtyDtls = qualityLines.Where(p => p.ProdLine == curLine.Line).ToList();
|
|
|
+ actStart = CalcActStartTime(curLine.Line, actStart, curCalendars, curQtyDtls);
|
|
|
+ lineStart.RecID = curLine.RecID;
|
|
|
+ lineStart.Line = curLine.Line;
|
|
|
+ lineStart.StartTime = actStart;
|
|
|
+ lineStart.setupTime = curLine.SetupTime;
|
|
|
+ lineStart.Rate = curLine.Rate;
|
|
|
+ }
|
|
|
}
|
|
|
else {
|
|
|
//获取第一条产线排产结束时间
|
|
|
@@ -4480,12 +4483,14 @@ namespace Business.ResourceExamineManagement
|
|
|
//如果产线有准备时间记录且准备开始时间在当前时间之前,说明已在排产中,此时不需要重新获取产线
|
|
|
if (curRecord != null && curRecord.StartTime < scheTime)
|
|
|
{
|
|
|
- var curLine = lines.First(p => p.Line == curRecord.Line);
|
|
|
- startDto.RecID = curLine.RecID;
|
|
|
- startDto.Line = curLine.Line;
|
|
|
- startDto.StartTime = scheTime;
|
|
|
- startDto.setupTime = curLine.SetupTime;
|
|
|
- startDto.Rate = curLine.Rate;
|
|
|
+ var curLine = lines.FirstOrDefault(p => p.Line == curRecord.Line);
|
|
|
+ if (curLine != null) {
|
|
|
+ startDto.RecID = curLine.RecID;
|
|
|
+ startDto.Line = curLine.Line;
|
|
|
+ startDto.StartTime = scheTime;
|
|
|
+ startDto.setupTime = curLine.SetupTime;
|
|
|
+ startDto.Rate = curLine.Rate;
|
|
|
+ }
|
|
|
}
|
|
|
else {
|
|
|
//获取第一条产线排产结束时间
|