Files
raven/server/AyaNova/PickList/UserPickList.cs
2020-03-17 18:13:46 +00:00

66 lines
2.3 KiB
C#

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;
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 table need to be specified completely
ColumnDefinitions = new List<AyaPickListFieldDefinition>();
ColumnDefinitions.Add(new AyaPickListFieldDefinition
{
LtKey = "Active",
FieldKey = "useractive",
ColumnDataType = UiFieldDataType.Bool,
SqlValueColumnName = "auser.active",
IsActiveColumn = true
});
ColumnDefinitions.Add(new AyaPickListFieldDefinition
{
LtKey = "UserName",
FieldKey = "username",
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