diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
index 732a51c8a..114cd421c 100644
--- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
+++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
@@ -2127,6 +2127,11 @@
RowIndex
+
+
+ 是Dicom阅片
+
+
MeasureData
diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs
index 9652183e5..28351f972 100644
--- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs
+++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs
@@ -284,7 +284,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public Guid QuestionId { get; set; }
- public decimal RowIndex { get; set; }
+ public Guid RowId { get; set; }
}
public class GetDicomReadingQuestionAnswerInDto
@@ -457,6 +457,14 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
///
public string RowIndex { get; set; }
+
+ ///
+ /// 是Dicom阅片
+ ///
+ public bool IsDicomReading { get; set; } = true;
+
+ public string BlindName { get; set; } = string.Empty;
+
///
/// MeasureData
///
@@ -1161,6 +1169,10 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public decimal FristAddTaskNum { get; set; } = 0;
+ public string BlindName { get; set; } = string.Empty;
+
+ public bool IsDicomReading { get; set; } = true;
+
public List AnswerList { get; set; }
}
diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
index 49a706246..5f83a9593 100644
--- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
@@ -709,6 +709,8 @@ namespace IRaCIS.Application.Services
var rowInfo = tableAnsweRowInfos.Where(y => y.RowIndex == x && y.QuestionId == item.Id).FirstOrDefault();
+ answers.Add("BlindName", rowInfo.BlindName);
+ answers.Add("IsDicomReading", rowInfo.IsDicomReading.ToString());
answers.Add("MeasureData", rowInfo == null ? string.Empty : rowInfo.MeasureData);
answers.Add("RowIndex", x.ToString());
answers.Add("RowId", rowInfo.Id.ToString());
@@ -886,7 +888,7 @@ namespace IRaCIS.Application.Services
public async Task DeleteReadingRowAnswer(DeleteReadingRowAnswerInDto inDto)
{
- var deleteRowInfo = await _readingTableAnswerRowInfoRepository.Where(x => x.VisitTaskId == inDto.VisitTaskId && x.RowIndex == inDto.RowIndex && x.QuestionId == inDto.QuestionId).FirstNotNullAsync();
+ var deleteRowInfo = await _readingTableAnswerRowInfoRepository.Where(x =>x.Id== inDto.RowId).FirstNotNullAsync();
if (deleteRowInfo == null)
{
return ResponseOutput.Ok(true);
@@ -898,8 +900,8 @@ namespace IRaCIS.Application.Services
throw new BusinessValidationFailedException($"当前病灶分裂出其他病灶或者其他病灶合并到了当前病灶,删除失败");
}
- await _readingTableQuestionAnswerRepository.DeleteFromQueryAsync(x => x.VisitTaskId == inDto.VisitTaskId && x.RowIndex == inDto.RowIndex && x.QuestionId == inDto.QuestionId);
- await _readingTableAnswerRowInfoRepository.DeleteFromQueryAsync(x => x.VisitTaskId == inDto.VisitTaskId && x.RowIndex == inDto.RowIndex && x.QuestionId == inDto.QuestionId);
+ await _readingTableQuestionAnswerRepository.DeleteFromQueryAsync(x => x.RowId== inDto.RowId);
+ await _readingTableAnswerRowInfoRepository.DeleteFromQueryAsync(x => x.Id==inDto.RowId);
await _readingTableAnswerRowInfoRepository.SaveChangesAsync();
@@ -1026,6 +1028,8 @@ namespace IRaCIS.Application.Services
rowInfo.TrialId = inDto.TrialId;
rowInfo.QuestionId = inDto.QuestionId;
rowInfo.MeasureData = inDto.MeasureData;
+ rowInfo.BlindName = inDto.BlindName;
+ rowInfo.IsDicomReading = inDto.IsDicomReading;
rowInfo.IsCurrentTaskAdd = isCurrentTaskAdd;
rowInfo.FristAddTaskNum = inDto.FristAddTaskNum;
rowInfo.RowIndex = inDto.RowIndex;
diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/PCWG3CalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/PCWG3CalculateService.cs
index 093401f9d..18c728ff1 100644
--- a/IRaCIS.Core.Application/Service/ReadingCalculate/PCWG3CalculateService.cs
+++ b/IRaCIS.Core.Application/Service/ReadingCalculate/PCWG3CalculateService.cs
@@ -146,21 +146,21 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
);
});
- var maxNewLesionsRowIndex = tableRowAnswers.Where(x => x.QuestionId == newLesionQuestion.Id).OrderByDescending(x => x.RowIndex).Select(x => x.RowIndex).FirstOrDefault();
+ var maxNewLesionsRowIndex = tableRowAnswers.Where(x => x.QuestionId == alwaysNewLesionsQuestion.Id).OrderByDescending(x => x.RowIndex).Select(x => x.RowIndex).FirstOrDefault();
maxNewLesionsRowIndex = Math.Floor(maxNewLesionsRowIndex);
foreach (var item in tableRowAnswers.Where(x => x.QuestionId == newLesionQuestion.Id).OrderBy(x=>x.RowIndex))
{
- maxNewLesionsRowIndex++;
+
item.QuestionId = alwaysNewLesionsQuestion.Id;
- item.RowIndex = maxNewLesionsRowIndex;
+
foreach (var tableAnswer in tableAnswers.Where(y => y.RowId == item.Id))
{
tableAnswer.QuestionId = alwaysNewLesionsQuestion.Id;
tableAnswer.TableQuestionId = alwaysTableQuestionIdDic[tableAnswer.TableQuestionId];
- tableAnswer.RowIndex = maxNewLesionsRowIndex;
+
}
}
diff --git a/IRaCIS.Core.Domain/Reading/ReadingFormAnswer/ReadingTableAnswerRowInfo.cs b/IRaCIS.Core.Domain/Reading/ReadingFormAnswer/ReadingTableAnswerRowInfo.cs
index cde854016..c2b033d33 100644
--- a/IRaCIS.Core.Domain/Reading/ReadingFormAnswer/ReadingTableAnswerRowInfo.cs
+++ b/IRaCIS.Core.Domain/Reading/ReadingFormAnswer/ReadingTableAnswerRowInfo.cs
@@ -49,6 +49,12 @@ namespace IRaCIS.Core.Domain.Models
public bool IsCanEditPosition { get; set; } = false;
+
+ ///
+ /// 是Dicom阅片
+ ///
+ public bool IsDicomReading { get; set; } = true;
+
///
/// RowIndex
///
@@ -80,7 +86,7 @@ namespace IRaCIS.Core.Domain.Models
///
public Guid? MergeRowId { get; set; }
-
+ public string BlindName { get; set; } = string.Empty;
///
/// 第一次添加的任务ID