28 lines
1.2 KiB
C#
28 lines
1.2 KiB
C#
using LiteCharms.Features.Shop;
|
|
using LiteCharms.Features.Shop.Notifications;
|
|
using static LiteCharms.Features.Extensions.Email;
|
|
|
|
namespace LiteCharms.Features.Email.Events.Handlers;
|
|
|
|
public class SendShopEmailEnquiryEventHandler(NotificationService notificationService) :
|
|
INotificationHandler<SendShopEmailEnquiryEvent>
|
|
{
|
|
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);
|
|
}
|