From da34633b25d16359cd91a656acad5e811f9972b7 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期二, 14 三月 2023 18:09:54 +0800
Subject: [PATCH] 2023-03-14

---
 src/menu/components/form/simple-form/options.jsx |   71 ++++++++++++++++++++++++++++++++---
 1 files changed, 64 insertions(+), 7 deletions(-)

diff --git a/src/menu/components/form/simple-form/options.jsx b/src/menu/components/form/simple-form/options.jsx
index 12b0542..2197555 100644
--- a/src/menu/components/form/simple-form/options.jsx
+++ b/src/menu/components/form/simple-form/options.jsx
@@ -1,4 +1,3 @@
-import { fromJS } from 'immutable'
 import MenuUtils from '@/utils/utils-custom.js'
 
 /**
@@ -23,21 +22,28 @@
 
   if (appType === 'mob') {
     config.subcards[0].fields.forEach(f => {
-      if (f.field && ['select', 'text', 'number'].includes(f.type) && f.hidden !== 'true' && f.readonly !== 'true') {
+      if (f.field && ['select', 'text', 'number', 'textarea'].includes(f.type) && f.hidden !== 'true' && f.readonly !== 'true') {
         fields.push(f)
       }
     })
   } else {
     config.subcards[0].fields.forEach(f => {
-      if (f.field && ['select', 'link', 'text', 'number'].includes(f.type) && f.hidden !== 'true' && f.readonly !== 'true') {
+      if (f.field && ['select', 'link', 'text', 'number', 'textarea'].includes(f.type) && f.hidden !== 'true' && f.readonly !== 'true') {
         fields.push(f)
       }
     })
   }
 
   let modules = []
-  let menu = fromJS(window.GLOB.customMenu).toJS()
-  modules = MenuUtils.getSupModules(menu.components, config.uuid)
+  let menu = window.GLOB.customMenu
+  modules = MenuUtils.getSupModules(menu.components, config.uuid, menu.interfaces)
+
+  if (wrap.supModule && wrap.supModule.length > 0 && wrap.supModule[0] !== 'empty') {
+    let has = MenuUtils.checkSupModules(modules, wrap.supModule.slice(-1)[0])
+    if (!has) {
+      wrap.supModule = ''
+    }
+  }
 
   const wrapForm = [
     {
@@ -78,6 +84,7 @@
         {value: 'static', label: '闈欐��'},
       ],
       controlFields: [
+        {field: 'empty', values: ['dynamic']},
         {field: 'supModule', values: ['static']},
       ]
     },
@@ -129,7 +136,7 @@
     },
     {
       type: 'radio',
-      field: 'subEnable',
+      field: 'enable',
       label: '鎻愪氦',
       initval: wrap.enable || 'true',
       required: false,
@@ -137,6 +144,56 @@
         {value: 'true', label: '鏄剧ず'},
         {value: 'false', label: '闅愯棌'},
       ]
+    },
+    {
+      type: 'radio',
+      field: 'closeEnable',
+      label: '鍏抽棴',
+      initval: wrap.closeEnable || 'false',
+      tooltip: '绠$悊绯荤粺涓細鍏抽棴褰撳墠鏍囩锛屽瓙搴旂敤涓负杩斿洖涓婁竴椤点��',
+      required: false,
+      options: [
+        {value: 'true', label: '鏄剧ず'},
+        {value: 'false', label: '闅愯棌'},
+      ]
+    },
+    {
+      type: 'radio',
+      field: 'formStyle',
+      label: '琛ㄥ崟鏍峰紡',
+      initval: wrap.formStyle || '',
+      required: false,
+      options: [
+        {value: '', label: '榛樿'},
+        {value: 'shadow', label: '闃村奖'},
+      ],
+      forbid: appType !== 'mob'
+    },
+    {
+      type: 'radio',
+      field: 'goback',
+      label: '绌哄�艰繑鍥�',
+      initval: wrap.goback || 'false',
+      tooltip: '褰撴煡璇㈡暟鎹负绌烘椂锛岃繑鍥炰笂涓�鐣岄潰銆�',
+      required: false,
+      options: [
+        {value: 'true', label: '鏄�'},
+        {value: 'false', label: '鍚�'},
+      ],
+      forbid: appType !== 'mob'
+    },
+    {
+      type: 'radio',
+      field: 'empty',
+      label: '绌哄�奸殣钘�',
+      initval: wrap.empty || 'show',
+      tooltip: '褰撴煡璇㈡暟鎹负绌烘椂锛岄殣钘忚缁勪欢銆�',
+      required: false,
+      skip: true,
+      options: [
+        {value: 'show', label: '鍚�'},
+        {value: 'hidden', label: '鏄�'},
+      ],
     },
     {
       type: 'radio',
@@ -148,7 +205,7 @@
         {value: 'true', label: '鍚敤'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: !appType
+      forbid: !appType || sessionStorage.getItem('editMenuType') === 'popview'
     },
     {
       type: 'cascader',

--
Gitblit v1.8.0