From ac4341ea6b66ae02427d39d35f41d42d78b2eb2e Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期五, 14 二月 2025 10:08:32 +0800
Subject: [PATCH] #

---
 zy-asrs-flow/src/pages/account/setting/components/base.jsx |   85 ++++++++++++++++++------------------------
 1 files changed, 36 insertions(+), 49 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 f7e3925..566e617 100644
--- a/zy-asrs-flow/src/pages/account/setting/components/base.jsx
+++ b/zy-asrs-flow/src/pages/account/setting/components/base.jsx
@@ -2,28 +2,30 @@
   ProForm,
   ProFormText,
   ProFormTextArea,
-  ProFormSelect
+  ProFormSelect,
+  ProFormDigit
 } from '@ant-design/pro-components';
-import { Button, Input, message, Upload } from 'antd';
+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'
+import defaultAvat from '/public/img/defaultAva.jpg'
 
-const handleUpdate = async (val) => {
-  const hide = message.loading('姝e湪鏇存柊');
+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('鏇存柊鎴愬姛');
+      message.success(intl.formatMessage({ id: 'page.update.success', defaultMessage: '鏇存柊鎴愬姛' }));
       return true;
     } else {
       message.error(resp.msg);
       return false;
     }
   } catch (error) {
-    message.error('閰嶇疆澶辫触璇烽噸璇曪紒');
+    message.error(intl.formatMessage({ id: 'page.update.fail', defaultMessage: '鏇存柊澶辫触璇烽噸璇曪紒' }));
     return false;
   } finally {
     hide();
@@ -31,9 +33,11 @@
 };
 
 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 }) => (
     <>
@@ -72,14 +76,12 @@
       if (currentUser.avatar) {
         return currentUser.avatar;
       }
-      const url = { defaultAvat };
-      return url;
     }
     return defaultAvat;
   };
 
-  const handleFinish = async () => {
-    handleUpdate();
+  const handleFinish = async (values) => {
+    handleUpdate(values, intl);
   };
 
   return (
@@ -88,120 +90,105 @@
         <>
           <div className={styles.left}>
             <ProForm
+              form={form}
               layout="vertical"
               onFinish={handleFinish}
               submitter={{
                 searchConfig: {
-                  submitText: '鏇存柊鍩烘湰淇℃伅',
+                  submitText: intl.formatMessage({ id: 'personal.base.button.name', defaultMessage: '鏇存柊鍩烘湰淇℃伅' }),
                 },
                 render: (_, dom) => dom[1],
               }}
               initialValues={{
                 ...currentUser,
-                // phone: currentUser?.phone.split('-'),
               }}
               hideRequiredMark
             >
+              <ProFormDigit
+                name="id"
+                disabled
+                hidden={true}
+              />
               <ProFormText
                 width="md"
                 name="username"
-                label="璐﹀彿"
+                label={intl.formatMessage({ id: 'common.username', defaultMessage: "璐﹀彿" })}
                 disabled
                 rules={[
                   {
                     required: true,
-                    message: '璇疯緭鍏ユ偍鐨勮处鍙�!',
                   },
                 ]}
               />
               <ProFormText
                 width="md"
                 name="nickname"
-                label="鍚嶇О"
+                label={intl.formatMessage({ id: 'common.nickname', defaultMessage: "鍚嶇О" })}
                 rules={[
                   {
                     required: true,
-                    message: '璇疯緭鍏ユ偍鐨勫悕绉�!',
                   },
                 ]}
               />
               <ProFormSelect
                 width="md"
                 name="sex"
-                label="鎬у埆"
+                label={intl.formatMessage({ id: 'common.sex', defaultMessage: "鎬у埆" })}
                 colProps={{ md: 12, xl: 12 }}
-                placeholder="璇烽�夋嫨"
                 options={[
-                  { label: '鏈煡', value: 0 },
-                  { label: '鐢�', value: 1 },
-                  { label: '濂�', value: 2 },
+                  { 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="鎵嬫満鍙�"
+                label={intl.formatMessage({ id: 'common.phone', defaultMessage: "鎵嬫満鍙�" })}
                 rules={[
                   {
-                    required: true,
-                    message: '璇疯緭鍏ユ偍鐨勬墜鏈哄彿!',
+                    required: false,
                   },
                 ]}
               />
               <ProFormText
                 width="md"
                 name="email"
-                label="閭"
+                label={intl.formatMessage({ id: 'common.email', defaultMessage: "閭" })}
                 rules={[
                   {
-                    required: true,
-                    message: '璇疯緭鍏ユ偍鐨勯偖绠�!',
+                    required: false,
                   },
                 ]}
               />
               <ProFormText
                 width="md"
                 name="realName"
-                label="鐪熷疄濮撳悕"
+                label={intl.formatMessage({ id: 'common.realname', defaultMessage: "鐪熷疄濮撳悕" })}
                 rules={[
                   {
-                    required: true,
-                    message: '璇疯緭鍏ユ偍鐨勭湡瀹炲鍚�!',
-                  },
-                ]}
-              />
-              <ProFormText
-                width="md"
-                name="realName"
-                label="鐪熷疄濮撳悕"
-                rules={[
-                  {
-                    required: true,
-                    message: '璇疯緭鍏ユ偍鐨勭湡瀹炲鍚�!',
+                    required: false,
                   },
                 ]}
               />
               <ProFormText
                 width="md"
                 name="idCard"
-                label="韬唤璇佸彿"
+                label={intl.formatMessage({ id: 'common.idcard', defaultMessage: "韬唤璇佸彿" })}
                 rules={[
                   {
-                    required: true,
-                    message: '璇疯緭鍏ユ偍鐨勮韩浠借瘉鍙�!',
+                    required: false,
                   },
                 ]}
               />
               <ProFormTextArea
                 name="introduction"
-                label="涓汉绠�浠�"
+                label={intl.formatMessage({ id: 'common.introduction', defaultMessage: "涓汉绠�浠�" })}
                 rules={[
                   {
-                    required: true,
-                    message: '璇疯緭鍏ヤ釜浜虹畝浠�!',
+                    required: false,
                   },
                 ]}
-                placeholder="涓汉绠�浠�"
               />
             </ProForm>
           </div>

--
Gitblit v1.9.1