Uat_Study
parent
df755c4fed
commit
e70ced8e2b
|
@ -14,10 +14,10 @@ namespace IRaCIS.Core.Application.ViewModel
|
|||
{
|
||||
public Guid TrialId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 类型枚举
|
||||
/// </summary>
|
||||
public OrganType OrganType { get; set; }
|
||||
///// <summary>
|
||||
///// 类型枚举
|
||||
///// </summary>
|
||||
//public OrganType OrganType { get; set; }
|
||||
|
||||
public List<Guid> OrganIds { get; set; }
|
||||
}
|
||||
|
@ -53,7 +53,7 @@ namespace IRaCIS.Core.Application.ViewModel
|
|||
/// <summary>
|
||||
/// 类型枚举
|
||||
/// </summary>
|
||||
public OrganType OrganType { get; set; }
|
||||
public OrganType? OrganType { get; set; }
|
||||
}
|
||||
|
||||
public class GetTrialCheckOrganList : GetTrialOrganListOutDto
|
||||
|
|
|
@ -81,13 +81,13 @@ namespace IRaCIS.Core.Application.Service
|
|||
/// <returns></returns>
|
||||
public async Task<IResponseOutput> BatchAddTrialOrgan(BatchAddTrialOrganInDto inDto)
|
||||
{
|
||||
await _organTrialInfoRepository.BatchDeleteNoTrackingAsync(t => t.TrialId==inDto.TrialId&&t.OrganType == inDto.OrganType);
|
||||
//await _organTrialInfoRepository.BatchDeleteNoTrackingAsync(t => t.TrialId==inDto.TrialId&&t.OrganType == inDto.OrganType);
|
||||
|
||||
List<OrganTrialInfo> organTrialInfos = inDto.OrganIds.Select(x => new OrganTrialInfo()
|
||||
{
|
||||
OrganInfoId=x,
|
||||
TrialId=inDto.TrialId,
|
||||
OrganType=inDto.OrganType,
|
||||
//OrganType=inDto.OrganType,
|
||||
}).ToList();
|
||||
|
||||
|
||||
|
@ -119,8 +119,9 @@ namespace IRaCIS.Core.Application.Service
|
|||
[HttpPost]
|
||||
public async Task<List<GetTrialOrganListOutDto>> GetTrialOrganList(GetTrialOrganListInDto inDto)
|
||||
{
|
||||
var organInfoQueryable = from data in _organInfoRepository.Where(x => x.OrganType == inDto.OrganType)
|
||||
join trialData in _organTrialInfoRepository.Where(x => x.TrialId == inDto.TrialId && x.OrganType == inDto.OrganType)
|
||||
var organInfoQueryable = from data in _organInfoRepository.WhereIf(inDto.OrganType!=null, x => x.OrganType == inDto.OrganType)
|
||||
join trialData in _organTrialInfoRepository.WhereIf(inDto.OrganType != null, x => x.OrganType == inDto.OrganType)
|
||||
.Where(x => x.TrialId == inDto.TrialId)
|
||||
on data.Id equals trialData.OrganInfoId
|
||||
select new GetTrialOrganListOutDto()
|
||||
{
|
||||
|
@ -147,8 +148,9 @@ namespace IRaCIS.Core.Application.Service
|
|||
[HttpPost]
|
||||
public async Task<List<GetTrialCheckOrganList>> GetTrialCheckOrganList(GetTrialOrganListInDto inDto)
|
||||
{
|
||||
var organInfoQueryable = from data in _organInfoRepository.Where(x => x.OrganType == inDto.OrganType)
|
||||
join trialData in _organTrialInfoRepository.Where(x => x.TrialId == inDto.TrialId && x.OrganType == inDto.OrganType)
|
||||
var organInfoQueryable = from data in _organInfoRepository.WhereIf(inDto.OrganType != null, x => x.OrganType == inDto.OrganType)
|
||||
join trialData in _organTrialInfoRepository.WhereIf(inDto.OrganType != null, x => x.OrganType == inDto.OrganType)
|
||||
.Where(x => x.TrialId == inDto.TrialId)
|
||||
on data.Id equals trialData.OrganInfoId into jtemp
|
||||
from leftjoin in jtemp.DefaultIfEmpty()
|
||||
select new GetTrialCheckOrganList()
|
||||
|
|
Loading…
Reference in New Issue