king
2024-10-11 6ca240a14ccf55d4e0a94fff77e95f64db2cdfcc
src/views/basedesign/index.jsx
@@ -1,7 +1,5 @@
import React, {Component} from 'react'
import { notification, Spin, ConfigProvider } from 'antd'
import enUS from 'antd/es/locale/en_US'
import zhCN from 'antd/es/locale/zh_CN'
import { notification, Spin } from 'antd'
import Api from '@/api'
import asyncComponent from '@/utils/asyncComponent'
@@ -10,7 +8,6 @@
import '@/assets/css/design.scss'
import './index.scss'
const _locale = sessionStorage.getItem('lang') !== 'en-US' ? zhCN : enUS
const Header = asyncComponent(() => import('@/menu/header'))
const ComTableConfig = asyncLoadComponent(() => import('@/templates/comtableconfig'))
const TreePageConfig = asyncLoadComponent(() => import('@/templates/treepageconfig'))
@@ -105,44 +102,29 @@
            console.warn('Parse Failure')
            _LongParam = ''
          }
          editMenu.LongParam = _LongParam
        } else if (editMenu.PageParam.copyMenuId) {
          let _param = {
            func: 'sPC_Get_LongParam',
            MenuID: editMenu.PageParam.copyMenuId
          }
          Api.getCloudConfig(_param).then(res => {
            if (res.status) {
              if (res.LongParam) {
                let _LongParam = ''
                try {
                  _LongParam = JSON.parse(window.decodeURIComponent(window.atob(res.LongParam)))
                  _LongParam.type = 'user'
                } catch (e) {
                  console.warn('Parse Failure')
                  _LongParam = ''
                }
                editMenu.LongParam = _LongParam
              }
              this.setState({
                editMenu: editMenu,
                loading: false,
                tabview: editMenu.type
              })
            } else {
              this.setState({
                loading: false
              })
              notification.warning({
                top: 92,
                message: res.message,
                duration: 5
              })
          if (_LongParam && (_LongParam.Template === 'BaseTable' || _LongParam.Template === 'CustomPage')) {
            let _param = {
              MenuId: editMenu.MenuID,
              MenuID: editMenu.MenuID,
              ParentId: _LongParam.ParentId,
              MenuName: _LongParam.MenuName,
              MenuNo: _LongParam.MenuNo
            }
          })
          return
            let url = ''
            if (_LongParam.Template === 'BaseTable') {
              url = window.location.href.split('#')[0] + `#/tabledesign/${window.btoa(window.encodeURIComponent(JSON.stringify(_param)))}`
            } else {
              _param.MenuType = 'custom'
              _param = window.btoa(window.encodeURIComponent(JSON.stringify(_param)))
              url = window.location.href.split('#')[0] + `#/menudesign/${_param}`
            }
            window.history.replaceState(null, null, url)
            window.location.reload()
            return
          }
          editMenu.LongParam = _LongParam
        }
        
        this.setState({
@@ -189,58 +171,56 @@
    return (
      <div className="mk-base-design-wrap">
        <ConfigProvider locale={_locale}>
          <Header/>
          {this.state.tabview === 'CommonTable' ?
            <ComTableConfig
              menu={editMenu}
              reloadmenu={() => {localStorage.setItem('menuUpdate', new Date().getTime())}}
              handleView={this.handleView}
            /> : null
          }
          {this.state.tabview === 'SubTable' ?
            <SubTable
              menu={editMenu}
              editTab={this.state.editTab}
              editSubTab={this.state.editSubTab}
              tabConfig={this.state.tabConfig}
              btnTab={btnTab}
              btnTabConfig={this.state.btnTabConfig}
              config={subConfig}
              handleView={this.handleView}
            /> : null
          }
          {this.state.tabview === 'Modal' ?
            <ModalConfig
              menu={editMenu}
              editTab={this.state.editTab}
              tabConfig={this.state.tabConfig}
              editSubTab={this.state.editSubTab}
              subTabConfig={this.state.subTabConfig}
              btnTab={btnTab}
              btnTabConfig={this.state.btnTabConfig}
              editAction={this.state.editAction}
              subConfig={subConfig}
              handleView={this.handleView}
            /> : null
          }
          {this.state.tabview === 'TreePage' ?
            <TreePageConfig
              menu={editMenu}
              reloadmenu={() => {localStorage.setItem('menuUpdate', new Date().getTime())}}
              handleView={this.handleView}
            /> : null
          }
          {this.state.tabview === 'FormTab' ?
            <UpdateFormTab
              menu={editMenu}
              btnTab={btnTab}
              config={subConfig}
              handleView={this.handleView}
            /> : null
          }
          {loading ? <Spin className="loading-view" size="large"/> : null}
        </ConfigProvider>
        <Header/>
        {this.state.tabview === 'CommonTable' ?
          <ComTableConfig
            menu={editMenu}
            reloadmenu={() => {localStorage.setItem('menuUpdate', new Date().getTime())}}
            handleView={this.handleView}
          /> : null
        }
        {this.state.tabview === 'SubTable' ?
          <SubTable
            menu={editMenu}
            editTab={this.state.editTab}
            editSubTab={this.state.editSubTab}
            tabConfig={this.state.tabConfig}
            btnTab={btnTab}
            btnTabConfig={this.state.btnTabConfig}
            config={subConfig}
            handleView={this.handleView}
          /> : null
        }
        {this.state.tabview === 'Modal' ?
          <ModalConfig
            menu={editMenu}
            editTab={this.state.editTab}
            tabConfig={this.state.tabConfig}
            editSubTab={this.state.editSubTab}
            subTabConfig={this.state.subTabConfig}
            btnTab={btnTab}
            btnTabConfig={this.state.btnTabConfig}
            editAction={this.state.editAction}
            subConfig={subConfig}
            handleView={this.handleView}
          /> : null
        }
        {this.state.tabview === 'TreePage' ?
          <TreePageConfig
            menu={editMenu}
            reloadmenu={() => {localStorage.setItem('menuUpdate', new Date().getTime())}}
            handleView={this.handleView}
          /> : null
        }
        {this.state.tabview === 'FormTab' ?
          <UpdateFormTab
            menu={editMenu}
            btnTab={btnTab}
            config={subConfig}
            handleView={this.handleView}
          /> : null
        }
        {loading ? <Spin className="loading-view" size="large"/> : null}
      </div>
    )
  }