+36
-5
@@ -1,4 +1,5 @@
|
||||
using DocumentFormat.OpenXml;
|
||||
using DocumentFormat.OpenXml.Drawing.Charts;
|
||||
using DocumentFormat.OpenXml.Office2019.Excel.ThreadedComments;
|
||||
using IRaCIS.Core.Application.Contracts;
|
||||
using IRaCIS.Core.Application.Filter;
|
||||
@@ -1309,14 +1310,44 @@ namespace IRaCIS.Core.Application.Service
|
||||
var organIds = tableAnsweRowInfos.Where(x => x.OrganInfoId != null).Select(x => x.OrganInfoId).Distinct().ToList();
|
||||
var organList = await _organInfoRepository.Where(x => organIds.Contains(x.Id)).ToListAsync();
|
||||
|
||||
var tableQuestionMarkList=new List<QuestionMarkInfo>();
|
||||
if (inDto.IsDicomReading)
|
||||
{
|
||||
// 删除病灶不删除病灶标记 所以查询question的时候 已经删除的病灶对应的标记的信息要排除
|
||||
var rowids = await _readingTableAnswerRowInfoRepository.Where(x => x.VisitTaskId == inDto.VisitTaskId).Select(x => x.Id).ToListAsync();
|
||||
|
||||
// 删除病灶不删除病灶标记 所以查询question的时候 已经删除的病灶对应的标记的信息要排除
|
||||
var rowids = await _readingTableAnswerRowInfoRepository.Where(x => x.VisitTaskId == inDto.VisitTaskId).Select(x => x.Id).ToListAsync();
|
||||
List<Guid?> rowidnull = rowids.Select(x => (Guid?)x).ToList();
|
||||
|
||||
List<Guid?> rowidnull = rowids.Select(x => (Guid?)x).ToList();
|
||||
tableQuestionMarkList = await _readingTaskQuestionMarkRepository.Where(x => x.VisitTaskId == inDto.VisitTaskId && x.QuestionId != null
|
||||
).ProjectTo<QuestionMarkInfo>(_mapper.ConfigurationProvider).ToListAsync();
|
||||
}
|
||||
else
|
||||
{
|
||||
var markList = await _readingNoneDicomMarkRepository.Where(x => x.VisitTaskId == inDto.VisitTaskId
|
||||
).ProjectTo<QuestionMarkInfo>(_mapper.ConfigurationProvider).ToListAsync();
|
||||
|
||||
var bingList= await _readingNoneDicomMarkBindingRepository.Where(x => x.VisitTaskId == inDto.VisitTaskId)
|
||||
.ProjectTo<QuestionMarkInfo>(_mapper.ConfigurationProvider).ToListAsync();
|
||||
|
||||
|
||||
tableQuestionMarkList = markList
|
||||
.GroupJoin(
|
||||
bingList,
|
||||
l => l.MarkId,
|
||||
r => r.MarkId,
|
||||
(l, rs) => rs.DefaultIfEmpty()
|
||||
.Select(r =>
|
||||
{
|
||||
var info = l.Clone();
|
||||
info.QuestionId = r?.QuestionId;
|
||||
info.TableQuestionId = r?.TableQuestionId;
|
||||
info.RowId = r?.RowId;
|
||||
return info;
|
||||
}))
|
||||
.SelectMany(g => g).ToList();
|
||||
|
||||
}
|
||||
|
||||
var tableQuestionMarkList = await _readingTaskQuestionMarkRepository.Where(x => x.VisitTaskId == inDto.VisitTaskId&&x.QuestionId!=null
|
||||
).ProjectTo<QuestionMarkInfo>(_mapper.ConfigurationProvider).ToListAsync();
|
||||
|
||||
return (await GetReadingTableQuestion(
|
||||
new GetReadingTableQuestionOrAnswerInDto()
|
||||
|
||||
Reference in New Issue
Block a user