diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
index a7bc009a..aa0e7600 100644
--- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
+++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
@@ -7179,10 +7179,9 @@
-
+
指定资源Id,获取Dicom检查所属序列信息列表
Dicom检查的Id
-
指定资源Id,渲染Dicom序列的Jpeg预览图像
diff --git a/IRaCIS.Core.Application/Service/ImageAndDoc/DTO/DicomInstanceModel.cs b/IRaCIS.Core.Application/Service/ImageAndDoc/DTO/DicomInstanceModel.cs
index b8832e08..cbede37f 100644
--- a/IRaCIS.Core.Application/Service/ImageAndDoc/DTO/DicomInstanceModel.cs
+++ b/IRaCIS.Core.Application/Service/ImageAndDoc/DTO/DicomInstanceModel.cs
@@ -24,10 +24,9 @@ namespace IRaCIS.Core.Application.Contracts
public string Path { get; set; }
- //public Guid CreateUserId { get; set; }
- //public DateTime CreateTime { get; set; }
- //public Guid UpdateUserId { get; set; }
- //public DateTime UpdateTime { get; set; }
+
+ public bool IsDeleted { get; set; }
+ public bool IsReading { get; set; } = true;
}
diff --git a/IRaCIS.Core.Application/Service/ImageAndDoc/DTO/DicomSeriesModel.cs b/IRaCIS.Core.Application/Service/ImageAndDoc/DTO/DicomSeriesModel.cs
index bdea84a7..be345a98 100644
--- a/IRaCIS.Core.Application/Service/ImageAndDoc/DTO/DicomSeriesModel.cs
+++ b/IRaCIS.Core.Application/Service/ImageAndDoc/DTO/DicomSeriesModel.cs
@@ -30,6 +30,9 @@
public Guid UpdateUserId { get; set; }
public DateTime UpdateTime { get; set; }
+ public bool IsDeleted { get; set; }
+ public bool IsReading { get; set; } = true;
+
public List InstanceList { get; set; } = new List();
public List InstancePathList { get; set; } = new List();
diff --git a/IRaCIS.Core.Application/Service/ImageAndDoc/SeriesService.cs b/IRaCIS.Core.Application/Service/ImageAndDoc/SeriesService.cs
index e581bcb8..215fefc0 100644
--- a/IRaCIS.Core.Application/Service/ImageAndDoc/SeriesService.cs
+++ b/IRaCIS.Core.Application/Service/ImageAndDoc/SeriesService.cs
@@ -30,14 +30,13 @@ namespace IRaCIS.Core.Application.Services
//医生读片那一块有耦合,关键序列 这里暂时留存
/// 指定资源Id,获取Dicom检查所属序列信息列表
/// Dicom检查的Id
- ///
- [HttpGet, Route("{studyId:guid}/{tpCode?}")]
- public async Task>> List(Guid studyId, string? tpCode)
+ [HttpGet, Route("{studyId:guid}")]
+ public async Task>> List(Guid studyId)
{
var seriesList = await _seriesRepository.Where(s => s.StudyId == studyId).OrderBy(s => s.SeriesNumber).
ThenBy(s => s.SeriesTime).ThenBy(s => s.CreateTime)
- .ProjectTo(_mapper.ConfigurationProvider).ToListAsync();
+ .ProjectTo(_mapper.ConfigurationProvider).ToListAsync();
var idList = await _instanceRepository.Where(s => s.StudyId == studyId).OrderBy(t => t.SeriesId).ThenBy(t => t.InstanceNumber)
.ThenBy(s => s.InstanceTime).ThenBy(s => s.CreateTime)
diff --git a/IRaCIS.Core.Application/Service/ImageAndDoc/_MapConfig.cs b/IRaCIS.Core.Application/Service/ImageAndDoc/_MapConfig.cs
index c2b67ffd..66b395a1 100644
--- a/IRaCIS.Core.Application/Service/ImageAndDoc/_MapConfig.cs
+++ b/IRaCIS.Core.Application/Service/ImageAndDoc/_MapConfig.cs
@@ -58,7 +58,7 @@ namespace IRaCIS.Core.Application.Service
CreateMap()
.ForMember(o => o.UploadedTime, t => t.MapFrom(u => u.CreateTime))
.ForMember(o => o.Uploader, t => t.MapFrom(u => u.Uploader.LastName + " / " + u.Uploader.FirstName))
- .ForMember(o => o.StudyId, t => t.MapFrom(u => u.Id));
+ .ForMember(o => o.StudyId, t => t.MapFrom(u => u.Id)
@@ -74,7 +74,9 @@ namespace IRaCIS.Core.Application.Service
CreateMap();
- CreateMap();
+ CreateMap()
+ .ForMember(o => o.IsDeleted, t => t.MapFrom(u => u.DicomSerie.IsDeleted))
+ .ForMember(o => o.IsReading, t => t.MapFrom(u => u.DicomSerie.IsReading));
CreateMap();
CreateMap();
diff --git a/IRaCIS.Core.Application/Service/QC/DTO/QARecordViewModel.cs b/IRaCIS.Core.Application/Service/QC/DTO/QARecordViewModel.cs
index 3171fa5e..ddefcce0 100644
--- a/IRaCIS.Core.Application/Service/QC/DTO/QARecordViewModel.cs
+++ b/IRaCIS.Core.Application/Service/QC/DTO/QARecordViewModel.cs
@@ -404,7 +404,6 @@ namespace IRaCIS.Core.Application.Contracts.DTO
public string BodyPartForEdit { get; set; } = String.Empty;
-
public string SeriesInstanceUid { get; set; } = String.Empty;
public int SeriesNumber { get; set; }
public DateTime? SeriesTime { get; set; }
diff --git a/IRaCIS.Core.Application/Service/QC/QCOperationService.cs b/IRaCIS.Core.Application/Service/QC/QCOperationService.cs
index cb5864e4..167991d9 100644
--- a/IRaCIS.Core.Application/Service/QC/QCOperationService.cs
+++ b/IRaCIS.Core.Application/Service/QC/QCOperationService.cs
@@ -1348,8 +1348,8 @@ namespace IRaCIS.Core.Application.Image.QA
//删除 软删除的物理文件
- var instanceIdList = await _repository.Where(t => t.DicomSerie.IsDeleted && t.SubjectVisitId == subjectVisitId)
- .Select(t => new { InstanceId = t.Id, t.SeriesId, t.StudyId, t.SubjectId, t.SiteId }).ToListAsync();
+ var instancePathList = await _repository.Where(t => t.DicomSerie.IsDeleted && t.SubjectVisitId == subjectVisitId)
+ .Select(t => t.Path).ToListAsync();
//维护统一状态
dbSubjectVisit.ReadingStatus = ReadingStatusEnum.ConsistencyCheck;
@@ -1385,12 +1385,15 @@ namespace IRaCIS.Core.Application.Image.QA
dbSubjectVisit.ReadingStatus = trialConfig.IsImageConsistencyVerification ? ReadingStatusEnum.ConsistencyCheck : ReadingStatusEnum.TaskAllocate;
//删除影像
- instanceIdList.ForEach(t =>
+ instancePathList.ForEach(path =>
{
- var dicomStudy = new DicomStudy() { Id = t.StudyId, SubjectId = t.SubjectId, TrialId = trialId, SiteId = t.SiteId, SubjectVisitId = subjectVisitId };
- var (physicalPath, relativePath) =
- FileStoreHelper.GetDicomInstanceFilePath(_hostEnvironment, dicomStudy.TrialId, dicomStudy.SiteId, dicomStudy.SubjectId, dicomStudy.SubjectVisitId, dicomStudy.Id, t.InstanceId);
+ var physicalPath = FileStoreHelper.GetPhysicalFilePath(_hostEnvironment, path);
+
+ //var dicomStudy = new DicomStudy() { Id = t.StudyId, SubjectId = t.SubjectId, TrialId = trialId, SiteId = t.SiteId, SubjectVisitId = subjectVisitId };
+ //var (physicalPath, relativePath) =
+
+ // FileStoreHelper.GetDicomInstanceFilePath(_hostEnvironment, dicomStudy.TrialId, dicomStudy.SiteId, dicomStudy.SubjectId, dicomStudy.SubjectVisitId, dicomStudy.Id, t.InstanceId);
if (System.IO.File.Exists(physicalPath))
{
@@ -1448,12 +1451,10 @@ namespace IRaCIS.Core.Application.Image.QA
dbSubjectVisit.ReadingStatus = trialConfig.IsImageConsistencyVerification ? ReadingStatusEnum.ConsistencyCheck : ReadingStatusEnum.TaskAllocate;
//删除影像
- instanceIdList.ForEach(t =>
+ instancePathList.ForEach(path =>
{
- var dicomStudy = new DicomStudy() { Id = t.StudyId, SubjectId = t.SubjectId, TrialId = trialId, SiteId = t.SiteId, SubjectVisitId = subjectVisitId };
- var(physicalPath, relativePath) =
- FileStoreHelper.GetDicomInstanceFilePath(_hostEnvironment, dicomStudy.TrialId, dicomStudy.SiteId, dicomStudy.SubjectId, dicomStudy.SubjectVisitId, dicomStudy.Id, t.InstanceId);
+ var physicalPath = FileStoreHelper.GetPhysicalFilePath(_hostEnvironment, path);
if (System.IO.File.Exists(physicalPath))
{
diff --git a/IRaCIS.Core.Domain/Image/DicomSeries.cs b/IRaCIS.Core.Domain/Image/DicomSeries.cs
index 7971e61e..094c4f62 100644
--- a/IRaCIS.Core.Domain/Image/DicomSeries.cs
+++ b/IRaCIS.Core.Domain/Image/DicomSeries.cs
@@ -56,11 +56,10 @@ namespace IRaCIS.Core.Domain.Models
public Guid UpdateUserId { get; set; }
public DateTime UpdateTime { get; set; } = DateTime.Now;
- public bool IsDeleted {get;set;}
public DateTime? DeletedTime { get; set; }
public Guid? DeleteUserId { get; set; }
-
+ public bool IsDeleted {get;set;}
public bool IsReading { get; set; } = true;
public string BodyPartForEdit { get; set; } = string.Empty;