From 506250c82a10bae9ba44ddbf07c0e0d5512371cb Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期四, 31 八月 2023 11:18:52 +0800
Subject: [PATCH] Merge branch 'develop'

---
 src/menu/components/timeline/normal-timeline/options.jsx             |    5 +
 src/menu/components/card/double-data-card/options.jsx                |   10 ++-
 src/menu/components/chart/antv-bar/chartcompile/formconfig.jsx       |    8 +-
 src/menu/components/chart/antv-pie/chartcompile/formconfig.jsx       |    8 +-
 src/menu/components/tree/antd-tree/options.jsx                       |    5 +
 src/menu/components/carousel/data-card/options.jsx                   |    5 +
 src/menu/components/editor/braft-editor/options.jsx                  |    6 +
 src/menu/components/table/normal-table/options.jsx                   |   11 ++-
 src/menu/components/card/data-card/options.jsx                       |   23 ++++---
 src/menu/components/card/balcony/options.jsx                         |   27 +++++---
 src/menu/components/chart/chart-custom/chartcompile/formconfig.jsx   |    8 +-
 src/menu/components/chart/antv-scatter/chartcompile/formconfig.jsx   |    8 +-
 src/menu/components/chart/antv-G6/chartcompile/formconfig.jsx        |    8 +-
 src/menu/components/chart/antv-dashboard/chartcompile/formconfig.jsx |    8 +-
 src/menu/components/code/sandbox/options.jsx                         |    8 +-
 src/assets/mobimg/canlendar.png                                      |    0 
 src/menu/components/calendar/options.jsx                             |   14 +++-
 src/menu/modulesource/option.jsx                                     |    3 
 18 files changed, 101 insertions(+), 64 deletions(-)

diff --git a/src/assets/mobimg/canlendar.png b/src/assets/mobimg/canlendar.png
new file mode 100644
index 0000000..45f3cad
--- /dev/null
+++ b/src/assets/mobimg/canlendar.png
Binary files differ
diff --git a/src/menu/components/calendar/options.jsx b/src/menu/components/calendar/options.jsx
index aff9975..3ab3730 100644
--- a/src/menu/components/calendar/options.jsx
+++ b/src/menu/components/calendar/options.jsx
@@ -5,6 +5,8 @@
 export default function (wrap, columns) {
   let roleList = sessionStorage.getItem('sysRoles')
   let appType = sessionStorage.getItem('appType')
+  let isprint = sessionStorage.getItem('MenuType') === 'billPrint'
+  let ispop = sessionStorage.getItem('editMenuType') === 'popview'
 
   if (roleList) {
     try {
@@ -113,7 +115,7 @@
         {value: 'true', label: !appType ? '缁ф壙鑿滃崟' : '鍚敤'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop || isprint
     },
     {
       type: 'radio',
@@ -125,7 +127,7 @@
         {value: 'true', label: '缁ф壙鑿滃崟'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop || isprint
     },
     {
       type: 'radio',
@@ -143,7 +145,8 @@
         {field: 'menu', values: ['menu']},
         {field: 'menuType', values: ['menus']},
         {field: 'menus', values: ['menus']},
-      ]
+      ],
+      forbid: isprint
     },
     {
       type: 'select',
@@ -152,6 +155,7 @@
       initval: wrap.menuType || '',
       required: true,
       options: columns,
+      forbid: isprint
     },
     {
       type: 'cascader',
@@ -161,6 +165,7 @@
       required: true,
       extendName: 'MenuNo',
       options: menulist,
+      forbid: isprint
     },
     {
       type: 'multiselect',
@@ -169,7 +174,7 @@
       initval: wrap.blacklist || [],
       required: false,
       options: roleList,
-      forbid: !!appType
+      forbid: !!appType || isprint
     },
     {
       type: 'table',
@@ -207,6 +212,7 @@
       required: true,
       span: 24,
       actions: ['view'],
+      forbid: isprint,
       columns: [
         {
           title: '鏍囪瘑',
diff --git a/src/menu/components/card/balcony/options.jsx b/src/menu/components/card/balcony/options.jsx
index 1f90cc9..cfd50f8 100644
--- a/src/menu/components/card/balcony/options.jsx
+++ b/src/menu/components/card/balcony/options.jsx
@@ -6,7 +6,8 @@
  */
 export default function (wrap, buttons, columns) {
   let menu = window.GLOB.customMenu
-  let MenuType = sessionStorage.getItem('MenuType') || 'custom'
+  let isprint = sessionStorage.getItem('MenuType') === 'billPrint'
+  let ispop = sessionStorage.getItem('editMenuType') === 'popview'
 
   let modules = MenuUtils.getLinkModules(menu.components) || []
   let supmodules = MenuUtils.getSupModules(menu.components, '', menu.interfaces)
@@ -124,7 +125,7 @@
         {field: 'syncModule', values: ['sync']},
         {field: 'checkAll', values: ['sync']},
       ],
-      forbid: MenuType === 'billPrint'
+      forbid: isprint
     },
     {
       type: 'cascader',
@@ -133,7 +134,8 @@
       initval: wrap.supModule || [],
       // tooltip: '褰撲笂绾х粍浠朵笉瀛樺湪鎴栨病鏈夋潈闄愭椂锛屽綋鍓嶇粍浠朵笉鏄剧ず銆�',
       required: true,
-      options: supmodules
+      options: supmodules,
+      forbid: isprint
     },
     {
       type: 'radio',
@@ -145,7 +147,8 @@
       options: [
         {value: 'hidden', label: '閫夎'},
         {value: 'show', label: '濮嬬粓'},
-      ]
+      ],
+      forbid: isprint
     },
     {
       type: 'cascader',
@@ -154,7 +157,8 @@
       initval: wrap.syncModule || '',
       tooltip: '褰撳悓姝ョ粍浠朵笉瀛樺湪鎴栨病鏈夋潈闄愭椂锛屽綋鍓嶇粍浠朵笉鏄剧ず銆�',
       required: true,
-      options: modules
+      options: modules,
+      forbid: isprint
     },
     {
       type: 'radio',
@@ -166,7 +170,8 @@
       options: [
         {value: 'hidden', label: '闅愯棌'},
         {value: 'show', label: '鏄剧ず'},
-      ]
+      ],
+      forbid: isprint
     },
     {
       type: 'radio',
@@ -201,7 +206,7 @@
         {value: 'content', label: '娴姩鍗�'},
         {value: 'headerOrfooter', label: '椤电湁/椤佃剼'},
       ],
-      forbid: MenuType !== 'billPrint'
+      forbid: !isprint
     },
     {
       type: 'radio',
@@ -213,7 +218,7 @@
         {value: 'true', label: !appType ? '缁ф壙鑿滃崟' : '鍚敤'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop || isprint
     },
     {
       type: 'radio',
@@ -225,7 +230,7 @@
         {value: 'true', label: '缁ф壙鑿滃崟'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop || isprint
     },
     {
       type: 'select',
@@ -234,7 +239,7 @@
       initval: wrap.linkbtn || '',
       required: false,
       options: buttons,
-      forbid: MenuType === 'billPrint'
+      forbid: isprint
     },
     {
       type: 'multiselect',
@@ -243,7 +248,7 @@
       initval: wrap.blacklist || [],
       required: false,
       options: roleList,
-      forbid: !!appType
+      forbid: !!appType || isprint
     },
   ]
 
diff --git a/src/menu/components/card/data-card/options.jsx b/src/menu/components/card/data-card/options.jsx
index d113003..519af8e 100644
--- a/src/menu/components/card/data-card/options.jsx
+++ b/src/menu/components/card/data-card/options.jsx
@@ -5,7 +5,8 @@
  */
 export default function (wrap, subtype, columns = [], id = '', supNodes = [], setting, buttons = []) {
   let appType = sessionStorage.getItem('appType')
-  let MenuType = sessionStorage.getItem('MenuType') || 'custom'
+  let isprint = sessionStorage.getItem('MenuType') === 'billPrint'
+  let ispop = sessionStorage.getItem('editMenuType') === 'popview'
   let menu = window.GLOB.customMenu
   let laypage = setting && setting.laypage !== 'false'
   let interfaces = []
@@ -180,7 +181,7 @@
       options: [
         {value: 'page', label: '椤电爜'},
         {value: 'switch', label: '宸﹀彸鍒囨崲', forbid: appType === 'mob' || subtype === 'tablecard'},
-        {value: 'slide', label: '婊戝姩鍔犺浇', forbid: appType !== 'mob' || sessionStorage.getItem('editMenuType') === 'popview'},
+        {value: 'slide', label: '婊戝姩鍔犺浇', forbid: appType !== 'mob' || ispop},
         {value: 'more', label: '鏌ョ湅鏇村'},
       ],
       controlFields: [
@@ -329,7 +330,7 @@
       controlFields: [
         {field: 'printHeight', values: ['content']},
       ],
-      forbid: subtype !== 'propcard' || MenuType !== 'billPrint'
+      forbid: subtype !== 'propcard' || !isprint
     },
     {
       type: 'number',
@@ -338,7 +339,7 @@
       initval: wrap.printHeight || '',
       tooltip: subtype !== 'propcard' ? '褰撳墠鏁版嵁鍗¢珮搴︾浉褰撲簬鍑犳潯鏁版嵁銆�' : '褰撳墠灞炴�у崱楂樺害鐩稿綋浜庡嚑鏉℃暟鎹��',
       required: false,
-      forbid: subtype === 'tablecard' || MenuType !== 'billPrint'
+      forbid: subtype === 'tablecard' || !isprint
     },
     {
       type: 'select',
@@ -487,7 +488,7 @@
         {value: 'true', label: '楠岃瘉'},
         {value: 'false', label: '蹇界暐'},
       ],
-      forbid: subtype !== 'datacard'
+      forbid: subtype !== 'datacard' || isprint
     },
     {
       type: 'cascader',
@@ -497,7 +498,7 @@
       required: false,
       options: modules,
       allowClear: true,
-      forbid: subtype !== 'propcard'
+      forbid: subtype !== 'propcard' || isprint
     },
     {
       type: 'select',
@@ -529,7 +530,7 @@
       initval: wrap.supType || 'single',
       tooltip: '涓婄骇缁勪欢涓哄崟涓�缁勪欢鎴栧涓粍浠躲��',
       required: false,
-      forbid: subtype !== 'datacard' || appType === 'mob',
+      forbid: subtype !== 'datacard' || appType === 'mob' || isprint,
       options: [
         {value: 'single', label: '鍗曠粍浠�'},
         {value: 'multi', label: '澶氱粍浠�'},
@@ -548,7 +549,7 @@
         {value: 'true', label: !appType ? '缁ф壙鑿滃崟' : '鍚敤'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop || isprint
     },
     {
       type: 'radio',
@@ -560,7 +561,7 @@
         {value: 'true', label: '缁ф壙鑿滃崟'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop || isprint
     },
     {
       type: 'multiselect',
@@ -569,7 +570,7 @@
       initval: wrap.blacklist || [],
       required: false,
       options: roleList,
-      forbid: !!appType
+      forbid: !!appType || isprint
     },
     {
       type: 'text',
@@ -586,7 +587,7 @@
       label: '涓婄骇缁勪欢',
       initval: supNodes,
       required: true,
-      forbid: subtype !== 'datacard' || appType === 'mob',
+      forbid: subtype !== 'datacard' || appType === 'mob' || isprint,
       span: 24,
       columns: [
         {
diff --git a/src/menu/components/card/double-data-card/options.jsx b/src/menu/components/card/double-data-card/options.jsx
index 4f3c117..82a6258 100644
--- a/src/menu/components/card/double-data-card/options.jsx
+++ b/src/menu/components/card/double-data-card/options.jsx
@@ -5,6 +5,8 @@
   let appType = sessionStorage.getItem('appType')
   let laypage = setting && setting.laypage !== 'false'
   let roleList = sessionStorage.getItem('sysRoles')
+  let isprint = sessionStorage.getItem('MenuType') === 'billPrint'
+  let ispop = sessionStorage.getItem('editMenuType') === 'popview'
 
   if (roleList) {
     try {
@@ -84,7 +86,7 @@
       disabled: !laypage,
       options: [
         {value: 'page', label: '椤电爜'},
-        {value: 'slide', label: '婊戝姩鍔犺浇', forbid: appType !== 'mob' || sessionStorage.getItem('editMenuType') === 'popview'},
+        {value: 'slide', label: '婊戝姩鍔犺浇', forbid: appType !== 'mob' || ispop},
         {value: 'more', label: '鏌ョ湅鏇村'},
       ],
       controlFields: [
@@ -223,7 +225,7 @@
         {value: 'true', label: !appType ? '缁ф壙鑿滃崟' : '鍚敤'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop || isprint
     },
     {
       type: 'radio',
@@ -235,7 +237,7 @@
         {value: 'true', label: '缁ф壙鑿滃崟'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop || isprint
     },
     {
       type: 'multiselect',
@@ -244,7 +246,7 @@
       initval: wrap.blacklist || [],
       required: false,
       options: roleList,
-      forbid: !!appType
+      forbid: !!appType || isprint
     },
     {
       type: 'text',
diff --git a/src/menu/components/carousel/data-card/options.jsx b/src/menu/components/carousel/data-card/options.jsx
index d5116a2..f7ba65c 100644
--- a/src/menu/components/carousel/data-card/options.jsx
+++ b/src/menu/components/carousel/data-card/options.jsx
@@ -4,6 +4,7 @@
 export default function (wrap, subtype) {
   let appType = sessionStorage.getItem('appType')
   let roleList = sessionStorage.getItem('sysRoles')
+  let ispop = sessionStorage.getItem('editMenuType') === 'popview'
 
   if (roleList) {
     try {
@@ -212,7 +213,7 @@
         {value: 'true', label: !appType ? '缁ф壙鑿滃崟' : '鍚敤'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop
     },
     {
       type: 'radio',
@@ -224,7 +225,7 @@
         {value: 'true', label: '缁ф壙鑿滃崟'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop
     },
     {
       type: 'multiselect',
diff --git a/src/menu/components/chart/antv-G6/chartcompile/formconfig.jsx b/src/menu/components/chart/antv-G6/chartcompile/formconfig.jsx
index 970e06e..f473165 100644
--- a/src/menu/components/chart/antv-G6/chartcompile/formconfig.jsx
+++ b/src/menu/components/chart/antv-G6/chartcompile/formconfig.jsx
@@ -5,6 +5,8 @@
 export function getBaseForm (card, columns) {
   let appType = sessionStorage.getItem('appType')
   let roleList = sessionStorage.getItem('sysRoles')
+  let isprint = sessionStorage.getItem('MenuType') === 'billPrint'
+  let ispop = sessionStorage.getItem('editMenuType') === 'popview'
   if (roleList) {
     try {
       roleList = JSON.parse(roleList)
@@ -87,7 +89,7 @@
         {value: 'true', label: '鍚敤'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: !appType || sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: !appType || ispop || isprint
     },
     {
       type: 'radio',
@@ -99,7 +101,7 @@
         {value: 'true', label: '缁ф壙鑿滃崟'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop || isprint
     },
     {
       type: 'multiselect',
@@ -108,7 +110,7 @@
       initval: card.blacklist || [],
       required: false,
       options: roleList,
-      forbid: !!appType
+      forbid: !!appType || isprint
     },
     {
       type: 'radio',
diff --git a/src/menu/components/chart/antv-bar/chartcompile/formconfig.jsx b/src/menu/components/chart/antv-bar/chartcompile/formconfig.jsx
index e5a0f18..757c4e8 100644
--- a/src/menu/components/chart/antv-bar/chartcompile/formconfig.jsx
+++ b/src/menu/components/chart/antv-bar/chartcompile/formconfig.jsx
@@ -5,6 +5,8 @@
 export function getBaseForm (card, columns = []) {
   let appType = sessionStorage.getItem('appType')
   let roleList = sessionStorage.getItem('sysRoles')
+  let isprint = sessionStorage.getItem('MenuType') === 'billPrint'
+  let ispop = sessionStorage.getItem('editMenuType') === 'popview'
   if (roleList) {
     try {
       roleList = JSON.parse(roleList)
@@ -87,7 +89,7 @@
         {value: 'true', text: '鍚敤'},
         {value: 'false', text: '绂佺敤'},
       ],
-      forbid: !appType || sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: !appType || ispop || isprint
     },
     {
       type: 'radio',
@@ -99,7 +101,7 @@
         {value: 'true', text: '缁ф壙鑿滃崟'},
         {value: 'false', text: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop || isprint
     },
     {
       type: 'select',
@@ -109,7 +111,7 @@
       multi: true,
       required: false,
       options: roleList,
-      forbid: !!appType
+      forbid: !!appType || isprint
     },
     {
       type: 'radio',
diff --git a/src/menu/components/chart/antv-dashboard/chartcompile/formconfig.jsx b/src/menu/components/chart/antv-dashboard/chartcompile/formconfig.jsx
index 1840ac9..267a56b 100644
--- a/src/menu/components/chart/antv-dashboard/chartcompile/formconfig.jsx
+++ b/src/menu/components/chart/antv-dashboard/chartcompile/formconfig.jsx
@@ -5,6 +5,8 @@
 export function getBaseForm (card) {
   let appType = sessionStorage.getItem('appType')
   let roleList = sessionStorage.getItem('sysRoles')
+  let isprint = sessionStorage.getItem('MenuType') === 'billPrint'
+  let ispop = sessionStorage.getItem('editMenuType') === 'popview'
   if (roleList) {
     try {
       roleList = JSON.parse(roleList)
@@ -61,7 +63,7 @@
         {value: 'true', text: '鍚敤'},
         {value: 'false', text: '绂佺敤'},
       ],
-      forbid: !appType || sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: !appType || ispop || isprint
     },
     {
       type: 'radio',
@@ -73,7 +75,7 @@
         {value: 'true', text: '缁ф壙鑿滃崟'},
         {value: 'false', text: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop || isprint
     },
     {
       type: 'select',
@@ -83,7 +85,7 @@
       multi: true,
       required: false,
       options: roleList,
-      forbid: !!appType
+      forbid: !!appType || isprint
     }
   ]
 }
diff --git a/src/menu/components/chart/antv-pie/chartcompile/formconfig.jsx b/src/menu/components/chart/antv-pie/chartcompile/formconfig.jsx
index f97f30f..be9e742 100644
--- a/src/menu/components/chart/antv-pie/chartcompile/formconfig.jsx
+++ b/src/menu/components/chart/antv-pie/chartcompile/formconfig.jsx
@@ -6,6 +6,8 @@
   let appType = sessionStorage.getItem('appType')
   let isApp = appType === 'pc' || appType === 'mob'
   let menulist = null
+  let isprint = sessionStorage.getItem('MenuType') === 'billPrint'
+  let ispop = sessionStorage.getItem('editMenuType') === 'popview'
 
   if (isApp) {
     menulist = sessionStorage.getItem('appMenus')
@@ -119,7 +121,7 @@
         {value: 'true', text: '鍚敤'},
         {value: 'false', text: '绂佺敤'},
       ],
-      forbid: !appType || sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: !appType || ispop || isprint
     },
     {
       type: 'radio',
@@ -131,7 +133,7 @@
         {value: 'true', text: '缁ф壙鑿滃崟'},
         {value: 'false', text: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop || isprint
     },
     {
       type: 'select',
@@ -141,7 +143,7 @@
       multi: true,
       required: false,
       options: roleList,
-      forbid: !!appType
+      forbid: !!appType || isprint
     }
   ]
 }
diff --git a/src/menu/components/chart/antv-scatter/chartcompile/formconfig.jsx b/src/menu/components/chart/antv-scatter/chartcompile/formconfig.jsx
index 8957140..f8eaadf 100644
--- a/src/menu/components/chart/antv-scatter/chartcompile/formconfig.jsx
+++ b/src/menu/components/chart/antv-scatter/chartcompile/formconfig.jsx
@@ -5,6 +5,8 @@
 export function getBaseForm (card) {
   let appType = sessionStorage.getItem('appType')
   let roleList = sessionStorage.getItem('sysRoles')
+  let isprint = sessionStorage.getItem('MenuType') === 'billPrint'
+  let ispop = sessionStorage.getItem('editMenuType') === 'popview'
   if (roleList) {
     try {
       roleList = JSON.parse(roleList)
@@ -61,7 +63,7 @@
         {value: 'true', text: '鍚敤'},
         {value: 'false', text: '绂佺敤'},
       ],
-      forbid: !appType || sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: !appType || ispop || isprint
     },
     {
       type: 'radio',
@@ -73,7 +75,7 @@
         {value: 'true', text: '缁ф壙鑿滃崟'},
         {value: 'false', text: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop || isprint
     },
     {
       type: 'select',
@@ -83,7 +85,7 @@
       multi: true,
       required: false,
       options: roleList,
-      forbid: !!appType
+      forbid: !!appType || isprint
     }
   ]
 }
diff --git a/src/menu/components/chart/chart-custom/chartcompile/formconfig.jsx b/src/menu/components/chart/chart-custom/chartcompile/formconfig.jsx
index 9089580..724fe6a 100644
--- a/src/menu/components/chart/chart-custom/chartcompile/formconfig.jsx
+++ b/src/menu/components/chart/chart-custom/chartcompile/formconfig.jsx
@@ -5,6 +5,8 @@
 export function getBaseForm (card) {
   let appType = sessionStorage.getItem('appType')
   let roleList = sessionStorage.getItem('sysRoles')
+  let isprint = sessionStorage.getItem('MenuType') === 'billPrint'
+  let ispop = sessionStorage.getItem('editMenuType') === 'popview'
   if (roleList) {
     try {
       roleList = JSON.parse(roleList)
@@ -72,7 +74,7 @@
         {value: 'true', text: '鍚敤'},
         {value: 'false', text: '绂佺敤'},
       ],
-      forbid: !appType || sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: !appType || ispop || isprint
     },
     {
       type: 'radio',
@@ -84,7 +86,7 @@
         {value: 'true', text: '缁ф壙鑿滃崟'},
         {value: 'false', text: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop || isprint
     },
     {
       type: 'select',
@@ -94,7 +96,7 @@
       multi: true,
       required: false,
       options: roleList,
-      forbid: !!appType
+      forbid: !!appType || isprint
     },
     // {
     //   type: 'cascader',
diff --git a/src/menu/components/code/sandbox/options.jsx b/src/menu/components/code/sandbox/options.jsx
index db2f2ce..fa52c7b 100644
--- a/src/menu/components/code/sandbox/options.jsx
+++ b/src/menu/components/code/sandbox/options.jsx
@@ -4,6 +4,8 @@
 export default function (wrap) {
   let appType = sessionStorage.getItem('appType')
   let roleList = sessionStorage.getItem('sysRoles')
+  let isprint = sessionStorage.getItem('MenuType') === 'billPrint'
+  let ispop = sessionStorage.getItem('editMenuType') === 'popview'
 
   if (roleList) {
     try {
@@ -71,7 +73,7 @@
         {value: 'true', label: '鍚敤'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: !appType || sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: !appType || ispop || isprint
     },
     {
       type: 'radio',
@@ -83,7 +85,7 @@
         {value: 'true', label: '缁ф壙鑿滃崟'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop || isprint
     },
     {
       type: 'multiselect',
@@ -92,7 +94,7 @@
       initval: wrap.blacklist || [],
       required: false,
       options: roleList,
-      forbid: !!appType
+      forbid: !!appType || isprint
     },
   ]
 
diff --git a/src/menu/components/editor/braft-editor/options.jsx b/src/menu/components/editor/braft-editor/options.jsx
index 908efea..922cc66 100644
--- a/src/menu/components/editor/braft-editor/options.jsx
+++ b/src/menu/components/editor/braft-editor/options.jsx
@@ -4,6 +4,8 @@
 export default function (wrap, columns) {
   let appType = sessionStorage.getItem('appType')
   let roleList = sessionStorage.getItem('sysRoles')
+  let isprint = sessionStorage.getItem('MenuType') === 'billPrint'
+  let ispop = sessionStorage.getItem('editMenuType') === 'popview'
   let menu = window.GLOB.customMenu
 
   let interfaces = []
@@ -157,7 +159,7 @@
         {value: 'true', label: '鍚敤'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: !appType || sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: !appType || ispop || isprint
     },
     {
       type: 'multiselect',
@@ -166,7 +168,7 @@
       initval: wrap.blacklist || [],
       required: false,
       options: roleList,
-      forbid: !!appType
+      forbid: !!appType || isprint
     },
   ]
 
diff --git a/src/menu/components/table/normal-table/options.jsx b/src/menu/components/table/normal-table/options.jsx
index 0a6329b..8ab9460 100644
--- a/src/menu/components/table/normal-table/options.jsx
+++ b/src/menu/components/table/normal-table/options.jsx
@@ -4,6 +4,8 @@
 export default function (wrap, action = [], columns = []) {
   let roleList = sessionStorage.getItem('sysRoles')
   let appType = sessionStorage.getItem('appType')
+  let isprint = sessionStorage.getItem('MenuType') === 'billPrint'
+  let ispop = sessionStorage.getItem('editMenuType') === 'popview'
 
   if (roleList) {
     try {
@@ -197,7 +199,7 @@
       max: 3000,
       precision: 0,
       required: false,
-      forbid: appType !== ''
+      forbid: appType !== '' || isprint
     },
     {
       type: 'select',
@@ -264,6 +266,7 @@
         {value: 'true', label: '楠岃瘉'},
         {value: 'false', label: '蹇界暐'},
       ],
+      forbid: isprint
     },
     {
       type: 'radio',
@@ -275,7 +278,7 @@
         {value: 'true', label: !appType ? '缁ф壙鑿滃崟' : '鍚敤'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop || isprint
     },
     {
       type: 'radio',
@@ -287,7 +290,7 @@
         {value: 'true', label: '缁ф壙鑿滃崟'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop || isprint
     },
     {
       type: 'multiselect',
@@ -296,7 +299,7 @@
       initval: wrap.blacklist || [],
       required: false,
       options: roleList,
-      forbid: !!appType
+      forbid: !!appType || isprint
     },
   ]
 
diff --git a/src/menu/components/timeline/normal-timeline/options.jsx b/src/menu/components/timeline/normal-timeline/options.jsx
index e07e25d..07cf759 100644
--- a/src/menu/components/timeline/normal-timeline/options.jsx
+++ b/src/menu/components/timeline/normal-timeline/options.jsx
@@ -4,6 +4,7 @@
 export default function (wrap, columns) {
   let roleList = sessionStorage.getItem('sysRoles')
   let appType = sessionStorage.getItem('appType')
+  let ispop = sessionStorage.getItem('editMenuType') === 'popview'
 
   if (roleList) {
     try {
@@ -171,7 +172,7 @@
         {value: 'true', label: !appType ? '缁ф壙鑿滃崟' : '鍚敤'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop
     },
     {
       type: 'radio',
@@ -183,7 +184,7 @@
         {value: 'true', label: '缁ф壙鑿滃崟'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop
     },
     {
       type: 'radio',
diff --git a/src/menu/components/tree/antd-tree/options.jsx b/src/menu/components/tree/antd-tree/options.jsx
index eb10a2a..d7e9f39 100644
--- a/src/menu/components/tree/antd-tree/options.jsx
+++ b/src/menu/components/tree/antd-tree/options.jsx
@@ -4,6 +4,7 @@
 export default function (wrap, columns = []) {
   let roleList = sessionStorage.getItem('sysRoles')
   let appType = sessionStorage.getItem('appType')
+  let ispop = sessionStorage.getItem('editMenuType') === 'popview'
 
   if (roleList) {
     try {
@@ -131,7 +132,7 @@
         {value: 'true', label: '鍚敤'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: !appType || sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: !appType || ispop
     },
     {
       type: 'radio',
@@ -143,7 +144,7 @@
         {value: 'true', label: '缁ф壙鑿滃崟'},
         {value: 'false', label: '绂佺敤'},
       ],
-      forbid: sessionStorage.getItem('editMenuType') === 'popview'
+      forbid: ispop
     },
     {
       type: 'multiselect',
diff --git a/src/menu/modulesource/option.jsx b/src/menu/modulesource/option.jsx
index f077659..ab60da4 100644
--- a/src/menu/modulesource/option.jsx
+++ b/src/menu/modulesource/option.jsx
@@ -32,6 +32,7 @@
 import xflow from '@/assets/mobimg/xflow.png'
 import Voucher from '@/assets/mobimg/voucher.png'
 import Account from '@/assets/mobimg/account.png'
+import canlendar from '@/assets/mobimg/canlendar.png'
 
 // 缁勪欢閰嶇疆淇℃伅
 export const menuOptions = [
@@ -50,7 +51,7 @@
   { type: 'menu', url: NormalTable, component: 'table', subtype: 'normaltable', title: '甯哥敤琛�', width: 24 },
   { type: 'menu', url: NormalTable, component: 'table', subtype: 'editable', title: '琛ㄦ牸锛堝彲缂栬緫锛�', width: 24, forbid: ['billPrint'] },
   { type: 'menu', url: timeline, component: 'timeline', subtype: 'timeline', title: '鏃堕棿杞�', width: 12 },
-  { type: 'menu', url: timeline, component: 'calendar', subtype: 'calendar', title: '鏃ュ巻', width: 24 },
+  { type: 'menu', url: canlendar, component: 'calendar', subtype: 'calendar', title: '鏃ュ巻', width: 24 },
   { type: 'menu', url: tree, component: 'tree', subtype: 'normaltree', title: '鏍戝舰鍒楄〃', width: 12, forbid: ['billPrint'] },
   { type: 'menu', url: line, component: 'line', subtype: 'line', title: '鎶樼嚎鍥�', width: 24 },
   { type: 'menu', url: bar, component: 'bar', subtype: 'bar', title: '鏌辩姸鍥�', width: 24 },

--
Gitblit v1.8.0