From c763c174d572fc126bf8d17b9d68c1129bffd925 Mon Sep 17 00:00:00 2001 From: he <109787524@qq.com> Date: Wed, 3 Jan 2024 16:56:55 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ReadingImageTaskService.cs | 22 +++++++++---------- .../ReadingNoDicomTaskService.cs | 5 ----- .../ReadingOncologyTaskService.cs | 1 - .../General/ReadingCalculateService.cs | 16 +++++++++----- 4 files changed, 20 insertions(+), 24 deletions(-) diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs index ac54ad059..598967634 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs @@ -716,14 +716,6 @@ namespace IRaCIS.Application.Services { //await AddDefaultValueToTask(inDto.VisitTaskId); var taskInfo = await _visitTaskRepository.Where(x => x.Id == inDto.VisitTaskId).FirstNotNullAsync(); - if (taskInfo.ReadingTaskState == ReadingTaskState.WaitReading) - { - await _visitTaskRepository.UpdatePartialFromQueryAsync(inDto.VisitTaskId, x => new VisitTask() - { - ReadingTaskState = ReadingTaskState.Reading, - - }); - } var result = await GetReadingQuestion(taskInfo.TrialReadingCriterionId, taskInfo.Id, inDto.QuestionClassify,inDto.GroupClassifyList); @@ -849,10 +841,7 @@ namespace IRaCIS.Application.Services [HttpGet] public async Task> GetTableAnswerRowInfoList(GetTableAnswerRowInfoInDto inDto) { - await _readingCalculateService.AddTaskLesionAnswerFromLastTask(new AddTaskLesionAnswerFromLastTaskInDto() - { - VisitTaskId = inDto.VisitTaskId - }); + var result = await _readingTableAnswerRowInfoRepository.Where(x => x.VisitTaskId == inDto.VisitTaskId) .WhereIf(inDto.QuestionId != null, x => x.QuestionId == inDto.QuestionId) .ProjectTo(_mapper.ConfigurationProvider).OrderBy(x => x.ShowOrder).ThenBy(x => x.RowIndex) @@ -2551,6 +2540,15 @@ namespace IRaCIS.Application.Services task.IsNeedReadClinicalData = clinicalDataList.Where(x => x.ClinicalDataLevel != ClinicalLevel.Subject).Count() > 0; } + if (visitTaskInfo.ReadingTaskState == ReadingTaskState.WaitReading) + { + await _readingCalculateService.AddTaskLesionAnswerFromLastTask(new AddTaskLesionAnswerFromLastTaskInDto() + { + VisitTaskId = task.VisitTaskId + }); + } + + // 如果已经签名 就不需要再读了 task.IsNeedReadClinicalData = visitTaskInfo.ReadingTaskState == ReadingTaskState.HaveSigned ? false : task.IsNeedReadClinicalData; task.DigitPlaces = criterionInfo.DigitPlaces; diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingNoDicomTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingNoDicomTaskService.cs index 4328fa62a..c069570fb 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingNoDicomTaskService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingNoDicomTaskService.cs @@ -55,11 +55,6 @@ namespace IRaCIS.Application.Services TrialId = inDto.TrialId }).ToList(); - await _visitTaskRepository.UpdatePartialFromQueryAsync(inDto.VisitTaskId, x => new VisitTask() - { - ReadingTaskState = ReadingTaskState.Reading, - - }); await _readingTaskQuestionAnswerRepository.AddRangeAsync(readingTaskAnswerList); var result = await _visitTaskRepository.SaveChangesAsync(); return ResponseOutput.Ok(result); diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingOncologyTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingOncologyTaskService.cs index 34088f321..436fb0362 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingOncologyTaskService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingOncologyTaskService.cs @@ -229,7 +229,6 @@ namespace IRaCIS.Application.Services // 这里先保存 签名的时候 会统一创建关系 await _visitTaskRepository.UpdatePartialFromQueryAsync(t => t.Id == inDto.OncologyTaskId, u => new VisitTask() { - ReadingTaskState = ReadingTaskState.Reading, RelatedVisitTaskIds = relatedVisitTaskIds }) ; diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs index 529e92feb..303d806d5 100644 --- a/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs +++ b/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs @@ -134,13 +134,17 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate if (readingTaskState == ReadingTaskState.WaitReading) { - result = await service.AddTaskLesionAnswerFromLastTask(inDto); - await service.CalculateTask(new CalculateTaskInDto() + if (visitTaskInfo.ReadingCategory == ReadingCategory.Visit) { - IsChangeOtherTask = false, - VisitTaskId = inDto.VisitTaskId, - ComputationTrigger=ComputationTrigger.Report, - }); + result = await service.AddTaskLesionAnswerFromLastTask(inDto); + await service.CalculateTask(new CalculateTaskInDto() + { + IsChangeOtherTask = false, + VisitTaskId = inDto.VisitTaskId, + ComputationTrigger = ComputationTrigger.Report, + }); + } + await _visitTaskRepository.UpdatePartialFromQueryAsync(inDto.VisitTaskId, x => new VisitTask() {