Merge branch 'Test_IRC_Net8' of http://192.168.3.68:2000/XCKJ/irc-netcore-api into Test_IRC_Net8

IRC_NewDev
hang 2024-03-26 15:05:45 +08:00
commit 1eeb832b0e
3 changed files with 16 additions and 9 deletions

View File

@ -230,7 +230,7 @@ namespace IRaCIS.Core.Application.Service
.WhereIf(inQuery.IsInvalid != null, t => t.IsInvalid == inQuery.IsInvalid)
.WhereIf(inQuery.IsGetBeRead,x=>!x.IsInvalid&&x.AuditState!= MedicalReviewAuditState.HaveSigned)
.WhereIf(inQuery.TrialReadingCriterionId != null, t => t.VisitTask.TrialReadingCriterionId == inQuery.TrialReadingCriterionId)
.OrderBy(x => x.AuditState!= MedicalReviewAuditState.WaitAudit&& x.AuditState != MedicalReviewAuditState.Auditing).ThenBy(x=>x.VisitTask.SubjectId).ThenBy(x=>x.VisitTask.ArmEnum).ThenBy(x=>x.VisitTask.VisitTaskNum)
.OrderBy(x=>x.VisitTask.SubjectId).ThenBy(x=>x.VisitTask.ArmEnum).ThenBy(x=>x.VisitTask.VisitTaskNum)
.ProjectTo<TaskMedicalReviewView>(_mapper.ConfigurationProvider);

View File

@ -18,7 +18,8 @@ namespace IRaCIS.Application.Services
public IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository;
private readonly IRepository<ClinicalDataSystemSet> _clinicalDataSystemSetRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _iReadingQuestionCriterionTrialRepository;
private readonly IRepository<ClinicalDataSystemSet> _clinicalDataSystemSetRepository;
private readonly IRepository<PreviousPDF> _previousPDFRepository;
private readonly IRepository<Dictionary> _dictionaryRepository;
private readonly IRepository<Trial> _trialRepository;
@ -29,7 +30,8 @@ namespace IRaCIS.Application.Services
public ClinicalDataSetService(IRepository<SubjectVisit> subjectVisitRepository,
IClinicalQuestionService iClinicalQuestionService,
IRepository<ClinicalDataTrialSet> ClinicalDataTrialSetRepository,
IRepository<ClinicalDataSystemSet> ClinicalDataSystemSetRepository,
IRepository<ReadingQuestionCriterionTrial> iReadingQuestionCriterionTrialRepository,
IRepository<ClinicalDataSystemSet> ClinicalDataSystemSetRepository,
IRepository<PreviousPDF> previousPDFRepository,
IRepository<Dictionary> dictionaryRepository,
IRepository<TrialClinicalQuestion> trialClinicalQuestionRepository,
@ -45,7 +47,8 @@ namespace IRaCIS.Application.Services
_trialClinicalQuestionRepository = trialClinicalQuestionRepository;
_systemClinicalQuestionRepository = systemClinicalQuestionRepository;
_clinicalDataTrialSetRepository = ClinicalDataTrialSetRepository;
_clinicalDataSystemSetRepository = ClinicalDataSystemSetRepository;
this._iReadingQuestionCriterionTrialRepository = iReadingQuestionCriterionTrialRepository;
_clinicalDataSystemSetRepository = ClinicalDataSystemSetRepository;
this._previousPDFRepository = previousPDFRepository;
this._dictionaryRepository = dictionaryRepository;
this._trialRepository = trialRepository;
@ -271,11 +274,15 @@ namespace IRaCIS.Application.Services
public async Task<List<ClinicalDataTrialSetView>> GetTrialClinicalDataTrialSetList(GetTrialClinicalDataTrialIndto inDto)
{
await this.AddTrialClinicalDataTrialSet(inDto.TrialId);
var trialClinicalDataList = await _clinicalDataTrialSetRepository.AsQueryable()
List<int> criterionTypes = new List<int>();
if (inDto.CriterionIds != null)
{
criterionTypes =( await _iReadingQuestionCriterionTrialRepository.Where(x => inDto.CriterionIds.Contains(x.Id)).Select(x => x.CriterionType).ToListAsync())
.Select(x=>(int)x).ToList();
}
var trialClinicalDataList = await _clinicalDataTrialSetRepository.AsQueryable()
.Where(x => x.TrialId == inDto.TrialId)
.WhereIf(inDto.CriterionTypes!=null,x=>x.IsConfirm||x.SystemClinicalDataSetId==null||inDto.CriterionTypes.Intersect(x.CriterionEnumList).Count()>0)
.WhereIf(inDto.CriterionIds != null,x=>x.IsConfirm||x.SystemClinicalDataSetId==null|| criterionTypes.Intersect(x.CriterionEnumList).Count()>0)
.WhereIf(inDto.ClinicalDataLevel != null, x => x.ClinicalDataLevel == inDto.ClinicalDataLevel)
.WhereIf(inDto.ClinicalUploadType != null, x => x.ClinicalUploadType == inDto.ClinicalUploadType)
.WhereIf(inDto.ClinicalDataSetName != String.Empty, x => x.ClinicalDataSetName.Contains(inDto.ClinicalDataSetName))

View File

@ -312,7 +312,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
/// </summary>
public ClinicalUploadType? ClinicalUploadType { get; set; }
public List<int>? CriterionTypes { get; set; }
public List<Guid>? CriterionIds { get; set; }
}