From 07c005cf28acf74e3afde82122e4c53e1000d70c Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期一, 12 六月 2023 12:06:18 +0800
Subject: [PATCH] Merge branch 'master' into positec

---
 src/components/tabview/index.jsx |   40 ++++++++++++++++++++++------------------
 1 files changed, 22 insertions(+), 18 deletions(-)

diff --git a/src/components/tabview/index.jsx b/src/components/tabview/index.jsx
index 5dfc881..1b5e633 100644
--- a/src/components/tabview/index.jsx
+++ b/src/components/tabview/index.jsx
@@ -20,7 +20,6 @@
 const BaseTable = asyncComponent(() => import('@/tabviews/basetable'))
 const CalendarPage = asyncComponent(() => import('@/tabviews/calendar'))
 const TreePage = asyncComponent(() => import('@/tabviews/treepage'))
-// const TabManage = asyncComponent(() => import('@/tabviews/tabmanage'))
 const Iframe = asyncComponent(() => import('@/tabviews/iframe'))
 const RoleManage = asyncComponent(() => import('@/tabviews/rolemanage'))
 const FormTab = asyncComponent(() => import('@/tabviews/formtab'))
@@ -109,7 +108,7 @@
   
       // 鑾峰彇涓昏彍鍗曞弬鏁�
       let menudefer = new Promise(resolve => {
-        Api.getAppVersion().then(() => {
+        Api.getAppVersion(menu.MenuID).then(() => {
           resolve()
         }, () => {
           resolve()
@@ -124,10 +123,10 @@
     }
   }
 
-  modifyTabs = (tab, type, fixed) => {
+  modifyTabs = (tab, fixed) => {
     const { tabviews, activeId } = this.state
 
-    if (type === 'plus' && fixed) {
+    if (fixed) {
       let _tabs = tabviews.filter(item => item.MenuID !== tab.MenuID)
       let index = _tabs.findIndex(item => item.MenuID === activeId)
 
@@ -144,7 +143,7 @@
           activeId: tab.MenuID
         })
       })
-    } else if (type === 'plus') {
+    } else {
       if (tabviews.findIndex(item => item.MenuID === tab.MenuID) > -1) {
         let _tabs = tabviews.filter(item => item.MenuID !== tab.MenuID)
         this.setState({
@@ -161,11 +160,6 @@
           activeId: tab.MenuID
         })
       }
-    } else if (type === 'replace') {
-      this.setState({
-        tabviews: tab ? [tab] : [],
-        activeId: tab ? tab.MenuID : ''
-      })
     }
 
     let node = document.getElementById('root').parentNode.parentNode
@@ -185,22 +179,33 @@
     })
   }
 
+  changeTemp = (MenuID, Template) => {
+    let tabs = fromJS(this.state.tabviews).toJS()
+
+    this.setState({
+      tabviews: tabs.map(item => {
+        if (item.MenuID === MenuID) {
+          item.type = Template
+        }
+        return item
+      })
+    })
+  }
+
   selectcomponent = (view) => {
     // 鏍规嵁tab椤典腑鑿滃崟淇℃伅锛岄�夋嫨鎵�闇�鐨勭粍浠�
     if (view.type === 'Home') {
       return (<Home MenuNo={view.MenuNo} MenuID={view.MenuID} MenuName={view.MenuName} key={view.MenuID}/>)
     } else if (view.type === 'CommonTable') {
-      return (<CommonTable MenuNo={view.MenuNo} MenuID={view.MenuID} MenuName={view.MenuName} key={view.MenuID} param={view.param}/>)
+      return (<CommonTable MenuNo={view.MenuNo} MenuID={view.MenuID} MenuName={view.MenuName} key={view.MenuID} param={view.param} changeTemp={this.changeTemp}/>)
     } else if (view.type === 'BaseTable') {
-      return (<BaseTable MenuNo={view.MenuNo} MenuID={view.MenuID} MenuName={view.MenuName} key={view.MenuID} param={view.param}/>)
+      return (<BaseTable MenuNo={view.MenuNo} MenuID={view.MenuID} MenuName={view.MenuName} key={view.MenuID} param={view.param} changeTemp={this.changeTemp}/>)
     } else if (view.type === 'CustomPage') {
-      return (<CustomPage MenuNo={view.MenuNo} MenuID={view.MenuID} MenuName={view.MenuName} key={view.MenuID} param={view.param}/>)
+      return (<CustomPage MenuNo={view.MenuNo} MenuID={view.MenuID} MenuName={view.MenuName} key={view.MenuID} param={view.param} changeTemp={this.changeTemp}/>)
     } else if (view.type === 'TreePage') {
       return (<TreePage MenuNo={view.MenuNo} MenuID={view.MenuID} MenuName={view.MenuName} key={view.MenuID} param={view.param}/>)
     } else if (view.type === 'CalendarPage') {
       return (<CalendarPage MenuNo={view.MenuNo} MenuID={view.MenuID} MenuName={view.MenuName} key={view.MenuID} param={view.param}/>)
-    // } else if (view.type === 'TabManage') {
-    //   return (<TabManage MenuNo={view.MenuNo} MenuID={view.MenuID} MenuName={view.MenuName} key={view.MenuID}/>)
     } else if (view.type === 'RolePermission') {
       return (<RoleManage MenuNo={view.MenuNo} MenuID={view.MenuID} MenuName={view.MenuName} key={view.MenuID}/>)
     } else if (view.type === 'FormTab') {
@@ -256,11 +261,11 @@
     const { tabviews, activeId } = this.state
 
     return (
-      <section id="mk-tabview-wrap" className={'mk-tabview-wrap' + (this.props.collapse ? ' collapsed' : '') + (tabviews && tabviews.length > 0 ? ' hastab' : '')}>
+      <section className={'mk-tabview-wrap' + (this.props.collapse ? ' collapsed' : '')}>
         <div className="content-header">
           {tabviews && tabviews.length > 0 &&
             <Tabs activeKey={activeId}>
-              {tabviews.map((view, index) => {
+              {tabviews.map(view => {
                 return (
                   <Tabs.TabPane
                     tab={
@@ -284,7 +289,6 @@
                         </div>
                       </div>
                     </BackTop>
-                    {/* {options.sysType === 'local' && window.GLOB.systemType !== 'production' ? <div className="mk-water-mark">娴嬭瘯绯荤粺</div> : null} */}
                   </Tabs.TabPane>
                 )
               })}

--
Gitblit v1.8.0