Skip to content

Commit

Permalink
partial work done on validation
Browse files Browse the repository at this point in the history
  • Loading branch information
renldx committed Jun 9, 2020
1 parent 92f3b91 commit c4767aa
Showing 1 changed file with 9 additions and 8 deletions.
17 changes: 9 additions & 8 deletions BlazorFlow/Helpers/AnswerValueHelper.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,28 +8,29 @@ namespace BlazorFlow.Helpers
{
public static class AnswerValueHelper
{
// Should change to defaults of type?
public static List<Models.UserFlowAnswer> GetUserFlowAnswerModels(FlowValueType valueType, Pages.Application.Model model) => valueType switch
{
FlowValueType.None =>
new List<Models.UserFlowAnswer>(),
FlowValueType.Radio =>
new List<Models.UserFlowAnswer> { new Models.UserFlowAnswer(model.StringValue!, valueType) },
new List<Models.UserFlowAnswer> { new Models.UserFlowAnswer(model.StringValue ?? string.Empty, valueType) },
FlowValueType.Select =>
new List<Models.UserFlowAnswer> { new Models.UserFlowAnswer(model.StringValue!, valueType) },
new List<Models.UserFlowAnswer> { new Models.UserFlowAnswer(model.StringValue ?? string.Empty, valueType) },
FlowValueType.Number =>
new List<Models.UserFlowAnswer> { new Models.UserFlowAnswer(model.NumberValue!, valueType) },
new List<Models.UserFlowAnswer> { new Models.UserFlowAnswer(model.NumberValue ?? 0, valueType) },
FlowValueType.Checkbox =>
HashSetToAnswers(model.CheckboxValues!, valueType),
HashSetToAnswers(model.CheckboxValues ?? new HashSet<string>(), valueType),
FlowValueType.DateTime =>
new List<Models.UserFlowAnswer> { new Models.UserFlowAnswer(model.DateTimeValue!, valueType) },
new List<Models.UserFlowAnswer> { new Models.UserFlowAnswer(model.DateTimeValue, valueType) },
FlowValueType.Text =>
new List<Models.UserFlowAnswer> { new Models.UserFlowAnswer(model.StringValue!, valueType) },
new List<Models.UserFlowAnswer> { new Models.UserFlowAnswer(model.StringValue ?? string.Empty, valueType) },
FlowValueType.TextArea =>
new List<Models.UserFlowAnswer> { new Models.UserFlowAnswer(model.StringValue!, valueType) },
new List<Models.UserFlowAnswer> { new Models.UserFlowAnswer(model.StringValue ?? string.Empty, valueType) },
_ => throw new Exception()
};

// To improve
// Don't save answers when values are empty / null
public static List<Models.UserFlowAnswer> HashSetToAnswers(HashSet<string> set, FlowValueType valueType)
{
var answerList = new List<Models.UserFlowAnswer>();
Expand Down

0 comments on commit c4767aa

Please sign in to comment.