Merge branch 'Test_IRC_Net8' of https://gitea.frp.extimaging.com/XCKJ/irc-netcore-api into Test_IRC_Net8
continuous-integration/drone/push Build is passing

This commit is contained in:
he
2024-09-05 14:28:25 +08:00
18 changed files with 417 additions and 90 deletions
@@ -86,7 +86,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc.DTO
public List<DicomStudyBasicInfo> DicomStudyList { get; set; }
public List<DicomStudyBasicInfo> DicomStudyList { get; set; }=new List<DicomStudyBasicInfo>();
public List<NoneDicomStudyBasicInfo> NoneDicomStudyList { get; set; }
}
@@ -377,7 +377,7 @@ namespace IRaCIS.Core.Application.Contracts
public string SubjectCode { get; set; }
}
public class CRCUploadTaskStudyQuery: SortInput
public class CRCUploadTaskStudyQuery : SortInput
{
[NotDefault]
@@ -415,7 +415,7 @@ namespace IRaCIS.Core.Application.Contracts
public int UploadedFileCount { get; set; }
}
public class TaskDicomStudyDTO: DicomStudyBasicInfo
public class TaskDicomStudyDTO : DicomStudyBasicInfo
{
public Guid SubjectId { get; set; }
@@ -438,12 +438,28 @@ namespace IRaCIS.Core.Application.Contracts
}
public class NoneDicomFileInfo
{
[JsonIgnore]
public Guid? OriginNoneDicomStudyId { get; set; }
public string FileType { get; set; }
public long? FileSize { get; set; }
public string FileName { get; set; }
public string Path { get; set; }
}
public class TaskNoneDicomStudyDTO : NoneDicomStudyBasicInfo
{
public Guid VisitTaskId { get; set; }
public int UploadedFileCount { get; set; }
public List<NoneDicomFileInfo> UploadedFileList { get; set; }
public List<NoneDicomFileInfo> FileList { get; set; }
public Guid SubjectId { get; set; }
@@ -468,7 +484,7 @@ namespace IRaCIS.Core.Application.Contracts
public List<Guid> NoneDicomStudyIdList { get; set; }
}
public class IRReadingDownloadQuery:SortInput
public class IRReadingDownloadQuery : SortInput
{
[NotDefault]
public Guid SubjectId { get; set; }
@@ -1016,6 +1016,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
TaskBlindName = u.TaskBlindName,
TaskName = u.TaskName,
SourceSubjectVisitId = u.SourceSubjectVisitId,
VisitTaskId=u.Id,
Id = ns.Id,
Description = ns.Description,
@@ -1025,24 +1026,38 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
Modality = ns.Modality,
StudyCode = ns.StudyCode,
FileList = ns.NoneDicomFileList.Select(t => new NoneDicomFileInfo()
{
FileType=t.FileType,
FileName = t.FileName,
FileSize = t.FileSize,
Path = t.Path
}).ToList()
};
var list = await query.Where(t => t.SubjectCode == inQuery.SubjectCode).SortToListAsync(inQuery);
var noneDicomStudyIdList = list.Select(t => t.Id).ToList();
var noneDicomStudyTaskIdList = list.Select(t => t.VisitTaskId).ToList();
var taskNoneDicomStudyList = _visitTaskRepository.Where(t => noneDicomStudyIdList.Contains(t.Id))
.SelectMany(t => t.TaskNoneDicomStudyFileList).Where(t => noneDicomStudyIdList.Contains((Guid)t.VisitTaskId))
.Select(u => new
var taskNoneDicomStudyList = _visitTaskRepository.Where(t => noneDicomStudyTaskIdList.Contains(t.Id))
.SelectMany(t => t.TaskNoneDicomStudyFileList).Where(t => noneDicomStudyTaskIdList.Contains((Guid)t.VisitTaskId))
.Select(u => new NoneDicomFileInfo
{
u.OriginNoneDicomStudyId,
OriginNoneDicomStudyId = u.OriginNoneDicomStudyId,
FileType=u.FileType,
FileName = u.FileName,
FileSize = u.FileSize,
Path = u.Path
})
.ToList();
foreach (var item in list)
{
item.UploadedFileCount = taskNoneDicomStudyList.Where(t => t.OriginNoneDicomStudyId == item.Id).Count();
item.UploadedFileList = taskNoneDicomStudyList.Where(t => t.OriginNoneDicomStudyId == item.Id).ToList();
}
return list;