diff --git a/IRaCIS.Core.Application/Service/ImageAndDoc/DTO/UnionStudyViewDodel.cs b/IRaCIS.Core.Application/Service/ImageAndDoc/DTO/UnionStudyViewDodel.cs index 26fbd7752..357dc2033 100644 --- a/IRaCIS.Core.Application/Service/ImageAndDoc/DTO/UnionStudyViewDodel.cs +++ b/IRaCIS.Core.Application/Service/ImageAndDoc/DTO/UnionStudyViewDodel.cs @@ -849,9 +849,13 @@ namespace IRaCIS.Core.Application.Contracts public List QuestionMarkPictureList { get; set; } public List TableQuestionRowPictureList { get; set; } + + public List SegmentationFileList { get; set; } } public class TrialKeyPicturePath { + public string SegmentationName { get; set; } + public string PicturePath { get; set; } public string OtherPicturePath { get; set; } diff --git a/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs b/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs index 5ac31c75b..997a2366e 100644 --- a/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs +++ b/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs @@ -1650,7 +1650,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc #endregion var query = from sv in _subjectRepository.Where(t => t.Id == inQuery.SubjectId).SelectMany(t => t.SubjectVisitList.Where(t => subjectVisitIdList.Contains(t.Id) && t.CheckState == CheckStateEnum.CVPassed)) - //一致性分析,导致查询出来两条数据 + //一致性分析,导致查询出来两条数据 join visitTask in _visitTaskRepository.Where(t => taskIdList.Contains(t.Id)) on sv.Id equals visitTask.SourceSubjectVisitId into cc from leftVisitTask in cc.DefaultIfEmpty() select new ImageDownloadDto() @@ -2004,7 +2004,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc public async Task> GetTrialUnreadVisitList(Guid trialId) { - var subjectVisitList = await _visitTaskRepository.Where(t => t.TrialId == trialId && t.TaskState == TaskState.Effect && t.ReadingCategory == ReadingCategory.Visit && t.ReadingTaskState != ReadingTaskState.HaveSigned && t.SourceSubjectVisitId!=null).Select(t => t.SourceSubjectVisitId) + var subjectVisitList = await _visitTaskRepository.Where(t => t.TrialId == trialId && t.TaskState == TaskState.Effect && t.ReadingCategory == ReadingCategory.Visit && t.ReadingTaskState != ReadingTaskState.HaveSigned && t.SourceSubjectVisitId != null).Select(t => t.SourceSubjectVisitId) .Distinct().ToListAsync(); return subjectVisitList; @@ -2054,6 +2054,8 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc TableQuestionRowPictureList = t.LesionList.Select(c => new TrialKeyPicturePath { PicturePath = c.PicturePath, OtherPicturePath = c.OtherPicturePath }).ToList(), + SegmentationFileList = t.SegmentationList.Select(c => new TrialKeyPicturePath { PicturePath = c.SEGUrl, SegmentationName=c.SegmentationName, OtherPicturePath = string.Empty }).ToList(), + Id = t.Id, //裁判选择结果 JudgeResultTaskId = t.JudgeVisitTask.JudgeResultTaskId, diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialViewModel.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialViewModel.cs index 9fc0f15d2..73a48a4b1 100644 --- a/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialViewModel.cs +++ b/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialViewModel.cs @@ -296,6 +296,8 @@ namespace IRaCIS.Application.Contracts #endregion public TrialDataStore TrialDataStoreType { get; set; } + + public TrialType TrialType { get; set; } } public class TrialPacsInfo diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs index c7c2610b7..cce6be705 100644 --- a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs +++ b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs @@ -1566,7 +1566,7 @@ namespace IRaCIS.Core.Application [AllowAnonymous] public async Task GetTrialExtralConfig(Guid trialId) { - var extralObj = _trialRepository.Where(t => t.Id == trialId).Select(t => new { t.TrialExtraConfigJsonStr, t.TrialDataStoreType, t.IsExternalViewTrialChart, t.TrialObjectNameList, t.CollectImagesEnum, t.IsIQCAutoNextTask, t.IsImageQualityControl }).FirstOrDefault(); + var extralObj = _trialRepository.Where(t => t.Id == trialId).Select(t => new { t.TrialExtraConfigJsonStr, t.TrialDataStoreType, t.IsExternalViewTrialChart, t.TrialObjectNameList, t.CollectImagesEnum, t.IsIQCAutoNextTask, t.IsImageQualityControl, t.TrialType }).FirstOrDefault(); var extralConfig = JsonConvert.DeserializeObject(extralObj?.TrialExtraConfigJsonStr) ?? new TrialExtraConfig(); @@ -1578,6 +1578,7 @@ namespace IRaCIS.Core.Application trialConfig.CollectImagesEnum = extralObj.CollectImagesEnum; trialConfig.IsIQCAutoNextTask = extralObj.IsIQCAutoNextTask; trialConfig.TrialDataStoreType = extralObj.TrialDataStoreType; + trialConfig.TrialType = extralObj.TrialType; return trialConfig; } diff --git a/IRaCIS.Core.Domain/Allocation/VisitTask.cs b/IRaCIS.Core.Domain/Allocation/VisitTask.cs index 6ef559253..c1a2524de 100644 --- a/IRaCIS.Core.Domain/Allocation/VisitTask.cs +++ b/IRaCIS.Core.Domain/Allocation/VisitTask.cs @@ -10,6 +10,9 @@ public class VisitTask : BaseFullAuditEntity { #region 导航属性 + [JsonIgnore] + public List SegmentationList { get; set; } = new List(); + //针对肿瘤学任务的 导航属性,关联肿瘤学结果 [JsonIgnore] public List OncologyResultList { get; set; }