Merge branch 'master' of http://192.168.1.2:8033/IRaCIS_Core_Api
commit
e3b9576a2d
|
@ -169,7 +169,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
/// <param name="inDto"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
public async Task<List<GetCRCSubjectClinicalResultDto>> GetCRCSubjectClinicalList(GetCRCSubjectClinicalInDto inDto)
|
||||
public async Task<List<GetCRCSubjectClinicalOutDto>> GetCRCSubjectClinicalList(GetCRCSubjectClinicalInDto inDto)
|
||||
{
|
||||
|
||||
await AutoAddCRCClinical(new AutoAddClinicalInDto()
|
||||
|
@ -183,7 +183,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
var subjects = await _subjectRepository.Where(x => x.TrialId == inDto.TrialId).Select(x => new GetCRCSubjectClinicalResultDto()
|
||||
{
|
||||
SubjectId = x.Id,
|
||||
SunjectCode = x.ShortName
|
||||
SubjectCode = x.Code
|
||||
}).ToListAsync();
|
||||
|
||||
|
||||
|
@ -191,31 +191,28 @@ namespace IRaCIS.Core.Application.Service
|
|||
.Where(x=>!x.IsSign)
|
||||
.Include(x=>x.ClinicalDataTrialSet).Select(x=>new GetCRCSubjectClinicalOutDto() {
|
||||
SubjectId=x.SubjectId,
|
||||
SubjectCode=x.Subject.Code,
|
||||
ClinicalDataTrialSetId = x.ClinicalDataTrialSet.Id,
|
||||
ClinicalDataSetName = x.ClinicalDataTrialSet.ClinicalDataSetName.LanguageName(x.ClinicalDataTrialSet.ClinicalDataSetEnName, _userInfo.IsEn_Us),
|
||||
}).OrderBy(x=>x.ClinicalDataSetName).ToListAsync();
|
||||
ClinicalDataSetEnName= x.ClinicalDataTrialSet.ClinicalDataSetEnName,
|
||||
ClinicalDataSetName = x.ClinicalDataTrialSet.ClinicalDataSetName,
|
||||
}).OrderBy(x=>x.SubjectCode).ToListAsync();
|
||||
|
||||
|
||||
|
||||
|
||||
var clinicalFormData = await _clinicalFormRepository.Where(x => x.SubjectId == inDto.TrialId).ToListAsync();
|
||||
|
||||
subjects.ForEach(x =>
|
||||
// 一次查询报错 分两次写
|
||||
clinicalData.ForEach(x =>
|
||||
{
|
||||
|
||||
x.ClinicalDataList = clinicalData.Where(y => y.SubjectId == x.SubjectId).ToList();
|
||||
|
||||
x.ClinicalDataList.ForEach(n =>
|
||||
{
|
||||
n.ClinicalCount = clinicalData.Where(y => y.ClinicalDataTrialSetId == n.ClinicalDataTrialSetId && y.SubjectId == n.SubjectId).Count();
|
||||
});
|
||||
x.ClinicalDataSetEnName = x.ClinicalDataSetName.LanguageName(x.ClinicalDataSetEnName, _userInfo.IsEn_Us);
|
||||
|
||||
});
|
||||
|
||||
|
||||
var clinicalFormData = await _clinicalFormRepository.Where(x => x.TrialId == inDto.TrialId).ToListAsync();
|
||||
clinicalData.ForEach(n =>
|
||||
{
|
||||
n.ClinicalCount = clinicalFormData.Where(y => y.ClinicalDataTrialSetId == n.ClinicalDataTrialSetId && y.SubjectId == n.SubjectId).Count();
|
||||
});
|
||||
|
||||
|
||||
|
||||
return subjects;
|
||||
|
||||
return clinicalData;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -317,6 +314,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
{
|
||||
ClinicalDataTrialSetId = inDto.ClinicalDataTrialSetId,
|
||||
SubjectId = inDto.SubjectId,
|
||||
TrialId= inDto.TrialId,
|
||||
Id = inDto.ClinicalFormId ?? NewId.NextGuid(),
|
||||
ReadingId = inDto.ReadingId,
|
||||
VisitId = inDto.VisitId,
|
||||
|
|
|
@ -26,11 +26,15 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
|||
public class GetCRCSubjectClinicalOutDto
|
||||
{
|
||||
public Guid SubjectId { get; set; }
|
||||
|
||||
public string SubjectCode { get; set; }
|
||||
public Guid ClinicalDataTrialSetId { get; set; }
|
||||
|
||||
public string ClinicalDataSetName { get; set; }
|
||||
|
||||
public int ClinicalCount { get; set; } = 0;
|
||||
public string ClinicalDataSetEnName { get; set; }
|
||||
|
||||
public int ClinicalCount { get; set; } = 0;
|
||||
}
|
||||
|
||||
|
||||
|
@ -38,7 +42,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
|||
{
|
||||
public Guid SubjectId { get; set; }
|
||||
|
||||
public string SunjectCode { get; set; }
|
||||
public string SubjectCode { get; set; }
|
||||
|
||||
public List<GetCRCSubjectClinicalOutDto> ClinicalDataList { get; set; }
|
||||
}
|
||||
|
@ -105,7 +109,9 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
|||
|
||||
public Guid SubjectId { get; set; }
|
||||
|
||||
public Guid ClinicalDataTrialSetId { get; set; }
|
||||
public Guid TrialId { get; set; }
|
||||
|
||||
public Guid ClinicalDataTrialSetId { get; set; }
|
||||
|
||||
|
||||
public List<ClinicalFormQuestionAnswer> QuestionAnswers { get; set; }
|
||||
|
|
|
@ -80,6 +80,11 @@ namespace IRaCIS.Core.Domain.Models
|
|||
|
||||
public SubjectVisit SubjectVisit { get; set; }
|
||||
|
||||
[JsonIgnore]
|
||||
[ForeignKey("SubjectId")]
|
||||
|
||||
public Subject Subject { get; set; }
|
||||
|
||||
[JsonIgnore]
|
||||
[ForeignKey("ReadingId")]
|
||||
|
||||
|
|
|
@ -20,10 +20,13 @@ namespace IRaCIS.Core.Domain.Models
|
|||
/// 受试者Id
|
||||
/// </summary>
|
||||
public Guid SubjectId { get; set; }
|
||||
|
||||
|
||||
|
||||
public Guid TrialId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 检查日期
|
||||
/// </summary>
|
||||
/// 检查日期
|
||||
/// </summary>
|
||||
public DateTime CheckDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
|
|
Loading…
Reference in New Issue