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