diff --git a/src/pages/src/components/ChangePassword.vue b/src/pages/src/components/ChangePassword.vue
new file mode 100644
index 000000000..3fb9e7565
--- /dev/null
+++ b/src/pages/src/components/ChangePassword.vue
@@ -0,0 +1,111 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ 两次输入的密码不一致,请重新输入
+
+
+
+
+
+
+
+
diff --git a/src/pages/src/http/personalCenterFiles.ts b/src/pages/src/http/personalCenterFiles.ts
index d742adca1..e94814b19 100644
--- a/src/pages/src/http/personalCenterFiles.ts
+++ b/src/pages/src/http/personalCenterFiles.ts
@@ -3,6 +3,7 @@ import type {
PatchUserEmailParams,
PatchUserLogoParams,
PatchUserPhoneParams,
+ PutUserPasswordParams,
} from './types/personalCenterFiles';
/**
@@ -39,3 +40,8 @@ export const getPersonalCenterUserVisibleFields = (id: string) => http.get(`/api
* 修改用户自定义字段
*/
export const putPersonalCenterUserExtrasFields = (params: any) => http.put(`/api/v1/web/personal-center/tenant-users/${params.id}/extras/`, params);
+
+/**
+ * 个人中心修改密码
+ */
+export const putPersonalCenterUserPassword = (params: PutUserPasswordParams) => http.put(`/api/v1/web/personal-center/tenant-users/${params.id}/password/`, params);
diff --git a/src/pages/src/http/types/personalCenterFiles.ts b/src/pages/src/http/types/personalCenterFiles.ts
index dcd06ed93..270a2b44a 100644
--- a/src/pages/src/http/types/personalCenterFiles.ts
+++ b/src/pages/src/http/types/personalCenterFiles.ts
@@ -24,3 +24,12 @@ export interface PatchUserLogoParams {
id: string,
logo: string,
}
+
+/**
+ * 租户用户更新密码
+ */
+export interface PutUserPasswordParams {
+ id: string,
+ old_password: string,
+ new_password: string,
+}
diff --git a/src/pages/src/views/personal-center/index.vue b/src/pages/src/views/personal-center/index.vue
index 30e9381e8..72b523116 100644
--- a/src/pages/src/views/personal-center/index.vue
+++ b/src/pages/src/views/personal-center/index.vue
@@ -90,6 +90,9 @@