From 25c8b70a193b3bb72256584307c6825f7472ed9c Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期四, 17 十月 2024 16:20:46 +0800 Subject: [PATCH] 2024-10-17 --- src/views/design/sidemenu/thdmenuform/index.jsx | 15 +++++++ src/views/design/sidemenu/index.jsx | 4 ++ src/components/header/index.jsx | 4 +- src/views/design/header/editfirstmenu/menuform/index.jsx | 60 ++++++++++++++++------------- 4 files changed, 54 insertions(+), 29 deletions(-) diff --git a/src/components/header/index.jsx b/src/components/header/index.jsx index 22a4c4a..5d74131 100644 --- a/src/components/header/index.jsx +++ b/src/components/header/index.jsx @@ -292,7 +292,7 @@ if (PageParam.OpenType === 'outpage' && PageParam.linkUrl) { fstItem.OpenType = 'newpage' - fstItem.src = PageParam.linkUrl + fstItem.src = window.GLOB.systemType === 'production' && PageParam.linkProUrl ? PageParam.linkProUrl : PageParam.linkUrl if (/#\/iframe\//.test(fstItem.src)) { fstItem.src = fstItem.src.replace(/@loginuid@/ig, sessionStorage.getItem('LoginUID')) fstItem.type = 'iframe' @@ -348,7 +348,7 @@ if (trdItem.type === 'NewPage') { trdItem.OpenType = 'newpage' - trdItem.src = PageParam.url || '' + trdItem.src = window.GLOB.systemType === 'production' && PageParam.proUrl ? PageParam.proUrl : PageParam.url || '' if (/#\/iframe\//.test(trdItem.src)) { trdItem.src = trdItem.src.replace(/@loginuid@/ig, sessionStorage.getItem('LoginUID')) trdItem.type = 'iframe' diff --git a/src/views/design/header/editfirstmenu/menuform/index.jsx b/src/views/design/header/editfirstmenu/menuform/index.jsx index 998f74f..b446205 100644 --- a/src/views/design/header/editfirstmenu/menuform/index.jsx +++ b/src/views/design/header/editfirstmenu/menuform/index.jsx @@ -1,5 +1,6 @@ import React, {Component} from 'react' import PropTypes from 'prop-types' +import { fromJS } from 'immutable' import { Form, Row, Col, Input, Radio } from 'antd' import Utils from '@/utils/utils.js' @@ -44,6 +45,14 @@ initVal: '', hidden: true, required: true + }, + { + type: 'text', + key: 'linkProUrl', + label: '姝e紡鍦板潃', + initVal: '', + hidden: true, + required: false } ] } @@ -53,17 +62,17 @@ if (!menu) { this.setState({ - formlist: this.state.defaultMenu + formlist: fromJS(this.state.defaultMenu).toJS() }) } else { this.setState({ - formlist: this.state.defaultMenu.map(item => { + formlist: fromJS(this.state.defaultMenu).toJS().map(item => { if (item.key === 'menuName') { item.initVal = menu.MenuName } else if (item.key === 'openType') { item.initVal = menu.PageParam.OpenType - } else if (item.key === 'linkUrl') { - item.initVal = menu.PageParam.linkUrl + } else if (item.key === 'linkUrl' || item.key === 'linkProUrl') { + item.initVal = menu.PageParam[item.key] || '' if (menu.PageParam.OpenType === 'menu') { item.hidden = true } else if (menu.PageParam.OpenType === 'outpage') { @@ -78,21 +87,13 @@ openTypeChange = (key, value) => { if (key === 'openType') { - let formlist = this.state.formlist - if (value === 'outpage') { - formlist.forEach(item => { - if (item.key === 'linkUrl') { - item.hidden = false - item.initVal = '' - } - }) - } else { - formlist.forEach(item => { - if (item.key === 'linkUrl') { - item.hidden = true - } - }) - } + let formlist = fromJS(this.state.formlist).toJS() + + formlist.forEach(item => { + if (item.key === 'linkUrl' || item.key === 'linkProUrl') { + item.hidden = value !== 'outpage' + } + }) this.setState({formlist}) } @@ -160,23 +161,28 @@ this.props.form.validateFieldsAndScroll((err, values) => { if (err) return + let PageParam = { + OpenType: values.openType + } + + if (values.openType !== 'menu') { + PageParam.linkUrl = values.linkUrl || '' + if (values.linkProUrl) { + PageParam.linkProUrl = values.linkProUrl + } + } + if (!menu) { resolve({ MenuID: Utils.getuuid(), MenuName: values.menuName, - PageParam: JSON.stringify({ - OpenType: values.openType, - linkUrl: values.openType !== 'menu' ? values.linkUrl : '' - }) + PageParam: JSON.stringify(PageParam) }) } else { resolve({ MenuID: menu.MenuID, MenuName: values.menuName, - PageParam: JSON.stringify({ - OpenType: values.openType, - linkUrl: values.openType !== 'menu' ? values.linkUrl : '' - }) + PageParam: JSON.stringify(PageParam) }) } }) diff --git a/src/views/design/sidemenu/index.jsx b/src/views/design/sidemenu/index.jsx index c8a061f..49a8a0d 100644 --- a/src/views/design/sidemenu/index.jsx +++ b/src/views/design/sidemenu/index.jsx @@ -133,6 +133,7 @@ let _cell = fromJS(cell).toJS() _cell.Template = _cell.PageParam.Template _cell.url = _cell.PageParam.url || '' + _cell.proUrl = _cell.PageParam.proUrl || '' _cell.fstMenuId = _cell.FstId _cell.supMenuList = this.props.mainMenu.children @@ -236,6 +237,9 @@ if (sysMenu.Template === 'NewPage') { PageParam.OpenType = 'NewPage' PageParam.url = res.url + if (res.proUrl) { + PageParam.proUrl = res.proUrl + } } let param = { diff --git a/src/views/design/sidemenu/thdmenuform/index.jsx b/src/views/design/sidemenu/thdmenuform/index.jsx index 08ba9d6..a0564da 100644 --- a/src/views/design/sidemenu/thdmenuform/index.jsx +++ b/src/views/design/sidemenu/thdmenuform/index.jsx @@ -164,6 +164,21 @@ })(<TextArea rows={3} />)} </Form.Item> </Col> : null} + {menu.Template === 'NewPage' ? <Col span={22}> + <Form.Item label={ + <Tooltip placement="topLeft" title={<div onClick={(e) => e.stopPropagation()}>姝e紡绯荤粺鎺ュ彛鍦板潃锛屼负绌烘椂浣跨敤鈥滈摼鎺ュ湴鍧�鈥濄��</div>}><QuestionCircleOutlined className="mk-form-tip" />姝e紡鍦板潃</Tooltip> + }> + {getFieldDecorator('proUrl', { + initialValue: menu.proUrl || '', + rules: [ + { + max: 1024, + message: '鍦板潃鏈�闀夸负1024涓瓧绗�!' + } + ] + })(<TextArea rows={3} />)} + </Form.Item> + </Col> : null} </Row> </Form> ) -- Gitblit v1.8.0