|
|
|
@ -1151,6 +1151,16 @@ public class Ghre_ExamServices : BaseServices<Ghre_Exam, Ghre_ExamDto, InsertGhr |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//public bool IsTimePeriodOverlap(DateTime firstStart, DateTime firstEnd, DateTime secondStart, DateTime secondEnd) |
|
|
|
|
//{ |
|
|
|
|
// if (!(secondEnd < firstStart || secondStart > firstEnd)) |
|
|
|
|
// { |
|
|
|
|
// return true ; |
|
|
|
|
// } |
|
|
|
|
// return false; |
|
|
|
|
//} |
|
|
|
|
|
|
|
|
|
public async Task<ServiceResult> UpdateStatus(long[] ids, string status) |
|
|
|
|
{ |
|
|
|
|
|
|
|
|
@ -1229,6 +1239,7 @@ public class Ghre_ExamServices : BaseServices<Ghre_Exam, Ghre_ExamDto, InsertGhr |
|
|
|
|
|| (entity.EndTime >= exam.BeginTime && entity.EndTime <= exam.EndTime) |
|
|
|
|
|| (exam.EndTime >= entity.BeginTime && exam.EndTime <= entity.EndTime) |
|
|
|
|
|| (exam.EndTime >= entity.BeginTime && exam.EndTime <= entity.EndTime)) |
|
|
|
|
//if (IsTimePeriodOverlap(entity.BeginTime.Value.Date, entity.EndTime.Value.Date, exam.BeginTime.Value.Date, exam.EndTime.Value.Date)) |
|
|
|
|
return ServiceResult.OprateFailed($"课程【{course.CourseName}】已存在有效的考试管理数据【{exam.ExamName}({exam.ExamNo})】时间重叠!"); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
@ -1266,12 +1277,11 @@ public class Ghre_ExamServices : BaseServices<Ghre_Exam, Ghre_ExamDto, InsertGhr |
|
|
|
|
var inserts = new List<Ghre_StudyRecord>(); |
|
|
|
|
|
|
|
|
|
var snap = await Db.Queryable<Ghre_CourseSnap>().FirstAsync(x => x.CourseId == entity.CourseId); |
|
|
|
|
DateTime courseTime = Db.GetDate(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var courseTime = Db.GetDate(); |
|
|
|
|
var courseEndTime = courseTime.Date.AddMonths(snap?.ValidityPeriod ?? 1); |
|
|
|
|
|
|
|
|
|
#region 自动给学习记录匹配考试ID |
|
|
|
|
var studyRecords = await Db.Queryable<Ghre_StudyRecord>() |
|
|
|
|
var studyRecords = await Db.Queryable<Ghre_StudyRecord>() |
|
|
|
|
.WhereIF(!entity.CourseId.IsNull(), x => x.CourseId == entity.CourseId) |
|
|
|
|
.WhereIF(!entity.CourseSceneId.IsNull(), x => x.CourseSceneId == entity.CourseSceneId) |
|
|
|
|
.Where(x => x.ExamId == null).ToListAsync(); |
|
|
|
@ -1298,7 +1308,7 @@ public class Ghre_ExamServices : BaseServices<Ghre_Exam, Ghre_ExamDto, InsertGhr |
|
|
|
|
CourseSceneId = entity.CourseSceneId, |
|
|
|
|
JoinTime = courseTime, |
|
|
|
|
CourseBeginTime = courseTime.Date, |
|
|
|
|
CourseEndTime = courseTime.Date.AddMonths(snap?.ValidityPeriod ?? 1), |
|
|
|
|
CourseEndTime = courseEndTime, |
|
|
|
|
CourseType = Consts.DIC_EXAM_STAFF_SOURCE.MANUAL_REQUIRED, |
|
|
|
|
CourseStatus = Consts.DIC_STUDY_RECORD_COURSE_STATUS_IN, |
|
|
|
|
StudyStatus = Consts.DicStudyRecordStudyStatus.NO_JOIN |
|
|
|
|