From 54d01e6ef9ac31f10de4a0e92824eba50b77eda6 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期一, 27 九月 2021 18:40:51 +0800
Subject: [PATCH] 2021-09-27

---
 src/templates/modalconfig/index.jsx |   42 +++++++++++++++++++-----------------------
 1 files changed, 19 insertions(+), 23 deletions(-)

diff --git a/src/templates/modalconfig/index.jsx b/src/templates/modalconfig/index.jsx
index 8e0e44a..096eb2c 100644
--- a/src/templates/modalconfig/index.jsx
+++ b/src/templates/modalconfig/index.jsx
@@ -297,13 +297,10 @@
     this.formRef.handleConfirm().then(res => {
       let _config = fromJS(this.state.config).toJS()
       let fieldrepet = false // 瀛楁閲嶅
-      let labelrepet = false // 鎻愮ず鏂囧瓧閲嶅
 
       _config.fields = _config.fields.map(item => {
         if (item.uuid !== res.uuid && res.field && item.field && item.field.toLowerCase() === res.field.toLowerCase()) {
           fieldrepet = true
-        } else if (res.label && item.uuid !== res.uuid && item.label === res.label) {
-          labelrepet = true
         }
 
         if (item.uuid === res.uuid) {
@@ -317,13 +314,6 @@
         notification.warning({
           top: 92,
           message: '瀛楁宸插瓨鍦紒',
-          duration: 10
-        })
-        return
-      } else if (labelrepet) {
-        notification.warning({
-          top: 92,
-          message: '鍚嶇О宸插瓨鍦紒',
           duration: 10
         })
         return
@@ -547,18 +537,6 @@
   }
 
   /**
-   * @description 缂栬緫鍔熻兘瀹屾垚鏇存柊锛屽寘鎷В鍐绘寜閽�佺矘璐淬�佹浛鎹㈢瓑
-   */
-  updateEditConfig = (res) => {
-    if (res.type === 'paste') {
-      this.setState({
-        config: res.config
-      })
-      this.handleForm(res.newform)
-    }
-  }
-
-  /**
    * @description 鏇存柊閰嶇疆淇℃伅
    */
   updateconfig = (config) => {
@@ -652,6 +630,24 @@
     })
   }
 
+  plusFields = (items) => {
+    let _config = fromJS(this.state.config).toJS()
+
+    if (_config.fields[0] && _config.fields[0].origin) {
+      _config.fields = _config.fields.filter(item => !item.origin)
+    }
+
+    _config.fields.push(...items)
+
+    this.setState({
+      config: _config
+    }, () => {
+      if (items.length === 1 && items[0].focus) {
+        this.handleForm(items[0])
+      }
+    })
+  }
+
   render () {
     const { editAction } = this.props
     const { config, dict, openEdition } = this.state
@@ -694,7 +690,7 @@
               <div>
                 <Versions MenuId={editAction.uuid} open_edition={openEdition} updateConfig={this.refreshConfig}/>
                 <ReplaceField type="form" config={config} updateConfig={this.updateconfig}/>
-                <EditComponent dict={dict} options={['form']} config={this.state.config} refresh={this.updateEditConfig}/>
+                <EditComponent dict={dict} options={['form']} config={this.state.config} plusFields={this.plusFields}/>
                 <Button type="primary" onClick={this.submitConfig} loading={this.state.menuloading}>{dict['model.save']}</Button>
                 <Button onClick={this.cancelConfig}>{dict['model.back']}</Button>
               </div>

--
Gitblit v1.8.0