using System.Collections.Generic; using AyaNova.Biz; namespace AyaNova.DataList { internal class EventDataList : DataListProcessingBase { public EventDataList(long translationId) { //NOTE: used this type because it's full BizFull and read only Bizrestricted only which is appropriate and there is no event type DefaultListAType = AyaType.Global; SQLFrom = "from aevent left join auser on (aevent.userid=auser.id)"; var RoleSet = BizRoles.GetRoleSet(DefaultListAType); AllowedRoles = RoleSet.ReadFullRecord | RoleSet.Change; DefaultColumns = new List() { "eventcreated", "event", "object", "AyaType", "username", "textra" }; DefaultSortBy = new Dictionary() { { "eventcreated", "-" } }; FieldDefinitions = new List(); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "EventCreated", FieldKey = "eventcreated", UiFieldDataType = (int)UiFieldDataType.DateTime, SqlValueColumnName = "aevent.created" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "Event", FieldKey = "event", UiFieldDataType = (int)UiFieldDataType.Enum, EnumType = AyaNova.Util.StringUtil.TrimTypeName(typeof(AyaEvent).ToString()), SqlValueColumnName = "aevent.ayevent" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "AyaType", FieldKey = "AyaType", UiFieldDataType = (int)UiFieldDataType.Enum, EnumType = AyaNova.Util.StringUtil.TrimTypeName(typeof(AyaType).ToString()), SqlValueColumnName = "aevent.ayatype" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "Object", FieldKey = "object", UiFieldDataType = (int)UiFieldDataType.Text, SqlIdColumnName = "aevent.ayid", SqlValueColumnName = $"AYGETNAME(aevent.ayid, aevent.ayatype,{translationId})", SqlATypeColumnName = "aevent.ayatype" }); FieldDefinitions.Add(new DataListFieldDefinition { FieldKey = "username", TKey = "User", UiFieldDataType = (int)UiFieldDataType.Text, AType = (int)AyaType.User, SqlIdColumnName = "auser.id", SqlValueColumnName = "auser.name" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "EventTextra", FieldKey = "textra", UiFieldDataType = (int)UiFieldDataType.Text, SqlValueColumnName = "aevent.textra" }); } }//eoc }//eons