Uat_Study
parent
9f1ff445fa
commit
11e7cc6806
|
@ -111,6 +111,13 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
var tableQuestionList = await _readingTableQuestionTrialRepository.Where(x => x.TrialCriterionId == criterionId).OrderBy(x => x.ShowOrder).ToListAsync();
|
var tableQuestionList = await _readingTableQuestionTrialRepository.Where(x => x.TrialCriterionId == criterionId).OrderBy(x => x.ShowOrder).ToListAsync();
|
||||||
var tableAnsweRowInfos = await _readingTableAnswerRowInfoRepository.Where(x => x.VisitTaskId == indto.VisitTaskId).ProjectTo<TableAnsweRowInfo>(_mapper.ConfigurationProvider).ToListAsync();
|
var tableAnsweRowInfos = await _readingTableAnswerRowInfoRepository.Where(x => x.VisitTaskId == indto.VisitTaskId).ProjectTo<TableAnsweRowInfo>(_mapper.ConfigurationProvider).ToListAsync();
|
||||||
|
|
||||||
|
var lesionsIndexs = await _readingTableAnswerRowInfoRepository.Where(x => visitTaskIds.Contains(x.VisitTaskId)).GroupBy(x => new { x.QuestionId }).Select(x => new lesionsIndexDto()
|
||||||
|
{
|
||||||
|
QuestionId = x.Key.QuestionId,
|
||||||
|
Rowindexs = x.Select(x => x.RowIndex).Distinct().OrderBy(x => x).ToList()
|
||||||
|
|
||||||
|
}).ToListAsync();
|
||||||
|
|
||||||
var answers = await _readingTaskQuestionAnswerRepository.Where(x => visitTaskIds.Contains(x.VisitTaskId)).ToListAsync();
|
var answers = await _readingTaskQuestionAnswerRepository.Where(x => visitTaskIds.Contains(x.VisitTaskId)).ToListAsync();
|
||||||
var tableAnswers = await _readingTableQuestionAnswerRepository.Where(x => visitTaskIds.Contains(x.VisitTaskId)).ToListAsync();
|
var tableAnswers = await _readingTableQuestionAnswerRepository.Where(x => visitTaskIds.Contains(x.VisitTaskId)).ToListAsync();
|
||||||
|
|
||||||
|
@ -198,19 +205,27 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
|
|
||||||
var rowlist = tableAnsweRowInfos.Where(x => x.QuestionId == question.QuestionId).OrderBy(x => x.RowIndex).ToList();
|
var rowlist = tableAnsweRowInfos.Where(x => x.QuestionId == question.QuestionId).OrderBy(x => x.RowIndex).ToList();
|
||||||
|
|
||||||
|
question.Childrens = new List<ReadingReportDto>();
|
||||||
|
|
||||||
question.Childrens = rowlist.Select(x => new ReadingReportDto()
|
var rowoindexs = lesionsIndexs.Where(x => x.QuestionId == question.QuestionId).Select(x => x.Rowindexs.OrderBy(y => y).ToList()).FirstOrDefault();
|
||||||
|
rowoindexs = rowoindexs == null ? new List<decimal>() : rowoindexs;
|
||||||
|
foreach (var rowoindex in rowoindexs)
|
||||||
{
|
{
|
||||||
QuestionName = question.OrderMark + x.RowIndex.GetLesionMark(),
|
var rowinfo = rowlist.Where(x => x.RowIndex == rowoindex).FirstOrDefault();
|
||||||
SplitOrMergeLesionName = x.MergeName.IsNullOrEmpty() ? x.SplitName : x.MergeName,
|
question.Childrens.Add(new ReadingReportDto()
|
||||||
SplitOrMergeType = x.SplitOrMergeType,
|
{
|
||||||
LesionType = question.LesionType,
|
QuestionName = question.OrderMark + rowoindex.GetLesionMark(),
|
||||||
|
RowId = rowinfo?.Id,
|
||||||
IsShowInDicom = question.IsShowInDicom,
|
IsShowInDicom = question.IsShowInDicom,
|
||||||
IsCanEditPosition = x.IsCanEditPosition,
|
SplitOrMergeLesionName = rowinfo != null ? (rowinfo.MergeName.IsNullOrEmpty() ? rowinfo.SplitName : rowinfo.MergeName) : string.Empty,
|
||||||
RowIndex = x.RowIndex,
|
SplitOrMergeType = rowinfo != null ? (rowinfo.SplitOrMergeType) : null,
|
||||||
BlindName = x.BlindName,
|
LesionType = question.LesionType,
|
||||||
|
IsCanEditPosition = rowinfo != null ? (rowinfo.IsCanEditPosition) : false,
|
||||||
|
RowIndex = rowoindex,
|
||||||
|
BlindName = rowinfo != null ? rowinfo.BlindName : string.Empty,
|
||||||
ReportLayType = ReportLayType.Lesions,
|
ReportLayType = ReportLayType.Lesions,
|
||||||
}).ToList();
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
foreach (var row in question.Childrens)
|
foreach (var row in question.Childrens)
|
||||||
|
|
Loading…
Reference in New Issue