Compare commits
No commits in common. "02a8289ad48141a31c72c48aec34439a2979f5be" and "2149bfa7820d6757ff3fc6d45d46ecd1e396ed2a" have entirely different histories.
02a8289ad4
...
2149bfa782
|
|
@ -214,20 +214,6 @@ namespace IRaCIS.Core.Application.Contracts
|
||||||
public int FileCount { get; set; }
|
public int FileCount { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public class SubejctZipInfoQuery
|
|
||||||
{
|
|
||||||
public Guid? SubejctId { get; set; }
|
|
||||||
|
|
||||||
public string? SubjectCode { get; set; }
|
|
||||||
|
|
||||||
|
|
||||||
public Guid? SubejectVisitId { get; set; }
|
|
||||||
|
|
||||||
public Guid? TrialReadingCriterionId { get; set; }
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public class TaskArchiveStudyCommand
|
public class TaskArchiveStudyCommand
|
||||||
{
|
{
|
||||||
[NotDefault]
|
[NotDefault]
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,6 @@ using IRaCIS.Core.Application.Contracts;
|
||||||
using IRaCIS.Core.Application.Filter;
|
using IRaCIS.Core.Application.Filter;
|
||||||
using IRaCIS.Core.Application.Helper;
|
using IRaCIS.Core.Application.Helper;
|
||||||
using IRaCIS.Core.Application.Service.ImageAndDoc.DTO;
|
using IRaCIS.Core.Application.Service.ImageAndDoc.DTO;
|
||||||
using IRaCIS.Core.Domain.Models;
|
|
||||||
using IRaCIS.Core.Domain.Share;
|
using IRaCIS.Core.Domain.Share;
|
||||||
using IRaCIS.Core.Infrastructure;
|
using IRaCIS.Core.Infrastructure;
|
||||||
using IRaCIS.Core.Infrastructure.Extention;
|
using IRaCIS.Core.Infrastructure.Extention;
|
||||||
|
|
@ -12,7 +11,6 @@ using MassTransit;
|
||||||
using MathNet.Numerics;
|
using MathNet.Numerics;
|
||||||
using Medallion.Threading;
|
using Medallion.Threading;
|
||||||
using Microsoft.AspNetCore.Mvc;
|
using Microsoft.AspNetCore.Mvc;
|
||||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion.Internal;
|
|
||||||
using Newtonsoft.Json;
|
using Newtonsoft.Json;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
|
@ -538,43 +536,15 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
public async Task<IResponseOutput> GetSubejectVisitPathInfo(Guid subjectVisitId)
|
||||||
/// 受试者级别所有的影像
|
|
||||||
/// 访视级别的影响 传递subjectVisitId
|
|
||||||
/// 标准Id是可选的 不同标准有些检查可能有过滤
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="_subjectRepository"></param>
|
|
||||||
/// <param name="inQuery"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
public async Task<IResponseOutput> GetSubejectOrVisitZipInfo([FromServices] IRepository<Subject> _subjectRepository, SubejctZipInfoQuery inQuery)
|
|
||||||
{
|
{
|
||||||
var isImageFilter = false;
|
var query = from sv in _subjectVisitRepository.Where(t => t.Id == subjectVisitId)
|
||||||
|
|
||||||
var criterionModalitys = string.Empty;
|
|
||||||
|
|
||||||
if (inQuery.TrialReadingCriterionId != null)
|
|
||||||
{
|
|
||||||
var criterionInfo = await _repository.Where<ReadingQuestionCriterionTrial>(t => t.Id == inQuery.TrialReadingCriterionId).Select(t => new { t.IsImageFilter, t.CriterionModalitys }).FirstOrDefaultAsync();
|
|
||||||
|
|
||||||
if (criterionInfo != null)
|
|
||||||
{
|
|
||||||
isImageFilter = criterionInfo.IsImageFilter;
|
|
||||||
criterionModalitys = criterionInfo.CriterionModalitys;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if (inQuery.SubejectVisitId != null)
|
|
||||||
{
|
|
||||||
var query = from sv in _subjectVisitRepository.Where(t => t.Id == inQuery.SubejectVisitId)
|
|
||||||
|
|
||||||
|
|
||||||
select new
|
select new
|
||||||
{
|
{
|
||||||
SubjectCode = sv.Subject.Code,
|
SubjectCode = sv.Subject.Code,
|
||||||
VisitName = sv.VisitName,
|
VisitName = sv.VisitName,
|
||||||
StudyList = sv.StudyList.AsQueryable().WhereIf(isImageFilter, t => ("|" + criterionModalitys + "|").Contains("|" + t.ModalityForEdit + "|"))
|
StudyList = sv.StudyList.Select(u => new
|
||||||
.Select(u => new
|
|
||||||
{
|
{
|
||||||
u.PatientId,
|
u.PatientId,
|
||||||
u.StudyTime,
|
u.StudyTime,
|
||||||
|
|
@ -590,82 +560,12 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
}),
|
|
||||||
|
|
||||||
NoneDicomStudyList = sv.NoneDicomStudyList.AsQueryable().WhereIf(isImageFilter, t => ("|" + criterionModalitys + "|").Contains("|" + t.Modality + "|"))
|
|
||||||
.Select(nd => new
|
|
||||||
{
|
|
||||||
nd.Modality,
|
|
||||||
nd.StudyCode,
|
|
||||||
nd.ImageDate,
|
|
||||||
|
|
||||||
FileList = nd.NoneDicomFileList.Select(file => new
|
|
||||||
{
|
|
||||||
file.FileName,
|
|
||||||
file.Path,
|
|
||||||
file.FileType
|
|
||||||
})
|
|
||||||
})
|
})
|
||||||
};
|
};
|
||||||
|
|
||||||
var result = query.ToList();
|
var info = query.FirstOrDefault();
|
||||||
|
|
||||||
return ResponseOutput.Ok(result);
|
|
||||||
}
|
|
||||||
else if (inQuery.SubejctId != null)
|
|
||||||
{
|
|
||||||
var query = from sv in _subjectRepository.Where(t => t.Id == inQuery.SubejctId).SelectMany(t=>t.SubjectVisitList)
|
|
||||||
|
|
||||||
|
|
||||||
select new
|
|
||||||
{
|
|
||||||
SubjectCode = sv.Subject.Code,
|
|
||||||
VisitName = sv.VisitName,
|
|
||||||
StudyList = sv.StudyList.AsQueryable().WhereIf(isImageFilter, t => ("|" + criterionModalitys + "|").Contains("|" + t.ModalityForEdit + "|"))
|
|
||||||
.Select(u => new
|
|
||||||
{
|
|
||||||
u.PatientId,
|
|
||||||
u.StudyTime,
|
|
||||||
u.StudyCode,
|
|
||||||
|
|
||||||
SeriesList = u.SeriesList.Select(z => new
|
|
||||||
{
|
|
||||||
z.Modality,
|
|
||||||
|
|
||||||
InstancePathList = z.DicomInstanceList.Select(k => new
|
|
||||||
{
|
|
||||||
k.Path
|
|
||||||
})
|
|
||||||
})
|
|
||||||
|
|
||||||
}),
|
|
||||||
|
|
||||||
NoneDicomStudyList = sv.NoneDicomStudyList.AsQueryable().WhereIf(isImageFilter, t => ("|" + criterionModalitys + "|").Contains("|" + t.Modality + "|"))
|
|
||||||
.Select(nd => new
|
|
||||||
{
|
|
||||||
nd.Modality,
|
|
||||||
nd.StudyCode,
|
|
||||||
nd.ImageDate,
|
|
||||||
|
|
||||||
FileList = nd.NoneDicomFileList.Select(file => new
|
|
||||||
{
|
|
||||||
file.FileName,
|
|
||||||
file.Path,
|
|
||||||
file.FileType
|
|
||||||
})
|
|
||||||
})
|
|
||||||
};
|
|
||||||
|
|
||||||
var result = query.ToList();
|
|
||||||
|
|
||||||
return ResponseOutput.Ok(result);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
return ResponseOutput.NotOk("不允许 subjectId subjectId 都不传递");
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
return ResponseOutput.Ok(info);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue