修改触发裁判逻辑

This commit is contained in:
2024-10-28 17:36:57 +08:00
parent 6d628727bb
commit 14d9d8e7a5
3 changed files with 20 additions and 20 deletions
@@ -6,11 +6,9 @@ namespace IRaCIS.Core.Application.Triggers
public class JudgeVisitTaskTrigger(
IRepository<VisitTask> _visitTaskRepository,
IRepository<ReadingJudgeInfo> _readingJudgeInfoRepository) : IAfterSaveTrigger<VisitTask>
IRepository<ReadingJudgeInfo> _readingJudgeInfoRepository) : IAfterSaveTrigger<VisitTask>,IBeforeSaveTrigger<VisitTask>
{
/// <summary>
/// 因为维护状态先后顺序导致 裁判任务关联的 任务上的JudgeVisitTaskId==nulll 在这里需要重新设置下
///
@@ -39,7 +37,14 @@ namespace IRaCIS.Core.Application.Triggers
}
}
else if (context.ChangeType == ChangeType.Modified)
}
//这个放在save 之前,不然可能先执行添加的修改为正确的,再执行修改的,又重置为空了 所以这里需要调整下 (裁判重阅,会修改裁判需要充值, 同时也会新增裁判任务)
public async Task BeforeSave(ITriggerContext<VisitTask> context, CancellationToken cancellationToken)
{
var visitTask = context.Entity;
if (context.ChangeType == ChangeType.Modified)
{
if (visitTask.ReadingCategory == ReadingCategory.Judge && (visitTask.TaskState == TaskState.Adbandon || visitTask.TaskState == TaskState.HaveReturned))
{
@@ -53,6 +58,5 @@ namespace IRaCIS.Core.Application.Triggers
}
}
}
}
}