From 25bf481493bcf18fca79e4d250f9c91dedf832e5 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期二, 02 四月 2024 15:15:58 +0800
Subject: [PATCH] 2024-04-02

---
 src/menu/components/share/actioncomponent/actionform/index.jsx |   69 +++++++++++++++++++++++++---------
 1 files changed, 50 insertions(+), 19 deletions(-)

diff --git a/src/menu/components/share/actioncomponent/actionform/index.jsx b/src/menu/components/share/actioncomponent/actionform/index.jsx
index 7dea9d8..a88a6f8 100644
--- a/src/menu/components/share/actioncomponent/actionform/index.jsx
+++ b/src/menu/components/share/actioncomponent/actionform/index.jsx
@@ -15,15 +15,15 @@
 const CodeMirror = asyncComponent(() => import('@/templates/zshare/codemirror'))
 const MKTable = asyncComponent(() => import('@/components/normalform/modalform/mkTable'))
 const acTyOptions = {
-  pop: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'swipe', 'icon', 'class', 'color', 'execSuccess', 'execError', 'syncComponent', 'switchTab', 'anchors', 'width', 'openmenu', 'refreshTab', 'position', 'tipTitle', 'hoverTitle', 'hidden', 'preButton', 'formCache'],
-  prompt: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'swipe', 'icon', 'class', 'color', 'execSuccess', 'execError', 'syncComponent', 'switchTab', 'anchors', 'width', 'openmenu', 'refreshTab', 'position', 'tipTitle', 'hoverTitle', 'hidden', 'preButton', 'formCache'],
-  exec: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'swipe', 'icon', 'class', 'color', 'execSuccess', 'execError', 'syncComponent', 'switchTab', 'anchors', 'width', 'openmenu', 'refreshTab', 'hoverTitle', 'hidden', 'preButton', 'formCache'],
-  excelIn: ['label', 'Ot', 'OpenType', 'intertype', 'show', 'icon', 'class', 'color', 'sheet', 'execSuccess', 'execError', 'syncComponent', 'switchTab', 'width', 'hidden'],
-  excelOut: ['label', 'Ot', 'OpenType', 'intertype', 'show', 'icon', 'class', 'color', 'execSuccess', 'execError', 'syncComponent', 'switchTab', 'pagination', 'search', 'width', 'hidden'],
-  popview: ['label', 'Ot', 'OpenType', 'show', 'icon', 'class', 'color', 'popClose', 'width', 'display', 'ratio', 'syncComponent', 'clickouter', 'maskStyle', 'closeButton', 'hidden'],
-  tab: ['label', 'Ot', 'OpenType', 'show', 'icon', 'class', 'color', 'linkmenu', 'width', 'hidden', 'openTab'],
-  innerpage: ['label', 'Ot', 'OpenType', 'pageTemplate', 'show', 'swipe', 'icon', 'class', 'color', 'width', 'hidden'],
-  funcbutton: ['label', 'OpenType', 'funcType', 'show', 'swipe', 'icon', 'class', 'color', 'width', 'hidden'],
+  pop: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'hover', 'swipe', 'icon', 'class', 'color', 'execSuccess', 'execError', 'syncComponent', 'switchTab', 'anchors', 'width', 'openmenu', 'refreshTab', 'position', 'tipTitle', 'hoverTitle', 'hidden', 'preButton', 'formCache'],
+  prompt: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'hover', 'swipe', 'icon', 'class', 'color', 'execSuccess', 'execError', 'syncComponent', 'switchTab', 'anchors', 'width', 'openmenu', 'refreshTab', 'position', 'tipTitle', 'hoverTitle', 'hidden', 'preButton', 'formCache'],
+  exec: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'hover', 'swipe', 'icon', 'class', 'color', 'execSuccess', 'execError', 'syncComponent', 'switchTab', 'anchors', 'width', 'openmenu', 'refreshTab', 'hoverTitle', 'hidden', 'preButton', 'formCache'],
+  excelIn: ['label', 'Ot', 'OpenType', 'intertype', 'show', 'hover', 'icon', 'class', 'color', 'sheet', 'execSuccess', 'execError', 'syncComponent', 'switchTab', 'width', 'hidden'],
+  excelOut: ['label', 'Ot', 'OpenType', 'intertype', 'show', 'hover', 'icon', 'class', 'color', 'execSuccess', 'execError', 'syncComponent', 'switchTab', 'pagination', 'search', 'width', 'hidden'],
+  popview: ['label', 'Ot', 'OpenType', 'show', 'hover', 'icon', 'class', 'color', 'popClose', 'width', 'display', 'ratio', 'syncComponent', 'clickouter', 'maskStyle', 'closeButton', 'hidden'],
+  tab: ['label', 'Ot', 'OpenType', 'show', 'hover', 'icon', 'class', 'color', 'linkmenu', 'width', 'hidden', 'openTab'],
+  innerpage: ['label', 'Ot', 'OpenType', 'pageTemplate', 'show', 'hover', 'swipe', 'icon', 'class', 'color', 'width', 'hidden'],
+  funcbutton: ['label', 'OpenType', 'funcType', 'show', 'hover', 'swipe', 'icon', 'class', 'color', 'width', 'hidden'],
   form: ['label', 'OpenType', 'formType', 'intertype', 'Ot', 'execSuccess', 'execError', 'syncComponent', 'width', 'openmenu', 'refreshTab', 'title', 'hidden']
 }
 
@@ -409,6 +409,16 @@
     } else if (openType === 'tab') {
       reOptions.Ot = requireOptions.filter(op => ['notRequired', 'requiredSgl', 'requiredOnce'].includes(op.value))
 
+      if (Ot === 'notRequired') {
+        shows.push('sysId')
+      }
+
+      if (shows.includes('linkmenu') && this.record.linkmenu[0] === 'multiMenu') {
+        shows.push('multiMenus')
+      } else if (this.record.sysId === 'js') {
+        shows.push('sign')
+      }
+
       reRequired.linkmenu = true
       reTooltip.linkmenu = ''
     } else if (openType === 'innerpage') {
@@ -558,11 +568,14 @@
         shows.push('reason')
       }
     }
-
+    
     if (shows.includes('syncComponent') && this.record.syncComponent[0] === 'multiComponent') {
       shows.push('syncComponents')
     }
-
+    
+    if (this.record.hidden !== 'true') {
+      shows.push('permission')
+    }
     if (this.record.show === 'icon') {
       reRequired.icon = true
     } else {
@@ -1111,14 +1124,32 @@
         
               let id = values.linkmenu[values.linkmenu.length - 1]
         
-              list.forEach(item => {
-                if (item.MenuID === id) {
-                  values.MenuID = id
-                  values.MenuName = item.MenuName
-                  values.MenuNo = item.MenuNo
-                  values.tabType = item.type
-                }
-              })
+              if (id !== 'multiMenu') {
+                list.forEach(item => {
+                  if (item.MenuID === id) {
+                    values.MenuID = id
+                    values.MenuName = item.MenuName
+                    values.MenuNo = item.MenuNo
+                    values.tabType = item.type
+                  }
+                })
+                delete values.multiMenus
+              } else {
+                values.multiMenus.forEach(menu => {
+                  menu.sign = menu.sign || ''
+
+                  let _id = menu.menuId[menu.menuId.length - 1]
+
+                  list.forEach(item => {
+                    if (item.MenuID === _id) {
+                      menu.MenuID = _id
+                      menu.MenuName = item.MenuName
+                      menu.MenuNo = item.MenuNo
+                      menu.tabType = item.type
+                    }
+                  })
+                })
+              }
             }
           } else if (values.OpenType === 'funcbutton' && values.funcType === 'expPdf') {
             values.Ot = 'notRequired'

--
Gitblit v1.8.0