public async Task <bool> EditPasswordAsync(UserEditPasswordVM model) { var dbUser = uow.UserRepository.Get(x => x.Id == model.xID).FirstOrDefault(); if (dbUser == null) { throw new ErrorMessageException("کاربر انتخاب شده در سیستم موجود نمیباشد"); } if (await _UserManager.CheckPasswordAsync(dbUser, model.xCurrentPassword)) { if (string.IsNullOrEmpty(model.xPassword) || model.xPassword != model.xRePassword) { throw new ErrorMessageException("رمز عبور وارد شده یکسان نمی باشد"); } var token = await _UserManager.GeneratePasswordResetTokenAsync(dbUser); await _UserManager.ResetPasswordAsync(dbUser, token, model.xPassword); return(true); } else { throw new ErrorMessageException("رمز عبور فعلی اشتباه است"); } }
public async Task <GeneralResult> EditPassword([FromBody] UserEditPasswordVM model) { var result = await _UserService.EditPasswordAsync(model); return(Ok(result)); }