From 971a70d15e5531b59afd74556dc50214deeeafe9 Mon Sep 17 00:00:00 2001 From: ivarlovlie Date: Thu, 17 Nov 2022 13:46:38 +0700 Subject: feat: Update known problem model --- code/api/src/Data/Models/KnownProblemModel.cs | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) (limited to 'code/api/src/Data/Models') diff --git a/code/api/src/Data/Models/KnownProblemModel.cs b/code/api/src/Data/Models/KnownProblemModel.cs index 38b3eba..818a295 100644 --- a/code/api/src/Data/Models/KnownProblemModel.cs +++ b/code/api/src/Data/Models/KnownProblemModel.cs @@ -2,7 +2,7 @@ namespace IOL.GreatOffice.Api.Data.Models; public class KnownProblemModel { - public KnownProblemModel(string title = default, string subtitle = default, Dictionary errors = default) { + public KnownProblemModel(string title = default, string subtitle = default, Dictionary errors = default) { Title = title; Subtitle = subtitle; Errors = errors; @@ -10,6 +10,21 @@ public class KnownProblemModel public string Title { get; set; } public string Subtitle { get; set; } - public Dictionary Errors { get; set; } + public Dictionary Errors { get; set; } public string TraceId { get; set; } + + public void AddError(string field, string errorText) { + if (Errors == default) { + Errors = new Dictionary(); + } + + if (!Errors.ContainsKey(field)) { + Errors.Add(field, new[] {errorText}); + } else { + var currentErrors = Errors[field]; + var newErrors = currentErrors.Concat(new[] {errorText}); + Errors.Remove(field); + Errors.Add(field, newErrors.ToArray()); + } + } } \ No newline at end of file -- cgit v1.3