This commit is contained in:
he
2023-06-26 17:55:43 +08:00
parent 8d9fbbf7e9
commit 1866257ff5
4 changed files with 144 additions and 14 deletions
@@ -428,10 +428,10 @@ namespace IRaCIS.Core.Application.Service
}).ToListAsync();
var newTrialQuestionAll = await _systemClinicalQuestionRepository.Where(x => systemClinicalId.Contains(x.SystemClinicalId))
.ProjectTo<TrialClinicalQuestion>(_mapper.ConfigurationProvider).ToListAsync();
.ProjectTo<TrialClinicalQuestionSynchronize>(_mapper.ConfigurationProvider).ToListAsync();
var newTrialTableQuestionAll = await _systemClinicalTableQuestionRepository.Where(x => systemClinicalId.Contains(x.SystemClinicalId))
.ProjectTo<TrialClinicalTableQuestion>(_mapper.ConfigurationProvider).ToListAsync();
.ProjectTo<TrialClinicalTableQuestionSynchronize>(_mapper.ConfigurationProvider).ToListAsync();
List<TrialClinicalQuestion> addTrialDataList = new List<TrialClinicalQuestion>();
@@ -443,7 +443,7 @@ namespace IRaCIS.Core.Application.Service
x => x.TrialQuestionId
);
var newTrialQuestionList = newTrialQuestionAll.Where(x => x.SystemClinicalQuestionId == item.SystemClinicalId).ToList();
var newTrialQuestionList = newTrialQuestionAll.Where(x => x.SystemClinicalId == item.SystemClinicalId).ToList();
newTrialQuestionList.ForEach(x =>
{
if (questionRelation.ContainsKey(x.Id))
@@ -482,7 +482,7 @@ namespace IRaCIS.Core.Application.Service
x => x.TrialQuestionId
);
var newTrialTableQuestionList = newTrialTableQuestionAll.Where(x => x.TrialClinicalId == item.TrialClinicalId)
var newTrialTableQuestionList = newTrialTableQuestionAll.Where(x => x.SystemClinicalId == item.SystemClinicalId)
.ToList();
@@ -517,6 +517,7 @@ namespace IRaCIS.Core.Application.Service
await _trialClinicalQuestionRepository.AddRangeAsync(addTrialDataList);
await _trialClinicalTableQuestionRepository.BatchDeleteNoTrackingAsync(x => trialClinicalId.Contains(x.TrialClinicalId) );
await _trialClinicalTableQuestionRepository.AddRangeAsync(addTrialTableList);
await _trialClinicalQuestionRepository.SaveChangesAsync();
}
@@ -403,6 +403,24 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
#region
public class TrialClinicalTableQuestionSynchronize : TrialClinicalTableQuestion
{
/// <summary>
/// 系统临床数据Id
/// </summary>
public Guid SystemClinicalId { get; set; }
}
public class TrialClinicalQuestionSynchronize : TrialClinicalQuestion
{
/// <summary>
/// 系统临床数据Id
/// </summary>
public Guid SystemClinicalId { get; set; }
}
public class SynchronizationQuestionDto
{
/// <summary>
@@ -31,10 +31,16 @@ namespace IRaCIS.Core.Application.Service
CreateMap<TrialClinicalTableQuestionDto, TrialClinicalTableQuestion>();
CreateMap<SystemClinicalQuestion, TrialClinicalQuestion>()
.ForMember(d => d.SystemClinicalQuestionId, u => u.MapFrom(s => s.Id));
.ForMember(d => d.SystemClinicalQuestionId, opt => opt.MapFrom(src => src.Id));
CreateMap<SystemClinicalQuestion, TrialClinicalQuestionSynchronize>()
.ForMember(d => d.SystemClinicalQuestionId, opt => opt.MapFrom(src => src.Id));
CreateMap<SystemClinicalTableQuestion, TrialClinicalTableQuestion>()
.ForMember(d => d.SystemTableQuestionId, u => u.MapFrom(s => s.Id));
CreateMap<SystemClinicalTableQuestion, TrialClinicalTableQuestionSynchronize>()
.ForMember(d => d.SystemTableQuestionId, opt => opt.MapFrom(src => src.Id));
// 预览