From 3d4bc79a80eb9cff0f8ef7c53f9685c9ff9fbd2d Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期四, 02 九月 2021 23:17:36 +0800
Subject: [PATCH] 2021-09-02

---
 src/mob/components/navbar/normal-navbar/menusetting/menuform/index.jsx |   67 +++++++++++++++++++++++++--------
 1 files changed, 50 insertions(+), 17 deletions(-)

diff --git a/src/mob/components/navbar/normal-navbar/menusetting/menuform/index.jsx b/src/mob/components/navbar/normal-navbar/menusetting/menuform/index.jsx
index 8bf7a82..ebc060f 100644
--- a/src/mob/components/navbar/normal-navbar/menusetting/menuform/index.jsx
+++ b/src/mob/components/navbar/normal-navbar/menusetting/menuform/index.jsx
@@ -2,13 +2,16 @@
 import PropTypes from 'prop-types'
 import { Form, Row, Col, Input, Radio, Tooltip, Icon, Select } from 'antd'
 
+import asyncComponent from '@/utils/asyncComponent'
 import './index.scss'
 
 const { TextArea } = Input
+const MkIcon = asyncComponent(() => import('@/components/mkIcon'))
 
 class SettingForm extends Component {
   static propTpyes = {
-    menu: PropTypes.object,    // 鍗$墖琛屼俊鎭�
+    menu: PropTypes.object,      // 鑿滃崟淇℃伅
+    cols: PropTypes.array,       // 瀛楁闆�
     inputSubmit: PropTypes.func  // 鍥炶溅浜嬩欢
   }
 
@@ -22,7 +25,7 @@
     if (appMenus) {
       try {
         appMenus = JSON.parse(appMenus)
-      } catch {
+      } catch (e) {
         appMenus = []
       }
     } else {
@@ -69,7 +72,7 @@
   }
 
   render() {
-    const { menu } = this.props
+    const { menu, cols } = this.props
     const { getFieldDecorator } = this.props.form
     const { property, appMenus } = this.state
 
@@ -85,9 +88,9 @@
     }
 
     return (
-      <Form {...formItemLayout}>
+      <Form {...formItemLayout} className="mob-menu-form">
         <Row gutter={24}>
-          <Col span={22}>
+          <Col span={12}>
             <Form.Item label="鑿滃崟鍚嶇О">
               {getFieldDecorator('name', {
                 initialValue: menu.name,
@@ -100,7 +103,7 @@
               })(<Input placeholder={''} autoComplete="off" onPressEnter={this.handleSubmit} />)}
             </Form.Item>
           </Col>
-          <Col span={22}>
+          <Col span={12}>
             <Form.Item label="鑿滃崟鍙傛暟">
               {getFieldDecorator('MenuNo', {
                 initialValue: menu.MenuNo || '',
@@ -113,31 +116,46 @@
               })(<Input placeholder={''} autoComplete="off" onPressEnter={this.handleSubmit} />)}
             </Form.Item>
           </Col>
-          <Col span={22}>
+          <Col span={12}>
             <Form.Item label="鍥炬爣">
               {getFieldDecorator('icon', {
                 initialValue: menu.icon || ''
               })(
-                <Select>
-                  {appMenus.map(item => (<Select.Option key={item.MenuID} value={item.MenuID}>{item.MenuName}</Select.Option>))}
+                <MkIcon allowClear />
+              )}
+            </Form.Item>
+          </Col>
+          <Col span={12}>
+            <Form.Item label={
+              <Tooltip placement="topLeft" title="缁戝畾鎻愮ず瀛楁鍚庯紝浼氬湪鑿滃崟鍙充笂瑙掓樉绀烘彁绀轰俊鎭�傛敞锛氬湪娣诲姞鍥炬爣鏃舵湁鏁堛��">
+                <Icon type="question-circle" style={{color: '#c49f47', marginRight: '3px'}}/>
+                鎻愮ず
+              </Tooltip>
+            }>
+              {getFieldDecorator('tip', {
+                initialValue: menu.tip || ''
+              })(
+                <Select allowClear>
+                  {cols.map(item => <Select.Option key={item.uuid} value={item.field}>{item.label}</Select.Option>)}
                 </Select>
               )}
             </Form.Item>
           </Col>
-          <Col span={22}>
+          <Col span={12}>
             <Form.Item label="鑿滃崟灞炴��">
               {getFieldDecorator('property', {
                 initialValue: menu.property || 'menu'
               })(
-                <Radio.Group onChange={this.changeProperty}>
+                <Radio.Group onChange={this.changeProperty} className="over">
                   <Radio value="menu">鑿滃崟</Radio>
-                  <Radio value="link">閾炬帴</Radio>
                   <Radio value="linkmenu">鍏宠仈鑿滃崟</Radio>
+                  <Radio value="sysmenu">绯荤粺椤�</Radio>
+                  <Radio value="link">閾炬帴</Radio>
                 </Radio.Group>
               )}
             </Form.Item>
           </Col>
-          <Col span={22}>
+          <Col span={12}>
             <Form.Item label="闅愯棌">
               {getFieldDecorator('hidden', {
                 initialValue: menu.hidden || 'false'
@@ -149,8 +167,23 @@
               )}
             </Form.Item>
           </Col>
-          {property === 'link' ? <Col span={22}>
-            <Form.Item label="閾炬帴鍦板潃">
+          {property === 'sysmenu' ? <Col span={12}>
+            <Form.Item label="绯荤粺椤甸潰">
+              {getFieldDecorator('sysmenu', {
+                initialValue: menu.sysmenu || '',
+                rules: [{
+                  required: true,
+                  message: '璇烽�夋嫨绯荤粺椤甸潰!'
+                }]
+              })(
+                <Select>
+                  <Select.Option value="AIService">鏅鸿兘瀹㈡湇</Select.Option>
+                </Select>
+              )}
+            </Form.Item>
+          </Col> : null}
+          {property === 'link' ? <Col span={24}>
+            <Form.Item label="閾炬帴鍦板潃" className="textarea">
               {getFieldDecorator('link', {
                 initialValue: menu.link || '',
                 rules: [{
@@ -160,7 +193,7 @@
               })(<TextArea rows={2} />)}
             </Form.Item>
           </Col> : null}
-          {property === 'linkmenu' ? <Col span={22}>
+          {property === 'linkmenu' ? <Col span={12}>
             <Form.Item label={
               <Tooltip placement="topLeft" title="鍏宠仈褰撳墠app涓凡鏈夌殑鑿滃崟銆�">
                 <Icon type="question-circle" style={{color: '#c49f47', marginRight: '3px'}}/>
@@ -180,7 +213,7 @@
               )}
             </Form.Item>
           </Col> : null}
-          {property === 'menu' ? <Col span={22}>
+          {property === 'menu' ? <Col span={12}>
             <Form.Item label={
               <Tooltip placement="topLeft" title="澶嶅埗鑿滃崟浠呭湪褰撳墠鑿滃崟涓嶅瓨鍦ㄦ椂鏈夋晥銆�">
                 <Icon type="question-circle" style={{color: '#c49f47', marginRight: '3px'}}/>

--
Gitblit v1.8.0