Merge pull request #16566 from abpframework/liangshiwei/user

Support extra properties for users module
pull/16569/head
maliming 2 years ago committed by GitHub
commit 287c353066
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -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; }

@ -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;
}
}

@ -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; }

@ -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
);
}
}

@ -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<Guid>, IMultiTenant
public interface IUser : IAggregateRoot<Guid>, IMultiTenant, IHasExtraProperties
{
string UserName { get; }

Loading…
Cancel
Save