From 8d66ff34fae5b048a6b7923cc75d34f13a08be9d Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期二, 02 八月 2022 11:42:43 +0800
Subject: [PATCH] Merge branch 'develop'

---
 src/views/design/sidemenu/thdmenuform/index.jsx |   57 ++++++++++++++++++++++++++++-----------------------------
 1 files changed, 28 insertions(+), 29 deletions(-)

diff --git a/src/templates/menuconfig/editthdmenu/menuform/index.jsx b/src/views/design/sidemenu/thdmenuform/index.jsx
similarity index 76%
copy from src/templates/menuconfig/editthdmenu/menuform/index.jsx
copy to src/views/design/sidemenu/thdmenuform/index.jsx
index c86cde8..1d68f35 100644
--- a/src/templates/menuconfig/editthdmenu/menuform/index.jsx
+++ b/src/views/design/sidemenu/thdmenuform/index.jsx
@@ -1,38 +1,43 @@
 import React, {Component} from 'react'
 import PropTypes from 'prop-types'
+import { fromJS } from 'immutable'
 import { Form, Row, Col, Input, Select } from 'antd'
-import './index.scss'
+// import './index.scss'
 
 const { TextArea } = Input
 
 class MainSearch extends Component {
   static propTpyes = {
     menu: PropTypes.object,      // 鑿滃崟淇℃伅
-    dict: PropTypes.object,      // 瀛楀吀椤�
-    supMenuList: PropTypes.any,  // 琛ㄦ牸鏁版嵁
     inputSubmit: PropTypes.func  // 鍥炶溅鎻愪氦
   }
 
   state = {
-    menu: null
+    supMenuList: []
   }
 
   UNSAFE_componentWillMount () {
     this.setState({
-      menu: this.props.menu
+      supMenuList: fromJS(this.props.menu.supMenuList).toJS()
     })
   }
 
   changeMenu = (val) => {
-    const { menu } = this.state
+    const { menu } = this.props
 
     let submenu = menu.fstMenuList.filter(item => item.MenuID === val)[0]
 
     if (submenu) {
       this.setState({
-        menu: {...menu, supMenuList: submenu.children}
+        supMenuList: submenu.children
       }, () => {
         this.props.form.setFieldsValue({ParentID: submenu.children[0] ? submenu.children[0].MenuID : ''})
+      })
+    } else {
+      this.setState({
+        supMenuList: []
+      }, () => {
+        this.props.form.setFieldsValue({ParentID: ''})
       })
     }
   }
@@ -50,16 +55,10 @@
     })
   }
 
-  onEnterSubmit = (e) => {
-    // 琛ㄥ崟鍥炶溅鎻愪氦
-    if (e.key !== 'Enter') return
-    
-    this.props.inputSubmit && this.props.inputSubmit()
-  }
-
   render() {
+    const { menu } = this.props
     const { getFieldDecorator } = this.props.form
-    const { menu } = this.state
+    const { supMenuList } = this.state
     const formItemLayout = {
       labelCol: {
         xs: { span: 24 },
@@ -72,16 +71,16 @@
     }
 
     return (
-      <Form {...formItemLayout} style={{paddingRight: '20px'}} onKeyDown={this.onEnterSubmit}>
+      <Form {...formItemLayout} style={{paddingRight: '20px'}}>
         <Row gutter={24}>
-          <Col span={24}>
+          <Col span={22}>
             <Form.Item label={'涓�绾ц彍鍗�'}>
               {getFieldDecorator('fstMenuId', {
                 initialValue: menu.fstMenuId,
                 rules: [
                   {
                     required: true,
-                    message: this.props.dict['form.required.select'] + '涓婄骇鑿滃崟!'
+                    message: '璇烽�夋嫨涓婄骇鑿滃崟!'
                   }
                 ]
               })(
@@ -97,14 +96,14 @@
               )}
             </Form.Item>
           </Col>
-          <Col span={24}>
+          <Col span={22}>
             <Form.Item label={'浜岀骇鑿滃崟'}>
               {getFieldDecorator('ParentID', {
                 initialValue: menu.ParentId,
                 rules: [
                   {
                     required: true,
-                    message: this.props.dict['form.required.select'] + '涓婄骇鑿滃崟!'
+                    message: '璇烽�夋嫨涓婄骇鑿滃崟!'
                   }
                 ]
               })(
@@ -112,47 +111,47 @@
                   showSearch
                   filterOption={(input, option) => option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0}
                 >
-                  {menu.supMenuList.map(option =>
+                  {supMenuList.map(option =>
                     <Select.Option key={option.MenuID} value={option.MenuID}>{option.text || option.MenuName}</Select.Option>
                   )}
                 </Select>
               )}
             </Form.Item>
           </Col>
-          <Col span={24}>
+          <Col span={22}>
             <Form.Item label={'鑿滃崟鍚嶇О'}>
               {getFieldDecorator('MenuName', {
                 initialValue: menu.MenuName || '',
                 rules: [
                   {
                     required: true,
-                    message: this.props.dict['form.required.input'] + '鑿滃崟鍚嶇О!'
+                    message: '璇疯緭鍏ヨ彍鍗曞悕绉�!'
                   }
                 ]
-              })(<Input placeholder="" autoFocus autoComplete="off" />)}
+              })(<Input placeholder="" autoFocus autoComplete="off" onPressEnter={() => this.props.inputSubmit()}/>)}
             </Form.Item>
           </Col>
-          <Col span={24}>
+          <Col span={22}>
             <Form.Item label={'鑿滃崟鍙傛暟'}>
               {getFieldDecorator('MenuNo', {
                 initialValue: menu.MenuNo || '',
                 rules: [
                   {
                     required: true,
-                    message: this.props.dict['form.required.input'] + '鑿滃崟鍙傛暟!'
+                    message: '璇疯緭鍏ヨ彍鍗曞弬鏁�!'
                   }
                 ]
-              })(<Input placeholder="" autoComplete="off" />)}
+              })(<Input placeholder="" autoComplete="off" onPressEnter={() => this.props.inputSubmit()}/>)}
             </Form.Item>
           </Col>
-          {menu.Template === 'NewPage' ? <Col span={24}>
+          {menu.Template === 'NewPage' ? <Col span={22}>
             <Form.Item label={'閾炬帴鍦板潃'}>
               {getFieldDecorator('url', {
                 initialValue: menu.url || '',
                 rules: [
                   {
                     required: true,
-                    message: this.props.dict['form.required.input'] + '椤甸潰鍦板潃!'
+                    message: '璇疯緭鍏ラ〉闈㈠湴鍧�!'
                   },
                   {
                     max: 1024,

--
Gitblit v1.8.0