From 514ac54c3d64ffee98d8dc0912586e8a338170fe Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Tue, 17 Mar 2020 16:01:07 +0000 Subject: [PATCH] --- .../AyaNova/Controllers/PickListController.cs | 2 - server/AyaNova/PickList/PickListFactory.cs | 1 - server/AyaNova/PickList/PickListFetcher.cs | 5 -- server/AyaNova/PickList/UserPickList.cs | 76 +++++++++++++++++++ server/AyaNova/biz/PickListBiz.cs | 1 - 5 files changed, 76 insertions(+), 9 deletions(-) create mode 100644 server/AyaNova/PickList/UserPickList.cs diff --git a/server/AyaNova/Controllers/PickListController.cs b/server/AyaNova/Controllers/PickListController.cs index 2f0b4ce7..82c0974a 100644 --- a/server/AyaNova/Controllers/PickListController.cs +++ b/server/AyaNova/Controllers/PickListController.cs @@ -8,8 +8,6 @@ using AyaNova.Api.ControllerHelpers; using AyaNova.Biz; using AyaNova.PickList; using System.Threading.Tasks; -using Newtonsoft.Json; -using Newtonsoft.Json.Linq; namespace AyaNova.Api.Controllers { diff --git a/server/AyaNova/PickList/PickListFactory.cs b/server/AyaNova/PickList/PickListFactory.cs index ba4f3a5e..44b40d12 100644 --- a/server/AyaNova/PickList/PickListFactory.cs +++ b/server/AyaNova/PickList/PickListFactory.cs @@ -1,5 +1,4 @@ using System.Collections.Generic; -using System.Linq; using AyaNova.Biz; using AyaNova.Models; diff --git a/server/AyaNova/PickList/PickListFetcher.cs b/server/AyaNova/PickList/PickListFetcher.cs index 625dad1f..6d872cec 100644 --- a/server/AyaNova/PickList/PickListFetcher.cs +++ b/server/AyaNova/PickList/PickListFetcher.cs @@ -1,13 +1,8 @@ using System.Collections.Generic; -using System.Linq; -using AyaNova.Biz; using Newtonsoft.Json.Linq; -using AyaNova.Api.ControllerHelpers; -using Microsoft.AspNetCore.Mvc; using AyaNova.Models; using System.Threading.Tasks; using Microsoft.EntityFrameworkCore; -using EnumsNET; diff --git a/server/AyaNova/PickList/UserPickList.cs b/server/AyaNova/PickList/UserPickList.cs new file mode 100644 index 00000000..b1b212bd --- /dev/null +++ b/server/AyaNova/PickList/UserPickList.cs @@ -0,0 +1,76 @@ +using System.Collections.Generic; +using Newtonsoft.Json.Linq; +using AyaNova.Biz; +namespace AyaNova.PickList +{ + internal class UserPickList : AyaPickList + { + public UserPickList() + { + + DefaultListObjectType = AyaType.User; + SQLFrom = "from auser"; + AllowedRoles = BizRoles.GetRoleSet(DefaultListObjectType).Select; + + //Default template + dynamic dTemplate = new JArray(); + + + dynamic cm = new JObject(); + cm.fld = "username"; + dTemplate.Add(cm); + + cm = new JObject(); + cm.fld = "useremployeenumber"; + dTemplate.Add(cm); + + cm = new JObject(); + cm.fld = "usertags"; + dTemplate.Add(cm); + + base.DefaultTemplate = dTemplate.ToString(Newtonsoft.Json.Formatting.None); + + //NOTE: Due to the join, all the sql id and name fields that can conflict with the joined (in this case User) table need to be specified completely + ColumnDefinitions = new List(); + + ColumnDefinitions.Add(new AyaPickListFieldDefinition + { + LtKey = "Active", + FieldKey = "useractive", + ColumnDataType = UiFieldDataType.Bool, + SqlValueColumnName = "auser.active", + IsActiveColumn = true + }); + + ColumnDefinitions.Add(new AyaPickListFieldDefinition + { + LtKey = "UserName", + FieldKey = "username", + AyaObjectType = AyaType.User, + ColumnDataType = UiFieldDataType.Text, + SqlIdColumnName = "auser.id", + SqlValueColumnName = "auser.name", + IsRowId = true + }); + + ColumnDefinitions.Add(new AyaPickListFieldDefinition + { + LtKey = "UserEmployeeNumber", + FieldKey = "useremployeenumber", + ColumnDataType = UiFieldDataType.Text, + SqlValueColumnName = "auser.employeenumber" + }); + + + ColumnDefinitions.Add(new AyaPickListFieldDefinition + { + LtKey = "Tags", + FieldKey = "usertags", + ColumnDataType = UiFieldDataType.Tags, + SqlValueColumnName = "auser.tags" + }); + + + } + }//eoc +}//eons \ No newline at end of file diff --git a/server/AyaNova/biz/PickListBiz.cs b/server/AyaNova/biz/PickListBiz.cs index 3cfda9d7..cea75e4e 100644 --- a/server/AyaNova/biz/PickListBiz.cs +++ b/server/AyaNova/biz/PickListBiz.cs @@ -7,7 +7,6 @@ using AyaNova.Util; using AyaNova.Api.ControllerHelpers; using AyaNova.Models; using AyaNova.PickList; -using EnumsNET; namespace AyaNova.Biz {