Uat_Study
he 2023-07-12 17:12:28 +08:00
parent 48763989d9
commit 44e109cefa
1 changed files with 30 additions and 5 deletions

View File

@ -25,6 +25,7 @@ namespace IRaCIS.Application.Services
private readonly IRepository<SubjectVisit> _subjectVisitRepository; private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<PreviousHistory> _previousHistoryRepository; private readonly IRepository<PreviousHistory> _previousHistoryRepository;
private readonly IRepository<ReadModuleCriterionFrom> _readModuleCriterionFromRepository; private readonly IRepository<ReadModuleCriterionFrom> _readModuleCriterionFromRepository;
private readonly IRepository<ClinicalForm> _clinicalFormRepository;
private readonly IRepository<PreviousOther> _previousOtherRepository; private readonly IRepository<PreviousOther> _previousOtherRepository;
private readonly IRepository<PreviousSurgery> _previousSurgeryRepository; private readonly IRepository<PreviousSurgery> _previousSurgeryRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository; private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository;
@ -39,6 +40,7 @@ namespace IRaCIS.Application.Services
IRepository<SubjectVisit> subjectVisitRepository, IRepository<SubjectVisit> subjectVisitRepository,
IRepository<PreviousHistory> previousHistoryRepository, IRepository<PreviousHistory> previousHistoryRepository,
IRepository<ReadModuleCriterionFrom> readModuleCriterionFromRepository, IRepository<ReadModuleCriterionFrom> readModuleCriterionFromRepository,
IRepository<ClinicalForm> clinicalFormRepository,
IRepository<PreviousOther> previousOtherRepository, IRepository<PreviousOther> previousOtherRepository,
IRepository<PreviousSurgery> previousSurgeryRepository, IRepository<PreviousSurgery> previousSurgeryRepository,
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrialRepository, IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrialRepository,
@ -55,6 +57,7 @@ namespace IRaCIS.Application.Services
this._subjectVisitRepository = subjectVisitRepository; this._subjectVisitRepository = subjectVisitRepository;
this._previousHistoryRepository = previousHistoryRepository; this._previousHistoryRepository = previousHistoryRepository;
this._readModuleCriterionFromRepository = readModuleCriterionFromRepository; this._readModuleCriterionFromRepository = readModuleCriterionFromRepository;
this._clinicalFormRepository = clinicalFormRepository;
this._previousOtherRepository = previousOtherRepository; this._previousOtherRepository = previousOtherRepository;
this._previousSurgeryRepository = previousSurgeryRepository; this._previousSurgeryRepository = previousSurgeryRepository;
this._readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository; this._readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository;
@ -659,7 +662,6 @@ namespace IRaCIS.Application.Services
inDto.ReadingId = visitTask.SouceReadModuleId ?? visitTask.SourceSubjectVisitId; inDto.ReadingId = visitTask.SouceReadModuleId ?? visitTask.SourceSubjectVisitId;
} }
var resultQuery = _readingClinicalDataRepository.Where(x => x.SubjectId == inDto.SubjectId) var resultQuery = _readingClinicalDataRepository.Where(x => x.SubjectId == inDto.SubjectId)
.WhereIf(inDto.ReadingClinicalDataId != null, x => x.Id == inDto.ReadingClinicalDataId) .WhereIf(inDto.ReadingClinicalDataId != null, x => x.Id == inDto.ReadingClinicalDataId)
.WhereIf(inDto.ClinicalDataTrialSetId != null, x => x.ClinicalDataTrialSetId == inDto.ClinicalDataTrialSetId) .WhereIf(inDto.ClinicalDataTrialSetId != null, x => x.ClinicalDataTrialSetId == inDto.ClinicalDataTrialSetId)
@ -694,12 +696,22 @@ namespace IRaCIS.Application.Services
{ {
result = await resultQuery.ToListAsync(); result = await resultQuery.ToListAsync();
} }
var readingIds = result.Select(x => x.ReadingId).ToList();
var clinical = await _clinicalFormRepository.Where(x => readingIds.Contains(x.ReadingId??default(Guid))).ToListAsync();
result.Where(x => x.ClinicalUploadType == ClinicalUploadType.Structuring).ForEach(x => {
x.ClinicalFromList = clinical.Where(y => y.ReadingId == x.ReadingId).Select(y => new ClinicalFromData()
{
CheckDate = y.CheckDate,
ClinicalFormId = y.Id
}).ToList();
x.FileCount = x.ClinicalFromList.Count();
});
// 这里处理CRC上传 阅片期的临床数据
// 这里处理CRC上传 阅片期的临床数据 var readModule = await _readModuleRepository.Where(x => x.Id == inDto.ReadingId)
var readModule = await _readModuleRepository.Where(x => x.Id == inDto.ReadingId)
.WhereIf(inDto.SelectIsSign,x=>x.IsPMConfirm) .WhereIf(inDto.SelectIsSign,x=>x.IsPMConfirm)
.WhereIf(!inDto.SelectIsSign, x => x.IsCRCConfirm) .WhereIf(!inDto.SelectIsSign, x => x.IsCRCConfirm)
.FirstOrDefaultAsync(); .FirstOrDefaultAsync();
@ -857,6 +869,19 @@ namespace IRaCIS.Application.Services
var result = await resultQuery.ToListAsync(); var result = await resultQuery.ToListAsync();
var readingIds = result.Select(x => x.ReadingId).ToList();
var clinical = await _clinicalFormRepository.Where(x => readingIds.Contains(x.ReadingId ?? default(Guid))).ToListAsync();
result.Where(x => x.ClinicalUploadType == ClinicalUploadType.Structuring).ForEach(x => {
x.ClinicalFromList = clinical.Where(y => y.ReadingId == x.ReadingId).Select(y => new ClinicalFromData()
{
CheckDate = y.CheckDate,
ClinicalFormId = y.Id
}).ToList();
x.FileCount = x.ClinicalFromList.Count();
});
// 这里处理CRC上传 阅片期的临床数据 // 这里处理CRC上传 阅片期的临床数据
var readModule = await _readModuleRepository.Where(x => x.Id == inDto.ReadingId&&x.IsCRCConfirm) var readModule = await _readModuleRepository.Where(x => x.Id == inDto.ReadingId&&x.IsCRCConfirm)
.FirstOrDefaultAsync(); .FirstOrDefaultAsync();