S-003 临床数据

IRC_NewDev
he 2023-07-04 15:48:20 +08:00
parent c67dcb1d5c
commit 3e49e78dfe
2 changed files with 29 additions and 8 deletions

View File

@ -437,8 +437,11 @@ namespace IRaCIS.Core.Application.Service
{ {
var query = _readModuleRepository.Where(x => x.TrialId == inDto.TrialId) var query = _readModuleRepository.Where(x => x.TrialId == inDto.TrialId)
.WhereIf(inDto.ReadModuleId != null, x => x.Id == inDto.ReadModuleId) .WhereIf(inDto.ReadModuleId != null, x => x.Id == inDto.ReadModuleId)
.Select(x => new GetCRCConfirmListOutDto() .WhereIf(inDto.TrialReadingCriterionId != null, x => x.TrialReadingCriterionId == inDto.TrialReadingCriterionId)
.WhereIf(inDto.SubjectId != null, x => x.SubjectId == inDto.SubjectId)
.Select(x => new GetCRCConfirmListOutDto()
{ {
SubjectId = x.SubjectId, SubjectId = x.SubjectId,
IsCRCConfirm = x.IsCRCConfirm, IsCRCConfirm = x.IsCRCConfirm,
LatestScanDate = x.SubjectVisit.LatestScanDate, LatestScanDate = x.SubjectVisit.LatestScanDate,
@ -544,10 +547,17 @@ namespace IRaCIS.Core.Application.Service
[HttpPost] [HttpPost]
public async Task<IResponseOutput> CRCConfirmClinical(CRCConfirmClinicalInDto inDto) public async Task<IResponseOutput> CRCConfirmClinical(CRCConfirmClinicalInDto inDto)
{ {
var dataList =await this.GetCRCConfirmList(new GetCRCConfirmListInDto()
var readModule = await _readModuleRepository.Where(x => x.Id == inDto.ReadModuleId).FirstNotNullAsync();
var dataList =(await this.GetCRCConfirmList(new GetCRCConfirmListInDto()
{ {
TrialId = inDto.TrialId TrialId = inDto.TrialId,
}); SubjectId= readModule.SubjectId,
TrialReadingCriterionId= readModule.TrialReadingCriterionId,
PageIndex=1,
PageSize=9999,
})).CurrentPageData;
var presentData = dataList.Where(x => x.ReadModuleId == inDto.ReadModuleId).First(); var presentData = dataList.Where(x => x.ReadModuleId == inDto.ReadModuleId).First();
var confirmlist= dataList.Where(x =>(x.LatestScanDate < presentData.LatestScanDate && x.ReadingSetType == presentData.ReadingSetType) var confirmlist= dataList.Where(x =>(x.LatestScanDate < presentData.LatestScanDate && x.ReadingSetType == presentData.ReadingSetType)
@ -591,10 +601,16 @@ namespace IRaCIS.Core.Application.Service
[HttpPost] [HttpPost]
public async Task<IResponseOutput> CRCCancelConfirmClinical(CRCCancelConfirmClinicalInDto inDto) public async Task<IResponseOutput> CRCCancelConfirmClinical(CRCCancelConfirmClinicalInDto inDto)
{ {
var dataList = await this.GetCRCConfirmList(new GetCRCConfirmListInDto()
var readModule = await _readModuleRepository.Where(x => x.Id == inDto.ReadModuleId).FirstNotNullAsync();
var dataList = (await this.GetCRCConfirmList(new GetCRCConfirmListInDto()
{ {
TrialId = inDto.TrialId TrialId = inDto.TrialId,
}); SubjectId = readModule.SubjectId,
TrialReadingCriterionId = readModule.TrialReadingCriterionId,
PageIndex = 1,
PageSize = 9999,
})).CurrentPageData;
var presentData = dataList.Where(x => x.ReadModuleId == inDto.ReadModuleId).First(); var presentData = dataList.Where(x => x.ReadModuleId == inDto.ReadModuleId).First();

View File

@ -101,6 +101,11 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public class GetCRCConfirmListInDto:PageInput public class GetCRCConfirmListInDto:PageInput
{ {
public Guid? TrialReadingCriterionId { get; set; }
public Guid? SubjectId { get; set; }
public Guid TrialId { get; set; } public Guid TrialId { get; set; }
public Guid? ReadModuleId { get; set; } public Guid? ReadModuleId { get; set; }
@ -138,7 +143,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
{ {
public Guid TrialId { get; set; } public Guid TrialId { get; set; }
public Guid SubjectId { get; set; } public Guid SubjectId { get; set; }
public Guid ReadModuleId { get; set; } public Guid ReadModuleId { get; set; }
} }