From b0e429cb6b7d4fe6a38cece7847ace25e23bb350 Mon Sep 17 00:00:00 2001 From: xiaochanghai Date: Mon, 5 Aug 2024 13:55:49 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Ghre/Ghre_ExamRecordServices.cs | 26 ++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/Tiobon.Core.Services/Ghre/Ghre_ExamRecordServices.cs b/Tiobon.Core.Services/Ghre/Ghre_ExamRecordServices.cs index 5b08e356..d0435226 100644 --- a/Tiobon.Core.Services/Ghre/Ghre_ExamRecordServices.cs +++ b/Tiobon.Core.Services/Ghre/Ghre_ExamRecordServices.cs @@ -579,14 +579,17 @@ public class Ghre_ExamRecordServices : BaseServices= (exampaper.RetakeTimes ?? 0)) + extend.CanRetake = false; + if (extend.ExamStatus == Consts.DIC_EXAM_RECORD_STATUS.EXAM_END) extend.ScoreOut = false; @@ -613,6 +616,9 @@ public class Ghre_ExamRecordServices : BaseServices= dt.Date)) + return ServiceResult.OprateFailed("考试已结束!"); #region 试卷 引用次数 if (entity.Status == Consts.DIC_EXAM_RECORD_STATUS.WAIT) @@ -646,6 +652,12 @@ public class Ghre_ExamRecordServices : BaseServices().FirstAsync(x => x.Id == entity.ExamPaperId); + + + if ((entity.RetakeTimes ?? 0) >= (exampaper.RetakeTimes ?? 0)) + return ServiceResult.OprateFailed($"重考次数已达上限,已重考次数【{entity.RetakeTimes ?? 0}】,允许重考次数【{exampaper.RetakeTimes ?? 0}】!"); + if (entity.Status == Consts.DIC_EXAM_RECORD_STATUS.EXAM_END) entity.Status = Consts.DIC_EXAM_RECORD_STATUS.EXAMING; @@ -664,6 +676,11 @@ public class Ghre_ExamRecordServices : BaseServices= dt)) + return ServiceResult.OprateFailed("考试已结束!"); + string sql = $@"UPDATE Ghre_ExamRecordDetail set IsEnable=0 where ExamRecordId='{record.Id}'; UPDATE Ghre_ExamRecordAnswer set IsEnable=0 where ExamRecordId='{record.Id}';"; await Db.Ado.ExecuteCommandAsync(sql); @@ -786,13 +803,16 @@ public class Ghre_ExamRecordServices : BaseServices { "Status", "Score", "ActualEndTime" }, null, $"Id='{record.Id}'"); + await Update(record, new List { "Status", "Score", "ActualEndTime", "ScoreStatus" }, null, $"Id='{record.Id}'"); return ServiceResult.OprateSuccess("提交成功!"); } } \ No newline at end of file