修改一版
parent
69436a2780
commit
37320c5be5
|
@ -63,6 +63,9 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
||||||
|
|
||||||
public class GetCRCClinicalDataOutDto
|
public class GetCRCClinicalDataOutDto
|
||||||
{
|
{
|
||||||
|
|
||||||
|
public Guid Id { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 名称
|
/// 名称
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -95,7 +98,9 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string Path { get; set; }
|
public string Path { get; set; }
|
||||||
|
|
||||||
public List<GetReadingClinicalDataListOutDto> ReadingClinicalDataList { get; set; }
|
//public List<GetReadingClinicalDataListOutDto> ReadingClinicalDataList { get; set; }
|
||||||
|
|
||||||
|
public List<GetFileDto> PDFFileList { get; set; } = new List<GetFileDto>();
|
||||||
|
|
||||||
public ClinicalDataTable ClinicalTableData { get; set; }
|
public ClinicalDataTable ClinicalTableData { get; set; }
|
||||||
}
|
}
|
||||||
|
@ -347,6 +352,11 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
||||||
public string FileName { get; set; }
|
public string FileName { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 上传时间
|
||||||
|
/// </summary>
|
||||||
|
public DateTime CreateTime { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -70,7 +70,6 @@ namespace IRaCIS.Application.Services
|
||||||
{
|
{
|
||||||
return ResponseOutput.NotOk("存在同类型的临床数据");
|
return ResponseOutput.NotOk("存在同类型的临床数据");
|
||||||
}
|
}
|
||||||
|
|
||||||
var clinicalDataTrialSet = (await _clinicalDataTrialSetRepository.Where(x => x.Id == indto.ClinicalDataTrialSetId).FirstOrDefaultAsync()).IfNullThrowException();
|
var clinicalDataTrialSet = (await _clinicalDataTrialSetRepository.Where(x => x.Id == indto.ClinicalDataTrialSetId).FirstOrDefaultAsync()).IfNullThrowException();
|
||||||
if (indto.Id == null)
|
if (indto.Id == null)
|
||||||
{
|
{
|
||||||
|
@ -86,8 +85,6 @@ namespace IRaCIS.Application.Services
|
||||||
ClinicalDataLevel= clinicalDataTrialSet.ClinicalDataLevel,
|
ClinicalDataLevel= clinicalDataTrialSet.ClinicalDataLevel,
|
||||||
ReadingId=indto.ReadingId
|
ReadingId=indto.ReadingId
|
||||||
}).ToList();
|
}).ToList();
|
||||||
|
|
||||||
|
|
||||||
await _readingClinicalDataRepository.AddAsync(entity, true);
|
await _readingClinicalDataRepository.AddAsync(entity, true);
|
||||||
var success = await _readingClinicalDataRepository.SaveChangesAsync();
|
var success = await _readingClinicalDataRepository.SaveChangesAsync();
|
||||||
return ResponseOutput.Ok(entity.Id);
|
return ResponseOutput.Ok(entity.Id);
|
||||||
|
@ -100,7 +97,6 @@ namespace IRaCIS.Application.Services
|
||||||
await _readingClinicalDataRepository.SaveChangesAsync();
|
await _readingClinicalDataRepository.SaveChangesAsync();
|
||||||
var addFileList = indto.AddFileList.Select(x => new ReadingClinicalDataPDF()
|
var addFileList = indto.AddFileList.Select(x => new ReadingClinicalDataPDF()
|
||||||
{
|
{
|
||||||
|
|
||||||
TrialId = entity.TrialId,
|
TrialId = entity.TrialId,
|
||||||
SubjectId = indto.SubjectId,
|
SubjectId = indto.SubjectId,
|
||||||
FileName = x.FileName,
|
FileName = x.FileName,
|
||||||
|
@ -112,7 +108,6 @@ namespace IRaCIS.Application.Services
|
||||||
ReadingClinicalDataId= entity.Id,
|
ReadingClinicalDataId= entity.Id,
|
||||||
}).ToList();
|
}).ToList();
|
||||||
await _readingClinicalDataPDFRepository.AddRangeAsync(addFileList);
|
await _readingClinicalDataPDFRepository.AddRangeAsync(addFileList);
|
||||||
|
|
||||||
var success = await _readingClinicalDataRepository.SaveChangesAsync();
|
var success = await _readingClinicalDataRepository.SaveChangesAsync();
|
||||||
return ResponseOutput.Ok(entity.Id);
|
return ResponseOutput.Ok(entity.Id);
|
||||||
|
|
||||||
|
@ -128,16 +123,19 @@ namespace IRaCIS.Application.Services
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public async Task<List<GetCRCClinicalDataOutDto>> GetCRCClinicalData(GetCRCClinicalDataInDto inDto)
|
public async Task<List<GetCRCClinicalDataOutDto>> GetCRCClinicalData(GetCRCClinicalDataInDto inDto)
|
||||||
{
|
{
|
||||||
|
await this.AddCRCClinicalData(inDto);
|
||||||
|
|
||||||
List<GetCRCClinicalDataOutDto> cRCClinicalDataList = await _clinicalDataTrialSetRepository.Where(x => x.TrialId == inDto.TrialId && x.UploadRole == UploadRole.CRC&&x.ClinicalDataLevel != ClinicalLevel.Read)
|
List<GetCRCClinicalDataOutDto> cRCClinicalDataList = await _readingClinicalDataRepository.Where(x =>x.ReadingId==inDto.SubjectVisitId)
|
||||||
|
.Where(x=> x.ClinicalDataTrialSet.TrialId == inDto.TrialId && x.ClinicalDataTrialSet.UploadRole == UploadRole.CRC && x.ClinicalDataTrialSet.ClinicalDataLevel != ClinicalLevel.Read && x.ClinicalDataTrialSet.IsConfirm)
|
||||||
.Select(x => new GetCRCClinicalDataOutDto()
|
.Select(x => new GetCRCClinicalDataOutDto()
|
||||||
{
|
{
|
||||||
ClinicalDataSetName = x.ClinicalDataSetName,
|
Id=x.Id,
|
||||||
ClinicalUploadType=x.ClinicalUploadType,
|
ClinicalDataSetName = x.ClinicalDataTrialSet.ClinicalDataSetName,
|
||||||
ClinicalDataTrialSetId = x.Id,
|
ClinicalUploadType=x.ClinicalDataTrialSet.ClinicalUploadType,
|
||||||
FileName=x.FileName,
|
ClinicalDataTrialSetId = x.ClinicalDataTrialSet.Id,
|
||||||
UploadRole=x.UploadRole,
|
FileName=x.ClinicalDataTrialSet.FileName,
|
||||||
Path=x.Path,
|
UploadRole=x.ClinicalDataTrialSet.UploadRole,
|
||||||
|
Path=x.ClinicalDataTrialSet.Path,
|
||||||
}).ToListAsync() ;
|
}).ToListAsync() ;
|
||||||
|
|
||||||
PageOutput<GetReadingClinicalDataListOutDto> clinicalData = await this.GetReadingClinicalDataList(new GetReadingClinicalDataListIndto()
|
PageOutput<GetReadingClinicalDataListOutDto> clinicalData = await this.GetReadingClinicalDataList(new GetReadingClinicalDataListIndto()
|
||||||
|
@ -155,7 +153,7 @@ namespace IRaCIS.Application.Services
|
||||||
|
|
||||||
foreach (var item in cRCClinicalDataList)
|
foreach (var item in cRCClinicalDataList)
|
||||||
{
|
{
|
||||||
item.ReadingClinicalDataList = clinicalData.CurrentPageData.Where(y => y.ClinicalDataTrialSetId == item.ClinicalDataTrialSetId).ToList();
|
item.PDFFileList = clinicalData.CurrentPageData.Where(y => y.ClinicalDataTrialSetId == item.ClinicalDataTrialSetId).SelectMany(x=>x.FileList).ToList();
|
||||||
item.ClinicalTableData = new ClinicalDataTable()
|
item.ClinicalTableData = new ClinicalDataTable()
|
||||||
{
|
{
|
||||||
PreviousHistoryList = previousHistoryList.Where(x => x.ClinicalDataTrialSetId == item.ClinicalDataTrialSetId).ToList(),
|
PreviousHistoryList = previousHistoryList.Where(x => x.ClinicalDataTrialSetId == item.ClinicalDataTrialSetId).ToList(),
|
||||||
|
@ -164,12 +162,31 @@ namespace IRaCIS.Application.Services
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
return cRCClinicalDataList;
|
return cRCClinicalDataList;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 添加CRC数据类型
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
private async Task AddCRCClinicalData(GetCRCClinicalDataInDto inDto)
|
||||||
|
{
|
||||||
|
var cRCClinicalDataIds = await _clinicalDataTrialSetRepository.Where(x => x.TrialId == inDto.TrialId && x.UploadRole == UploadRole.CRC && x.ClinicalDataLevel != ClinicalLevel.Read && x.IsConfirm).Select(x => x.Id).ToListAsync();
|
||||||
|
|
||||||
|
var needAddIds = cRCClinicalDataIds.Where(x => _readingClinicalDataRepository.Where(y => y.ReadingId == inDto.SubjectVisitId && x == y.ClinicalDataTrialSetId).Count() == 0).ToList();
|
||||||
|
|
||||||
|
List<ReadingClinicalData> readingClinicals = needAddIds.Select(x => new ReadingClinicalData()
|
||||||
|
{
|
||||||
|
ClinicalDataTrialSetId = x,
|
||||||
|
IsVisit = true,
|
||||||
|
SubjectId = inDto.SubjectId,
|
||||||
|
ReadingId = inDto.SubjectVisitId,
|
||||||
|
TrialId = inDto.TrialId
|
||||||
|
}).ToList();
|
||||||
|
|
||||||
|
await _readingClinicalDataRepository.AddRangeAsync(readingClinicals);
|
||||||
|
|
||||||
|
await _readingClinicalDataRepository.SaveChangesAsync();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -301,7 +318,8 @@ namespace IRaCIS.Application.Services
|
||||||
{
|
{
|
||||||
Id = y.Id,
|
Id = y.Id,
|
||||||
FileName = y.FileName,
|
FileName = y.FileName,
|
||||||
Path = y.Path
|
Path = y.Path,
|
||||||
|
CreateTime=y.CreateTime,
|
||||||
}).ToList()
|
}).ToList()
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -55,15 +55,15 @@ namespace IRaCIS.Core.Domain.Models
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public Guid? ReadingPeriodSetId { get; set; }
|
public Guid? ReadingPeriodSetId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
///// <summary>
|
||||||
/// 上一次访视(截止访视)
|
///// 上一次访视(截止访视)
|
||||||
/// </summary>
|
///// </summary>
|
||||||
public Guid? LastVisitIdSetId { get; set; }
|
//public Guid? LastVisitIdSetId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
// /// <summary>
|
||||||
/// 裁判对应原阅片模块的Id
|
///// 裁判对应原阅片模块的Id
|
||||||
/// </summary>
|
///// </summary>
|
||||||
public Guid? ReadModuleId { get; set; }
|
//public Guid? ReadModuleId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 项目ID
|
/// 项目ID
|
||||||
|
@ -109,11 +109,11 @@ namespace IRaCIS.Core.Domain.Models
|
||||||
public ReadingSetType ReadingSetType { get; set; }
|
public ReadingSetType ReadingSetType { get; set; }
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
///// <summary>
|
||||||
/// 访视
|
///// 访视
|
||||||
/// </summary>
|
///// </summary>
|
||||||
[ForeignKey("LastVisitIdSetId")]
|
//[ForeignKey("LastVisitIdSetId")]
|
||||||
public SubjectVisit LastSubjectVisit { get; set; }
|
//public SubjectVisit LastSubjectVisit { get; set; }
|
||||||
|
|
||||||
public ReadingStatusEnum ReadingStatus { get; set; }
|
public ReadingStatusEnum ReadingStatus { get; set; }
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue