diff --git a/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs b/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs index 66d650f47..63be0c92e 100644 --- a/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs +++ b/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs @@ -6,6 +6,7 @@ using IRaCIS.Core.Application.Helper; using IRaCIS.Core.Application.Service.ImageAndDoc.DTO; using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Infrastructure; +using IRaCIS.Core.Infrastructure.Extention; using MassTransit; using MathNet.Numerics; using Medallion.Threading; @@ -62,11 +63,11 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc if (_visitTaskRepository.Any(t => t.SubjectId == subjectId && t.TrialReadingCriterionId == trialReadingCriterionId && t.TrialReadingCriterion.IsReadingTaskViewInOrder == ReadingOrder.SubjectRandom)) { //找到 非一致性分析,未签名,状态正常的 并且任务名称是TimePoint的 任务 - var needDealTaskList = await _visitTaskRepository.Where(t => t.SubjectId == subjectId && t.TrialReadingCriterionId == trialReadingCriterionId && t.IsAnalysisCreate == false && t.DoctorUserId==_userInfo.Id + var needDealTaskList = await _visitTaskRepository.Where(t => t.SubjectId == subjectId && t.TrialReadingCriterionId == trialReadingCriterionId && t.IsAnalysisCreate == false && t.DoctorUserId == _userInfo.Id && t.ReadingTaskState != ReadingTaskState.HaveSigned && t.TaskBlindName == "Timepoint" && t.ReadingCategory == ReadingCategory.Visit && (t.TaskState == TaskState.Effect || t.TaskState == TaskState.Freeze), true).ToListAsync(); - if (needDealTaskList.Count>0) + if (needDealTaskList.Count > 0) { //已完成的访视任务数量(包含重阅的) var haveFinishedTaskCount = await _visitTaskRepository.CountAsync(t => t.SubjectId == subjectId && t.TrialReadingCriterionId == trialReadingCriterionId && t.IsAnalysisCreate == false && t.DoctorUserId == _userInfo.Id @@ -80,7 +81,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc //随机赋值编号 比如要处理5个任务,实例化一个包含1-5的数组,每次随机取出一个 - List availableNumbers = Enumerable.Range(haveDealedTaskCount+ haveFinishedTaskCount + 1, needDealTaskList.Count).ToList(); + List availableNumbers = Enumerable.Range(haveDealedTaskCount + haveFinishedTaskCount + 1, needDealTaskList.Count).ToList(); Random rng = new Random(); foreach (var visitTask in needDealTaskList) { @@ -91,7 +92,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc availableNumbers.RemoveAt(randomIndex); } await _visitTaskRepository.SaveChangesAsync(); - } + } } return ResponseOutput.Ok(); } @@ -102,11 +103,11 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc /// /// /// - public async Task>> GetSubjectImageUploadList(Guid subjectId,Guid trialReadingCriterionId) + public async Task>> GetSubjectImageUploadList(Guid subjectId, Guid trialReadingCriterionId) { await SubejctRandomReadingTaskNameDeal(subjectId, trialReadingCriterionId); - var query = _repository.Where(t => t.SubjectId == subjectId &&t.TrialReadingCriterionId== trialReadingCriterionId && t.SourceSubjectVisitId != null && t.DoctorUserId == _userInfo.Id) + var query = _repository.Where(t => t.SubjectId == subjectId && t.TrialReadingCriterionId == trialReadingCriterionId && t.SourceSubjectVisitId != null && t.DoctorUserId == _userInfo.Id) .Select(u => new SubjectImageUploadDTO() { VisitTaskId = u.Id, @@ -128,7 +129,9 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc SourceSubjectVisitId = u.SourceSubjectVisitId, PackState = u.SourceSubjectVisit.PackState, - OrginalStudyList = u.SourceSubjectVisit.StudyList.Select(t => new StudyBasicInfo() + OrginalStudyList = u.SourceSubjectVisit.StudyList + .Where(t => u.TrialReadingCriterion.IsImageFilter ? u.TrialReadingCriterion.CriterionModalitys.Contains(t.ModalityForEdit) : true) + .Select(t => new StudyBasicInfo() { Id = t.Id, StudyInstanceUid = t.StudyInstanceUid, diff --git a/IRaCIS.Core.Application/Service/Visit/SubjectVisitService.cs b/IRaCIS.Core.Application/Service/Visit/SubjectVisitService.cs index 6bbfc9452..8e7da9360 100644 --- a/IRaCIS.Core.Application/Service/Visit/SubjectVisitService.cs +++ b/IRaCIS.Core.Application/Service/Visit/SubjectVisitService.cs @@ -339,8 +339,8 @@ namespace IRaCIS.Core.Application.Services - series.WindowWidth = instanceList.FirstOrDefault()!.WindowWidth; - series.WindowCenter = instanceList.FirstOrDefault()!.WindowCenter; + //series.WindowWidth = instanceList.FirstOrDefault()!.WindowWidth; + //series.WindowCenter = instanceList.FirstOrDefault()!.WindowCenter; return series; } @@ -446,8 +446,8 @@ namespace IRaCIS.Core.Application.Services - series.WindowWidth = instanceList.FirstOrDefault()!.WindowWidth; - series.WindowCenter = instanceList.FirstOrDefault()!.WindowCenter; + //series.WindowWidth = instanceList.FirstOrDefault()!.WindowWidth; + //series.WindowCenter = instanceList.FirstOrDefault()!.WindowCenter; }); }