Uat_Study
he 2023-06-28 09:14:08 +08:00
parent 49749b3f59
commit a718aa9c69
1 changed files with 17 additions and 14 deletions

View File

@ -187,23 +187,26 @@ namespace IRaCIS.Core.Application.Service
public async Task<IResponseOutput> SubmitClinicalForm(SubmitClinicalFormInDto inDto) 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() { }; 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() 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());
ClinicalDataTrialSetId = inDto.ClinicalDataTrialSetId,
SubjectId = inDto.SubjectId, }
Id = inDto.ClinicalFormId ?? NewId.NextGuid(), catch ()
ReadingId=inDto.ReadingId,
VisitId=inDto.VisitId,
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() List<ClinicalQuestionAnswer> clinicalQuestionAnswers = inDto.QuestionAnswers.Select(x => new ClinicalQuestionAnswer()