diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml index 5cc51e341..fac96eb68 100644 --- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml +++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml @@ -13203,7 +13203,7 @@ - + 用户多账号,初次维护数据 diff --git a/IRaCIS.Core.Application/Service/QC/_MapConfig.cs b/IRaCIS.Core.Application/Service/QC/_MapConfig.cs index 1918ba859..79c827518 100644 --- a/IRaCIS.Core.Application/Service/QC/_MapConfig.cs +++ b/IRaCIS.Core.Application/Service/QC/_MapConfig.cs @@ -32,9 +32,9 @@ namespace IRaCIS.Core.Application.Service .ForMember(d => d.SubmitUserName, u => u.MapFrom(s => s.SubmitUser.FullName)) .ForMember(d => d.ClinicalInformationTransmissionEnum, u => u.MapFrom(s => s.Trial.ClinicalInformationTransmissionEnum)) - .ForMember(d => d.IsHaveClinicalData, u => u.MapFrom(t => t.IsBaseLine ? t.PreviousHistoryList.Any() || t.PreviousOtherList.Any() + .ForMember(d => d.IsHaveClinicalData, u => u.MapFrom(t => t.IsBaseLine ? t.PreviousHistoryList.Any() || t.PreviousOtherList.Any() || t.PreviousSurgeryList.Any() || t.ReadingClinicalDataList.Any(x => x.ClinicalDataTrialSet.UploadRole == Domain.Share.UploadRole.CRC && x.ReadingClinicalDataPDFList.Count > 0) - || t.PreviousSurgeryList.Any() : false)) + : false)) .ForMember(d => d.DicomStudyCount, u => u.MapFrom(t => t.StudyList.Count())) .ForMember(d => d.NoneDicomStudyCount, u => u.MapFrom(t => t.NoneDicomStudyList.Count(t => t.NoneDicomFileList.Any()))); diff --git a/IRaCIS.Core.Application/Triggers/JudgeVisitTaskTrigger.cs b/IRaCIS.Core.Application/Triggers/JudgeVisitTaskTrigger.cs index c2cfb43b5..ced72ac4f 100644 --- a/IRaCIS.Core.Application/Triggers/JudgeVisitTaskTrigger.cs +++ b/IRaCIS.Core.Application/Triggers/JudgeVisitTaskTrigger.cs @@ -39,6 +39,7 @@ namespace IRaCIS.Core.Application.Triggers } } + //这里提交事务 多次 会进入多次 导致新生成的裁判任务设置了后,再次进入,又设置为null了 //这个放在save 之前,不然可能先执行添加的修改为正确的,再执行修改的,又重置为空了 所以这里需要调整下 (裁判重阅,会修改裁判需要充值, 同时也会新增裁判任务) public async Task BeforeSave(ITriggerContext context, CancellationToken cancellationToken) { @@ -53,7 +54,13 @@ namespace IRaCIS.Core.Application.Triggers if (find != null) { var ids = new Guid[] { find.TaskIdOne, find.TaskIdTwo }; - await _visitTaskRepository.BatchUpdateNoTrackingAsync(t => ids.Contains(t.Id), u => new VisitTask() { JudgeVisitTaskId = null }); + + if(!_readingJudgeInfoRepository.Any(t=> ids.Contains(t.TaskIdOne) && t.CreateTime > find.CreateTime)) + { + await _visitTaskRepository.BatchUpdateNoTrackingAsync(t => ids.Contains(t.Id), u => new VisitTask() { JudgeVisitTaskId = null }); + + } + } } }