king
2021-09-14 6c44bc79e5edc338b44fdc469220ddf0e3fc4028
2021-09-14
25个文件已修改
380 ■■■■ 已修改文件
src/menu/components/card/cardsimplecomponent/index.jsx 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/menu/components/share/actioncomponent/actionform/index.jsx 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/menu/components/table/normal-table/options.jsx 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/tabviews/custom/components/card/cardItem/index.jsx 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/tabviews/custom/components/card/table-card/index.jsx 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/tabviews/custom/components/carousel/cardItem/index.jsx 80 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/tabviews/custom/components/carousel/data-card/index.jsx 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/tabviews/custom/components/share/normalTable/index.jsx 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/tabviews/custom/components/share/normalTable/index.scss 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/tabviews/zshare/actionList/changeuserbutton/index.jsx 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/tabviews/zshare/actionList/excelInbutton/index.jsx 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/tabviews/zshare/actionList/newpagebutton/index.jsx 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/tabviews/zshare/actionList/normalbutton/index.jsx 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/tabviews/zshare/actionList/popupbutton/index.jsx 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/tabviews/zshare/actionList/printbutton/index.jsx 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/tabviews/zshare/actionList/tabbutton/index.jsx 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/tabviews/zshare/normalTable/index.jsx 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/tabviews/zshare/normalTable/index.scss 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/templates/sharecomponent/actioncomponent/actionform/index.jsx 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/templates/sharecomponent/actioncomponent/index.jsx 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/templates/sharecomponent/settingcomponent/settingform/datasource/index.jsx 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/templates/sharecomponent/settingcomponent/settingform/datasource/index.scss 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/design/header/index.jsx 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/mobdesign/index.jsx 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/pcdesign/index.jsx 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/menu/components/card/cardsimplecomponent/index.jsx
@@ -27,6 +27,7 @@
  state = {
    card: null,            // 卡片信息
    formlist: null,        // 设置表单信息
    appType: sessionStorage.getItem('appType')
  }
  /**
@@ -153,7 +154,27 @@
  }
  updateSetting = (res) => {
    const { card } = this.state
    const { card, appType } = this.state
    if (appType === '' && res.menu) {
      let list = null
      try {
        list = JSON.parse(sessionStorage.getItem('thdMenuList')) || []
      } catch (e) {
        list = []
      }
      let id = res.menu[res.menu.length - 1]
      list.forEach(item => {
        if (item.MenuID === id) {
          res.MenuID = id
          res.MenuName = item.MenuName
          res.MenuNo = item.MenuNo
          res.tabType = item.type
        }
      })
    }
    let _card = {...card, setting: res}
src/menu/components/share/actioncomponent/actionform/index.jsx
@@ -719,6 +719,26 @@
                values.verify.invalid = 'true'
              }
            }
          } else if (values.OpenType === 'tab' && values.linkmenu) {
            if (sessionStorage.getItem('thdMenuList')) {
              let list = null
              try {
                list = JSON.parse(sessionStorage.getItem('thdMenuList')) || []
              } catch (e) {
                list = []
              }
              let id = values.linkmenu[values.linkmenu.length - 1]
              list.forEach(item => {
                if (item.MenuID === id) {
                  values.MenuID = id
                  values.MenuName = item.MenuName
                  values.MenuNo = item.MenuNo
                  values.tabType = item.type
                }
              })
            }
          }
          
          resolve(values)
src/menu/components/table/normal-table/options.jsx
@@ -154,6 +154,18 @@
    },
    {
      type: 'number',
      field: 'height',
      label: '高度',
      initval: wrap.height || '',
      tooltip: '表格高度,空值时高度自适应。',
      min: 10,
      max: 3000,
      precision: 0,
      required: false,
      forbid: appType === 'mob'
    },
    {
      type: 'number',
      field: 'advanceWidth',
      label: '高级搜索',
      initval: wrap.advanceWidth || 1000,
src/tabviews/custom/components/card/cardItem/index.jsx
@@ -43,7 +43,7 @@
  }
  openView = () => {
    const { card, data } = this.props
    const { card, data, cards } = this.props
    if (card.setting.click === 'menu') {
      let menu = null
@@ -111,7 +111,13 @@
      window.open(src)
    } else if (card.setting.click === 'button' && card.setting.linkbtn) {
      MKEmitter.emit('triggerBtnId', card.setting.linkbtn, [data])
      if (data.$$type === 'extendCard') {
        MKEmitter.emit('triggerBtnId', card.setting.linkbtn, [])
      } else if (cards.subtype === 'datacard') {
        MKEmitter.emit('triggerBtnId', card.setting.linkbtn, [data], 'linkbtn')
      } else {
        MKEmitter.emit('triggerBtnId', card.setting.linkbtn, [data])
      }
    }
  }
src/tabviews/custom/components/card/table-card/index.jsx
@@ -364,7 +364,7 @@
      window.open(src)
    } else if (card.setting.click === 'button' && card.setting.linkbtn) {
      MKEmitter.emit('triggerBtnId', card.setting.linkbtn, [data])
      MKEmitter.emit('triggerBtnId', card.setting.linkbtn, [data], 'linkbtn')
    }
  }
src/tabviews/custom/components/carousel/cardItem/index.jsx
@@ -1,8 +1,11 @@
import React, {Component} from 'react'
import PropTypes from 'prop-types'
import { connect } from 'react-redux'
import { is, fromJS } from 'immutable'
import asyncComponent from '@/utils/asyncComponent'
import { modifyTabview } from '@/store/action'
import MKEmitter from '@/utils/events.js'
import './index.scss'
@@ -39,15 +42,88 @@
    }
  }
  openView = () => {
    const { card, data, cards } = this.props
    if (card.setting.click === 'menu' && card.setting.MenuID) {
      let menu = {
        MenuID: card.setting.MenuID,
        MenuName: card.setting.MenuName,
        MenuNo: card.setting.MenuNo,
        type: card.setting.tabType
      }
      let newtab = {
        ...menu,
        selected: true,
        param: {}
      }
      if (card.setting.joint === 'true') {
        newtab.param.$BID = data.$$uuid || ''
      }
      if (['linkage_navigation', 'linkage', 'menu_board'].includes(window.GLOB.navBar)) {
        this.props.modifyTabview([newtab])
      } else {
        let tabs = this.props.tabviews.filter((tab, i) => {
          tab.selected = false
          return tab.MenuID !== newtab.MenuID
        })
        if (this.props.tabviews.length > tabs.length) {
          this.props.modifyTabview(fromJS(tabs).toJS())
        }
        this.setState({}, () => {
          tabs.push(newtab)
          this.props.modifyTabview(tabs)
        })
      }
    } else if (card.setting.click === 'link') {
      let src = card.setting.linkurl
      if (card.setting.joint === 'true') {
        let con = '?'
        if (/\?/ig.test(src)) {
          con = '&'
        }
        src = src + `${con}id=${data.$$uuid || ''}&appkey=${window.GLOB.appkey}&userid=${sessionStorage.getItem('UserID')}&LoginUID=${sessionStorage.getItem('LoginUID') || ''}`
      }
      window.open(src)
    } else if (card.setting.click === 'button' && card.setting.linkbtn) {
      if (cards.subtype === 'datacard') {
        MKEmitter.emit('triggerBtnId', card.setting.linkbtn, [data], 'linkbtn')
      } else {
        MKEmitter.emit('triggerBtnId', card.setting.linkbtn, [data])
      }
    }
  }
  render() {
    const { card, data, cards } = this.props
    return (
      <div className="card-item-box" style={card.style}>
      <div className="card-item-box" style={card.style} onClick={this.openView}>
        <CardCellComponent data={data} cards={cards} cardCell={card} elements={card.elements}/>
      </div>
    )
  }
}
export default CardBoxComponent
const mapStateToProps = (state) => {
  return {
    tabviews: state.tabviews,
  }
}
const mapDispatchToProps = (dispatch) => {
  return {
    modifyTabview: (tabviews) => dispatch(modifyTabview(tabviews))
  }
}
export default connect(mapStateToProps, mapDispatchToProps)(CardBoxComponent)
src/tabviews/custom/components/carousel/data-card/index.jsx
@@ -54,6 +54,7 @@
        item.key = index
        item.$$uuid = item[_config.setting.primaryKey] || ''
        item.$$BID = BID || ''
        item.$Index = index + 1
        return item
      })
    }
@@ -114,6 +115,7 @@
        item.key = index
        item.$$uuid = item[config.setting.primaryKey] || ''
        item.$$BID = BID || ''
        item.$Index = index + 1
        return item
      })
@@ -222,6 +224,7 @@
          item.$$uuid = item[config.setting.primaryKey] || ''
          item.$$BID = BID || ''
          item.$$BData = BData || ''
          item.$Index = index + 1
          return item
        }),
        loading: false
src/tabviews/custom/components/share/normalTable/index.jsx
@@ -869,8 +869,10 @@
      _footer = statFValue.map(f => `${f.label}(合计):${f.value}`).join(';')
    }
    let height = setting.height || false
    return (
      <div className={`normal-custom-table ${setting.tableHeader || ''} ${setting.mode || ''}`} id={tableId}>
      <div className={`normal-custom-table ${setting.tableHeader || ''} ${height ? 'fixed-height' : ''} ${setting.mode || ''}`} id={tableId}>
        {(setting.tableType === 'radio' || setting.tableType === 'checkbox') && data && data.length > 0 ?
          <Switch title="收起" className="main-pickup" checkedChildren="开" unCheckedChildren="关" checked={pickup} onChange={this.pickupChange} /> : null
        }
@@ -883,7 +885,7 @@
          columns={this.state.columns}
          dataSource={_data}
          loading={this.props.loading}
          scroll={{ x: '100%', y: false }}
          scroll={{ x: '100%', y: height }}
          onRow={(record, index) => {
            return {
              lineMarks,
src/tabviews/custom/components/share/normalTable/index.scss
@@ -135,6 +135,37 @@
      }
    }
  }
  // .ant-table-body::-webkit-scrollbar {
  //   width: 8px;
  //   height: 10px;
  // }
  // ::-webkit-scrollbar-thumb {
  //   border-radius: 5px;
  //   box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.13);
  //   background: rgba(0, 0, 0, 0.13);
  // }
  // ::-webkit-scrollbar-track {/*滚动条里面轨道*/
  //   box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.05);
  //   border-radius: 3px;
  //   border: 1px solid rgba(0, 0, 0, 0.07);
  //   background: rgba(0, 0, 0, 0);
  // }
  .fix-header {
    .ant-table-body {
      min-height: unset
    }
    .ant-table-placeholder {
      display: none;
    }
    .ant-table-wrapper {
      display: none;
    }
    .ant-affix .ant-table-wrapper {
      display: block;
    }
  }
}
.normal-custom-table:not(.fixed-height) {
  .ant-table-body::-webkit-scrollbar {
    width: 8px;
    height: 10px;
@@ -149,20 +180,6 @@
    border-radius: 3px;
    border: 1px solid rgba(0, 0, 0, 0.07);
    background: rgba(0, 0, 0, 0);
  }
  .fix-header {
    .ant-table-body {
      min-height: unset
    }
    .ant-table-placeholder {
      display: none;
    }
    .ant-table-wrapper {
      display: none;
    }
    .ant-affix .ant-table-wrapper {
      display: block;
    }
  }
}
.normal-custom-table.hidden {
src/tabviews/zshare/actionList/changeuserbutton/index.jsx
@@ -79,7 +79,7 @@
  /**
   * @description 触发按钮操作
   */
  actionTrigger = (triggerId, record) => {
  actionTrigger = (triggerId, record, type) => {
    const { setting, selectedData, btn, MenuID } = this.props
    const { loading } = this.state
    
@@ -92,6 +92,10 @@
        MKEmitter.emit('reloadMenuView', btn.refreshTab[btn.refreshTab.length - 1], 'table')
      }
      return
    } else if (type === 'linkbtn' && selectedData && selectedData.length === 1) {
      if (record[0].$Index !== selectedData[0].$Index) {
        return
      }
    }
    
    let data = record || selectedData || []
src/tabviews/zshare/actionList/excelInbutton/index.jsx
@@ -98,7 +98,7 @@
  /**
   * @description 触发按钮操作
   */
  actionTrigger = (triggerId, record) => {
  actionTrigger = (triggerId, record, type) => {
    const { setting, Tab, BID, btn, selectedData } = this.props
    const { loading } = this.state
@@ -111,6 +111,10 @@
        duration: 5
      })
      return
    } else if (type === 'linkbtn' && selectedData && selectedData.length === 1) {
      if (record[0].$Index !== selectedData[0].$Index) {
        return
      }
    }
    let data = record || selectedData || []
src/tabviews/zshare/actionList/newpagebutton/index.jsx
@@ -76,11 +76,17 @@
  /**
   * @description 触发按钮操作
   */
  actionTrigger = (triggerId, record) => {
  actionTrigger = (triggerId, record, type) => {
    const { setting, btn, selectedData } = this.props
    if (triggerId && btn.uuid !== triggerId) return
    if (type === 'linkbtn' && selectedData && selectedData.length === 1) {
      if (record[0].$Index !== selectedData[0].$Index) {
        return
      }
    }
    let data = record || selectedData || []
    if (btn.Ot && btn.Ot !== 'notRequired' && data.length === 0) {
src/tabviews/zshare/actionList/normalbutton/index.jsx
@@ -143,7 +143,7 @@
  /**
   * @description 触发按钮操作
   */
  actionTrigger = (triggerId, record) => {
  actionTrigger = (triggerId, record, type) => {
    const { Tab, BID, btn, selectedData, setting } = this.props
    const { loading } = this.state
@@ -156,6 +156,10 @@
        duration: 5
      })
      return
    } else if (type === 'linkbtn' && selectedData && selectedData.length === 1) {
      if (record[0].$Index !== selectedData[0].$Index) {
        return
      }
    }
    let _this = this
src/tabviews/zshare/actionList/popupbutton/index.jsx
@@ -118,7 +118,7 @@
  /**
   * @description 触发按钮操作
   */
  actionTrigger = (triggerId, record) => {
  actionTrigger = (triggerId, record, type) => {
    const { setting, Tab, BID, btn, selectedData } = this.props
    const { loading } = this.state
@@ -131,6 +131,10 @@
        duration: 5
      })
      return
    } else if (type === 'linkbtn' && selectedData && selectedData.length === 1) {
      if (record[0].$Index !== selectedData[0].$Index) {
        return
      }
    }
    let data = record || selectedData || []
src/tabviews/zshare/actionList/printbutton/index.jsx
@@ -110,7 +110,7 @@
  /**
   * @description 触发按钮操作
   */
  actionTrigger = (triggerId, record) => {
  actionTrigger = (triggerId, record, type) => {
    const { Tab, BID, btn, selectedData, setting } = this.props
    const { loading } = this.state
@@ -123,6 +123,10 @@
        duration: 5
      })
      return
    } else if (type === 'linkbtn' && selectedData && selectedData.length === 1) {
      if (record[0].$Index !== selectedData[0].$Index) {
        return
      }
    }
    let _this = this
src/tabviews/zshare/actionList/tabbutton/index.jsx
@@ -77,10 +77,16 @@
  /**
   * @description 触发按钮操作
   */
  actionTrigger = (triggerId, record) => {
  actionTrigger = (triggerId, record, type) => {
    const { setting, btn, tabviews, MenuID, selectedData } = this.props
    if (triggerId && btn.uuid !== triggerId) return
    if (type === 'linkbtn' && selectedData && selectedData.length === 1) {
      if (record[0].$Index !== selectedData[0].$Index) {
        return
      }
    }
    
    let data = record || selectedData || []
@@ -120,7 +126,14 @@
    } else {
      let menu = null
      if (btn.linkmenu && btn.linkmenu.length > 0) {
      if (btn.MenuID) {
        menu = {
          MenuID: btn.MenuID,
          MenuName: btn.MenuName,
          MenuNo: btn.MenuNo,
          type: btn.tabType
        }
      } else if (btn.linkmenu && btn.linkmenu.length > 0) {
        let menu_id = btn.linkmenu.slice(-1)[0]
        menu = this.props.permMenus.filter(m => m.MenuID === menu_id)[0] || ''
      }
src/tabviews/zshare/normalTable/index.jsx
@@ -1131,11 +1131,21 @@
      _footer = statFValue.map(f => `${f.label}(合计):${f.value}`).join(';')
    }
    let height = setting.height || false
    let style = {}
    if (setting.color) {
      style.color = setting.color
    }
    if (setting.fontSize) {
      style.fontSize = setting.fontSize
    }
    return (
      <div className="normal-data-table mingke-table">
      <div className={'normal-data-table mingke-table ' + (height ? 'fixed-height' : '')}>
        {offset && <Affix offsetTop={offset} className="fix-header">
          <Table
            size="middle"
            style={style}
            bordered={setting.bordered !== 'false'}
            rowSelection={rowSelection}
            columns={this.state.columns.map(column => {
@@ -1150,6 +1160,7 @@
        </Affix>}
        <Table
          size="middle"
          style={style}
          bordered={setting.bordered !== 'false'}
          rowSelection={rowSelection}
          columns={this.state.columns}
@@ -1208,7 +1219,7 @@
            return className
          }}
          loading={this.props.loading}
          scroll={{ x: '100%', y: false }}
          scroll={{ x: '100%', y: height }}
          onRow={(record, index) => {
            return {
              onClick: () => {this.changeRow(record, index)},
src/tabviews/zshare/normalTable/index.scss
@@ -14,6 +14,14 @@
    position: relative;
    z-index: 1;
  }
  .ant-table-wrapper {
    color: rgba(0, 0, 0, 0.65);
    font-size: 14px;
    .ant-table {
      color: inherit;
      font-size: inherit;
    }
  }
  table {
    max-width: 100%;
@@ -182,21 +190,7 @@
      }
    }
  }
  .ant-table-body::-webkit-scrollbar {
    width: 8px;
    height: 10px;
  }
  ::-webkit-scrollbar-thumb {
    border-radius: 5px;
    box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.13);
    background: rgba(0, 0, 0, 0.13);
  }
  ::-webkit-scrollbar-track {/*滚动条里面轨道*/
    box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.05);
    border-radius: 3px;
    border: 1px solid rgba(0, 0, 0, 0.07);
    background: rgba(0, 0, 0, 0);
  }
  .fix-header {
    .ant-table-body {
      min-height: unset
@@ -230,4 +224,21 @@
      cursor: pointer;
    }
  }
}
.normal-data-table:not(.fixed-height) {
  .ant-table-body::-webkit-scrollbar {
    width: 8px;
    height: 10px;
  }
  ::-webkit-scrollbar-thumb {
    border-radius: 5px;
    box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.13);
    background: rgba(0, 0, 0, 0.13);
  }
  ::-webkit-scrollbar-track {/*滚动条里面轨道*/
    box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.05);
    border-radius: 3px;
    border: 1px solid rgba(0, 0, 0, 0.07);
    background: rgba(0, 0, 0, 0);
  }
}
src/templates/sharecomponent/actioncomponent/actionform/index.jsx
@@ -736,6 +736,26 @@
                values.verify.invalid = 'true'
              }
            }
          } else if (values.OpenType === 'tab' && values.linkmenu) {
            if (sessionStorage.getItem('thdMenuList')) {
              let list = null
              try {
                list = JSON.parse(sessionStorage.getItem('thdMenuList')) || []
              } catch (e) {
                list = []
              }
              let id = values.linkmenu[values.linkmenu.length - 1]
              list.forEach(item => {
                if (item.MenuID === id) {
                  values.MenuID = id
                  values.MenuName = item.MenuName
                  values.MenuNo = item.MenuNo
                  values.tabType = item.type
                }
              })
            }
          }
          resolve(values)
src/templates/sharecomponent/actioncomponent/index.jsx
@@ -160,7 +160,6 @@
    if (menu.fstMenuList) {
      let trees = fromJS(menu.fstMenuList).toJS()
      menulist = trees.map(fst => {
        fst.value = fst.MenuID
        fst.label = fst.MenuName
src/templates/sharecomponent/settingcomponent/settingform/datasource/index.jsx
@@ -6,9 +6,11 @@
import Api from '@/api'
import { formRule } from '@/utils/option.js'
import Utils from '@/utils/utils.js'
import CodeMirror from '@/templates/zshare/codemirror'
import asyncComponent from '@/utils/asyncComponent'
import './index.scss'
const CodeMirror = asyncComponent(() => import('@/templates/zshare/codemirror'))
const MKColor = asyncComponent(() => import('@/tabviews/zshare/mutilform/mkColor'))
const { TextArea } = Input
class SettingForm extends Component {
@@ -644,6 +646,37 @@
                )}
              </Form.Item>
            </Col>
            <Col span={12}>
              <Form.Item label={
                <Tooltip placement="topLeft" title="空值时高度自适应。">
                  <Icon type="question-circle" />
                  table高度
                </Tooltip>
              }>
                {getFieldDecorator('height', {
                  initialValue: setting.height
                })(<InputNumber min={10} max={3000} precision={0}/>)}
              </Form.Item>
            </Col>
            <Col span={12}>
              <Form.Item label={
                <Tooltip placement="topLeft" title="默认值rgba(0, 0, 0, 0.65)">
                  <Icon type="question-circle" />
                  字体颜色
                </Tooltip>
              }>
                {getFieldDecorator('color', {
                  initialValue: setting.color
                })(<MKColor config={{initval: setting.color || 'rgba(0, 0, 0, 0.65)'}} />)}
              </Form.Item>
            </Col>
            <Col span={12}>
              <Form.Item label="字体大小">
                {getFieldDecorator('fontSize', {
                  initialValue: setting.fontSize || 14
                })(<InputNumber min={12} max={50} precision={0}/>)}
              </Form.Item>
            </Col>
          </Row>
        </Form>
      </div>
src/templates/sharecomponent/settingcomponent/settingform/datasource/index.scss
@@ -22,4 +22,8 @@
    }
  }
  .color-sketch-block {
    position: relative;
    top: 7px;
  }
}
src/views/design/header/index.jsx
@@ -92,6 +92,7 @@
  getMenulist = (result) => {
    let iframes = ['Main/Index', 'bda/rdt', 'Home/rdt']
    let menulist = []
    let thdMenuList = []
    result.fst_menu && result.fst_menu.forEach(fst => {
      let fstItem = {
        MenuID: fst.MenuID,
@@ -157,6 +158,8 @@
                }
              }
              thdMenuList.push(trdItem)
              return trdItem
            })
          }
@@ -168,6 +171,7 @@
      menulist.push(fstItem)
    })
    sessionStorage.setItem('thdMenuList', JSON.stringify(thdMenuList))
    return { menulist }
  }
src/views/mobdesign/index.jsx
@@ -1374,10 +1374,10 @@
                <PictureController/>
                <Quotecomponent config={config} updateConfig={this.updateConfig}/>
                <Button className="mk-border-green" icon="home" onClick={this.setHomeView}>设为首页</Button>
                <Button className="mk-border-danger" icon="redo" onClick={this.refreshView}>强制刷新</Button>
                <ReplaceField type="custom" config={config} updateConfig={this.resetConfig}/>
                <Transfer MenuID={MenuId} />
                <Versions MenuId={MenuId} open_edition={config ? config.open_edition : ''}/>
                <Button className="mk-border-danger" icon="redo" onClick={this.refreshView}>强制刷新</Button>
                <Button type="default" onClick={this.closeView}>关闭</Button>
              </div>
            </div>
src/views/pcdesign/index.jsx
@@ -1603,10 +1603,10 @@
                <PictureController/>
                <Quotecomponent config={config} updateConfig={this.updateConfig}/>
                <Button className="mk-border-green" icon="home" onClick={this.setHomeView}>设为首页</Button>
                <Button className="mk-border-danger" icon="redo" onClick={this.refreshView}>强制刷新</Button>
                <ReplaceField type="custom" config={config} updateConfig={this.resetConfig}/>
                <Transfer MenuID={MenuId} />
                <Versions MenuId={MenuId} open_edition={config ? config.open_edition : ''}/>
                <Button className="mk-border-danger" icon="redo" onClick={this.refreshView}>强制刷新</Button>
                <Button type="default" onClick={this.closeView}>关闭</Button>
              </div>
            </div>