From c06e58c80240afd703d289bb1c584e08b9783383 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期五, 13 六月 2025 20:24:25 +0800
Subject: [PATCH] 2025-06-13

---
 src/mob/components/topbar/normal-navbar/options.jsx |  221 +++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 159 insertions(+), 62 deletions(-)

diff --git a/src/mob/components/topbar/normal-navbar/options.jsx b/src/mob/components/topbar/normal-navbar/options.jsx
index f9f3c7d..a66aa8b 100644
--- a/src/mob/components/topbar/normal-navbar/options.jsx
+++ b/src/mob/components/topbar/normal-navbar/options.jsx
@@ -6,6 +6,19 @@
  */
 export default function (wrap) {
   let menulist = sessionStorage.getItem('appMenus')
+  let searchable = true
+  let adapters = sessionStorage.getItem('adapter')
+  if (adapters) {
+    adapters = adapters.split(',')
+  } else {
+    adapters = []
+  }
+
+  window.GLOB.customMenu.components.forEach(item => {
+    if (item.type === 'search') {
+      searchable = false
+    }
+  })
 
   if (menulist) {
     try {
@@ -17,6 +30,24 @@
     menulist = []
   }
 
+  let funs = []
+
+  if (wrap.back === 'true') {
+    funs.push('back')
+  }
+  if (wrap.logout === 'true') {
+    funs.push('logout')
+  }
+  if (wrap.scan === 'true') {
+    funs.push('scan')
+  }
+  if (wrap.refresh === 'true') {
+    funs.push('refresh')
+  }
+  if (wrap.resetPwd === 'true') {
+    funs.push('resetPwd')
+  }
+
   const topbarWrapForm = [
     {
       type: 'radio',
@@ -26,8 +57,8 @@
       required: false,
       options: [
         {value: 'navbar', label: '瀵艰埅鏍�'},
-        {value: 'search', label: '鎼滅储妗�'},
-        {value: 'searchIcon', label: '鎼滅储鏍�'},
+        {value: 'search', label: '鎼滅储妗�', disabled: !searchable},
+        {value: 'searchIcon', label: '鎼滅储鏍�', disabled: !searchable},
       ],
     },
     {
@@ -35,81 +66,95 @@
       field: 'title',
       label: '鏍囬',
       initval: wrap.title || '',
-      tooltip: '浣跨敤鎼滅储妗嗘椂锛屾爣棰樼敤浜庢悳绱㈡潯浠堕殣钘忔椂锛堝綋鍚敤榛戝悕鍗曪紝鐧诲綍鐢ㄦ埛鏃犳潈闄愭椂锛夋樉绀恒��',
+      // tooltip: '浣跨敤鎼滅储妗嗘椂锛屾爣棰樼敤浜庢悳绱㈡潯浠堕殣钘忔椂锛堝綋鍚敤榛戝悕鍗曪紝鐧诲綍鐢ㄦ埛鏃犳潈闄愭椂锛夋樉绀恒�傛敞锛欯username浠h〃鐢ㄦ埛鍚嶏紝@fullname浠h〃濮撳悕銆�',
+      tooltip: '娉細@username浠h〃鐢ㄦ埛鍚嶏紝@fullname浠h〃濮撳悕锛孈appname浠h〃搴旂敤鍚嶃��',
       required: false
     },
     {
-      type: 'radio',
-      field: 'back',
-      label: '杩斿洖',
-      initval: wrap.back || 'true',
+      type: 'checkbox',
+      field: 'funs',
+      label: '鎵╁睍鍔熻兘',
+      tooltip: '1銆佽繑鍥炰笂涓�椤碉紱2銆佺粦瀹氬叕浼楀彿鍚庡彲鍒嗕韩褰撳墠椤甸潰锛�3銆佷簩缁寸爜浠モ�渓ogin鈥濆紑澶存椂涓烘壂鐮佺櫥褰曪紝浜岀淮鐮佷互鈥渉ttp鈥濆紑澶翠负椤甸潰璺宠浆锛屼簩缁寸爜浠モ�渕kbid鈥濆紑澶翠负鑿滃崟璺宠浆锛屼笖璁剧疆鏈夊叧鑱旇彍鍗曪紱4銆佸綋鍓嶉〉闈㈠埛鏂帮紱5銆侀��鍑虹郴缁燂紝杩斿洖绗竴涓〉闈€��',
+      initval: funs,
       required: false,
       options: [
-        {value: 'true', label: '鏄剧ず'},
-        {value: 'false', label: '闅愯棌'},
+        {value: 'back', label: '杩斿洖'},
+        {value: 'scan', label: '鎵竴鎵�'},
+        {value: 'resetPwd', label: '淇敼瀵嗙爜'},
+        {value: 'refresh', label: '鍒锋柊'},
+        {value: 'logout', label: '閫�鍑�'},
       ],
       controlFields: [
-        {field: 'reload', values: ['true']},
+        {field: 'reload', values: ['back']},
+        {field: 'linkmenu', values: ['scan']},
+        {field: 'prefix', values: ['scan']},
+      ],
+      span: 24
+    },
+    {
+      type: 'radio',
+      field: 'mode',
+      label: '寮规鑳屾櫙',
+      initval: wrap.mode || 'dark',
+      tooltip: '褰撳瓨鍦ㄦ墿灞曞姛鑳芥垨鑷畾涔夎彍鍗曟椂锛屽睍绀哄搴斾俊鎭脊绐楃殑鑳屾櫙棰滆壊銆�',
+      required: false,
+      options: [
+        {value: 'light', label: '鐧借壊'},
+        {value: 'dark', label: '榛戣壊'},
       ]
     },
     // {
     //   type: 'radio',
-    //   field: 'search',
-    //   label: '鎼滅储',
-    //   initval: wrap.search || 'false',
+    //   field: 'back',
+    //   label: '杩斿洖',
+    //   initval: wrap.back || 'true',
+    //   required: false,
+    //   options: [
+    //     {value: 'true', label: '鏄剧ず'},
+    //     {value: 'false', label: '闅愯棌'},
+    //   ],
+    //   controlFields: [
+    //     {field: 'reload', values: ['true']},
+    //   ]
+    // },
+    // {
+    //   type: 'radio',
+    //   field: 'logout',
+    //   label: '閫�鍑�',
+    //   initval: wrap.logout || 'false',
+    //   tooltip: '鐐瑰嚮閫�鍑烘椂锛岃繑鍥炵涓�涓〉闈€��',
     //   required: false,
     //   options: [
     //     {value: 'true', label: '鏄剧ず'},
     //     {value: 'false', label: '闅愯棌'},
     //   ]
     // },
-    {
-      type: 'radio',
-      field: 'logout',
-      label: '閫�鍑�',
-      initval: wrap.logout || 'false',
-      tooltip: '鐐瑰嚮閫�鍑烘椂锛岃繑鍥炵涓�涓〉闈€��',
-      required: false,
-      options: [
-        {value: 'true', label: '鏄剧ず'},
-        {value: 'false', label: '闅愯棌'},
-      ]
-    },
-    {
-      type: 'radio',
-      field: 'scan',
-      label: '鎵竴鎵�',
-      initval: wrap.scan || 'false',
-      tooltip: '绯荤粺鍔熻兘锛�1銆佹壂鐮佺櫥褰曪紝浜岀淮鐮佷互鈥渓ogin鈥濆紑澶达紝2銆侀〉闈㈣烦杞紝浜岀淮鐮佷互鈥渉ttp鈥濆紑澶达紝3銆佽彍鍗曡烦杞紝浜岀淮鐮佷互鈥渕kbid鈥濆紑澶达紝涓旇缃叧鑱旇彍鍗�',
-      required: false,
-      options: [
-        {value: 'true', label: '鏄剧ず'},
-        {value: 'false', label: '闅愯棌'},
-      ],
-      controlFields: [
-        {field: 'linkmenu', values: ['true']},
-      ]
-    },
-    {
-      type: 'radio',
-      field: 'refresh',
-      label: '鍒锋柊',
-      initval: wrap.refresh || 'false',
-      required: false,
-      options: [
-        {value: 'true', label: '鏄剧ず'},
-        {value: 'false', label: '闅愯棌'},
-      ]
-    },
-    {
-      type: 'select',
-      field: 'linkmenu',
-      label: '鍏宠仈鑿滃崟',
-      initval: wrap.linkmenu || '',
-      tooltip: '浣跨敤鎵爜鐧诲綍鍔熻兘鎴栬彍鍗曡烦杞姛鑳芥椂锛岄渶閫夋嫨璺宠浆鐨勮彍鍗曘��',
-      required: false,
-      options: menulist
-    },
+    // {
+    //   type: 'radio',
+    //   field: 'scan',
+    //   label: '鎵竴鎵�',
+    //   initval: wrap.scan || 'false',
+    //   tooltip: '绯荤粺鍔熻兘锛�1銆佹壂鐮佺櫥褰曪紝浜岀淮鐮佷互鈥渓ogin鈥濆紑澶达紝2銆侀〉闈㈣烦杞紝浜岀淮鐮佷互鈥渉ttp鈥濆紑澶达紝3銆佽彍鍗曡烦杞紝浜岀淮鐮佷互鈥渕kbid鈥濆紑澶达紝涓旇缃叧鑱旇彍鍗�',
+    //   required: false,
+    //   options: [
+    //     {value: 'true', label: '鏄剧ず'},
+    //     {value: 'false', label: '闅愯棌'},
+    //   ],
+    //   controlFields: [
+    //     {field: 'linkmenu', values: ['true']},
+    //   ]
+    // },
+    // {
+    //   type: 'radio',
+    //   field: 'refresh',
+    //   label: '鍒锋柊',
+    //   initval: wrap.refresh || 'false',
+    //   required: false,
+    //   options: [
+    //     {value: 'true', label: '鏄剧ず'},
+    //     {value: 'false', label: '闅愯棌'},
+    //   ]
+    // },
     {
       type: 'radio',
       field: 'reload',
@@ -126,12 +171,56 @@
       }]
     },
     {
+      type: 'select',
+      field: 'linkmenu',
+      label: '鍏宠仈鑿滃崟',
+      initval: wrap.linkmenu || '',
+      tooltip: '浣跨敤鎵爜鐧诲綍鍔熻兘鎴栬彍鍗曡烦杞姛鑳芥椂锛岄渶閫夋嫨璺宠浆鐨勮彍鍗曘��',
+      required: false,
+      options: menulist
+    },
+    {
+      type: 'text',
+      field: 'prefix',
+      label: '鍓嶇紑',
+      initval: wrap.prefix || '',
+      tooltip: '鎵爜淇℃伅灏嗕笌鍓嶇紑鎷兼帴鍚庢墽琛屻�傛敞锛氳烦杞彍鍗曢渶浠kbid锛�:鎴�,锛夊紑澶达紝mkbid锛�:鎴�,锛夎烦杞悗灏嗚鍘婚櫎銆備緥濡傦細mkbid:123456 璺宠浆鍚庨〉闈ID涓� 123456銆�',
+      required: false
+    },
+    {
+      type: 'radio',
+      field: 'minishow',
+      label: '灏忕▼搴忎腑',
+      initval: wrap.minishow || 'false',
+      tooltip: '瀵艰埅鏍忓湪灏忕▼搴忎腑鏄惁鏄剧ず銆�',
+      required: false,
+      options: [
+        {value: 'true', label: '鏄剧ず'},
+        {value: 'false', label: '闅愯棌'},
+      ],
+      forbid: !adapters.includes('wxmini')
+    },
+    {
+      type: 'radio',
+      field: 'menuPosition',
+      label: '鑷畾涔夎彍鍗曚綅缃�',
+      initval: wrap.menuPosition || 'right',
+      tooltip: '鑷畾涔夎彍鍗曠殑浣嶇疆銆傛敞锛氳彍鍗曚綅浜庡乏渚ф椂浼氭樉绀哄ご鍍忥紝涓旇繑鍥炲姛鑳借绂佺敤銆�',
+      required: false,
+      options: [
+        {value: 'left', label: '宸︿晶'},
+        {value: 'right', label: '鍙充晶'},
+      ]
+    },
+    {
       type: 'table',
       field: 'menus',
       label: '鑷畾涔夎彍鍗�',
       initval: wrap.menus || [],
       required: false,
       span: 24,
+      actions: ['edit', 'del', 'add', 'move', 'view'],
+      tip: <span style={{fontSize: '12px', color: '#959595', position: 'relative', top: '-8px'}}>褰撲娇鐢ㄥ浘鏍�<MkIcon type="user"/>锛屼笖鍙充晶鍙湁涓�涓彍鍗曟椂锛屼細鏄剧ず鐢ㄦ埛澶村儚銆�</span>,
       columns: [
         {
           title: '鍥炬爣',
@@ -140,7 +229,15 @@
           editable: true,
           required: true,
           render: (text, record) => <MkIcon type={text}/>,
-          width: '35%'
+          width: '23%'
+        },
+        {
+          title: '鑷畾涔夊悕绉�',
+          dataIndex: 'name',
+          inputType: 'text',
+          editable: true,
+          required: false,
+          width: '23%'
         },
         {
           title: '鑿滃崟',
@@ -149,7 +246,7 @@
           editable: true,
           required: true,
           extends: [{key: 'label', value: 'label'}],
-          width: '35%',
+          width: '23%',
           render: (text, record) => record.label,
           options: menulist
         }

--
Gitblit v1.8.0