考试优化

master
xiaochanghai 3 months ago
parent 92d9b8dc05
commit 52ee64b679
  1. 7
      Tiobon.Core.Common/Helper/ExamHelper.cs
  2. 2
      Tiobon.Core.Services/Ghre/Ghre_ExamRecordServices.cs
  3. 6
      Tiobon.Core.Services/Ghre/Ghre_StudyRecordServices.cs

@ -74,9 +74,12 @@ public class ExamHelper
break;
default:
var questionAnswerIds = recordAnswers.Where(x => x.ExamRecordDetailId == detail.Id && x.QuestionAnswerId != null && answerIds.Contains(x.QuestionAnswerId.Value)).Select(m => m.QuestionAnswerId).ToList();
var questionAnswerIds = recordAnswers.Where(x =>
x.ExamRecordDetailId == detail.Id && x.QuestionAnswerId != null &&
answerIds.Contains(x.QuestionAnswerId.Value)).Select(m => m.QuestionAnswerId).ToList();
if (questionAnswerIds.Count == answers.Where(x => x.QuestionId == detail.QuestionId).Count())
if (questionAnswerIds.Count == answers.Where(x => x.QuestionId == detail.QuestionId).Count() &&
answers.Where(x => x.QuestionId == detail.QuestionId).Count() == recordAnswers.Where(x => x.ExamRecordDetailId == detail.Id).Count())
{
score += exampaperQuestion?.Score;
detail.Score = exampaperQuestion?.Score;

@ -1104,7 +1104,7 @@ public class Ghre_ExamRecordServices : BaseServices<Ghre_ExamRecord, Ghre_ExamRe
#endregion
record.UpdateTime = DateTime.Now;
await Update(record, new List<string> { "Status", "Score", "AdjustScore", "ActualEndTime", "ScoreStatus", "UpdateTime", "ExamDate" }, null, $"Id='{record.Id}'");
await Update(record, new List<string> { "Status", "Score", "AdjustScore", "ActualEndTime", "ScoreStatus", "UpdateTime", "ExamDate", "AnswerCount" }, null, $"Id='{record.Id}'");
if (exampaper.ScoreMethod == DIC_EXAM_PAPER_SCORE_METHOD.SYSTEM)
await Task.Factory.StartNew(async () => await DealPass(Db, studyRecordId));

@ -3,6 +3,7 @@ using NPOI.HSSF.UserModel;
using NPOI.SS.UserModel;
using NPOI.SS.Util;
using NPOI.XSSF.UserModel;
using Org.BouncyCastle.Crypto;
using static Tiobon.Core.DataAccess.ReportHelper;
using static Tiobon.Core.Model.Consts;
@ -1882,6 +1883,11 @@ ORDER BY {filter.orderBy}";
#endregion
#region 批量删除
public override async Task<bool> DeleteById1(object id)
{
return await DeleteByIds1([id.ObjToLong()]);
}
/// <summary>
/// 删除指定ID集合的数据(批量删除)
/// </summary>

Loading…
Cancel
Save