Uat_Study
hang 2023-04-28 17:24:46 +08:00
commit 431375946b
5 changed files with 33 additions and 10 deletions

View File

@ -17,7 +17,8 @@ namespace IRaCIS.Application.Services
private readonly IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository; private readonly IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository;
private readonly IRepository<ClinicalDataSystemSet> _clinicalDataSystemSetRepository; private readonly IRepository<ClinicalDataSystemSet> _clinicalDataSystemSetRepository;
private readonly IRepository<PreviousPDF> _previousPDFRepository; private readonly IRepository<PreviousPDF> _previousPDFRepository;
private readonly IRepository<Trial> _trialRepository; private readonly IRepository<Dictionary> _dictionaryRepository;
private readonly IRepository<Trial> _trialRepository;
public ClinicalDataSetService(IRepository<SubjectVisit> subjectVisitRepository, public ClinicalDataSetService(IRepository<SubjectVisit> subjectVisitRepository,
@ -25,7 +26,8 @@ namespace IRaCIS.Application.Services
IRepository<ClinicalDataTrialSet> ClinicalDataTrialSetRepository, IRepository<ClinicalDataTrialSet> ClinicalDataTrialSetRepository,
IRepository<ClinicalDataSystemSet> ClinicalDataSystemSetRepository, IRepository<ClinicalDataSystemSet> ClinicalDataSystemSetRepository,
IRepository<PreviousPDF> previousPDFRepository, IRepository<PreviousPDF> previousPDFRepository,
IRepository<Trial> trialRepository IRepository<Dictionary> dictionaryRepository,
IRepository<Trial> trialRepository
) )
@ -36,7 +38,8 @@ namespace IRaCIS.Application.Services
_clinicalDataTrialSetRepository = ClinicalDataTrialSetRepository; _clinicalDataTrialSetRepository = ClinicalDataTrialSetRepository;
_clinicalDataSystemSetRepository = ClinicalDataSystemSetRepository; _clinicalDataSystemSetRepository = ClinicalDataSystemSetRepository;
this._previousPDFRepository = previousPDFRepository; this._previousPDFRepository = previousPDFRepository;
this._trialRepository = trialRepository; this._dictionaryRepository = dictionaryRepository;
this._trialRepository = trialRepository;
} }
@ -51,7 +54,10 @@ namespace IRaCIS.Application.Services
public async Task<IResponseOutput> AddOrUpdateClinicalDataSystemSet(ClinicalDataSystemSetAddOrEdit indto) public async Task<IResponseOutput> AddOrUpdateClinicalDataSystemSet(ClinicalDataSystemSetAddOrEdit indto)
{ {
var existsQuery = _clinicalDataSystemSetRepository var dictionary = await _dictionaryRepository.Where(x => x.Parent.Code == "ClinicalDataType" && x.Code == indto.ClinicalDataSetEnum.ToString()).FirstNotNullAsync();
indto.ClinicalDataSetName = dictionary.ValueCN;
indto.ClinicalDataSetEnName = dictionary.Value;
var existsQuery = _clinicalDataSystemSetRepository
.WhereIf(indto.Id != null, x => x.Id != indto.Id) .WhereIf(indto.Id != null, x => x.Id != indto.Id)
.Where(x => x.ClinicalDataSetName == indto.ClinicalDataSetName||x.ClinicalDataSetEnName==indto.ClinicalDataSetEnName); .Where(x => x.ClinicalDataSetName == indto.ClinicalDataSetName||x.ClinicalDataSetEnName==indto.ClinicalDataSetEnName);

View File

@ -192,7 +192,7 @@ namespace IRaCIS.Application.Services
.Select(x => new GetCRCClinicalDataOutDto() .Select(x => new GetCRCClinicalDataOutDto()
{ {
Id = x.Id, Id = x.Id,
ClinicalDataSetName = x.ClinicalDataTrialSet.ClinicalDataSetName.LanguageName(x.ClinicalDataTrialSet.ClinicalDataSetName, _userInfo.IsEn_Us) , ClinicalDataSetName = x.ClinicalDataTrialSet.ClinicalDataSetName.LanguageName(x.ClinicalDataTrialSet.ClinicalDataSetEnName, _userInfo.IsEn_Us) ,
ClinicalUploadType = x.ClinicalDataTrialSet.ClinicalUploadType, ClinicalUploadType = x.ClinicalDataTrialSet.ClinicalUploadType,
ClinicalDataSetEnName=x.ClinicalDataTrialSet.ClinicalDataSetEnName, ClinicalDataSetEnName=x.ClinicalDataTrialSet.ClinicalDataSetEnName,
ClinicalDataTrialSetId = x.ClinicalDataTrialSet.Id, ClinicalDataTrialSetId = x.ClinicalDataTrialSet.Id,

View File

@ -1157,8 +1157,12 @@ namespace IRaCIS.Core.Application
[HttpGet("{trialId:guid}")] [HttpGet("{trialId:guid}")]
public async Task<TrialConfigDTO> GetTrialConfigInfo(Guid trialId) public async Task<TrialConfigDTO> GetTrialConfigInfo(Guid trialId)
{ {
return await _trialRepository.Where(t => t.Id == trialId).ProjectTo<TrialConfigDTO>(_mapper.ConfigurationProvider) return await _trialRepository.Where(t => t.Id == trialId).ProjectTo<TrialConfigDTO>(_mapper.ConfigurationProvider, new
.FirstOrDefaultAsync().IfNullThrowException(); {
isEn_Us = _userInfo.IsEn_Us
})
.FirstOrDefaultAsync().IfNullThrowException();
} }

View File

@ -161,11 +161,12 @@ namespace IRaCIS.Core.Application.Service
CreateMap<AssginSiteCRCCommand, TrialSiteUser>(); CreateMap<AssginSiteCRCCommand, TrialSiteUser>();
CreateMap<Domain.Models.Trial, TrialConfigDTO>().ForMember(t => t.TrialId, u => u.MapFrom(c => c.Id))
CreateMap<Domain.Models.Trial, TrialConfigDTO>().ForMember(t => t.TrialId, u => u.MapFrom(c => c.Id))
.ForMember(t => t.TrialCriterionIds, u => u.MapFrom(c => c.ReadingQuestionCriterionTrialList.Where(v =>v.IsConfirm).OrderBy(x=>x.ShowOrder).Select(r => r.Id))) .ForMember(t => t.TrialCriterionIds, u => u.MapFrom(c => c.ReadingQuestionCriterionTrialList.Where(v =>v.IsConfirm).OrderBy(x=>x.ShowOrder).Select(r => r.Id)))
.ForMember(t => t.TrialCriterionNames, u => u.MapFrom(c => c.ReadingQuestionCriterionTrialList.Where(v => v.IsConfirm).OrderBy(x => x.ShowOrder).Select(r => r.CriterionName))) .ForMember(t => t.TrialCriterionNames, u => u.MapFrom(c => c.ReadingQuestionCriterionTrialList.Where(v => v.IsConfirm).OrderBy(x => x.ShowOrder).Select(r => r.CriterionName)))
.ForMember(t => t.ClinicalDataTrialSetIds, u => u.MapFrom(c => c.clinicalDataTrialSets.Where(v => v.IsConfirm).Select(r => r.Id))) .ForMember(t => t.ClinicalDataTrialSetIds, u => u.MapFrom(c => c.clinicalDataTrialSets.Where(v => v.IsConfirm).Select(r => r.Id)))
.ForMember(t => t.ClinicalDataSetNames, u => u.MapFrom(c => c.clinicalDataTrialSets.Where(v => v.IsConfirm).Select(r => r.ClinicalDataSetName))) .ForMember(t => t.ClinicalDataSetNames, u => u.MapFrom(c => c.clinicalDataTrialSets.Where(v => v.IsConfirm).Select(r => isEn_Us ? r.ClinicalDataSetEnName:r.ClinicalDataSetName)))
//.ForMember(t => t.CriterionIds, u => u.MapFrom(c => c.TrialDicList.Where(v => v.KeyName == StaticData.Criterion).Select(r => r.DictionaryId))) //.ForMember(t => t.CriterionIds, u => u.MapFrom(c => c.TrialDicList.Where(v => v.KeyName == StaticData.Criterion).Select(r => r.DictionaryId)))
; ;
CreateMap<Domain.Models.Trial, TrialSubjectConfig>(); CreateMap<Domain.Models.Trial, TrialSubjectConfig>();

View File

@ -1026,4 +1026,16 @@ WHERE CriterionId NOT IN (SELECT DISTINCT CriterionId FROM CriterionNidusTrial )
INSERT INTO ReadingTrialCriterionDictionary (Id, CriterionId, DictionaryId, CreateTime, CreateUserId, ParentCode, IsBaseLineUse, IsFollowVisitUse, CrterionDictionaryGroup) INSERT INTO ReadingTrialCriterionDictionary (Id, CriterionId, DictionaryId, CreateTime, CreateUserId, ParentCode, IsBaseLineUse, IsFollowVisitUse, CrterionDictionaryGroup)
SELECT id, RC.CriterionId, RC.DictionaryId, CreateTime, '00000000-0000-0000-0000-000000000000', RC.ParentCode, RC.IsBaseLineUse, RC.IsFollowVisitUse, RC.CrterionDictionaryGroup SELECT id, RC.CriterionId, RC.DictionaryId, CreateTime, '00000000-0000-0000-0000-000000000000', RC.ParentCode, RC.IsBaseLineUse, RC.IsFollowVisitUse, RC.CrterionDictionaryGroup
FROM ReadingSystemCriterionDictionary RC FROM ReadingSystemCriterionDictionary RC
WHERE CriterionId NOT IN (SELECT DISTINCT CriterionId FROM ReadingTrialCriterionDictionary ) and IsSystemCriterion=0 WHERE CriterionId NOT IN (SELECT DISTINCT CriterionId FROM ReadingTrialCriterionDictionary ) and IsSystemCriterion=0
--- 维护临床数据英文名称
update clinicalDataSystemSet set clinicalDataSystemSet.ClinicalDataSetEnName=DictionaryChild.Value from Dictionary DictionaryChild
inner join clinicalDataSystemSet on CONVERT(varchar(200),clinicalDataSystemSet.ClinicalDataSetEnum) =DictionaryChild.Code
inner join Dictionary DictionaryParent on DictionaryParent.Id=DictionaryChild.ParentId
where DictionaryParent.Code='ClinicalDataType'
go
update ClinicalDataTrialSet set ClinicalDataTrialSet.ClinicalDataSetEnName=clinicalDataSystemSet.ClinicalDataSetEnName from clinicalDataSystemSet
inner join ClinicalDataTrialSet on ClinicalDataTrialSet.SystemClinicalDataSetId=clinicalDataSystemSet.Id