From f3d4db769ba9b51b799d981511a710fd443d0e08 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期一, 21 四月 2025 12:18:03 +0800 Subject: [PATCH] Merge branch 'master' into positec --- src/mob/components/navbar/normal-navbar/menus/menuform/index.jsx | 192 ++++++++++++++++++++++++++++++------------------ 1 files changed, 120 insertions(+), 72 deletions(-) diff --git a/src/mob/components/navbar/normal-navbar/menus/menuform/index.jsx b/src/mob/components/navbar/normal-navbar/menus/menuform/index.jsx index 30d3282..60cb2b9 100644 --- a/src/mob/components/navbar/normal-navbar/menus/menuform/index.jsx +++ b/src/mob/components/navbar/normal-navbar/menus/menuform/index.jsx @@ -18,6 +18,7 @@ state = { property: this.props.menu.property || 'menu', + copyMenu: this.props.menu.copyMenuId || '', appMenus: [], } @@ -73,9 +74,9 @@ } render() { - const { menu, cols } = this.props + const { menu, cols, datatype } = this.props const { getFieldDecorator } = this.props.form - const { property, appMenus } = this.state + const { property, appMenus, copyMenu } = this.state const formItemLayout = { labelCol: { @@ -105,44 +106,6 @@ </Form.Item> </Col> <Col span={12}> - <Form.Item label="鑿滃崟鍙傛暟"> - {getFieldDecorator('MenuNo', { - initialValue: menu.MenuNo || '', - rules: [ - { - required: true, - message: '璇疯緭鍏ヨ彍鍗曞弬鏁�!' - } - ] - })(<Input placeholder={''} autoComplete="off" onPressEnter={this.handleSubmit} />)} - </Form.Item> - </Col> - <Col span={12}> - <Form.Item label="鍥炬爣"> - {getFieldDecorator('icon', { - initialValue: menu.icon || '' - })( - <MkEditIcon options={['normal', 'data', 'direction', 'edit', 'hint']} allowClear /> - )} - </Form.Item> - </Col> - <Col span={12}> - <Form.Item label={ - <Tooltip placement="topLeft" title="缁戝畾鎻愮ず瀛楁鍚庯紝浼氬湪鑿滃崟鍙充笂瑙掓樉绀烘彁绀轰俊鎭�傛敞锛氬湪娣诲姞鍥炬爣鏃舵湁鏁堛��"> - <QuestionCircleOutlined className="mk-form-tip" /> - 鎻愮ず - </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={12}> <Form.Item label="鑿滃崟灞炴��"> {getFieldDecorator('property', { initialValue: menu.property || 'menu' @@ -150,39 +113,11 @@ <Radio.Group onChange={this.changeProperty} className="over"> <Radio value="menu">鑿滃崟</Radio> <Radio value="linkmenu">鍏宠仈鑿滃崟</Radio> - <Radio value="sysmenu">绯荤粺椤�</Radio> <Radio value="link">閾炬帴</Radio> </Radio.Group> )} </Form.Item> </Col> - <Col span={12}> - <Form.Item label="闅愯棌"> - {getFieldDecorator('hidden', { - initialValue: menu.hidden || 'false' - })( - <Radio.Group> - <Radio value="false">鍚�</Radio> - <Radio value="true">鏄�</Radio> - </Radio.Group> - )} - </Form.Item> - </Col> - {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', { @@ -208,8 +143,13 @@ message: '璇烽�夋嫨鍏宠仈鑿滃崟!' }] })( - <Select> - {appMenus.map(item => (<Select.Option key={item.MenuID} value={item.MenuID}>{item.MenuName}</Select.Option>))} + <Select + showSearch + filterOption={(input, option) => option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0 || + option.props.extend.toLowerCase().indexOf(input.toLowerCase()) >= 0} + > + {appMenus.map(item => (<Select.Option key={item.MenuID} extend={item.MenuNo || ''} value={item.MenuID}>{item.MenuName}</Select.Option>))} + <Select.Option key="AIService" extend={''} value="AIService">鏅鸿兘瀹㈡湇锛堢郴缁熼〉锛�</Select.Option> </Select> )} </Form.Item> @@ -224,12 +164,120 @@ {getFieldDecorator('copyMenuId', { initialValue: menu.copyMenuId || '' })( - <Select> - {appMenus.map(item => (<Select.Option key={item.MenuID} value={item.MenuID}>{item.MenuName}</Select.Option>))} + <Select + allowClear + showSearch + dropdownMatchSelectWidth={false} + filterOption={(input, option) => option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0 || + option.props.extend.toLowerCase().indexOf(input.toLowerCase()) >= 0} + onChange={(val) => this.setState({copyMenu: val})} + > + {appMenus.map(item => (<Select.Option key={item.MenuID} extend={item.MenuNo || ''} value={item.MenuID}>{item.MenuName}</Select.Option>))} </Select> )} </Form.Item> </Col> : null} + {property === 'menu' && copyMenu ? <Col span={12}> + <Form.Item label={ + <Tooltip placement="topLeft" title="澶嶅埗鑿滃崟鏃讹紝鏄惁娓呯┖鍘熼〉闈腑鐨勫叧鑱旇彍鍗曘��"> + <QuestionCircleOutlined className="mk-form-tip" /> + 娓呯┖鍏宠仈鑿滃崟 + </Tooltip> + }> + {getFieldDecorator('clearMenu', { + initialValue: menu.clearMenu || 'true' + })( + <Radio.Group> + <Radio value="true">鏄�</Radio> + <Radio value="false">鍚�</Radio> + </Radio.Group> + )} + </Form.Item> + </Col> : null} + {/* <Col span={12}> + <Form.Item label="鑿滃崟鍙傛暟"> + {getFieldDecorator('MenuNo', { + initialValue: menu.MenuNo || '', + rules: [ + { + required: true, + message: '璇疯緭鍏ヨ彍鍗曞弬鏁�!' + } + ] + })(<Input placeholder={''} autoComplete="off" onPressEnter={this.handleSubmit} />)} + </Form.Item> + </Col> */} + <Col span={12}> + <Form.Item label="鍥炬爣"> + {getFieldDecorator('icon', { + initialValue: menu.icon || '' + })( + <MkEditIcon options={['normal', 'data', 'direction', 'edit', 'hint']} allowClear /> + )} + </Form.Item> + </Col> + {datatype === 'dynamic' ? <Col span={12}> + <Form.Item label={ + <Tooltip placement="topLeft" title="缁戝畾鎻愮ず瀛楁鍚庯紝浼氬湪鑿滃崟鍙充笂瑙掓樉绀烘彁绀轰俊鎭�傛敞锛氬湪娣诲姞鍥炬爣鏃舵湁鏁堛��"> + <QuestionCircleOutlined className="mk-form-tip" /> + 鎻愮ず + </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> : null} + <Col span={12}> + <Form.Item label="闅愯棌"> + {getFieldDecorator('hidden', { + initialValue: menu.hidden || 'false' + })( + <Radio.Group> + <Radio value="false">鍚�</Radio> + <Radio value="true">鏄�</Radio> + </Radio.Group> + )} + </Form.Item> + </Col> + {property === 'menu' || property === 'linkmenu' ? <Col span={12}> + <Form.Item label={ + <Tooltip placement="topLeft" title="鏇挎崲褰撳墠椤甸潰鎴栨墦寮�鏂伴〉闈紝鍦℉5鎴栧皬绋嬪簭涓湁鏁堛��"> + <QuestionCircleOutlined className="mk-form-tip" /> + 鎵撳紑鏂瑰紡 + </Tooltip> + }> + {getFieldDecorator('open', { + initialValue: menu.open || 'self' + })( + <Radio.Group> + <Radio value="self">鏍囩椤�</Radio> + <Radio value="blank">鏂伴〉闈�</Radio> + </Radio.Group> + )} + </Form.Item> + </Col> : null} + <Col span={12}> + <Form.Item label={ + <Tooltip placement="topLeft" title="鍦℉5鎴栧皬绋嬪簭涓湁鏁堛��"> + <QuestionCircleOutlined className="mk-form-tip" /> + 鑿滃崟鏍峰紡 + </Tooltip> + }> + {getFieldDecorator('class', { + initialValue: menu.class || 'default' + })( + <Radio.Group> + <Radio value="default">榛樿</Radio> + <Radio value="zoomIn">鏀惧ぇ</Radio> + </Radio.Group> + )} + </Form.Item> + </Col> </Row> </Form> ) -- Gitblit v1.8.0