From cf8c2de7a60f62b460581cecf5531a507943c22b Mon Sep 17 00:00:00 2001 From: he <10978375@qq.com> Date: Mon, 1 Aug 2022 13:29:14 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=B8=80=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../IRaCIS.Core.Application.xml | 7 ++ .../Reading/Dto/ReadingImageTaskViewModel.cs | 21 ++++ .../Reading/ReadingImageTaskService.cs | 101 +++++++++--------- 3 files changed, 78 insertions(+), 51 deletions(-) diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml index 629ccd743..f2a4e522e 100644 --- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml +++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml @@ -5857,6 +5857,13 @@ + + + 获取阅片的受试者信息 + + + + 获取裁判阅片任务信息 diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs index d67c5d478..03c7489f4 100644 --- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs +++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs @@ -323,6 +323,27 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto public string JudgeResultImagePath { get; set; } = string.Empty; } + public class GetReadingSubjectInfoOutDto + { + public Guid VisitTaskId { get; set; } + + public Guid SubjectId { get; set; } + + public string SubjectCode { get; set; } = string.Empty; + + public ReadingCategory ReadingCategory { get; set; } + + public string TaskBlindName { get; set; } = string.Empty; + + public bool IsReadingShowPreviousResults { get; set; } = false; + + public bool IsReadingShowSubjectInfo { get; set; } = false; + } + + public class GetReadingSubjectInfoInDto + { + public Guid VisitTaskId { get; set; } + } public class GetJudgeReadingInfo { public Guid VisitTaskId { get; set; } diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTaskService.cs index d177cb204..9ef17a5ad 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTaskService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTaskService.cs @@ -129,7 +129,7 @@ namespace IRaCIS.Application.Services /// /// [HttpPost] - public async Task<(GetGlobalReadingInfoOutDto,object)> GetGlobalReadingInfo(GetGlobalReadingInfoInDto inDto) + public async Task GetGlobalReadingInfo(GetGlobalReadingInfoInDto inDto) { var taskInfo = await _visitTaskRepository.Where(x => x.Id == inDto.VisitTaskId).FirstNotNullAsync(); if (taskInfo.ReadingCategory != ReadingCategory.Global) @@ -216,27 +216,8 @@ namespace IRaCIS.Application.Services }); - var subjectCode = await _subjectRepository.Where(x => x.Id == taskInfo.SubjectId).Select(x => x.Code).FirstOrDefaultAsync(); - - var trialInfo = await _trialRepository.Where(x => x.Id == taskInfo.TrialId).Select(x => new - { - x.IsReadingShowPreviousResults, - x.IsReadingShowSubjectInfo, - x.ClinicalInformationTransmissionEnum, - }).FirstOrDefaultAsync(); - - return (result, new - { - VisitTaskId = taskInfo.Id, - SubjectId = taskInfo.SubjectId, - SubjectCode = taskInfo.BlindSubjectCode.IsNullOrEmpty() ? subjectCode : taskInfo.BlindSubjectCode, - ReadingCategory = taskInfo.ReadingCategory, - TaskBlindName = taskInfo.TaskBlindName, - IsReadingShowPreviousResults = trialInfo.IsReadingShowPreviousResults, - IsReadingShowSubjectInfo = trialInfo.IsReadingShowSubjectInfo, - - }); + return result; } #endregion @@ -707,13 +688,49 @@ namespace IRaCIS.Application.Services } #endregion + + /// + /// 获取阅片的受试者信息 + /// + /// + /// + [HttpPost] + public async Task GetReadingSubjectInfo(GetReadingSubjectInfoInDto inDto) + { + var visitTask = await _visitTaskRepository.Where(x => x.Id == inDto.VisitTaskId).FirstOrDefaultAsync(); + var subjectCode = await _subjectRepository.Where(x => x.Id == visitTask.SubjectId).Select(x => x.Code).FirstOrDefaultAsync(); + + + var trialInfo = await _trialRepository.Where(x => x.Id == visitTask.TrialId).Select(x => new + { + x.IsReadingShowPreviousResults, + x.IsReadingShowSubjectInfo, + x.ClinicalInformationTransmissionEnum, + }).FirstOrDefaultAsync(); + + + return new GetReadingSubjectInfoOutDto() + { + VisitTaskId = visitTask.Id, + SubjectId = visitTask.SubjectId, + SubjectCode = visitTask.BlindSubjectCode.IsNullOrEmpty() ? subjectCode : visitTask.BlindSubjectCode, + ReadingCategory = visitTask.ReadingCategory, + TaskBlindName = visitTask.TaskBlindName, + IsReadingShowPreviousResults = trialInfo.IsReadingShowPreviousResults, + IsReadingShowSubjectInfo = trialInfo.IsReadingShowSubjectInfo, + + }; + } + + + #region 获取裁判阅片任务信息 /// /// 获取裁判阅片任务信息 /// /// [HttpPost] - public async Task<(GetJudgeReadingInfoOutDto,object)> GetJudgeReadingInfo(GetJudgeReadingInfo inDto) + public async Task GetJudgeReadingInfo(GetJudgeReadingInfo inDto) { var visitTask = await _visitTaskRepository.Where(x => x.Id == inDto.VisitTaskId).FirstOrDefaultAsync(); GetJudgeReadingInfoOutDto judgeInfo = new GetJudgeReadingInfoOutDto() @@ -773,17 +790,17 @@ namespace IRaCIS.Application.Services break; case ReadingCategory.Global: - var taskOneInfo = (await this.GetGlobalReadingInfo(new GetGlobalReadingInfoInDto() + var taskOneInfo = await this.GetGlobalReadingInfo(new GetGlobalReadingInfoInDto() { UsingOriginalData = true, VisitTaskId = taskList[0].Id - })).Item1; + }); - var taskTwoInfo = (await this.GetGlobalReadingInfo(new GetGlobalReadingInfoInDto() + var taskTwoInfo = await this.GetGlobalReadingInfo(new GetGlobalReadingInfoInDto() { UsingOriginalData = true, VisitTaskId = taskList[1].Id - })).Item1; + }); foreach (var item in taskOneInfo.TaskList) @@ -870,27 +887,9 @@ namespace IRaCIS.Application.Services break; } - var subjectCode = await _subjectRepository.Where(x => x.Id == visitTask.SubjectId).Select(x => x.Code).FirstOrDefaultAsync(); + - - var trialInfo = await _trialRepository.Where(x => x.Id == visitTask.TrialId).Select(x => new - { - x.IsReadingShowPreviousResults, - x.IsReadingShowSubjectInfo, - x.ClinicalInformationTransmissionEnum, - }).FirstOrDefaultAsync(); - - return (judgeInfo, new - { - VisitTaskId = visitTask.Id, - SubjectId = visitTask.SubjectId, - SubjectCode = visitTask.BlindSubjectCode.IsNullOrEmpty() ? subjectCode : visitTask.BlindSubjectCode, - ReadingCategory = visitTask.ReadingCategory, - TaskBlindName = visitTask.TaskBlindName, - IsReadingShowPreviousResults = trialInfo.IsReadingShowPreviousResults, - IsReadingShowSubjectInfo = trialInfo.IsReadingShowSubjectInfo, - - }); + return judgeInfo; } #endregion @@ -1302,17 +1301,17 @@ namespace IRaCIS.Application.Services noteEqual = ComputeJudgeResult(groupTasks); break; case ReadingCategory.Global: - var taskOneInfo = (await this.GetGlobalReadingInfo(new GetGlobalReadingInfoInDto() + var taskOneInfo = await this.GetGlobalReadingInfo(new GetGlobalReadingInfoInDto() { UsingOriginalData = true, VisitTaskId = visitTaskids[0] - })).Item1; + }); - var taskTwoInfo = (await this.GetGlobalReadingInfo(new GetGlobalReadingInfoInDto() + var taskTwoInfo = await this.GetGlobalReadingInfo(new GetGlobalReadingInfoInDto() { UsingOriginalData = true, VisitTaskId = visitTaskids[1] - })).Item1; + }); // 判断两个任务是否 if (taskOneInfo.TaskList.Count() != taskTwoInfo.TaskList.Count()) @@ -1365,7 +1364,7 @@ namespace IRaCIS.Application.Services }); // 找到最后一个任务ID - var lastTask = taskOneInfo.Item1.TaskList.Last(); + var lastTask = taskOneInfo.TaskList.Last(); if (lastTask == null) {