Exemplo n.º 1
0
 public async Task SendNofitersAsync(
     string name,
     NotificationData data,
     IEnumerable <UserIdentifier> users = null,
     Guid?tenantId = null,
     NotificationSeverity severity = NotificationSeverity.Info)
 {
     await PublishNofiterAsync(name, data, users, tenantId, severity);
 }
Exemplo n.º 2
0
        /// <summary>
        /// 转换为标准数据
        /// </summary>
        /// <param name="sourceData">原始数据</param>
        /// <returns></returns>
        public static NotificationData ToStandardData(NotificationData sourceData)
        {
            var data = new NotificationData();

            data.TrySetData("title", sourceData.TryGetData("title"));
            data.TrySetData("message", sourceData.TryGetData("message"));
            data.TrySetData("description", sourceData.TryGetData("description"));
            data.TrySetData("formUser", sourceData.TryGetData("formUser"));
            data.TrySetData("createTime", sourceData.TryGetData("createTime"));
            data.TrySetData(LocalizerKey, sourceData.TryGetData(LocalizerKey));
            return(data);
        }
Exemplo n.º 3
0
        /// <summary>
        /// 转换为标准数据
        /// </summary>
        /// <param name="prefix">数据前缀</param>
        /// <param name="sourceData">原始数据</param>
        /// <returns></returns>
        public static NotificationData ToStandardData(string prefix, NotificationData sourceData)
        {
            var data = ToStandardData(sourceData);

            foreach (var property in sourceData.Properties)
            {
                if (property.Key.StartsWith(prefix))
                {
                    var key = property.Key.Replace(prefix, "");
                    data.TrySetData(key, property.Value);
                }
            }
            return(data);
        }
Exemplo n.º 4
0
 public async Task SendNofiterAsync(
     string name,
     NotificationData data,
     UserIdentifier user           = null,
     Guid?tenantId                 = null,
     NotificationSeverity severity = NotificationSeverity.Info)
 {
     if (user == null)
     {
         await PublishNofiterAsync(name, data, null, tenantId, severity);
     }
     else
     {
         await PublishNofiterAsync(name, data, new List <UserIdentifier> {
             user
         }, tenantId, severity);
     }
 }
Exemplo n.º 5
0
 protected async Task PublishNofiterAsync(
     string name,
     NotificationData data,
     IEnumerable <UserIdentifier> users = null,
     Guid?tenantId = null,
     NotificationSeverity severity = NotificationSeverity.Info)
 {
     await DistributedEventBus
     .PublishAsync(
         new NotificationEventData
     {
         TenantId     = tenantId,
         Users        = users?.ToList(),
         Name         = name,
         Data         = data,
         CreationTime = DateTime.Now,
         Severity     = severity
     });
 }
        public static NotificationData Convert(NotificationData notificationData)
        {
            if (notificationData != null)
            {
                if (notificationData.NeedLocalizer())
                {
                    var title   = JsonConvert.DeserializeObject <LocalizableStringInfo>(notificationData.TryGetData("title").ToString());
                    var message = JsonConvert.DeserializeObject <LocalizableStringInfo>(notificationData.TryGetData("message").ToString());
                    notificationData.TrySetData("title", title);
                    notificationData.TrySetData("message", message);

                    if (notificationData.Properties.TryGetValue("description", out object description) && description != null)
                    {
                        notificationData.TrySetData("description", JsonConvert.DeserializeObject <LocalizableStringInfo>(description.ToString()));
                    }
                }
            }
            else
            {
                notificationData = new NotificationData();
            }
            return(notificationData);
        }