Merge branch 'master' of http://192.168.1.2:8033/IRaCIS_Core_Api
commit
73fb523b3d
|
@ -187,23 +187,26 @@ namespace IRaCIS.Core.Application.Service
|
|||
public async Task<IResponseOutput> SubmitClinicalForm(SubmitClinicalFormInDto inDto)
|
||||
{
|
||||
|
||||
var checkDateQuestionId = await _trialClinicalQuestionRepository.Where(x => x.TrialClinicalId == inDto.ClinicalDataTrialSetId && x.IsCheckDate).Select(x => x.Id).FirstNotNullAsync();
|
||||
|
||||
|
||||
ClinicalForm clinicalForm = new ClinicalForm() { };
|
||||
try
|
||||
clinicalForm = new ClinicalForm()
|
||||
{
|
||||
ClinicalDataTrialSetId = inDto.ClinicalDataTrialSetId,
|
||||
SubjectId = inDto.SubjectId,
|
||||
Id = inDto.ClinicalFormId ?? NewId.NextGuid(),
|
||||
ReadingId = inDto.ReadingId,
|
||||
VisitId = inDto.VisitId,
|
||||
};
|
||||
try
|
||||
{
|
||||
clinicalForm = new ClinicalForm()
|
||||
{
|
||||
ClinicalDataTrialSetId = inDto.ClinicalDataTrialSetId,
|
||||
SubjectId = inDto.SubjectId,
|
||||
Id = inDto.ClinicalFormId ?? NewId.NextGuid(),
|
||||
ReadingId=inDto.ReadingId,
|
||||
VisitId=inDto.VisitId,
|
||||
CheckDate = DateTime.Parse(inDto.QuestionAnswers.Where(x => x.QuestionId == checkDateQuestionId).Select(x => x.Answer).First()),
|
||||
};
|
||||
}
|
||||
var checkDateQuestionId = await _trialClinicalQuestionRepository.Where(x => x.TrialClinicalId == inDto.ClinicalDataTrialSetId && x.IsCheckDate).Select(x => x.Id).FirstNotNullAsync();
|
||||
clinicalForm.CheckDate = DateTime.Parse(inDto.QuestionAnswers.Where(x => x.QuestionId == checkDateQuestionId).Select(x => x.Answer).First());
|
||||
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
throw new BusinessValidationFailedException("检查日期问题答案填写错误!");
|
||||
|
||||
}
|
||||
|
||||
List<ClinicalQuestionAnswer> clinicalQuestionAnswers = inDto.QuestionAnswers.Select(x => new ClinicalQuestionAnswer()
|
||||
|
|
|
@ -61,7 +61,13 @@ namespace IRaCIS.Application.Services
|
|||
[HttpPost]
|
||||
public async Task<IResponseOutput> ApplySystemClinical(ApplySystemClinicalInDto inDto)
|
||||
{
|
||||
if (_systemClinicalQuestionRepository.Where(x => x.SystemClinicalId == inDto.SystemClinicalId && x.IsCheckDate).Count() != 1)
|
||||
|
||||
var isNeedVerify = await _clinicalDataSystemSetRepository.AnyAsync(x => x.Id == inDto.SystemClinicalId && (x.ClinicalDataLevel == ClinicalLevel.ImageRead || x.ClinicalDataLevel == ClinicalLevel.OncologyRead)
|
||||
&& x.ClinicalUploadType == ClinicalUploadType.Structuring && x.UploadRole == UploadRole.CRC
|
||||
);
|
||||
|
||||
|
||||
if (_systemClinicalQuestionRepository.Where(x => isNeedVerify&& x.SystemClinicalId == inDto.SystemClinicalId && x.IsCheckDate).Count() != 1)
|
||||
{
|
||||
throw new BusinessValidationFailedException(_localizer["ClinicalDataSet_Apply"]);
|
||||
|
||||
|
@ -87,7 +93,12 @@ namespace IRaCIS.Application.Services
|
|||
[HttpPost]
|
||||
public async Task<IResponseOutput> ApplyTrialClinical(ApplyTrialClinicalInDto inDto)
|
||||
{
|
||||
if (_trialClinicalQuestionRepository.Where(x => x.TrialClinicalId == inDto.TrialClinicalId && x.IsCheckDate).Count() != 1)
|
||||
|
||||
var isNeedVerify = await _clinicalDataTrialSetRepository.AnyAsync(x => x.Id == inDto.TrialClinicalId && (x.ClinicalDataLevel == ClinicalLevel.ImageRead|| x.ClinicalDataLevel==ClinicalLevel.OncologyRead)
|
||||
&& x.ClinicalUploadType == ClinicalUploadType.Structuring && x.UploadRole == UploadRole.CRC
|
||||
);
|
||||
|
||||
if (_trialClinicalQuestionRepository.Where(x => isNeedVerify&& x.TrialClinicalId == inDto.TrialClinicalId && x.IsCheckDate).Count() != 1)
|
||||
{
|
||||
throw new BusinessValidationFailedException(_localizer["ClinicalDataSet_Apply"]);
|
||||
|
||||
|
|
|
@ -1239,7 +1239,12 @@ namespace IRaCIS.Core.Domain.Share
|
|||
[Display(Name = "PDF")]
|
||||
PDF = 1,
|
||||
|
||||
}
|
||||
/// <summary>
|
||||
/// 结构化录入
|
||||
/// </summary>
|
||||
Structuring = 2,
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 数据类型
|
||||
|
|
Loading…
Reference in New Issue