From d1b9c86d2f98b76a79388addfe9a7f222c3f02c7 Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Tue, 7 Apr 2020 19:29:56 +0000 Subject: [PATCH] --- .../AyaNova/Controllers/EnumListController.cs | 38 ++++++++++++++----- 1 file changed, 28 insertions(+), 10 deletions(-) diff --git a/server/AyaNova/Controllers/EnumListController.cs b/server/AyaNova/Controllers/EnumListController.cs index b88590d6..496a9488 100644 --- a/server/AyaNova/Controllers/EnumListController.cs +++ b/server/AyaNova/Controllers/EnumListController.cs @@ -72,28 +72,45 @@ namespace AyaNova.Api.Controllers } } - else if (keyNameInLowerCase == StringUtil.TrimTypeName(typeof(AyaType).ToString()).ToLowerInvariant()) + else if (keyNameInLowerCase == "core") { + //core biz objects for UI facing purposes such as search form limit to object type etc var values = Enum.GetValues(typeof(AyaType)); foreach (AyaType t in values) { - TranslationKeysToFetch.Add(t.ToString()); + if (t.HasAttribute(typeof(CoreBizObjectAttribute))) + { + TranslationKeysToFetch.Add(t.ToString()); + } } var LT = TranslationBiz.GetSubsetStaticAsync(TranslationKeysToFetch, TranslationId).Result; foreach (AyaType t in values) { - var tName = t.ToString(); - string name = string.Empty; - if (LT.ContainsKey(tName)) + if (t.HasAttribute(typeof(CoreBizObjectAttribute))) { - name = LT[tName]; - } - else - { - name = tName; + var tName = t.ToString(); + string name = string.Empty; + if (LT.ContainsKey(tName)) + { + name = LT[tName]; + } + else + { + name = tName; + } + ReturnList.Add(new NameIdItem() { Name = name, Id = (long)t }); } + } + } + else if (keyNameInLowerCase == StringUtil.TrimTypeName(typeof(AyaType).ToString()).ToLowerInvariant()) + { + //this is intended primarily for developers, not for UI facing so no need to localize or pretty it up + var values = Enum.GetValues(typeof(AyaType)); + foreach (AyaType t in values) + { + string name = t.ToString(); if (t.HasAttribute(typeof(CoreBizObjectAttribute))) { name += " [CoreBizObject]"; @@ -192,6 +209,7 @@ namespace AyaNova.Api.Controllers ret.Add(new KeyValuePair(StringUtil.TrimTypeName(typeof(UserType).ToString()), "AyaNova user account types")); ret.Add(new KeyValuePair(StringUtil.TrimTypeName(typeof(AuthorizationRoles).ToString()), "AyaNova user account role types")); ret.Add(new KeyValuePair(StringUtil.TrimTypeName(typeof(AyaType).ToString()), "All AyaNova object types")); + ret.Add(new KeyValuePair("Core", "All Core AyaNova business object types")); ret.Add(new KeyValuePair(StringUtil.TrimTypeName(typeof(UiFieldDataType).ToString()), "Types of data used in AyaNova for display and formatting UI purposes")); return Ok(ApiOkResponse.Response(ret, true));