diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingCriterion/ReadingQuestionService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingCriterion/ReadingQuestionService.cs index 235e5c605..5ec58c14f 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingCriterion/ReadingQuestionService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingCriterion/ReadingQuestionService.cs @@ -674,20 +674,20 @@ namespace IRaCIS.Application.Services #endregion - #region 标准字典 - await _readingCriterionDictionaryRepository.BatchDeleteNoTrackingAsync(x => x.CriterionId == trialCriterion.Id); - var criterionDictionaryList = await _readingCriterionDictionaryRepository.Where(x => x.CriterionId == trialCriterion.ReadingQuestionCriterionSystemId.Value). - Select(x => new ReadingCriterionDictionary() { - CriterionId = trialCriterion.Id, - DictionaryId = x.DictionaryId, - IsSystemCriterion = false, - ParentCode = x.ParentCode, + //#region 标准字典 移到别处去了 + //await _readingCriterionDictionaryRepository.BatchDeleteNoTrackingAsync(x => x.CriterionId == trialCriterion.Id); + //var criterionDictionaryList = await _readingCriterionDictionaryRepository.Where(x => x.CriterionId == trialCriterion.ReadingQuestionCriterionSystemId.Value). + // Select(x => new ReadingCriterionDictionary() { + // CriterionId = trialCriterion.Id, + // DictionaryId = x.DictionaryId, + // IsSystemCriterion = false, + // ParentCode = x.ParentCode, - }).ToListAsync(); + // }).ToListAsync(); - await _readingCriterionDictionaryRepository.AddRangeAsync(criterionDictionaryList); - await _readingCriterionDictionaryRepository.SaveChangesAsync(); - #endregion + //await _readingCriterionDictionaryRepository.AddRangeAsync(criterionDictionaryList); + //await _readingCriterionDictionaryRepository.SaveChangesAsync(); + //#endregion diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs index 49c69022b..d899ff0e4 100644 --- a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs +++ b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs @@ -140,8 +140,8 @@ namespace IRaCIS.Core.Application var trialCriterion = await _readingQuestionCriterionTrialRepository.Where(x => x.Id == inDto.TrialReadingCriterionId).FirstNotNullAsync(); if (trialCriterion.SynchronizeOriginalTime == null && trialCriterion.ReadingQuestionCriterionSystemId != null) { - await _readingCriterionDictionaryRepository.BatchDeleteNoTrackingAsync(x => x.CriterionId == trialCriterion.Id); - var criterionDictionaryList = await _readingCriterionDictionaryRepository.Where(x => x.CriterionId == trialCriterion.ReadingQuestionCriterionSystemId.Value). + await _readingCriterionDictionaryRepository.BatchDeleteNoTrackingAsync(x => x.CriterionId == trialCriterion.Id&&x.ParentCode== "GlobalAssessType"); + var criterionDictionaryList = await _readingCriterionDictionaryRepository.Where(x => x.CriterionId == trialCriterion.ReadingQuestionCriterionSystemId.Value&&x.ParentCode== "GlobalAssessType"). Select(x => new ReadingCriterionDictionary() { CriterionId = trialCriterion.Id, @@ -175,6 +175,24 @@ namespace IRaCIS.Core.Application var trialCriterion = await _readingQuestionCriterionTrialRepository.Where(x => x.Id == inDto.TrialReadingCriterionId).FirstOrDefaultAsync(); + if (trialCriterion.SynchronizeOriginalTime == null && trialCriterion.ReadingQuestionCriterionSystemId != null) + { + await _readingCriterionDictionaryRepository.BatchDeleteNoTrackingAsync(x => x.CriterionId == trialCriterion.Id && x.ParentCode == "OncologyAssessType"); + var criterionDictionaryList = await _readingCriterionDictionaryRepository.Where(x => x.CriterionId == trialCriterion.ReadingQuestionCriterionSystemId.Value && x.ParentCode == "OncologyAssessType"). + Select(x => new ReadingCriterionDictionary() + { + CriterionId = trialCriterion.Id, + DictionaryId = x.DictionaryId, + IsSystemCriterion = false, + ParentCode = x.ParentCode, + + }).ToListAsync(); + + await _readingCriterionDictionaryRepository.AddRangeAsync(criterionDictionaryList); + await _readingCriterionDictionaryRepository.SaveChangesAsync(); + } + + return new GetOncologySetOutDto { EvaluationReason = trialCriterion.EvaluationReason.IsNullOrEmpty()? ReadingCommon.EvaluationReason : trialCriterion.EvaluationReason,