diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml index ac555c9aa..88206247a 100644 --- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml +++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml @@ -12055,11 +12055,12 @@ - + 保存表格问题标记 + diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs index ec8dc9a11..aff1da7de 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs @@ -102,9 +102,11 @@ namespace IRaCIS.Core.Application.Service /// 保存表格问题标记 /// /// + /// /// [HttpPost] - public async Task SaveTableQuestionMark(SaveTableQuestionMarkInDto inDto) + [Route("/ReadingImageTask/SaveTableQuestionMark/{param}")] + public async Task SaveTableQuestionMark(SaveTableQuestionMarkInDto inDto, string param) { inDto.FirstAddTaskId = await _readingTaskQuestionMarkRepository.Where(x => x.VisitTaskId == inDto.VisitTaskId && x.TableQuestionId == inDto.TableQuestionId && x.RowId == inDto.RowId).Select(x => x.FirstAddTaskId).FirstOrDefaultAsync(); @@ -134,7 +136,7 @@ namespace IRaCIS.Core.Application.Service { IsChangeOtherTask = false, VisitTaskId = inDto.VisitTaskId, - ComputationTrigger = ComputationTrigger.SaveTableQuestionMark, + ComputationTrigger = (ComputationTrigger)int.Parse(param), }); return inDto; diff --git a/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs b/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs index 6af51816a..e45d25c53 100644 --- a/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs +++ b/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs @@ -2828,9 +2828,9 @@ public enum PET5PSScore PatchDataStatistics = 9, /// - /// 保存表格问题标记 + /// 保存肝脏分段 /// - SaveTableQuestionMark = 10, + SaveLiverSegments = 10, } /// diff --git a/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs b/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs index e8f3f9e81..8b0f173f0 100644 --- a/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs +++ b/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs @@ -2986,6 +2986,30 @@ namespace IRaCIS.Core.Infra.EFCore.Common } + foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(ReadingTaskQuestionMark))) + { + var type = AuditOpt.Add; + + var entity = item.Entity as ReadingTaskQuestionMark; + + var answer = entitys.Where(x => x.Entity.GetType() == typeof(ReadingTableQuestionAnswer)).Select(x => x.Entity as ReadingTableQuestionAnswer) + .Where(x => x.RowId == entity.RowId).Select(x => x.Answer).FirstOrDefault(); + + var liverSegmentation = await _dbContext.ReadingTableQuestionAnswer.Where(x => x.RowId == entity.RowId && x.ReadingTableQuestionTrial.QuestionMark == QuestionMark.liverSegmentation).Select(x => x.Answer).FirstOrDefaultAsync(); + + await InsertInspection(entity, type, x => new InspectionConvertDTO() + { + VisitTaskId = entity.VisitTaskId, + + ObjectRelationParentId = entity.VisitTaskId, + + },new { + Answer= answer, + LiverSegmentation= liverSegmentation, + }); + } + + //病灶这里操作 ReadingTableAnswerRowInfo ReadingTableQuestionAnswer foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(ReadingTableAnswerRowInfo)))