修改受试者状态退回,逻辑判断
continuous-integration/drone/push Build is running Details

Uat_IRC_Net10
hang 2026-06-26 16:33:47 +08:00
parent 79aeb663c6
commit a4181f819b
1 changed files with 7 additions and 4 deletions

View File

@ -56,10 +56,10 @@ namespace IRaCIS.Core.Application.Triggers
// 出组 状态发生了变更
if (context.Entity.Status == SubjectStatus.OutOfVisit && context.Entity.Status != context.UnmodifiedEntity?.Status)
if ( context.Entity.Status != context.UnmodifiedEntity?.Status)
{
//设置末次方式
if (context.Entity.FinalSubjectVisitId != null)
if (context.Entity.Status == SubjectStatus.OutOfVisit && context.Entity.FinalSubjectVisitId != null )
{
if (await _subjectVisitRepository.AnyAsync(t => t.SubjectId == dbSubject.Id && t.IsFinalVisit && t.Id != dbSubject.FinalSubjectVisitId))
{
@ -87,9 +87,9 @@ namespace IRaCIS.Core.Application.Triggers
await _subjectVisitRepository.BatchUpdateNoTrackingAsync(t => t.SubjectId == dbSubject.Id && t.VisitNum > sv.VisitNum, u => new SubjectVisit() { VisitExecuted = VisitExecutedEnum.Unavailable });
}
//撤销状态
else
else if(context.UnmodifiedEntity?.Status== SubjectStatus.OutOfVisit && context.UnmodifiedEntity.FinalSubjectVisitId != null)
{
var sv = await _subjectVisitRepository.FirstOrDefaultAsync(t => t.Id == dbSubject.FinalSubjectVisitId).IfNullThrowException();
var sv = await _subjectVisitRepository.FirstOrDefaultAsync(t => t.Id == context.UnmodifiedEntity.FinalSubjectVisitId).IfNullThrowException();
sv.IsFinalVisit = false;
@ -100,6 +100,9 @@ namespace IRaCIS.Core.Application.Triggers
}
}
}
}