修改一版

This commit is contained in:
he
2022-06-24 15:05:12 +08:00
parent f5f38936e6
commit 85eebd17ef
4 changed files with 100 additions and 0 deletions
@@ -60,6 +60,35 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public List<FileDto> AddFileList { get; set; } = new List<FileDto>();
}
public class GetCRCClinicalDataOutDto
{
/// <summary>
/// 名称
/// </summary>
public Guid ClinicalDataTrialSetId { get; set; }
/// <summary>
/// 名称
/// </summary>
public string ClinicalDataSetName { get; set; }
public List<GetReadingClinicalDataListOutDto> ReadingClinicalDataList { get; set; }
}
public class GetCRCClinicalDataInDto
{
[NotDefault]
public Guid SubjectVisitId { get; set; }
[NotDefault]
public Guid TrialId { get; set; }
[NotDefault]
public Guid SubjectId { get; set; }
}
/// <summary>
/// 是否盲化
/// </summary>
@@ -111,6 +111,42 @@ namespace IRaCIS.Application.Services
}
/// <summary>
/// 获取CRC上传的文件
/// </summary>
/// <param name="inDto"></param>
/// <returns></returns>
[HttpPost]
public async Task<List<GetCRCClinicalDataOutDto>> GetCRCClinicalData(GetCRCClinicalDataInDto inDto)
{
List<GetCRCClinicalDataOutDto> cRCClinicalDataList = await _clinicalDataTrialSetRepository.Where(x => x.TrialId == inDto.TrialId && x.UploadRole == UploadRole.CRC)
.Select(x => new GetCRCClinicalDataOutDto()
{
ClinicalDataSetName = x.ClinicalDataSetName,
ClinicalDataTrialSetId = x.Id,
}).ToListAsync() ;
PageOutput<GetReadingClinicalDataListOutDto> clinicalData = await this.GetReadingClinicalDataList(new GetReadingClinicalDataListIndto()
{
PageIndex = 1,
PageSize = 9999,
SubjectId = inDto.SubjectId,
ReadingId = inDto.SubjectVisitId,
});
cRCClinicalDataList.ForEach(x =>
{
x.ReadingClinicalDataList = clinicalData.CurrentPageData.Where(y => y.ClinicalDataTrialSetId == x.ClinicalDataTrialSetId).ToList();
});
return cRCClinicalDataList;
}
///// <summary>
///// 设置临床数据是否盲化
///// </summary>
@@ -146,6 +182,12 @@ namespace IRaCIS.Application.Services
[HttpPost]
public async Task<List<GetTrialClinicalDataSelectOutDto>> GetTrialClinicalDataSelect(GetTrialClinicalDataSelectIndto inDto)
{
if (_userInfo.UserTypeShortName == "PM" || _userInfo.UserTypeShortName == "IR")
{
inDto.UploadRole = UploadRole.PM;
}
var usedIdsQuery = _readingClinicalDataRepository.Where(x => x.ReadingId == inDto.ReadingId && x.Id != inDto.ReadingClinicalDataId).Select(x => x.ClinicalDataTrialSetId);
List<GetTrialClinicalDataSelectOutDto> clinicalList = await _clinicalDataTrialSetRepository.Where(x=>x.TrialId==inDto.TrialId&&x.IsConfirm)
@@ -193,6 +235,17 @@ namespace IRaCIS.Application.Services
[HttpPost]
public async Task<PageOutput<GetReadingClinicalDataListOutDto>> GetReadingClinicalDataList(GetReadingClinicalDataListIndto inDto)
{
if (_userInfo.UserTypeShortName == "PM" || _userInfo.UserTypeShortName == "IR")
{
inDto.UploadRole = UploadRole.PM;
}
else if (_userInfo.UserTypeShortName == "CRC" || _userInfo.UserTypeShortName == "IQC")
{
inDto.UploadRole = UploadRole.CRC;
}
var isBaseLine = await _subjectVisitRepository.AnyAsync(x => x.Id == inDto.ReadingId && x.IsBaseLine);
var resultQuery = _readingClinicalDataRepository.Where(x => x.SubjectId == inDto.SubjectId)
.Where(x => x.ReadingId == inDto.ReadingId)