From 6d0137932fcc8f9848123743c1aad5cff8172d8a Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期日, 09 二月 2020 13:09:39 +0800
Subject: [PATCH] 2020-02-09

---
 src/templates/formtabconfig/index.jsx |   36 +++++++++++++++++-------------------
 1 files changed, 17 insertions(+), 19 deletions(-)

diff --git a/src/templates/formtabconfig/index.jsx b/src/templates/formtabconfig/index.jsx
index c691a2d..1abc373 100644
--- a/src/templates/formtabconfig/index.jsx
+++ b/src/templates/formtabconfig/index.jsx
@@ -81,6 +81,7 @@
       _config.isAdd = true
     } else {
       _config = config
+      _config.action = Source.baseConfig.action
     }
 
     this.setState({
@@ -264,7 +265,6 @@
       this.setState({config: {...config, [card.groupId]: list}})
     } else if (type === 'action') {
       if (list.length > config.action.length) {
-        list = list.filter(item => !item.origin)
   
         this.handleAction(card)
       }
@@ -350,7 +350,7 @@
     })
   }
 
-  handleAction = (card, type) => {
+  handleAction = (card) => {
     let ableField = this.props.permFuncField.join(', ')
     let functip = <div>
       <p style={{marginBottom: '5px'}}>{this.state.dict['header.modal.func.innerface'].replace('@ableField', ableField)}</p>
@@ -358,7 +358,7 @@
     </div>
 
     this.setState({
-      modaltype: type === 'copy' ? 'actionCopy' : 'actionEdit',
+      modaltype: 'actionEdit',
       card: card,
       formlist: getActionForm(card, functip, this.state.config, this.props.permFuncField)
     })
@@ -500,7 +500,7 @@
           modaltype: ''
         })
       })
-    } else if (modaltype === 'actionEdit' || modaltype === 'actionCopy') {
+    } else if (modaltype === 'actionEdit') {
       this.actionFormRef.handleConfirm().then(res => {
         let _action = config.action.map(item => {
           if (item.uuid === res.uuid) {
@@ -509,11 +509,6 @@
             return item
           }
         })
-        _action = _action.filter(item => !item.origin)
-
-        if (modaltype === 'actionCopy') {
-          _action.push(res)
-        }
 
         this.setState({
           config: {...config, action: _action},
@@ -840,8 +835,6 @@
             return item
           }
         })
-        _config.action = _config.action.filter(item => !item.origin)
-
 
         if (!isupdate) { // 鎿嶄綔涓嶆槸淇敼锛屾坊鍔犲厓绱犺嚦鍒楄〃
           _config.action.push(btn)
@@ -1168,9 +1161,6 @@
         if (config.groups[0] && config.groups[0].sublist[0] && config.groups[0].sublist[0].origin) {
           config.groups[0].sublist = config.groups[0].sublist.filter(item => !item.origin)
         }
-        if (config.action[0] && config.action[0].origin) {
-          config.action = config.action.filter(item => !item.origin)
-        }
         if (config.tabs[0] && config.tabs[0].origin) {
           config.tabs = config.tabs.filter(item => !item.origin)
         }
@@ -1183,6 +1173,15 @@
       if (_config.tabgroups.length > 1) {
         _config.tabgroups.forEach(group => {
           if (_config[group].length === 0) {
+            _config.enabled = false
+          }
+        })
+      }
+
+      // 瀛樺湪澶氫綑鐨勭┖琛ㄥ崟缁�
+      if (_config.groups.length > 1) {
+        _config.groups.forEach(group => {
+          if (group.sublist.length === 0) {
             _config.enabled = false
           }
         })
@@ -1638,7 +1637,7 @@
   /**
    * @description 璁剧疆鍙厤缃爣绛�
    */
-  setSubConfig = (btn, type) => {
+  setSubConfig = (btn) => {
     const {menu, btnTab} = this.props
     const { config, originMenu } = this.state
 
@@ -2025,7 +2024,6 @@
                   list={this.state.config.action}
                   handleList={this.handleList}
                   handleMenu={this.handleAction}
-                  copyElement={(val) => this.handleAction(val, 'copy')}
                   deleteMenu={this.deleteElement}
                   profileMenu={this.profileAction}
                   placeholder={this.state.dict['header.form.action.placeholder']}
@@ -2072,12 +2070,12 @@
         </Modal>
         {/* 缂栬緫鎸夐挳锛氬鍒躲�佺紪杈� */}
         <Modal
-          title={modaltype === 'actionEdit' ? this.state.dict['header.modal.action.edit'] : this.state.dict['header.modal.action.copy']}
-          visible={modaltype === 'actionEdit' || modaltype === 'actionCopy'}
+          title={this.state.dict['header.modal.action.edit']}
+          visible={modaltype === 'actionEdit'}
           width={700}
           onCancel={this.editModalCancel}
           footer={[
-            modaltype === 'actionEdit' ? <Button key="delete" className="mk-btn mk-purple" onClick={this.creatFunc} loading={this.state.funcLoading}>{this.state.dict['header.menu.func.create']}</Button> : null,
+            <Button key="delete" className="mk-btn mk-purple" onClick={this.creatFunc} loading={this.state.funcLoading}>{this.state.dict['header.menu.func.create']}</Button>,
             <Button key="cancel" onClick={this.editModalCancel}>{this.state.dict['header.cancel']}</Button>,
             <Button key="confirm" type="primary" onClick={this.handleSubmit}>{this.state.dict['header.confirm']}</Button>
           ]}

--
Gitblit v1.8.0