修改一版

Uat_Study
he 2022-06-10 11:49:41 +08:00
parent e6248565be
commit c423fb1047
5 changed files with 78 additions and 8 deletions

View File

@ -1095,6 +1095,21 @@
文件数量
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetFileDto.Id">
<summary>
Id
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetFileDto.Path">
<summary>
Path
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetFileDto.FileName">
<summary>
FileName
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetTrialClinicalDataSelectIndto.TrialId">
<summary>
项目ID

View File

@ -180,6 +180,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
/// </summary>
public ClinicalLevel ClinicalDataLevel { get; set; }
public Guid SubjectId { get; set; }
/// <summary>
/// 上传方式
@ -199,10 +200,37 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
/// <summary>
/// 文件数量
/// </summary>
public int FileCount { get; set; } = 0;
public int FileCount { get {
return this.FileList.Count();
} }
public List<GetFileDto> FileList { get; set; } = new List<GetFileDto>();
}
public class GetFileDto
{
/// <summary>
/// Id
/// </summary>
public Guid Id { get; set; }
/// <summary>
/// Path
/// </summary>
public string Path { get; set; }
/// <summary>
/// FileName
/// </summary>
public string FileName { get; set; }
}
public class GetTrialClinicalDataSelectIndto
{
@ -221,6 +249,8 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
/// </summary>
public Guid ReadingId { get; set; }
public Guid SubjectId { get; set; }
/// <summary>
/// 是否是访视
/// </summary>

View File

@ -46,6 +46,7 @@ namespace IRaCIS.Application.Services
public async Task<IResponseOutput> AddOrUpdateReadingClinicalData(AddOrUpdateReadingClinicalDataDto indto)
{
var clinicalDataTrialSet = (await _clinicalDataTrialSetRepository.Where(x => x.Id == indto.ClinicalDataTrialSetId).FirstOrDefaultAsync()).IfNullThrowException();
if (indto.Id == null)
{
var entity = _mapper.Map<ReadingClinicalData>(indto);
@ -56,7 +57,9 @@ namespace IRaCIS.Application.Services
SubjectId= indto.SubjectId,
FileName=x.FileName,
Path=x.Path,
ClinicalDataTrialSetId=indto.ClinicalDataTrialSetId,
IsVisit= indto.IsVisit,
ClinicalDataLevel= clinicalDataTrialSet.ClinicalDataLevel,
ReadingId=indto.ReadingId
}).ToList();
@ -79,6 +82,7 @@ namespace IRaCIS.Application.Services
FileName = x.FileName,
Path = x.Path,
IsVisit = indto.IsVisit,
ClinicalDataLevel = clinicalDataTrialSet.ClinicalDataLevel,
ReadingId = indto.ReadingId
}).ToList();
await _readingClinicalDataPDFRepository.AddRangeAsync(addFileList);
@ -139,13 +143,30 @@ namespace IRaCIS.Application.Services
[HttpPost]
public async Task<PageOutput<GetReadingClinicalDataListOutDto>> GetReadingClinicalDataList(GetReadingClinicalDataListIndto inDto)
{
var result = await _readingClinicalDataRepository.ProjectTo<GetReadingClinicalDataListOutDto>(_mapper.ConfigurationProvider).ToPagedListAsync(inDto.PageIndex, inDto.PageSize, inDto.SortField == null ? nameof(GetReadingClinicalDataListOutDto.ClinicalDataSetName) : inDto.SortField,
var result = await _readingClinicalDataRepository.Where(x=>x.Id==inDto.ReadingId).ProjectTo<GetReadingClinicalDataListOutDto>(_mapper.ConfigurationProvider).ToPagedListAsync(inDto.PageIndex, inDto.PageSize, inDto.SortField == null ? nameof(GetReadingClinicalDataListOutDto.ClinicalDataSetName) : inDto.SortField,
inDto.Asc);
result.CurrentPageData.ForEach(x => {
x.ClinicalDataLevelName = x.ClinicalDataLevel.GetDisplayName();
x.ClinicalUploadTypeName = x.ClinicalUploadType.GetDisplayName();
});
foreach (var item in result.CurrentPageData)
{
item.ClinicalDataLevelName = item.ClinicalDataLevel.GetDisplayName();
item.ClinicalUploadTypeName = item.ClinicalUploadType.GetDisplayName();
item.FileList = item.ClinicalDataLevel != ClinicalLevel.Subject ? (await _readingClinicalDataPDFRepository.Where(y => y.ReadingClinicalDataId == item.Id).Select(y => new GetFileDto()
{
Id = y.Id,
FileName = y.FileName,
Path = y.Path
}).ToListAsync()) : (await _readingClinicalDataPDFRepository.Where(y => y.SubjectId == item.SubjectId).Select(y => new GetFileDto()
{
Id = y.Id,
FileName = y.FileName,
Path = y.Path
}).ToListAsync());
}
return result;
}

View File

@ -24,8 +24,8 @@ namespace IRaCIS.Core.Application.Service
CreateMap<ReadingClinicalData, GetReadingClinicalDataListOutDto>()
.ForMember(d => d.ClinicalDataLevel, u => u.MapFrom(s => s.ClinicalDataTrialSet.ClinicalDataLevel))
.ForMember(d => d.ClinicalDataLevelName, u => u.MapFrom(s => s.ClinicalDataTrialSet.ClinicalDataSetName))
.ForMember(d => d.ClinicalUploadType, u => u.MapFrom(s => s.ClinicalDataTrialSet.ClinicalUploadType))
.ForMember(d => d.FileCount, u => u.MapFrom(s => s.ReadingClinicalDataPDFList.Count()));
.ForMember(d => d.ClinicalUploadType, u => u.MapFrom(s => s.ClinicalDataTrialSet.ClinicalUploadType));
//.ForMember(d => d.FileCount, u => u.MapFrom(s => s.ReadingClinicalDataPDFList.Count()));

View File

@ -67,6 +67,10 @@ namespace IRaCIS.Core.Domain.Models
public Guid CreateUserId { get; set; }
/// <summary>
/// 项目模板Id
/// </summary>
public Guid ClinicalDataTrialSetId { get; set; }