using LiteCharms.Features.Shop; using LiteCharms.Features.Shop.Notifications; using static LiteCharms.Features.Email.Extensions.Constants; namespace LiteCharms.Features.Email.Events.Handlers; public class SendShopEmailEnquiryEventHandler(NotificationService notificationService) : INotificationHandler { public async ValueTask Handle(SendShopEmailEnquiryEvent notification, CancellationToken cancellationToken) => await notificationService.CreateNotificationAsync(new Shop.Notifications.Models.CreateNotification { CorrelationId = notification.CorrelationId, CorrelationIdType = CorrelationIdTypes.None, Direction = NotificationDirection.Outgoing, IsHtml = false, IsInternal = true, Message = notification.Message, Platform = NotificationPlatforms.Email, Priority = notification.Priority, Subject = notification.Subject!, Sender = notification.SenderName!, SenderAddress = notification.SenderAddress!, Recipient = ShopEmailFromName, RecipientAddress = ShopEmailFromAddress }, cancellationToken); }