diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
index 8cfe8b9b9..672e00436 100644
--- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
+++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
@@ -12974,6 +12974,13 @@
请求类型
+
+
+ 修改报告问题答案
+
+
+
+
修改肿瘤学评估结果
diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs
index 93efa7aff..3746d4ee4 100644
--- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs
+++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs
@@ -606,6 +606,21 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public CriterionType CriterionType { get; set; }
}
+
+ public class ChangeReportAnswerInDto
+ {
+ public List AnswerList { get; set; }
+ }
+
+ public class ChangeReportAnswerDto
+ {
+ public Guid VisitTaskId { get; set; }
+
+ public Guid QuestionId { get; set; }
+
+ public string Answer { get; set; } = string.Empty;
+ }
+
public class ChangeDicomReadingQuestionAnswerInDto
{
public Guid VisitTaskId { get; set; }
diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
index 3fdb97f8c..6a7d8b2ee 100644
--- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
@@ -24,6 +24,7 @@ using System.Reactive.Concurrency;
using ZiggyCreatures.Caching.Fusion;
using IRaCIS.Core.Domain.BaseModel;
using IRaCIS.Core.Domain._DomainEvent;
+using Microsoft.Extensions.Logging;
namespace IRaCIS.Core.Application.Service
{
@@ -1840,6 +1841,37 @@ namespace IRaCIS.Core.Application.Service
// return await ChangeDicomReadingQuestionAnswer(inDto);
//}
+ ///
+ /// 修改报告问题答案
+ ///
+ ///
+ ///
+ [HttpPost]
+ public async Task ChangeReportAnswer(ChangeReportAnswerInDto inDto)
+ {
+ foreach (var item in inDto.AnswerList)
+ {
+ if (await _readingTaskQuestionAnswerRepository.AnyAsync(x => x.ReadingQuestionTrialId == item.QuestionId && x.VisitTaskId == item.VisitTaskId))
+ {
+ await _readingTaskQuestionAnswerRepository.UpdatePartialFromQueryAsync(x => x.ReadingQuestionTrialId == item.QuestionId && x.VisitTaskId == item.VisitTaskId, x => new ReadingTaskQuestionAnswer()
+ {
+ Answer = item.Answer
+ });
+ }
+ else
+ {
+ await _readingTaskQuestionAnswerRepository.AddAsync(new ReadingTaskQuestionAnswer()
+ {
+ VisitTaskId= item.VisitTaskId,
+ Answer= item.Answer,
+ ReadingQuestionTrialId= item.QuestionId,
+ });
+ }
+ }
+
+ await _readingTaskQuestionAnswerRepository.SaveChangesAsync();
+ return ResponseOutput.Ok(true);
+ }
///
/// 修改肿瘤学评估结果