using Mapster; using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging.Abstractions; using NPin.Framework.Upms.Domain.Entities; using NPin.Framework.Upms.Domain.Shared.Etos; using Volo.Abp.DependencyInjection; using Volo.Abp.Domain.Repositories; using Volo.Abp.EventBus; namespace NPin.Framework.Upms.Domain.EventHandlers; public class LoginEventHandler : ILocalEventHandler, ITransientDependency { public ILogger Logger { get; set; } private readonly IRepository _repository; public LoginEventHandler(IRepository repository) { Logger = NullLogger.Instance; _repository = repository; } public async Task HandleEventAsync(LoginEventArgs eventData) { Logger.LogInformation($"用户[{eventData.UserId}:{eventData.Username}]登录"); var loginLogEntity = eventData.Adapt(); loginLogEntity.LoginMsg = $"{eventData.Username}登录系统"; loginLogEntity.LoginUser = eventData.Username; loginLogEntity.LoginUserId = eventData.UserId; // 插入 await _repository.InsertAsync(loginLogEntity); } }