From 73b2dc5000b03cd150d91e0f6f1d1e3ba82cc97f Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期五, 05 七月 2024 23:14:39 +0800
Subject: [PATCH] 2024-07-05

---
 src/menu/components/share/copycomponent/index.jsx |   60 ++++++++++++++++++++++++++++++++++++++----------------------
 1 files changed, 38 insertions(+), 22 deletions(-)

diff --git a/src/menu/components/share/copycomponent/index.jsx b/src/menu/components/share/copycomponent/index.jsx
index 5450110..3cebc71 100644
--- a/src/menu/components/share/copycomponent/index.jsx
+++ b/src/menu/components/share/copycomponent/index.jsx
@@ -11,10 +11,48 @@
     card: PropTypes.object
   }
 
+  transConfig = (config, type) => {
+    if (type === 'menucell') {
+      config.setting.type = 'linkmenu'
+      config.setting.linkMenuId = ''
+      config.setting.copyMenuId = ''
+    } else if (type === 'mobnavbar') {
+      delete config.open_edition
+      delete config.dataName
+
+      config.menus.forEach(item => {
+        item.property = 'menu'
+        item.open = 'self'
+
+        delete item.copyMenuId
+        delete item.clearMenu
+        delete item.linkMenuId
+      })
+    } else if (config.type === 'menubar' && config.subtype === 'menubar') {
+      let cell = config.subMenus[0]
+      config.subMenus = []
+
+      if (cell) {
+        cell.setting.type = 'menu'
+        cell.setting.linkMenuId = ''
+        cell.setting.copyMenuId = ''
+
+        config.subMenus.push(cell)
+      }
+    } else if (['normaltable', 'editable', 'basetable'].includes(type)) {
+      config.action = config.action.filter(item => !item.origin)
+      config.cols = config.cols.filter(item => !item.origin)
+      config.search = config.search.filter(item => !item.origin)
+      delete config.isNew
+    }
+  }
+
   trigger = () => {
     const { card, type } = this.props
     let _val = fromJS(card).toJS()
     _val.copyType = type
+
+    this.transConfig(_val, type)
 
     try {
       delete _val.$srcId
@@ -22,28 +60,6 @@
       let srcid = localStorage.getItem(window.GLOB.sysSign + 'srcId')
       if (srcid) {
         _val.$srcId = srcid
-      }
-
-      if (type === 'menucell') {
-        _val.setting.type = 'linkmenu'
-        _val.setting.linkMenuId = ''
-        _val.setting.copyMenuId = ''
-      } else if (_val.type === 'menubar' && _val.subtype === 'menubar') {
-        let cell = _val.subMenus[0]
-        _val.subMenus = []
-
-        if (cell) {
-          cell.setting.type = 'menu'
-          cell.setting.linkMenuId = ''
-          cell.setting.copyMenuId = ''
-
-          _val.subMenus.push(cell)
-        }
-      } else if (['normaltable', 'editable', 'basetable'].includes(type)) {
-        _val.action = _val.action.filter(item => !item.origin)
-        _val.cols = _val.cols.filter(item => !item.origin)
-        _val.search = _val.search.filter(item => !item.origin)
-        delete _val.isNew
       }
 
       _val = window.btoa(window.encodeURIComponent(JSON.stringify(_val)))

--
Gitblit v1.8.0