From 8f7dd147703c853f0168b1bcfcc153a3b0a6b7e7 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期三, 28 二月 2024 14:49:04 +0800
Subject: [PATCH] #

---
 zy-asrs-flow/src/pages/system/menu/components/edit.jsx |   48 +++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 41 insertions(+), 7 deletions(-)

diff --git a/zy-asrs-flow/src/pages/system/menu/components/edit.jsx b/zy-asrs-flow/src/pages/system/menu/components/edit.jsx
index d37e82e..f19b93c 100644
--- a/zy-asrs-flow/src/pages/system/menu/components/edit.jsx
+++ b/zy-asrs-flow/src/pages/system/menu/components/edit.jsx
@@ -7,12 +7,19 @@
     ProFormDateTimePicker,
     ProFormTreeSelect
 } from '@ant-design/pro-components';
-import { Form, Modal } from 'antd';
+import { FormattedMessage, useIntl } from '@umijs/max';
+import { Form, Modal, Col } from 'antd';
 import moment from 'moment';
 import Http from '@/utils/http';
+import { createIcon } from '@/utils/icon-util'
+import IconSelector from '@/components/IconSelector';
 
 const Edit = (props) => {
+    const intl = useIntl();
     const [menuType, setMenuType] = useState(0);
+    const [menuIconName, setMenuIconName] = useState();
+    const [iconSelectorOpen, setIconSelectorOpen] = useState(false);
+
     const [form] = Form.useForm();
     const { } = props;
 
@@ -38,7 +45,11 @@
     return (
         <>
             <Modal
-                title="Edit"
+                title={
+                    Object.keys(props.values).length > 0
+                        ? intl.formatMessage({ id: 'page.edit', defaultMessage: '缂栬緫' })
+                        : intl.formatMessage({ id: 'page.add', defaultMessage: '娣诲姞' })
+                }
                 width={640}
                 forceRender
                 destroyOnClose
@@ -75,10 +86,10 @@
                         />
                         <ProFormText
                             name="name"
-                            label="鍚嶇О"
+                            label="鑿滃崟鍚嶇О"
                             colProps={{ md: 12, xl: 12 }}
                             placeholder="璇疯緭鍏�"
-                            rules={[{ required: true, message: "鍚嶇О涓嶈兘涓虹┖锛�" }]}
+                            rules={[{ required: true, message: "鑿滃崟鍚嶇О涓嶈兘涓虹┖锛�" }]}
                         />
                     </ProForm.Group>
                     <ProForm.Group>
@@ -99,7 +110,7 @@
                         <ProFormSelect
                             name="type"
                             label="绫诲瀷"
-                            colProps={{ md: 12, xl: 12 }}
+                            colProps={{ md: 10, xl: 610 }}
                             placeholder="璇烽�夋嫨"
                             options={[
                                 { label: '鑿滃崟', value: 0 },
@@ -119,12 +130,19 @@
                             colProps={{ md: 12, xl: 12 }}
                             placeholder="璇疯緭鍏�"
                         />
-                        <ProFormText
+                        <ProFormSelect
                             name="icon"
                             label="鑿滃崟鍥炬爣"
                             hidden={menuType !== 0}
                             colProps={{ md: 12, xl: 12 }}
                             placeholder="璇疯緭鍏�"
+                            valueEnum={{}}
+                            addonBefore={createIcon(menuIconName)}
+                            fieldProps={{
+                                onClick: () => {
+                                    setIconSelectorOpen(true);
+                                },
+                            }}
                         />
                     </ProForm.Group>
                     <ProForm.Group>
@@ -147,7 +165,23 @@
                         />
                     </ProForm.Group>
                 </ProForm>
-            </Modal>
+                <Modal
+                    width={800}
+                    open={iconSelectorOpen}
+                    onCancel={() => {
+                        setIconSelectorOpen(false);
+                    }}
+                    footer={null}
+                >
+                    <IconSelector
+                        onSelect={(name) => {
+                            form.setFieldsValue({ icon: name });
+                            setMenuIconName(name);
+                            setIconSelectorOpen(false);
+                        }}
+                    />
+                </Modal>
+            </Modal >
         </>
     )
 }

--
Gitblit v1.9.1