update 实现修改密码. 并对一些用户填写的格式进行了验证

This commit is contained in:
2021-05-09 20:00:50 +08:00
parent 57e1a4231d
commit 76a74dd63f
19 changed files with 462 additions and 53 deletions

View File

@@ -46,11 +46,13 @@ namespace Ewide.Core.Service
/// <summary>
/// 邮箱
/// </summary>
[RegularExpression(@"^\w{3,}(\.\w+)*@[A-z0-9]+(\.[A-z]{2,5}){1,2}$", ErrorMessage = "")]
public virtual string Email { get; set; }
/// <summary>
/// 手机
/// </summary>
[RegularExpression(@"^((13[0-9])|(14[5,7])|(15[^4,\\D])|(17[0,1,3,6-8])|(18[0-9])|(19[8,9])|(166))[0-9]{8}$", ErrorMessage = "")]
public virtual string Phone { get; set; }
/// <summary>
@@ -120,12 +122,6 @@ namespace Ewide.Core.Service
public class ChangePasswordUserInput
{
/// <summary>
/// 用户Id
/// </summary>
[Required(ErrorMessage = "用户Id不能为空")]
public string Id { get; set; }
/// <summary>
/// 密码
/// </summary>

View File

@@ -239,7 +239,7 @@ namespace Ewide.Core.Service
nameof(SysUser.Password),
nameof(SysUser.AdminType),
nameof(SysUser.Status),
// 邮箱和手机号作为可能登录的方式,不能在此处直接进行修改
// 邮箱和手机号作为安全验证的方式,不能在此处直接进行修改
nameof(SysUser.Phone),
nameof(SysUser.Email)
}, true);
@@ -253,7 +253,7 @@ namespace Ewide.Core.Service
[HttpPost("/sysUser/updatePwd")]
public async Task UpdateUserPwd(ChangePasswordUserInput input)
{
var user = await _sysUserRep.FirstOrDefaultAsync(u => u.Id == input.Id);
var user = await _sysUserRep.FirstOrDefaultAsync(u => u.Id == _userManager.UserId);
if (MD5Encryption.Encrypt(input.Password) != user.Password)
throw Oops.Oh(ErrorCode.D1004);
if (MD5Encryption.Encrypt(input.NewPassword).Equals(user.Password))