diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml index 6934ed6bb..21ba2f0ce 100644 --- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml +++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml @@ -154,12 +154,11 @@ - + 确认生成自身一致性分析任务 - @@ -169,12 +168,11 @@ - + 确认生成组间一致性分析任务 - @@ -186,6 +184,14 @@ + + + 组间一致性分析 满足条件的subject 筛选 + + + + + 自身一致性分配 配置+ 统计已经生成数量统计表 @@ -193,6 +199,28 @@ + + + 获取自身一致性分析 符合条件的subject 数组 + + + + + + + 获取组件一致性分析符合条件的subject 数组 + + + + + + + 随机算法,选择指定数量的 subject + + + + + 医学审核生成规则 废弃 @@ -5006,6 +5034,11 @@ 问题分类 + + + CreateTime + + 第一层的Question @@ -5076,11 +5109,6 @@ MeasureData - - - CreateTime - - 是否是当前任务添加 @@ -5116,6 +5144,21 @@ 来自于哪个标记 + + + InstanceId + + + + + SeriesId + + + + + StudyId + + 问题标识 diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs index bc8d32f50..4ed62b0d4 100644 --- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs +++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs @@ -615,10 +615,16 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto { public Guid Id { get; set; } - /// - /// 第一层的Question - /// - public Guid QuestionId { get; set; } + + /// + /// CreateTime + /// + public DateTime CreateTime { get; set; } + + /// + /// 第一层的Question + /// + public Guid QuestionId { get; set; } /// /// 器官Id @@ -690,11 +696,6 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto /// public string MeasureData { get; set; } = string.Empty; - /// - /// CreateTime - /// - public DateTime CreateTime { get; set; } - /// /// 是否是当前任务添加 /// @@ -760,7 +761,38 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto public string ReportMark { get; set; } = string.Empty; public string RowMark { get; set; } = string.Empty; - } + + /// + /// InstanceId + /// + public Guid? OtherInstanceId { get; set; } + + /// + /// SeriesId + /// + public Guid? OtherSeriesId { get; set; } + + + /// + /// StudyId + /// + public Guid? OtherStudyId { get; set; } + + public string? OtherMarkTool { get; set; } + + public string? OtherPicturePath { get; set; } + + public int? OtherNumberOfFrames { get; set; } + + + + + + + public string? OtherMeasureData { get; set; } = string.Empty; + + + } public class CopyTableAnswerRowInfo : ReadingTableAnswerRowInfoBase { diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/LuganoCalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/LuganoCalculateService.cs index 4fab256f0..6490fd157 100644 --- a/IRaCIS.Core.Application/Service/ReadingCalculate/LuganoCalculateService.cs +++ b/IRaCIS.Core.Application/Service/ReadingCalculate/LuganoCalculateService.cs @@ -1200,7 +1200,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate TrialId = x.TrialId }).ToListAsync(); - var tableRowAnswers = await _readingTableAnswerRowInfoRepository.Where(x => x.VisitTaskId == LastVisitTaskId).ProjectTo(_mapper.ConfigurationProvider).ToListAsync(); + var tableRowAnswers = await _readingTableAnswerRowInfoRepository.Where(x => x.VisitTaskId == LastVisitTaskId).OrderBy(x=>x.RowIndex).ProjectTo(_mapper.ConfigurationProvider).ToListAsync(); tableRowAnswers.ForEach(x => @@ -1233,8 +1233,8 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate tableRowAnswers.ForEach(x => { - x.SplitRowId = tableRowAnswers.Where(y => y.OriginalId == x.SplitRowId).Select(y => y.Id).FirstOrDefault(); - x.MergeRowId = tableRowAnswers.Where(y => y.OriginalId == x.MergeRowId).Select(y => y.Id).FirstOrDefault(); + x.SplitRowId = tableRowAnswers.Where(y => y.OriginalId == x.SplitRowId).FirstOrDefault()?.Id; + x.MergeRowId = tableRowAnswers.Where(y => y.OriginalId == x.MergeRowId).FirstOrDefault()?.Id; }); @@ -1331,14 +1331,16 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate questionMarkList.ForEach(x => { x.Id = NewId.NextGuid(); }); - var addList = _mapper.Map>(tableRowAnswers); - await _readingTaskQuestionMarkRepository.AddRangeAsync(questionMarkList); - await _readingTableAnswerRowInfoRepository.AddRangeAsync(addList); - await _readingTableQuestionAnswerRepository.AddRangeAsync(tableAnswers); - await _readingTableQuestionAnswerRepository.SaveChangesAsync(); - } + var addList = _mapper.Map>(tableRowAnswers); + + await _readingTaskQuestionMarkRepository.AddRangeAsync(questionMarkList); + await _readingTableAnswerRowInfoRepository.AddRangeAsync(addList); + await _readingTableQuestionAnswerRepository.AddRangeAsync(tableAnswers); + await _readingTableQuestionAnswerRepository.SaveChangesAsync(); + + } } return new AddTaskLesionAnswerFromLastTaskOutDto()