From 9c9561fb1772f51e764ec7eade68501739b75111 Mon Sep 17 00:00:00 2001 From: "853931625@qq.com" Date: Wed, 29 Jul 2026 17:42:49 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BF=AE=E6=94=B9=E5=AF=86?= =?UTF-8?q?=E7=A0=81=E8=8F=9C=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 +- src/api/user/index.js | 8 + .../Enterprise/ChangePassword/index.js | 11 ++ .../Container/Enterprise/User/Add/index.js | 2 +- .../Stakeholder/ChangePassword/index.js | 11 ++ .../Supervision/ChangePassword/index.js | 145 ++++++++++++++++++ .../Supervision/Supervision/User/Add/index.js | 3 +- 7 files changed, 179 insertions(+), 3 deletions(-) create mode 100644 src/pages/Container/Enterprise/ChangePassword/index.js create mode 100644 src/pages/Container/Stakeholder/ChangePassword/index.js create mode 100644 src/pages/Container/Supervision/ChangePassword/index.js diff --git a/package.json b/package.json index 5c0eb1b..0b93ff2 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,7 @@ "react": "^18.2.0", "react-dom": "^18.2.0", "relation-graph": "^2.2.11", - "zy-react-library": "^1.3.26" + "zy-react-library": "1.3.26" }, "devDependencies": { "@antfu/eslint-config": "^5.4.1", diff --git a/src/api/user/index.js b/src/api/user/index.js index 1172e47..2f04381 100644 --- a/src/api/user/index.js +++ b/src/api/user/index.js @@ -61,6 +61,14 @@ export const userChangePassword = declareRequest( "userLoading", "Post > @/basicInfo/user/changePassword/{id}", ); +export const userGetInfo = declareRequest( + "userLoading", + "Get > /basicInfo/user/getInfo", +); +export const userUpdatePassword = declareRequest( + "userLoading", + "Post > @/basicInfo/user/updatePassword", +); // 校验用户名 手机号 身份证号是否重复 export const verifyUser = declareRequest( diff --git a/src/pages/Container/Enterprise/ChangePassword/index.js b/src/pages/Container/Enterprise/ChangePassword/index.js new file mode 100644 index 0000000..d62de0e --- /dev/null +++ b/src/pages/Container/Enterprise/ChangePassword/index.js @@ -0,0 +1,11 @@ +import ListPage from "~/pages/Container/Supervision/ChangePassword"; + +function List(props) { + return ( + + ); +} + +export default List; diff --git a/src/pages/Container/Enterprise/User/Add/index.js b/src/pages/Container/Enterprise/User/Add/index.js index 3013f0c..3c8ab9d 100644 --- a/src/pages/Container/Enterprise/User/Add/index.js +++ b/src/pages/Container/Enterprise/User/Add/index.js @@ -77,7 +77,7 @@ function Add(props) { ? [ { name: data.name, - url: process.env.app["fileUrl"] + data.userAvatarUrl, + url: window.fileUrl + data.userAvatarUrl, }, ] : []; diff --git a/src/pages/Container/Stakeholder/ChangePassword/index.js b/src/pages/Container/Stakeholder/ChangePassword/index.js new file mode 100644 index 0000000..d62de0e --- /dev/null +++ b/src/pages/Container/Stakeholder/ChangePassword/index.js @@ -0,0 +1,11 @@ +import ListPage from "~/pages/Container/Supervision/ChangePassword"; + +function List(props) { + return ( + + ); +} + +export default List; diff --git a/src/pages/Container/Supervision/ChangePassword/index.js b/src/pages/Container/Supervision/ChangePassword/index.js new file mode 100644 index 0000000..950ff79 --- /dev/null +++ b/src/pages/Container/Supervision/ChangePassword/index.js @@ -0,0 +1,145 @@ +import { Connect } from "@cqsjjb/jjb-dva-runtime"; +import { Button, Form, Input, message } from "antd"; +import { useEffect, useState } from "react"; +import Page from "zy-react-library/components/Page"; + +import { NS_USER } from "~/enumerate/namespace"; + +const PASSWORD_PATTERN = /^(?=.*[A-Z])(?=.*[a-z])(?=.*\d)(?=.*[!#@*&])[A-Za-z\d!#@*&]{8,16}$/; + +function ChangePassword(props) { + const [form] = Form.useForm(); + const [userId, setUserId] = useState(); + const [submitting, setSubmitting] = useState(false); + + useEffect(() => { + + const getCurrentUser = async () => { + const res = await props["userGetInfo"](); + if (res.success && res.data) { + setUserId(res.data.id); + } + }; + + getCurrentUser(); + }, []); + + const onSubmit = async (values) => { + if (!userId) { + message.error("未获取到当前用户信息,请刷新页面后重试"); + return; + } + + setSubmitting(true); + try { + const res = await props["userUpdatePassword"]({ + ...values, + id: userId, + }); + if (res.success) { + message.success("密码修改成功请重新登录!"); + window.base.call.loginOut({ quick: true }); + form.resetFields(); + } + } + finally { + setSubmitting(false); + } + }; + + return ( + +
+ + + + + ({ + validator(_, value) { + if (!value || value !== getFieldValue("password")) { + return Promise.resolve(); + } + return Promise.reject(new Error("新密码不能与原密码相同")); + }, + }), + ]} + > + + + + ({ + validator(_, value) { + if (!value || value === getFieldValue("newPassword")) { + return Promise.resolve(); + } + return Promise.reject(new Error("两次输入的新密码不一致")); + }, + }), + ]} + > + + + + + + +
+
+ ); +} + +export default Connect([NS_USER], true)(ChangePassword); diff --git a/src/pages/Container/Supervision/Supervision/User/Add/index.js b/src/pages/Container/Supervision/Supervision/User/Add/index.js index 2276713..e31ec6b 100644 --- a/src/pages/Container/Supervision/Supervision/User/Add/index.js +++ b/src/pages/Container/Supervision/Supervision/User/Add/index.js @@ -95,7 +95,7 @@ function Add(props) { ? [ { name: data.name, - url: process.env.app["fileUrl"] + data.userAvatarUrl, + url: window.fileUrl + data.userAvatarUrl, }, ] : []; @@ -103,6 +103,7 @@ function Add(props) { filepath, ...data, }; + values.faceFile = filepath; setUserID(data.userId); form.setFieldsValue({