diff --git a/IRaCIS.Core.Application/Service/QC/QCOperationService.cs b/IRaCIS.Core.Application/Service/QC/QCOperationService.cs index dde63c650..1cb708aef 100644 --- a/IRaCIS.Core.Application/Service/QC/QCOperationService.cs +++ b/IRaCIS.Core.Application/Service/QC/QCOperationService.cs @@ -257,13 +257,13 @@ namespace IRaCIS.Core.Application.Image.QA public async Task RequestImageBack(Guid subjectVisitId) { - if (_subjectVisitRepository.Any(t => t.Id == subjectVisitId && t.QCChallengeList.Any(t=>t.IsClosed==false) )) + if (_subjectVisitRepository.Any(t => t.Id == subjectVisitId && t.QCChallengeList.Any(t => t.IsClosed == false))) { //有未关闭的质疑,不允许在此申请影像回退 throw new BusinessValidationFailedException(_localizer["QCOperation_HaveNotClosedQCChanllenge"]); } - if (!_subjectVisitRepository.Any(t => t.Id == subjectVisitId && !t.VisitTaskList.Any() && t.SubmitState == SubmitStateEnum.Submitted)) + if (!_subjectVisitRepository.Any(t => t.Id == subjectVisitId && !t.VisitTaskList.Any(u => u.TaskState == TaskState.Effect) && t.SubmitState == SubmitStateEnum.Submitted)) { //已提交未生成任务的才允许申请 throw new BusinessValidationFailedException(_localizer["QCOperation_ShouldBeforeCheckPassed"]); @@ -276,7 +276,7 @@ namespace IRaCIS.Core.Application.Image.QA throw new BusinessValidationFailedException(_localizer["QCOperation_HaveApplyedImageBack"]); } - if (_qcChallengeRepository.Any(t => t.SubjectVisitId == subjectVisitId && t.IsClosed==false && t.ReuploadEnum==QCChanllengeReuploadEnum.CRCRequestReupload )) + if (_qcChallengeRepository.Any(t => t.SubjectVisitId == subjectVisitId && t.IsClosed == false && t.ReuploadEnum == QCChanllengeReuploadEnum.CRCRequestReupload)) { throw new BusinessValidationFailedException(_localizer["QCOperation_SomeOneHaveApplyedImageBack"]); } @@ -340,7 +340,7 @@ namespace IRaCIS.Core.Application.Image.QA } - if (sv.SubmitState == SubmitStateEnum.Submitted && _subjectVisitRepository.Any(t => t.Id == backRecord.SubjectVisitId && !t.VisitTaskList.Any())) + if (sv.SubmitState == SubmitStateEnum.Submitted && _subjectVisitRepository.Any(t => t.Id == backRecord.SubjectVisitId && !t.VisitTaskList.Any(u => u.TaskState == TaskState.Effect))) { backRecord.ImageBackState = ImageBackStateEnum.PMAgreeBack;