feat: fix bug that failed to set password after changing username (#2296)

* fix: failed to set password after changing username

When we add a new member to an organization using Casdoor, Casdoor will automatically generate a member with a random username, such as "user_qvducc". When we change the username, for example, to "yunshu", an issue arises where we are unable to successfully edit the password. This is because Casdoor searches for a user based on `owner/username`, and before any changes are saved, the username in the database remains "user_qvducc". However, the frontend uses `orgName/yunshu` instead of `orgName/user_qvducc` to send the request to change the password. As a result, the backend cannot find the user and the password change fails.

* Update user.go

---------

Co-authored-by: hsluoyz <hsluoyz@qq.com>
This commit is contained in:
YunShu
2023-09-03 00:04:48 +08:00
committed by GitHub
parent b0aaf09ef1
commit 559a91e8ee
3 changed files with 7 additions and 2 deletions

View File

@ -26,6 +26,7 @@ export const PasswordModal = (props) => {
const [newPassword, setNewPassword] = React.useState("");
const [rePassword, setRePassword] = React.useState("");
const {user} = props;
const {userName} = props;
const {organization} = props;
const {account} = props;
@ -90,7 +91,7 @@ export const PasswordModal = (props) => {
return;
}
UserBackend.setPassword(user.owner, user.name, oldPassword, newPassword)
UserBackend.setPassword(user.owner, userName, oldPassword, newPassword)
.then((res) => {
if (res.status === "ok") {
Setting.showMessage("success", i18next.t("user:Password set successfully"));