Uat_Study
he 2023-01-05 16:05:50 +08:00
parent b69430e3cb
commit 8b3b69fbb8
1 changed files with 24 additions and 3 deletions

View File

@ -131,12 +131,33 @@ namespace IRaCIS.Application.Services
[HttpPost]
public async Task ChangeCalculationAnswer(ChangeCalculationAnswerInDto inDto)
{
var visitTask = await _visitTaskRepository.Where(x => x.Id == inDto.VisitTaskId).FirstNotNullAsync();
var questionAnswerList = await _readingTaskQuestionAnswerRepository.Where(x => x.VisitTaskId == inDto.VisitTaskId).ToListAsync();
foreach (var item in inDto.QuestionAnswer)
{
await _readingTaskQuestionAnswerRepository.UpdatePartialFromQueryAsync(x=>x.VisitTaskId==inDto.VisitTaskId&&x.ReadingQuestionTrialId==item.QuestionId, x => new ReadingTaskQuestionAnswer()
if (questionAnswerList.Any(x => x.ReadingQuestionTrialId == item.QuestionId))
{
Answer = item.Answer,
});
await _readingTaskQuestionAnswerRepository.UpdatePartialFromQueryAsync(x => x.VisitTaskId == inDto.VisitTaskId && x.ReadingQuestionTrialId == item.QuestionId, x => new ReadingTaskQuestionAnswer()
{
Answer = item.Answer,
});
}
else
{
await _readingTaskQuestionAnswerRepository.AddAsync(new ReadingTaskQuestionAnswer() {
Answer=item.Answer,
ReadingQuestionCriterionTrialId= visitTask.TrialReadingCriterionId,
ReadingQuestionTrialId= item.QuestionId,
SubjectId= visitTask.SubjectId,
VisitTaskId=inDto.VisitTaskId,
TrialId= visitTask.TrialId
});
}
}
foreach (var item in inDto.TableQuestionAnswer)