修改一版
This commit is contained in:
@@ -115,7 +115,6 @@ namespace IRaCIS.Application.Services
|
||||
.WhereIf(inDto.ClinicalDataSetName != String.Empty, x => x.ClinicalDataSetName.Contains(inDto.ClinicalDataSetName))
|
||||
.ProjectTo<ClinicalDataTrialSetView>(_mapper.ConfigurationProvider).ToListAsync();
|
||||
return trialClinicalDataList;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -217,10 +217,15 @@ namespace IRaCIS.Core.Application.ViewModel
|
||||
public class OrganInfoQuery
|
||||
{
|
||||
|
||||
///// <summary>
|
||||
///// 病灶类型
|
||||
///// </summary>
|
||||
//public OrganType? OrganType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 病灶类型
|
||||
/// </summary>
|
||||
public OrganType? OrganType { get; set; }
|
||||
public LesionType? LesionType { get; set; }
|
||||
|
||||
public Guid SystemCriterionId { get; set; }
|
||||
|
||||
|
||||
@@ -11,6 +11,7 @@ using IRaCIS.Core.Application.ViewModel;
|
||||
using IRaCIS.Core.Infra.EFCore.Common;
|
||||
using MassTransit;
|
||||
using IRaCIS.Core.Infrastructure;
|
||||
using IRaCIS.Core.Domain.Share;
|
||||
|
||||
namespace IRaCIS.Core.Application.Service
|
||||
{
|
||||
@@ -30,6 +31,7 @@ namespace IRaCIS.Core.Application.Service
|
||||
public OrganInfoService(
|
||||
IRepository<OrganInfo> organInfoRepository,
|
||||
IRepository<Dictionary> dictionaryRepository,
|
||||
|
||||
IRepository<OrganTrialInfo> organTrialInfoRepository,
|
||||
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrial,
|
||||
IRepository<CriterionNidus> criterionNidusRepository
|
||||
@@ -120,9 +122,19 @@ namespace IRaCIS.Core.Application.Service
|
||||
[HttpPost]
|
||||
public async Task<List<OrganInfoView>> GetOrganInfoList(OrganInfoQuery inQuery)
|
||||
{
|
||||
|
||||
|
||||
List<OrganType> organs = new List<OrganType>();
|
||||
|
||||
if (inQuery.LesionType != null)
|
||||
{
|
||||
organs =await _criterionNidusRepository.Where(x => x.CriterionId == inQuery.SystemCriterionId && x.LesionType == inQuery.LesionType)
|
||||
.Select(x => x.OrganType).ToListAsync();
|
||||
}
|
||||
|
||||
var organInfoQueryable = _organInfoRepository
|
||||
.Where(x=>x.SystemCriterionId==inQuery.SystemCriterionId)
|
||||
.WhereIf(inQuery.OrganType != null, x => x.OrganType == inQuery.OrganType)
|
||||
.WhereIf(inQuery.LesionType != null, x => organs.Contains(x.OrganType))
|
||||
.ProjectTo<OrganInfoView>(_mapper.ConfigurationProvider);
|
||||
return await organInfoQueryable.ToListAsync();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user