From c635d78b479510ebe2556a420948effcd30a0731 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期六, 21 十二月 2024 18:40:43 +0800
Subject: [PATCH] 新建德森项目分支
---
zy-asrs-flow/src/pages/account/setting/components/base.jsx | 415 +++++++++++++++++++++++++++++------------------------------
1 files changed, 204 insertions(+), 211 deletions(-)
diff --git a/zy-asrs-flow/src/pages/account/setting/components/base.jsx b/zy-asrs-flow/src/pages/account/setting/components/base.jsx
index 23b8217..475c85e 100644
--- a/zy-asrs-flow/src/pages/account/setting/components/base.jsx
+++ b/zy-asrs-flow/src/pages/account/setting/components/base.jsx
@@ -1,211 +1,204 @@
-import {
- ProForm,
- ProFormText,
- ProFormTextArea,
- ProFormSelect,
- ProFormDigit
-} from '@ant-design/pro-components';
-import { Button, Input, message, Upload, Form } from 'antd';
-import { FormattedMessage, useIntl } from '@umijs/max';
-import React from 'react';
-import useStyles from './index.style';
-import Http from '@/utils/http';
-
-import defaultAvat from '/public/img/defaultAva.png'
-
-const handleUpdate = async (val, intl) => {
- const hide = message.loading(intl.formatMessage({ id: 'page.updating', defaultMessage: '姝e湪鏇存柊' }));
- try {
- const resp = await Http.doPost('api/user/update', val);
- if (resp.code === 200) {
- message.success(intl.formatMessage({ id: 'page.update.success', defaultMessage: '鏇存柊鎴愬姛' }));
- return true;
- } else {
- message.error(resp.msg);
- return false;
- }
- } catch (error) {
- message.error(intl.formatMessage({ id: 'page.update.fail', defaultMessage: '鏇存柊澶辫触璇烽噸璇曪紒' }));
- return false;
- } finally {
- hide();
- }
-};
-
-const BaseView = () => {
- const intl = useIntl();
- const { styles } = useStyles();
- const [loading, setLoading] = React.useState(false);
- const [currentUser, setCurrentUser] = React.useState({});
- const [form] = Form.useForm();
-
- const AvatarView = ({ avatar }) => (
- <>
- <div className={styles.avatar_title}>澶村儚</div>
- <div className={styles.avatar}>
- <img src={avatar} alt="avatar" />
- </div>
- <Upload showUploadList={false}>
- <div className={styles.button_view}>
- {/* <Button>
- <UploadOutlined />
- 鏇存崲澶村儚
- </Button> */}
- </div>
- </Upload>
- </>
- );
-
- const queryCurrent = () => {
- setLoading(true);
- Http.doGetPromise('api/auth/user', {}, (res) => {
- setLoading(false);
- setCurrentUser(res.data);
- }).catch((err) => {
- console.error(err);
- setLoading(false);
- })
- }
-
- React.useEffect(() => {
- queryCurrent();
- }, []);
-
- const getAvatarURL = () => {
- if (currentUser) {
- if (currentUser.avatar) {
- return currentUser.avatar;
- }
- }
- return defaultAvat;
- };
-
- const handleFinish = async (values) => {
- handleUpdate(values, intl);
- };
-
- return (
- <div className={styles.baseView}>
- {loading ? null : (
- <>
- <div className={styles.left}>
- <ProForm
- form={form}
- layout="vertical"
- onFinish={handleFinish}
- submitter={{
- searchConfig: {
- submitText: intl.formatMessage({ id: 'personal.base.button.name', defaultMessage: '鏇存柊鍩烘湰淇℃伅' }),
- },
- render: (_, dom) => dom[1],
- }}
- initialValues={{
- ...currentUser,
- }}
- hideRequiredMark
- >
- <ProFormDigit
- name="id"
- disabled
- hidden={true}
- />
- <ProFormText
- width="md"
- name="username"
- label="璐﹀彿"
- disabled
- rules={[
- {
- required: true,
- message: '璇疯緭鍏ユ偍鐨勮处鍙�!',
- },
- ]}
- />
- <ProFormText
- width="md"
- name="nickname"
- label="鍚嶇О"
- rules={[
- {
- required: true,
- message: '璇疯緭鍏ユ偍鐨勫悕绉�!',
- },
- ]}
- />
- <ProFormSelect
- width="md"
- name="sex"
- label="鎬у埆"
- colProps={{ md: 12, xl: 12 }}
- options={[
- { label: '鏈煡', value: 0 },
- { label: '鐢�', value: 1 },
- { label: '濂�', value: 2 },
- ]}
- />
- <ProFormText
- width="md"
- name="phone"
- label="鎵嬫満鍙�"
- rules={[
- {
- required: false,
- message: '璇疯緭鍏ユ偍鐨勬墜鏈哄彿!',
- },
- ]}
- />
- <ProFormText
- width="md"
- name="email"
- label="閭"
- rules={[
- {
- required: false,
- message: '璇疯緭鍏ユ偍鐨勯偖绠�!',
- },
- ]}
- />
- <ProFormText
- width="md"
- name="realName"
- label="鐪熷疄濮撳悕"
- rules={[
- {
- required: false,
- message: '璇疯緭鍏ユ偍鐨勭湡瀹炲鍚�!',
- },
- ]}
- />
- <ProFormText
- width="md"
- name="idCard"
- label="韬唤璇佸彿"
- rules={[
- {
- required: false,
- message: '璇疯緭鍏ユ偍鐨勮韩浠借瘉鍙�!',
- },
- ]}
- />
- <ProFormTextArea
- name="introduction"
- label="涓汉绠�浠�"
- rules={[
- {
- required: false,
- message: '璇疯緭鍏ヤ釜浜虹畝浠�!',
- },
- ]}
- />
- </ProForm>
- </div>
- <div className={styles.right}>
- <AvatarView avatar={getAvatarURL()} />
- </div>
- </>
- )}
- </div>
- );
-};
-
-export default BaseView;
+import {
+ ProForm,
+ ProFormText,
+ ProFormTextArea,
+ ProFormSelect,
+ ProFormDigit
+} from '@ant-design/pro-components';
+import { Button, Input, message, Upload, Form } from 'antd';
+import { FormattedMessage, useIntl } from '@umijs/max';
+import React from 'react';
+import useStyles from './index.style';
+import Http from '@/utils/http';
+
+import defaultAvat from '/public/img/defaultAva.jpg'
+
+const handleUpdate = async (val, intl) => {
+ const hide = message.loading(intl.formatMessage({ id: 'page.updating', defaultMessage: '姝e湪鏇存柊' }));
+ try {
+ const resp = await Http.doPost('api/user/update', val);
+ if (resp.code === 200) {
+ message.success(intl.formatMessage({ id: 'page.update.success', defaultMessage: '鏇存柊鎴愬姛' }));
+ return true;
+ } else {
+ message.error(resp.msg);
+ return false;
+ }
+ } catch (error) {
+ message.error(intl.formatMessage({ id: 'page.update.fail', defaultMessage: '鏇存柊澶辫触璇烽噸璇曪紒' }));
+ return false;
+ } finally {
+ hide();
+ }
+};
+
+const BaseView = () => {
+ const intl = useIntl();
+ const { styles } = useStyles();
+ const [loading, setLoading] = React.useState(false);
+ const [currentUser, setCurrentUser] = React.useState({});
+ const [form] = Form.useForm();
+
+ const AvatarView = ({ avatar }) => (
+ <>
+ <div className={styles.avatar_title}>澶村儚</div>
+ <div className={styles.avatar}>
+ <img src={avatar} alt="avatar" />
+ </div>
+ <Upload showUploadList={false}>
+ <div className={styles.button_view}>
+ {/* <Button>
+ <UploadOutlined />
+ 鏇存崲澶村儚
+ </Button> */}
+ </div>
+ </Upload>
+ </>
+ );
+
+ const queryCurrent = () => {
+ setLoading(true);
+ Http.doGetPromise('api/auth/user', {}, (res) => {
+ setLoading(false);
+ setCurrentUser(res.data);
+ }).catch((err) => {
+ console.error(err);
+ setLoading(false);
+ })
+ }
+
+ React.useEffect(() => {
+ queryCurrent();
+ }, []);
+
+ const getAvatarURL = () => {
+ if (currentUser) {
+ if (currentUser.avatar) {
+ return currentUser.avatar;
+ }
+ }
+ return defaultAvat;
+ };
+
+ const handleFinish = async (values) => {
+ handleUpdate(values, intl);
+ };
+
+ return (
+ <div className={styles.baseView}>
+ {loading ? null : (
+ <>
+ <div className={styles.left}>
+ <ProForm
+ form={form}
+ layout="vertical"
+ onFinish={handleFinish}
+ submitter={{
+ searchConfig: {
+ submitText: intl.formatMessage({ id: 'personal.base.button.name', defaultMessage: '鏇存柊鍩烘湰淇℃伅' }),
+ },
+ render: (_, dom) => dom[1],
+ }}
+ initialValues={{
+ ...currentUser,
+ }}
+ hideRequiredMark
+ >
+ <ProFormDigit
+ name="id"
+ disabled
+ hidden={true}
+ />
+ <ProFormText
+ width="md"
+ name="username"
+ label={intl.formatMessage({ id: 'common.username', defaultMessage: "璐﹀彿" })}
+ disabled
+ rules={[
+ {
+ required: true,
+ },
+ ]}
+ />
+ <ProFormText
+ width="md"
+ name="nickname"
+ label={intl.formatMessage({ id: 'common.nickname', defaultMessage: "鍚嶇О" })}
+ rules={[
+ {
+ required: true,
+ },
+ ]}
+ />
+ <ProFormSelect
+ width="md"
+ name="sex"
+ label={intl.formatMessage({ id: 'common.sex', defaultMessage: "鎬у埆" })}
+ colProps={{ md: 12, xl: 12 }}
+ options={[
+ { label: intl.formatMessage({ id: 'common.undefined', defaultMessage: "鏈煡" }), value: 0 },
+ { label: intl.formatMessage({ id: 'common.male', defaultMessage: '鐢�' }), value: 1 },
+ { label: intl.formatMessage({ id: 'common.female', defaultMessage: '濂�' }), value: 2 },
+ ]}
+ />
+ <ProFormText
+ width="md"
+ name="phone"
+ label={intl.formatMessage({ id: 'common.phone', defaultMessage: "鎵嬫満鍙�" })}
+ rules={[
+ {
+ required: false,
+ },
+ ]}
+ />
+ <ProFormText
+ width="md"
+ name="email"
+ label={intl.formatMessage({ id: 'common.email', defaultMessage: "閭" })}
+ rules={[
+ {
+ required: false,
+ },
+ ]}
+ />
+ <ProFormText
+ width="md"
+ name="realName"
+ label={intl.formatMessage({ id: 'common.realname', defaultMessage: "鐪熷疄濮撳悕" })}
+ rules={[
+ {
+ required: false,
+ },
+ ]}
+ />
+ <ProFormText
+ width="md"
+ name="idCard"
+ label={intl.formatMessage({ id: 'common.idcard', defaultMessage: "韬唤璇佸彿" })}
+ rules={[
+ {
+ required: false,
+ },
+ ]}
+ />
+ <ProFormTextArea
+ name="introduction"
+ label={intl.formatMessage({ id: 'common.introduction', defaultMessage: "涓汉绠�浠�" })}
+ rules={[
+ {
+ required: false,
+ },
+ ]}
+ />
+ </ProForm>
+ </div>
+ <div className={styles.right}>
+ <AvatarView avatar={getAvatarURL()} />
+ </div>
+ </>
+ )}
+ </div>
+ );
+};
+
+export default BaseView;
--
Gitblit v1.9.1