feat 增加密码重置功能
This commit is contained in:
@@ -98,4 +98,14 @@ public class UsersController : ControllerBase
|
||||
{
|
||||
await _userService.ResetLoginTenantAsync(request);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 密码重置
|
||||
/// </summary>
|
||||
/// <param name="request"></param>
|
||||
[HttpPost("password/reset")]
|
||||
public async Task ResetPasswordAsync(UserResetPasswordRequest request)
|
||||
{
|
||||
await _userService.ResetPasswordAsync(request);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
namespace Dlhis.Sys.Identity.Request;
|
||||
|
||||
public class UserResetPasswordRequest
|
||||
{
|
||||
public int UserId { get; set; }
|
||||
public string Password { get; set; }
|
||||
}
|
||||
@@ -22,4 +22,6 @@ public interface IUserService : IScopeDependency
|
||||
Task CreateUserAsync(UserCreateRequest request);
|
||||
|
||||
Task ResetLoginTenantAsync(UserResetLoginTenantRequest request);
|
||||
|
||||
Task ResetPasswordAsync(UserResetPasswordRequest request);
|
||||
}
|
||||
@@ -158,4 +158,19 @@ public class UserService : IUserService
|
||||
.Where(x => x.ClaimType == "tenants")
|
||||
.ExecuteCommandAsync();
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public async Task ResetPasswordAsync(UserResetPasswordRequest request)
|
||||
{
|
||||
request.Password ??= "123456";
|
||||
var user = await _identityDbContext.Queryable<UserEntity>().SingleAsync(x => x.Id == request.UserId);
|
||||
if (user != null)
|
||||
{
|
||||
var hasher = new PasswordHasher<UserEntity>();
|
||||
var password = hasher.HashPassword(user, request.Password);
|
||||
user.PasswordHash = password;
|
||||
|
||||
await _identityDbContext.UpdateAsync(user);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user