Files
raven/server/AyaNova/DataList/NotificationDeliveryLogDataList.cs
2022-03-09 01:24:03 +00:00

84 lines
3.5 KiB
C#

using System.Collections.Generic;
using AyaNova.Biz;
namespace AyaNova.DataList
{
internal class NotificationDeliveryLogDataList : DataListProcessingBase
{
public NotificationDeliveryLogDataList(long translationId)
{
DefaultListAType = AyaType.OpsNotificationSettings;
SQLFrom = @"from anotifydeliverylog
left join anotifysubscription on anotifysubscription.id = anotifydeliverylog.notifysubscriptionid
left join auser on anotifysubscription.userid=auser.id";
var RoleSet = BizRoles.GetRoleSet(DefaultListAType);
AllowedRoles = RoleSet.ReadFullRecord | RoleSet.Change;
DefaultColumns = new List<string>() { "Processed", "NotifyEventType", "AyaType", "User", "Failed", "Errors" };
DefaultSortBy = new Dictionary<string, string>() { { "Processed", "-" } };
FieldDefinitions = new List<DataListFieldDefinition>();
// FieldDefinitions.Add(new DataListFieldDefinition
// {
// TKey = "NotifySubscription",
// FieldKey = "NotifySubscription",
// AType = (int)AyaType.NotifySubscription,
// UiFieldDataType = (int)UiFieldDataType.Text,
// SqlIdColumnName = "anotifysubscription.id",
// SqlValueColumnName = "anotifysubscription.id",
// IsRowId = false
// });
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "Processed",
FieldKey = "Processed",
UiFieldDataType = (int)UiFieldDataType.DateTime,
SqlValueColumnName = "anotifydeliverylog.processed"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "NotifyEventType",
FieldKey = "NotifyEventType",
UiFieldDataType = (int)UiFieldDataType.Enum,
EnumType = AyaNova.Util.StringUtil.TrimTypeName(typeof(NotifyEventType).ToString()),
SqlValueColumnName = "anotifysubscription.eventtype"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "AyaType",
FieldKey = "AyaType",
UiFieldDataType = (int)UiFieldDataType.Enum,
EnumType = AyaNova.Util.StringUtil.TrimTypeName(typeof(AyaType).ToString()),
SqlValueColumnName = "anotifysubscription.ayatype"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "Failed",
FieldKey = "Failed",
UiFieldDataType = (int)UiFieldDataType.Bool,
SqlValueColumnName = "anotifydeliverylog.fail"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "Errors",
FieldKey = "Errors",
UiFieldDataType = (int)UiFieldDataType.Text,
SqlValueColumnName = "anotifydeliverylog.error"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
FieldKey = "User",
TKey = "User",
UiFieldDataType = (int)UiFieldDataType.Text,
AType = (int)AyaType.User,
SqlIdColumnName = "auser.id",
SqlValueColumnName = "auser.name"
});
}
}//eoc
}//eons