public override async Task AddAnswersUnitAsync(QuizAnswersUnit answersUnit) { answersUnit.Id = null; answersUnit.AnswerDate = DateTime.Now; answersUnit.CurrentReanswerCount = 0; answersUnit.IsCompleted = answersUnit.CheckCompleted(await GetByIdAsync(answersUnit.PollBaseId)); await AssessAnswersUnitAsync(answersUnit); await AnswersUnits.InsertOneAsync(answersUnit); }
public override async Task UpdateAnswersUnitAsync(QuizAnswersUnit newAnswersUnit, QuizAnswersUnit oldAnswersUnit) { newAnswersUnit.Id = oldAnswersUnit.Id; newAnswersUnit.AnswerDate = DateTime.Now; newAnswersUnit.CreatorUserId = oldAnswersUnit.CreatorUserId; newAnswersUnit.CurrentReanswerCount = oldAnswersUnit.CurrentReanswerCount + 1; newAnswersUnit.IsCompleted = newAnswersUnit.CheckCompleted(await GetByIdAsync(newAnswersUnit.PollBaseId)); await AssessAnswersUnitAsync(newAnswersUnit); await AnswersUnits.DeleteOneAsync(answer => answer.Id == newAnswersUnit.Id); await AnswersUnits.InsertOneAsync(newAnswersUnit); }