From 935b498ab5f2b4effad4969db83882bccea3667b Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Wed, 25 Sep 2024 15:49:43 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=B8=8A=E4=BC=A0=E9=AA=8C?= =?UTF-8?q?=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Service/ImageAndDoc/DownloadAndUploadService.cs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs b/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs index 1fd4b224e..a620f9913 100644 --- a/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs +++ b/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs @@ -253,11 +253,14 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc public async Task> VerifyIRStudyAllowUpload(TaskStudyAchivePreConfirmCommand inCommand, [FromServices] IRepository _dicomStudyRepository) { + var currentUploadSubjectVisitId = inCommand.VisitTaskId == null ? null : _visitTaskRepository.Where(t => t.Id == inCommand.VisitTaskId).Select(t => t.SourceSubjectVisitId).FirstOrDefault(); + //重阅任务排除 var notAllowedUidList1 = _taskStudyRepository.Where(t => t.TrialId == inCommand.TrialId && t.VisitTask.TaskState == TaskState.Effect && inCommand.StudyInstanceUidList.Contains(t.StudyInstanceUid)).Select(t => new { t.StudyInstanceUid, t.SubjectId, + SubjectVisitId = t.VisitTask.SourceSubjectVisitId, SubejectCode = t.VisitTask.IsAnalysisCreate ? t.VisitTask.BlindSubjectCode : t.Subject.Code, VisitTaskId = (Guid?)t.VisitTaskId }).ToList(); @@ -266,6 +269,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc { t.StudyInstanceUid, t.SubjectId, + SubjectVisitId = (Guid?)t.SubjectVisitId, SubejectCode = t.Subject.Code, VisitTaskId = (Guid?)null }).ToList(); @@ -283,12 +287,13 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc //同一个subject 同一份影响 if (findStudy.SubejectCode == inCommand.SubjectCode && findStudy.SubjectId == inCommand.SubjectId) { + //上传给后处理其他访视了 if (inCommand.VisitTaskId != null && findStudy.VisitTaskId != null && findStudy.VisitTaskId != inCommand.VisitTaskId) { result.Add(new TaskStudyArchiveConfirmResult() { StudyInstanceUid = studyUid, IsAllowReUpload = false, IsAllowUpload = false }); } - //在原始crc 里面上传了 - else if (inCommand.VisitTaskId != null && findStudy.VisitTaskId == null) + //在原始crc 里面上传了,并且不是当前访视 + else if (inCommand.VisitTaskId != null && findStudy.VisitTaskId == null && findStudy.SubjectVisitId!= currentUploadSubjectVisitId) { result.Add(new TaskStudyArchiveConfirmResult() { StudyInstanceUid = studyUid, IsAllowReUpload = false, IsAllowUpload = false }); }