public async Task <IActionResult> UpdatePasswordAsync([FromBody] UpdatePasswordResource resource) { if (!ModelState.IsValid) { return(BadRequest(new ErrorResource(StatusCodes.Status400BadRequest, ModelState.GetErrorMessages()))); } var id = 0; if (HttpContext.User.Identity is ClaimsIdentity identity) { id = int.Parse(identity.FindFirst("UserId").Value); } var response = await _userService.UpdatePasswordAsync(id, resource.OldPassword, resource.NewPassword); if (!response.Success) { return(StatusCode(response.StatusCode, new ErrorResource(response.StatusCode, response.Message))); } var userResource = _mapper.Map <User, UserResource>(response.Resource); return(Ok(userResource)); }
public async Task <IActionResult> UpdatePasswordAsync([FromBody] UpdatePasswordResource updatePasswordResource) { try { var result = await _userService.UpdatePasswordAsync( id : _userDetails.Id, password : updatePasswordResource.Password, oldPassword : updatePasswordResource.OldPassword); if (!result.Success) { return(BadRequest(new FailureResponse(result.Messages))); } else { return(Ok(new SuccessResponse(result.Messages))); } } catch (Exception ex) { return(StatusCode(StatusCodes.Status500InternalServerError, new FailureResponse($"Internal Server Error: {ex.Message}"))); } }