From ac99397530a9b6dbf3a67ebd5fb4f0286759f737 Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Fri, 7 Apr 2023 10:04:46 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=87=8D=E9=98=85=E9=80=BB?= =?UTF-8?q?=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Service/Allocation/VisitTaskService.cs | 2 +- .../SubjectCriteriaEvaluationService.cs | 88 ++----------------- 2 files changed, 8 insertions(+), 82 deletions(-) diff --git a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs index 65bff5b7e..30e292169 100644 --- a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs +++ b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs @@ -1008,7 +1008,7 @@ namespace IRaCIS.Core.Application.Service.Allocation //已读任务量 HaveReadTaskCount = x.Where(y => y.TrialReadingCriterionId == trialReadingCriterionId && y.ReadingTaskState == ReadingTaskState.HaveSigned).Count(), - ExistReadingApply = x.Any(y => y.ReReadingApplyState == ReReadingApplyState.DocotorHaveApplyed || y.ReReadingApplyState == ReReadingApplyState.TrialGroupHaveApplyed), + ExistReadingApply = x.Any(y => (y.ReReadingApplyState == ReReadingApplyState.DocotorHaveApplyed && y.TrialReadingCriterionId == trialReadingCriterionId) || y.ReReadingApplyState == ReReadingApplyState.TrialGroupHaveApplyed), //查出所有未读的 未读的可读的 在这个列表基础上 过滤下 y.IsFrontTaskNeedSignButNotSign==false && (y.IsNeedClinicalDataSign == false || y.IsClinicalDataSign == true) 这样容易排错 确认这三个字段是否维护有误 UnReadTaskList = x.Where(y => y.TrialReadingCriterionId == trialReadingCriterionId && y.ReadingTaskState != ReadingTaskState.HaveSigned).OrderBy(x => x.VisitTaskNum) diff --git a/IRaCIS.Core.Application/Service/Reading/AdditionalEvaluate/SubjectCriteriaEvaluationService.cs b/IRaCIS.Core.Application/Service/Reading/AdditionalEvaluate/SubjectCriteriaEvaluationService.cs index a25fbda58..5338cedf1 100644 --- a/IRaCIS.Core.Application/Service/Reading/AdditionalEvaluate/SubjectCriteriaEvaluationService.cs +++ b/IRaCIS.Core.Application/Service/Reading/AdditionalEvaluate/SubjectCriteriaEvaluationService.cs @@ -111,7 +111,7 @@ namespace IRaCIS.Core.Application.Service join subjectCriteriaEvaluation in _subjectCriteriaEvaluationRepository .Where(t => t.TrialReadingCriterionId == inQuery.TrialReadingCriterionId) - + on subject.Id equals subjectCriteriaEvaluation.SubjectId into d from subjectCriteriaEvaluation in d.DefaultIfEmpty() @@ -145,7 +145,7 @@ namespace IRaCIS.Core.Application.Service }; var pageList = await subjectCriteriaEvaluationQueryable - .WhereIf(inQuery.IsImageFiltering != null, t => t.IsImageFiltering==inQuery.IsImageFiltering) + .WhereIf(inQuery.IsImageFiltering != null, t => t.IsImageFiltering == inQuery.IsImageFiltering) .WhereIf(inQuery.IsJoinEvaluation != null, t => t.IsJoinEvaluation == inQuery.IsJoinEvaluation) .ToPagedListAsync(inQuery.PageIndex, inQuery.PageSize, inQuery.SortField == string.Empty ? nameof(SubjectCriteriaEvaluationView.SubjectCode) : inQuery.SortField, inQuery.Asc); @@ -624,46 +624,9 @@ namespace IRaCIS.Core.Application.Service .OrderBy(t => t.VisitTaskNum).ProjectTo(_mapper.ConfigurationProvider).ToListAsync(); foreach (var influenceTask in list) { - //有序 - if (criterionConfig.IsReadingTaskViewInOrder) - { - //申请的访视 要不是重阅重置,要不就是失效 不会存在取消分配 - if (influenceTask.ReadingCategory == ReadingCategory.Visit && influenceTask.VisitTaskNum != subjectVisit.VisitNum) - { - //后续访视处理访视 - if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned) - { - influenceTask.OptType = ReReadingOrBackOptType.Return; - } - else if (influenceTask.ReadingTaskState == ReadingTaskState.Reading) - { - influenceTask.OptType = ReReadingOrBackOptType.Abandon; - } - else - { - influenceTask.OptType = ReReadingOrBackOptType.CancelAssign; - } - } - else - { - //申请的访视 全局肿瘤学 - if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned) - { - influenceTask.OptType = ReReadingOrBackOptType.Return; - } - else - { - influenceTask.OptType = ReReadingOrBackOptType.Abandon; - } - } - } - //无序 - else - { - //重阅重置或者失效 - influenceTask.OptType = influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned ? ReReadingOrBackOptType.Return : ReReadingOrBackOptType.Abandon; - } + //重阅重置或者失效 + influenceTask.OptType = influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned ? ReReadingOrBackOptType.Return : ReReadingOrBackOptType.Abandon; } @@ -701,59 +664,22 @@ namespace IRaCIS.Core.Application.Service public async Task ConfirmBackCriteriaVisitTask(CriteriaVisitBackCommand command) { - - - var filterExpression = await GetTaskExpressionAsync(command); - - - var influenceTaskList = await _visitTaskRepository.Where(filterExpression, true).ToListAsync(); var subjectVisit = await _subjectVisitRepository.FindAsync(command.SubjectVisitId); - - foreach (var influenceTask in influenceTaskList) { - - //申请的访视 要不是重阅重置,要不就是失效 不会存在取消分配 - if (influenceTask.ReadingCategory == ReadingCategory.Visit && influenceTask.VisitTaskNum != subjectVisit.VisitNum) + if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned) { - //后续访视处理访视 - if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned) - { - influenceTask.TaskState = TaskState.HaveReturned; - - } - else if (influenceTask.ReadingTaskState == ReadingTaskState.Reading) - { - influenceTask.TaskState = TaskState.Adbandon; - } - else - { - influenceTask.DoctorUserId = null; - influenceTask.AllocateTime = null; - influenceTask.SuggesteFinishedTime = null; - influenceTask.TaskAllocationState = TaskAllocationState.NotAllocate; - - } + influenceTask.TaskState = TaskState.HaveReturned; } else { - //申请的访视 全局肿瘤学 - - if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned) - { - influenceTask.TaskState = TaskState.HaveReturned; - } - else - { - influenceTask.TaskState = TaskState.Adbandon; - } - + influenceTask.TaskState = TaskState.Adbandon; } }