diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs index b03219547..558cc57ee 100644 --- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs +++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs @@ -42,6 +42,26 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto public class GetTumorAssessmentListInDto { public Guid CriterionId { get; set; } + + /// + /// 靶病灶 + /// + public string TargetLesion { get; set; } + + /// + /// 非靶病灶 + /// + public string NonTargetLesions { get; set; } + + /// + /// 新病灶 + /// + public string NewLesion { get; set; } + + /// + /// 整体疗效 + /// + public string OverallEfficacy { get; set; } } public class CopySystemCriterionDataInDto { diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingQuestionService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingQuestionService.cs index 6cba81870..82934a0a9 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingQuestionService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingQuestionService.cs @@ -88,7 +88,13 @@ namespace IRaCIS.Application.Services [HttpPost] public async Task> GetTumorAssessmentList(GetTumorAssessmentListInDto inDto) { - var result= await _tumorAssessmentRepository.Where(x => x.CriterionId == inDto.CriterionId).ToListAsync(); + var result= await _tumorAssessmentRepository + .Where(x => x.CriterionId == inDto.CriterionId) + .WhereIf(!inDto.OverallEfficacy.IsNullOrEmpty(),x=>x.OverallEfficacy==inDto.OverallEfficacy) + .WhereIf(!inDto.TargetLesion.IsNullOrEmpty(), x => x.TargetLesion == inDto.TargetLesion) + .WhereIf(!inDto.NonTargetLesions.IsNullOrEmpty(), x => x.NonTargetLesions == inDto.NonTargetLesions) + .WhereIf(!inDto.NewLesion.IsNullOrEmpty(), x => x.NewLesion == inDto.NewLesion) + .ToListAsync(); return result; }