diff --git a/modules/users/src/Volo.Abp.Users.Abstractions/Volo/Abp/Users/IUserData.cs b/modules/users/src/Volo.Abp.Users.Abstractions/Volo/Abp/Users/IUserData.cs index 66e2d2f4e8..8466c8d30e 100644 --- a/modules/users/src/Volo.Abp.Users.Abstractions/Volo/Abp/Users/IUserData.cs +++ b/modules/users/src/Volo.Abp.Users.Abstractions/Volo/Abp/Users/IUserData.cs @@ -1,9 +1,10 @@ using System; using JetBrains.Annotations; +using Volo.Abp.Data; namespace Volo.Abp.Users; -public interface IUserData +public interface IUserData : IHasExtraProperties { Guid Id { get; } diff --git a/modules/users/src/Volo.Abp.Users.Abstractions/Volo/Abp/Users/UserData.cs b/modules/users/src/Volo.Abp.Users.Abstractions/Volo/Abp/Users/UserData.cs index dbe0c7ab44..e08d6fbaf0 100644 --- a/modules/users/src/Volo.Abp.Users.Abstractions/Volo/Abp/Users/UserData.cs +++ b/modules/users/src/Volo.Abp.Users.Abstractions/Volo/Abp/Users/UserData.cs @@ -1,5 +1,8 @@ using System; +using System.Collections.Generic; using JetBrains.Annotations; +using Volo.Abp.Data; +using Volo.Abp.ObjectExtending; namespace Volo.Abp.Users; @@ -24,6 +27,8 @@ public class UserData : IUserData public string PhoneNumber { get; set; } public bool PhoneNumberConfirmed { get; set; } + + public ExtraPropertyDictionary ExtraProperties { get; } public UserData() { @@ -42,6 +47,7 @@ public class UserData : IUserData PhoneNumber = userData.PhoneNumber; PhoneNumberConfirmed = userData.PhoneNumberConfirmed; TenantId = userData.TenantId; + ExtraProperties = userData.ExtraProperties; } public UserData( @@ -54,7 +60,8 @@ public class UserData : IUserData [CanBeNull] string phoneNumber = null, bool phoneNumberConfirmed = false, Guid? tenantId = null, - bool isActive = true) + bool isActive = true, + ExtraPropertyDictionary extraProperties = null) { Id = id; UserName = userName; @@ -66,5 +73,6 @@ public class UserData : IUserData PhoneNumber = phoneNumber; PhoneNumberConfirmed = phoneNumberConfirmed; TenantId = tenantId; + ExtraProperties = extraProperties; } } diff --git a/modules/users/src/Volo.Abp.Users.Abstractions/Volo/Abp/Users/UserEto.cs b/modules/users/src/Volo.Abp.Users.Abstractions/Volo/Abp/Users/UserEto.cs index e99befa225..663540169b 100644 --- a/modules/users/src/Volo.Abp.Users.Abstractions/Volo/Abp/Users/UserEto.cs +++ b/modules/users/src/Volo.Abp.Users.Abstractions/Volo/Abp/Users/UserEto.cs @@ -6,7 +6,7 @@ using Volo.Abp.MultiTenancy; namespace Volo.Abp.Users; [EventName("Volo.Abp.Users.User")] -public class UserEto : IUserData, IHasExtraProperties, IMultiTenant +public class UserEto : IUserData, IMultiTenant { public Guid Id { get; set; } diff --git a/modules/users/src/Volo.Abp.Users.Domain/Volo/Abp/Users/AbpUserExtensions.cs b/modules/users/src/Volo.Abp.Users.Domain/Volo/Abp/Users/AbpUserExtensions.cs index 5bace83c1b..d026509dba 100644 --- a/modules/users/src/Volo.Abp.Users.Domain/Volo/Abp/Users/AbpUserExtensions.cs +++ b/modules/users/src/Volo.Abp.Users.Domain/Volo/Abp/Users/AbpUserExtensions.cs @@ -14,7 +14,8 @@ public static class AbpUserExtensions emailConfirmed: user.EmailConfirmed, phoneNumber: user.PhoneNumber, phoneNumberConfirmed: user.PhoneNumberConfirmed, - tenantId: user.TenantId + tenantId: user.TenantId, + extraProperties: user.ExtraProperties ); } } diff --git a/modules/users/src/Volo.Abp.Users.Domain/Volo/Abp/Users/IUser.cs b/modules/users/src/Volo.Abp.Users.Domain/Volo/Abp/Users/IUser.cs index 5fca8c32dc..689e60c242 100644 --- a/modules/users/src/Volo.Abp.Users.Domain/Volo/Abp/Users/IUser.cs +++ b/modules/users/src/Volo.Abp.Users.Domain/Volo/Abp/Users/IUser.cs @@ -1,11 +1,12 @@ using System; using JetBrains.Annotations; +using Volo.Abp.Data; using Volo.Abp.Domain.Entities; using Volo.Abp.MultiTenancy; namespace Volo.Abp.Users; -public interface IUser : IAggregateRoot, IMultiTenant +public interface IUser : IAggregateRoot, IMultiTenant, IHasExtraProperties { string UserName { get; }