diff --git a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs index 173186536..4b132c09a 100644 --- a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs +++ b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs @@ -2260,7 +2260,7 @@ public class VisitTaskService(IRepository _visitTaskRepository, //ReadingTableAnswerRowInfo ReadingTableQuestionAnswer 一起加 var readingTableAnswerRowInfoList = _readingTableAnswerRowInfoRepository.Where(t => t.VisitTaskId == origenalTask.Id).Include(t => t.LesionAnswerList).ToList(); - + Dictionary lesionRelationship = new Dictionary() { }; foreach (var item in readingTableAnswerRowInfoList) { @@ -2268,7 +2268,7 @@ public class VisitTaskService(IRepository _visitTaskRepository, var originalFristAddTaskId = item.FristAddTaskId; var newRowId = NewId.NextSequentialGuid(); - + lesionRelationship.Add(item.Id, newRowId); foreach (var mark in readingTaskQuestionMarkList) { mark.RowId = mark.RowId == item.Id ? newRowId : mark.RowId; @@ -2290,6 +2290,19 @@ public class VisitTaskService(IRepository _visitTaskRepository, } } + foreach (var item in readingTableAnswerRowInfoList) + { + if (lesionRelationship.ContainsKey(item.SplitRowId)) + { + item.SplitRowId = lesionRelationship[item.SplitRowId]; + } + + if (lesionRelationship.ContainsKey(item.MergeRowId)) + { + item.MergeRowId = lesionRelationship[item.MergeRowId]; + } + } + _ = _readingTaskQuestionMarkRepository.AddRangeAsync(readingTaskQuestionMarkList).Result; _ = _readingTableAnswerRowInfoRepository.AddRangeAsync(readingTableAnswerRowInfoList).Result;