Simplify wrong answer percentage display
This commit is contained in:
@@ -28,9 +28,7 @@ public class QuestionResponse
|
||||
CorrectChoiceId = question.CorrectChoiceId,
|
||||
Explanation = question.Explanation,
|
||||
ChoiceExplanations = question.ChoiceExplanations,
|
||||
ChoiceSelectionPercentages = liveChoiceSelectionPercentages is { Count: > 0 }
|
||||
? liveChoiceSelectionPercentages
|
||||
: question.ChoiceSelectionPercentages,
|
||||
ChoiceSelectionPercentages = BuildChoiceSelectionPercentages(question, liveChoiceSelectionPercentages),
|
||||
Discipline = question.Discipline,
|
||||
System = question.System,
|
||||
Difficulty = question.Difficulty,
|
||||
@@ -38,6 +36,16 @@ public class QuestionResponse
|
||||
Media = question.Media,
|
||||
Tags = question.Tags
|
||||
};
|
||||
|
||||
public static Dictionary<string, int> BuildChoiceSelectionPercentages(Question question, Dictionary<string, int>? liveChoiceSelectionPercentages)
|
||||
{
|
||||
if (liveChoiceSelectionPercentages is not { Count: > 0 })
|
||||
return question.ChoiceSelectionPercentages;
|
||||
|
||||
return question.Choices.ToDictionary(
|
||||
choice => choice.Id,
|
||||
choice => liveChoiceSelectionPercentages.GetValueOrDefault(choice.Id, 0));
|
||||
}
|
||||
}
|
||||
|
||||
public class FirstQuestionAttemptResponse
|
||||
|
||||
Reference in New Issue
Block a user