Files
IM_NEW/User.WebApi/Applications/EventHandler/UserProfileUpdateHandler.cs
2026-05-09 17:06:30 +08:00

33 lines
1.1 KiB
C#

using IdentityService.Domain.Events;
using IM.Commons.IntegrationEvents;
using MassTransit;
using MediatR;
namespace IdentityService.WebApi.Applications.EventHandler
{
public class UserProfileUpdateHandler : INotificationHandler<UserProfileUpdateDomainEvent>
{
private readonly IPublishEndpoint endpoint;
public UserProfileUpdateHandler(IPublishEndpoint endpoint)
{
this.endpoint = endpoint;
}
public async Task Handle(UserProfileUpdateDomainEvent notification, CancellationToken cancellationToken)
{
await endpoint.Publish(new UserProfileUpdateEvent
{
CorrelationId = notification.User.Id,
Avatar = notification.User.Avatar,
Description = notification.User.Description,
Email = notification.User.Email,
NickName = notification.User.NickName,
Phone = notification.User.PhoneNumber,
Status = notification.User.Status.ToString(),
UserId = notification.User.Id
});
}
}
}