From c5109feaa8a24f9da3ac55dcf3e282c7a44e14d0 Mon Sep 17 00:00:00 2001 From: xiaochanghai Date: Tue, 20 Aug 2024 16:19:39 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E8=80=83=E8=AF=95?= =?UTF-8?q?=E5=BD=92=E6=A1=A3=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Ghre/Ghre_ExamServices.cs | 26 ++++++++++++++++--- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/Tiobon.Core.Services/Ghre/Ghre_ExamServices.cs b/Tiobon.Core.Services/Ghre/Ghre_ExamServices.cs index 500d85ec..67134a27 100644 --- a/Tiobon.Core.Services/Ghre/Ghre_ExamServices.cs +++ b/Tiobon.Core.Services/Ghre/Ghre_ExamServices.cs @@ -1204,14 +1204,32 @@ public class Ghre_ExamServices : BaseServices x.ExamId == id && x.Status == DIC_EXAM_RECORD_STATUS.EXAMING)) return ServiceResult.OprateFailed("已有学员参与考试,不可取消发布!"); } + //--如果考试时间是区间,那过了这个区间后,员工学完也考不了。那么,只要是过了考试时间,后台可以手动归档。 + //--如果考试时间是学完多久,需要等1)员工考完;2)员工没考完但过了学习时间,才能归档。 if (entity.Status == DIC_EXAM_STATUS.RELEASED && status == DIC_EXAM_STATUS.DISABLED) { - if (await Db.Queryable().AnyAsync(x => x.ExamId == id && x.StudyStatus != DIC_STUDY_RECORD_STUDY_STATUS.NO_JOIN)) - return ServiceResult.OprateFailed("已有学员正在学习,不可归档!"); + if (entity.DateType == DicExamDateType.EXAM_DATE) + { + if (entity.BeginTime.Value.Date <= DateTime.Now.Date && entity.EndTime.Value.Date >= DateTime.Now.Date) + { + if (await Db.Queryable().AnyAsync(x => x.ExamId == id && x.StudyStatus != DIC_STUDY_RECORD_STUDY_STATUS.NO_JOIN)) + return ServiceResult.OprateFailed("已有学员正在学习,不可归档!"); + + if (await _ghre_ExamRecordServices.AnyAsync(x => x.ExamId == id && x.Status == DIC_EXAM_RECORD_STATUS.EXAMING)) + return ServiceResult.OprateFailed("已有学员参与考试,不可归档!"); + } + } + else + { + + if (await Db.Queryable().AnyAsync(x => x.ExamId == id && x.StudyStatus != DIC_STUDY_RECORD_STUDY_STATUS.NO_JOIN)) + return ServiceResult.OprateFailed("已有学员正在学习,不可归档!"); + + if (await _ghre_ExamRecordServices.AnyAsync(x => x.ExamId == id && x.Status == DIC_EXAM_RECORD_STATUS.EXAMING)) + return ServiceResult.OprateFailed("已有学员参与考试,不可归档!"); + } - if (await _ghre_ExamRecordServices.AnyAsync(x => x.ExamId == id && x.Status == DIC_EXAM_RECORD_STATUS.EXAMING)) - return ServiceResult.OprateFailed("已有学员参与考试,不可归档!"); } if (entity.Status == DIC_EXAM_STATUS.DISABLED && status == DIC_EXAM_STATUS.RELEASED)