增加dicom 显示文件大小,以及修改影像下载列表适配 随机阅片
This commit is contained in:
@@ -647,14 +647,35 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
||||
[HttpPost]
|
||||
public async Task<List<TaskNoneDicomStudyDTO>> GetIRUploadTaskNoneDicomStudyList(IRUploadStudyQuery inQuery)
|
||||
{
|
||||
var subjectCode = string.Empty;
|
||||
var subjectId = inQuery.SubjectId;
|
||||
var doctorUserId = _userInfo.Id;
|
||||
|
||||
if (inQuery.VisitTaskId != null)
|
||||
{
|
||||
//考虑到一致性分析,必须要这个编号进行过滤
|
||||
//医学审核查看下载按钮,这个时候需要知道医生
|
||||
|
||||
var taskInfo = await _visitTaskRepository.Where(t => t.Id == inQuery.VisitTaskId).Select(t => new {
|
||||
SubjectCode = t.IsAnalysisCreate ? t.BlindSubjectCode : t.Subject.Code,
|
||||
SubjectId = t.SubjectId,
|
||||
t.DoctorUserId,
|
||||
t.IsAnalysisCreate
|
||||
}).FirstNotNullAsync();
|
||||
|
||||
subjectId = taskInfo.SubjectId;
|
||||
subjectCode = taskInfo.SubjectCode;
|
||||
doctorUserId = (Guid)taskInfo.DoctorUserId!;
|
||||
}
|
||||
|
||||
var info = await _readingQuestionCriterionTrialRepository.Where(t => t.Id == inQuery.TrialReadingCriterionId)
|
||||
.Select(t => new { t.IsImageFilter, t.CriterionModalitys, t.IsReadingTaskViewInOrder }).FirstNotNullAsync();
|
||||
|
||||
var query = from u in _visitTaskRepository.Where(t => t.SubjectId == inQuery.SubjectId && t.TrialReadingCriterionId == inQuery.TrialReadingCriterionId
|
||||
&& t.SourceSubjectVisitId != null && t.DoctorUserId == _userInfo.Id && t.TaskState == TaskState.Effect)
|
||||
var query = from u in _visitTaskRepository.Where(t => t.SubjectId == subjectId && t.TrialReadingCriterionId == inQuery.TrialReadingCriterionId
|
||||
&& t.SourceSubjectVisitId != null && t.DoctorUserId == doctorUserId && t.TaskState == TaskState.Effect)
|
||||
//满足 有序,或者随机只看到当前任务的dicom 非dicom检查
|
||||
.WhereIf(info.IsReadingTaskViewInOrder != ReadingOrder.SubjectRandom && inQuery.VisitTaskId != null, t => t.Id == inQuery.VisitTaskId)
|
||||
join ns in _noneDicomStudyReposiotry.Where(t => t.SubjectId == inQuery.SubjectId).WhereIf(info.IsImageFilter, t => ("|" + info.CriterionModalitys + "|").Contains("|" + t.Modality + "|"))
|
||||
join ns in _noneDicomStudyReposiotry.Where(t => t.SubjectId == subjectId).WhereIf(info.IsImageFilter, t => ("|" + info.CriterionModalitys + "|").Contains("|" + t.Modality + "|"))
|
||||
on u.SourceSubjectVisitId equals ns.SubjectVisitId
|
||||
|
||||
select new TaskNoneDicomStudyDTO()
|
||||
@@ -684,7 +705,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
||||
|
||||
};
|
||||
|
||||
var list = await query.Where(t => t.SubjectCode == inQuery.SubjectCode).SortToListAsync(inQuery);
|
||||
var list = await query.Where(t => t.SubjectCode == subjectCode).SortToListAsync(inQuery);
|
||||
|
||||
var noneDicomStudyTaskIdList = list.Select(t => t.VisitTaskId).ToList();
|
||||
|
||||
|
||||
@@ -15,6 +15,8 @@ namespace IRaCIS.Core.Application.Contracts
|
||||
public Guid CreateUserId { get; set; }
|
||||
public Guid NoneDicomStudyId { get; set; }
|
||||
|
||||
public long? FileSize { get; set; }
|
||||
|
||||
public string FullFilePath => Path;
|
||||
|
||||
public string FileType { get; set; }
|
||||
|
||||
Reference in New Issue
Block a user